Sync all projects
This commit is contained in:
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIsei9pk1WJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5pY2hlbXYuY29tJywKICAgIGhvbWVVcmw6ICcvbXYvJywKICAgIHVybDogJy9tdi9meWNsYXNzX2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy9zZWFyY2gucGhwP2tleT0qKiZwYWdlcz1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgY2xhc3NfcGFyc2U6ICcubGVpX2ZsJiZsaTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDlm77niYfmnaXmupA6ICdAUmVmZXJlcj1odHRwczovL3d3dy5pY2hlbXYuY29tLycsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJy5tdl9saXN0JiZsaTthJiZ0aXRsZTtpbWcmJmRhdGEtc3JjOzthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnLnNwX2xpc3QmJmxpO2EmJnRpdGxlO2ltZyYmZGF0YS1zcmM7LnNpbmdlciYmVGV4dDthJiZocmVmOy5oaXRzJiZUZXh0JywKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIseS4iuS9oOWQrOS5pue9kScsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuMjMwdHMubmV0JywKICAgIHVybDogJy9zb3J0L2Z5Y2xhc3MvZnlwYWdlLmh0bWwnLAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC5odG1sP3NlYXJjaHR5cGU9bmFtZSZzZWFyY2h3b3JkPSoqJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfcGFyc2U6ICcubmF2LW9sJiZsaTpndCgwKTpsdCg2KTthJiZUZXh0O2EmJmhyZWY7LiovKFxcdyspLmh0bWwnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICdqczppbnB1dD1pbnB1dC5yZXBsYWNlKCJ3d3ciLCJ3YXAiKScsCiAgICBsaW1pdDogNiwKICAgIOaOqOiNkDogJyNteVRhYl9Db250ZW50MSYmbGk7LnRhYi1ib29rLXRpdGxlJiZUZXh0Oyo7LnRhYi1ib29rLWF1dGhvciYmVGV4dDsqJywKICAgIOS4gOe6pzogJ3VsLmxpc3Qtd29ya3MmJmxpOy5saXN0LWJvb2stZHQtLXNwYW4mJlRleHQ7LmxhenkmJmRhdGEtb3JpZ2luYWw7LmJvb2stYXV0aG9yOmVxKDIpJiZhJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICcuYm9vay1jb3ZlciYmYWx0Oy5ib29rLWluZm8mJmRkLS1zcGFuOmVxKDEpJiZUZXh0JywKICAgICAgICBpbWc6ICcuYm9vay1jb3ZlciYmc3JjJywKICAgICAgICBkZXNjOiAnLmJvb2staW5mbyYmZGQ6ZXEoNCkmJlRleHQ7OzsuYm9vay1pbmZvJiZkZC0tc3BhbjplcSgzKSYmVGV4dDsuYm9vay1pbmZvJiZkZC0tc3BhbjplcSgyKSYmVGV4dCcsCiAgICAgICAgY29udGVudDogJy5ib29rLWRlcyYmVGV4dCcsCiAgICAgICAgdGFiczogJy5wbGF5bGlzdC10b3AmJmgyJywKICAgICAgICBsaXN0czogJyNwbGF5bGlzdDplcSgjaWQpJiZsaScsCiAgICB9LAogICAg5pCc57SiOiAnKicsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
Ly8g5peg5pCc57SiCnZhciBydWxlID0gewogICAgdGl0bGU6ICfmkq3lrqInLAogICAgaG9zdDogJ2h0dHBzOi8vZ2V0cG9kY2FzdC54eXonLAogICAgdXJsOiAnL2Z5Y2xhc3MnLAogICAgc2VhcmNoVXJsOiAnJywKICAgIHNlYXJjaGFibGU6IDAsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ+aSreWuoibkurrmlocmTkVXU+eDreeCuSblvbHop4bkuI7or7vkuaYm5pWZ6IKyJuWOhuWPsibpn7PkuZAm5oOF5oSfJuacieWjsOS5picsCiAgICBjbGFzc191cmw6ICcwJjEmMiYzJjQmNSY2JjcmOCcsCiAgICBjYXRlX2V4Y2x1ZGU6ICcnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6IGBqczoKCQlpbnB1dCA9IHtqeDowLCB1cmw6aW5wdXQsIHBhcnNlOjB9CglgLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6IGBqczoKCQlwZGZoPWpzcC5wZGZoO3BkZmE9anNwLnBkZmE7cGQ9anNwLnBkOwoJCXZhciBkID0gW107CgkJdmFyIGh0bWwgPSByZXF1ZXN0KEhPU1QpOwoJCXZhciBsaXN0ID0gcGRmYShodG1sLCAnYm9keSYmLnBpY19saXN0OmVxKDApJiZsaScpOwoJCWxpc3QuZm9yRWFjaChpdCA9PiB7CgkJCWQucHVzaCh7CgkJCQl0aXRsZTogcGRmaChpdCwgJy50aXRsZSYmVGV4dCcpLAoJCQkJcGljX3VybDogcGRmaChpdCwgJ2ltZyYmc3JjJyksCgkJCQl1cmw6IHBkKGl0LCAnYSYmaHJlZicpICsgJ3wnICsgcGRmaChpdCwgJy50aXRsZSYmVGV4dCcpICsgJ3wnICsgcGRmaChpdCwgJ2ltZyYmc3JjJykKCQkJfSk7CgkJfSkKCQlzZXRSZXN1bHQoZCk7CglgLAogICAg5LiA57qnOiBganM6CgkJcGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDsKCQl2YXIgZCA9IFtdOwoJCXZhciBodG1sID0gcmVxdWVzdChIT1NUKTsKCQl2YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5waWNfbGlzdDplcShsaXN0X2lkeCkmJmxpJy5yZXBsYWNlKCJsaXN0X2lkeCIsIE1ZX0NBVEUpKTsKCQlsaXN0LmZvckVhY2goaXQgPT4gewoJCQlkLnB1c2goewoJCQkJdGl0bGU6IHBkZmgoaXQsICcudGl0bGUmJlRleHQnKSwKCQkJCXBpY191cmw6IHBkZmgoaXQsICdpbWcmJnNyYycpLAoJCQkJdXJsOiBwZChpdCwgJ2EmJmhyZWYnKSArICd8JyArIHBkZmgoaXQsICcudGl0bGUmJlRleHQnKSArICd8JyArIHBkZmgoaXQsICdpbWcmJnNyYycpCgkJCX0pOwoJCX0pCgkJc2V0UmVzdWx0KGQpOwoJYCwKICAgIOS6jOe6pzogYGpzOgogICAgICAgIHBkZmg9anNwLnBkZmg7cGRmYT1qc3AucGRmYTtwZD1qc3AucGQ7CgkJbGV0IHB1cmwgPSBpbnB1dC5zcGxpdCgnfCcpWzBdOwoJCWxldCB0aXRsZSA9IGlucHV0LnNwbGl0KCd8JylbMV07CgkJbGV0IHBpYyA9IGlucHV0LnNwbGl0KCd8JylbMl07CgkJdmFyIGh0bWwgPSByZXF1ZXN0KHB1cmwpOwoJCWxldCBkID0gW107CgkJVk9EID0ge307CgkJVk9ELnZvZF9uYW1lID0gdGl0bGU7CgkJVk9ELnZvZF9waWMgPSBwaWM7CgkJaWYgKHR5cGVvZiBwbGF5X3VybCA9PT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICAgICAgdmFyIHBsYXlfdXJsID0gJycKICAgICAgICB9CiAgICAgICAgbGV0IGVwaXNvZGVzID0gcGRmYShodG1sLCAnYm9keSYmaXRlbScpOwoJCWxvZygnZXBpc29kZXMgPT09PT09PT09PicrZXBpc29kZXMpOwoJCWxldCB2b2RfcGxheV91cmwgPSBlcGlzb2Rlcy5tYXAoZnVuY3Rpb24oaXQpIHsKCQkJbGV0IGl0aXRsZSA9IGl0Lm1hdGNoKC88dGl0bGU+KC4qPyk8XFwvdGl0bGU+LylbMV0ucmVwbGFjZSgvJmx0OyFcXFtDREFUQVxcW3xcXF1cXF0mZ3Q7fHw8IVxcW0NEQVRBXFxbfFxcXVxcXT4vZywgJycpOwoJCQlsZXQgaXVybCA9IHBkZmgoaXQsICdlbmNsb3N1cmUmJnVybCcpOwoJCQlyZXR1cm4gaXRpdGxlICsgJyQnICsgaXVybAogICAgICAgIH0pLmpvaW4oJyMnKQogICAgICAgIFZPRC52b2RfcGxheV9mcm9tID0gJ+mBk+mVv+WcqOe6vyc7CiAgICAgICAgVk9ELnZvZF9wbGF5X3VybCA9IHZvZF9wbGF5X3VybAoJYCwKICAgIOaQnOe0ojogJycsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WNmueci+WQrOS5picsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkuYm9va2FuLmNvbS5jbicsCiAgICBob21lVXJsOiAnL3ZvaWNlL2Jvb2svbGlzdD9pbnN0YW5jZV9pZD0yNTMwNCZwYWdlPTEmY2F0ZWdvcnlfaWQ9MTMwNSZudW09MjQnLAogICAgdXJsOiAnL3ZvaWNlL2Jvb2svbGlzdD9pbnN0YW5jZV9pZD0yNTMwNCZwYWdlPWZ5cGFnZSZjYXRlZ29yeV9pZD1meWNsYXNzJm51bT0yNCcsCiAgICBkZXRhaWxVcmw6ICcvdm9pY2UvYWxidW0vdW5pdHM/YWxidW1faWQ9ZnlpZCZwYWdlPTEmbnVtPTIwMCZvcmRlcj0xJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vZXMuYm9va2FuLmNvbS5jbi9hcGkvdjMvdm9pY2UvYm9vaz9pbnN0YW5jZUlkPTI1MzA0JmtleXdvcmQ9KiomcGFnZU51bT1meXBhZ2UmbGltaXROdW09MjAnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgY2xhc3NfbmFtZTogJ+WwkeW5tOivu+eJqSblhL/nq6XmloflraYm5Zu95a2m57uP5YW4JuaWh+iJuuWwkeW5tCbogrLlhL/lv4Pnu48m5b+D55CG5ZOy5a2mJumdkuaYpeWKseW/lybljoblj7LlsI/or7Qm5pWF5LqL5LyaJumfs+S5kOaIj+WJpybnm7jlo7Dor4TkuaYnLAogICAgY2xhc3NfdXJsOiAnMTMwNSYxMzA0JjEzMjAmMTMwNiYxMzA5JjEzMTAmMTMwNyYxMzEyJjEzMDMmMTMxNyYxMzE5JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnCiAgICB9LAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICdqc29uOmRhdGEubGlzdDtuYW1lO2NvdmVyO2V4dHJhLmF1dGhvcjtpZCcsCiAgICDkuoznuqc6IGBqczoKICAgICAgICBsZXQgZCA9IFtdOwogICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgdm9kX3VybDogaW5wdXQsCiAgICAgICAgICAgIHZvZF9uYW1lOiAiIiwKICAgICAgICAgICAgdm9kX2FjdG9yOiAiIiwKICAgICAgICAgICAgdm9kX3llYXI6ICIiLAogICAgICAgICAgICB2b2RfZGlyZWN0b3I6ICIiCiAgICAgICAgfTsKICAgICAgICBsZXQgcGxheWxpc3RzID0gW107CiAgICAgICAgbGV0IGRhdGEgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpKS5kYXRhOwogICAgICAgIFZPRC52b2RfbmFtZSA9IGRhdGEubGlzdFswXS5pZDsKICAgICAgICBWT0Qudm9kX2FjdG9yID0gIuKWtu+4j+WIm+W7uuS6jiIgKyBkYXRhLmxpc3RbMF0uY3JlYXRlZF9hdDsKICAgICAgICBWT0Qudm9kX3llYXIgPSBkYXRhLmxpc3RbMF0uY3JlYXRlZF9hdC5zcGxpdCgiLSIpWzBdOwogICAgICAgIFZPRC52b2RfZGlyZWN0b3IgPSAi4pa277iP5pu05paw5LqOIiArIGRhdGEubGlzdFswXS51cGRhdGVkX2F0OwogICAgICAgIGxldCB0b3RhbCA9IGRhdGEudG90YWw7CiAgICAgICAgcGxheWxpc3RzID0gZGF0YS5saXN0OwogICAgICAgIGlmICh0b3RhbCA+IDIwMCkgewogICAgICAgICAgICBmb3IgKGxldCBpID0gMjsgaSA8IHRvdGFsIC8gMjAwICsgMTsgaSsrKSB7CiAgICAgICAgICAgICAgICBsZXQgbGlzdFVybCA9IGlucHV0LnNwbGl0KCImIilbMF0gKyAiJnBhZ2U9IiArIGkgKyAiJm51bT0yMDAmb3JkZXI9MSI7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UocmVxdWVzdChsaXN0VXJsKSkuZGF0YTsKICAgICAgICAgICAgICAgIHBsYXlsaXN0cyA9IHBsYXlsaXN0cy5jb25jYXQoZGF0YS5saXN0KQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHBsYXlsaXN0cy5mb3JFYWNoKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB0aXRsZTogaXQudGl0bGUsCiAgICAgICAgICAgICAgICB1cmw6IGl0LmZpbGUKICAgICAgICAgICAgfSkKICAgICAgICB9KTsKICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9ICJib29rYW4iOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBkLm1hcChmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwKICAgICAgICB9KS5qb2luKCIjIik7CiAgICBgLAogICAg5pCc57SiOiAnKicsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+mFt+Wlh01WJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5rdXFpbXYuY29tJywKICAgIC8vIGhvbWVVcmw6Jy9wbGF5LycsCiAgICB1cmw6ICcvcGxheS9meWNsYXNzX2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy9zZWFyY2gucGhwP2tleT0qKiZwYWdlcz1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgLy8gY2xhc3NfcGFyc2U6Jy5tYWluOmVxKDEpJiZsaTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICAvLyBjbGFzc19wYXJzZTonLmxlaV9jbGFzcyYmYTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICBjbGFzc19uYW1lOiAn5Y2O6K+t6auY5riFJuaXpemfqeeyvumAiSbmrKfnvo5NVibpq5jmuIXnjrDlnLom5b2x6KeGTVYm5aSc5bqX6KeG6aKRJui9puaooeinhumikSbng63oiJ7op4bpopEm576O5aWz5YaZ55yfJue+juWls+aJk+einycsCiAgICBjbGFzc191cmw6ICcxJjImMyY0JjUmNiY3JjgmOSYxMCcsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOnZhciBkPVtdO3BkZmg9anNwLnBkZmg7cGRmYT1qc3AucGRmYTtwZD1qc3AucGQ7dmFyIGh0bWw9cmVxdWVzdChpbnB1dCk7bGV0IGxpc3Q9cGRmYShodG1sLCIubXZfbGlzdCYmbGkiKTtsaXN0LmZvckVhY2goKGl0KT0+e2QucHVzaCh7dGl0bGU6cGRmaChpdCwiLm5hbWUmJlRleHQiKSxkZXNjOiLwn46kIitwZGZoKGl0LCIuc2luZ2VyJiZUZXh0IikrIu+9nCIrcGRmaChpdCwiLnRpbWUmJlRleHQiKSxwaWNfdXJsOnBkKGl0LCJpbWcmJnNyYyIpLHVybDpwZChpdCwiYSYmaHJlZiIpLH0pfSk7c2V0UmVzdWx0KGQpOycsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJy52aWRlb19saXN0JiZsaTthJiZ0aXRsZTs7LnNpbmdlciYmVGV4dDthJiZocmVmOy50XzAzOmVxKDEpJiZUZXh0JywKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WFreaciOWQrOS5picsCiAgICBob3N0OiAnaHR0cDovL20uNnl1ZXRpbmcuY29tJywKICAgIHVybDogJy95cy9meWNsYXNzL28yL3BmeXBhZ2UnLAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC9pbmRleC9zZWFyY2g/Y29udGVudD0qKiZ0eXBlPTEmcGFnZU51bT1meXBhZ2UmcGFnZVNpemU9NDAnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMCwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIGNsYXNzX25hbWU6ICflhajpg6jliIbnsbsm546E5bm75aWH5bm7JuS/ruecn+atpuS+oCbmgZDmgJbngbXlvIIm5Y+k5LuK6KiA5oOFJumDveW4guiogOaDhSbnqb/otorph43nlJ8m57Kk6K+t5Y+k5LuUJue9kea4uOWwj+ivtCbpgJrkv5fmloflraYm5Y6G5Y+y57qq5a6eJuWGm+S6iybmgqznlpHmjqjnkIYmZWJjNeezu+WIlyblrpjlnLrllYbmiJgm5YS/56ul6K+754mpJuW5v+aSreWJpyblpJbmlofljp/niYgm6K+E5Lmm5aSn5YWoJuebuOWjsOWwj+WTgSbnmb7lrrborrLlnZsm5YGl5bq35YW755SfJuaVmeadkCbmnJ/liIrlpLTmnaEm5oiP5puyJuiEseWPo+engCcsCiAgICBjbGFzc191cmw6ICd0MCZ0MSZ0MiZ0MyZ0NCZ0MjgmdDUmdDYmdDcmdDExJnQxMiZ0MTMmdDE0JnQxOCZ0MTUmdDE2JnQxNyZ0MjImdDgmdDkmdDEwJnQyMCZ0MjEmdDIzJnQyNCZ0MjcnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICDlm77niYfmnaXmupA6ICdAUmVmZXJlcj1odHRwOi8vbS42eXVldGluZy5jb20vQFVzZXItQWdlbnQ9TU9CSUxFX1VBJywKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnLmxpc3Qtd3JhcHBlciYmLml0ZW0tbGluaztoMi0tc3BhbiYmVGV4dDtpbWcmJnNyYzsuc3RhdHVzJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgInRpdGxlIjogIi5ib29rLXRpdGxlJiZUZXh0Oy50ZXh0OmVxKDApJiZUZXh0IiwKICAgICAgICAiaW1nIjogIi5pbWcmJnNyYyIsCiAgICAgICAgImRlc2MiOiAiLnRleHQ6ZXEoMykmJlRleHQ7OzsudGV4dDplcSgxKSYmVGV4dDsudGV4dDplcSgyKSYmVGV4dCIsCiAgICAgICAgImNvbnRlbnQiOiAiLmJvb2staW50cm8mJlRleHQiLAogICAgICAgICJ0YWJzIjogIi5vcGVyYXRlLWJhciYmLnRvdGFsLW51bSIsCiAgICAgICAgImxpc3RzIjogIi5ib29rLWxpc3Q6ZXEoI2lkKSYmLmxpc3QtaXRlbSIKICAgIH0sCiAgICDmkJzntKI6ICdqczpsZXQgZD1bXTtsZXQgTVlfSE9NRT0iaHR0cDovL20uNnl1ZXRpbmcuY29tIjtsZXQgaHRtbD1yZXF1ZXN0KGlucHV0KTtodG1sPUpTT04ucGFyc2UoaHRtbCk7bGV0IGxpc3Q9aHRtbC5kYXRhLmNvbnRlbnQ7bGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGl0KXtkLnB1c2goe3RpdGxlOml0Lm5hbWUucmVwbGFjZSgvPC4qPz4vZywiIiksaW1nOiJodHRwOi8vaW1nLjZ5dWV0aW5nLmNvbToyMDAwMS8iK2l0LmNvdmVyVXJsTG9jYWwsdXJsOk1ZX0hPTUUrIi9saXN0LyIraXQuY29kZSxkZXNjOml0LmNkYXRlLGNvbnRlbnQ6aXQuZGVzY1h4LnJlcGxhY2UoLyZuYnNwOy9nLCIiKX0pfSk7c2V0UmVzdWx0KGQpOycsCn0=
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTon6K+E5Lmm6ZqP6Lqr5ZCsJywKICAgIGhvc3Q6J2h0dHBzOi8vd3d3LnBzbXAzLmNvbScsCiAgICAvLyB1cmw6Jy9meWNsYXNzL2Z5cGFnZS5odG1sJywKICAgIHVybDonL2Z5ZmlsdGVyL2Z5cGFnZS5odG1sJywKICAgIGZpbHRlcmFibGU6MSwvL+aYr+WQpuWQr+eUqOWIhuexu+etm+mAiSwKICAgIGZpbHRlcl91cmw6J3t7ZmwuY2F0ZUlkfX0nLAogICAgZmlsdGVyOnsKICAgICAgICAieWtjIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoieWtjIn0seyJuIjoi6KKB6ZiU5oiQ5LiJ5Zu95ryU5LmJIiwidiI6InlrYy1zZ3l5In0seyJuIjoi6KKB6ZiU5oiQ5rC05rOK5qKB5bGxIiwidiI6InlrYy1zYmxzIn0seyJuIjoi6KKB6ZiU5oiQ5bCB56We5ryU5LmJIiwidiI6InlrYy1mc3l5In0seyJuIjoi6KKB6ZiU5oiQ6Jab5Yia5Y+N5ZSQIiwidiI6InlrYy14Z2Z0In0seyJuIjoi6KKB6ZiU5oiQ5p6X5rW36Zuq5Y6fIiwidiI6InlrYy1saHh5In0seyJuIjoi6KKB6ZiU5oiQ5qWa5rGJ55u45LqJIiwidiI6InlrYy1jaHh6In0seyJuIjoi6KKB6ZiU5oiQ5b2t5YWs5qGIIiwidiI6InlrYy1wZ2EifSx7Im4iOiLoooHpmJTmiJDng4jngavph5HliJoiLCJ2IjoieWtjLWxoamcifSx7Im4iOiLoooHpmJTmiJDph5HpkrHplZYiLCJ2IjoieWtjLWpxYiJ9LHsibiI6IuiigemYlOaIkOS4ieawlOWRqOeRnCIsInYiOiJ5a2Mtc3F6eSJ9LHsibiI6IuiigemYlOaIkOe+pOiLseS8miIsInYiOiJ5a2MtcXloIn0seyJuIjoi6KKB6ZiU5oiQ6ZW/5Z2C6ZuE6aOOIiwidiI6InlrYy1jYnhmIn0seyJuIjoi6KKB6ZiU5oiQ5bmz5Y6f5p6q5aOwIiwidiI6InlrYy1weXFzIn0seyJuIjoi6KKB6ZiU5oiQ5pq06aOO6aqk6ZuoIiwidiI6InlrYy1iZnp5In0seyJuIjoi6YeO54Gr5pil6aOO5paX5Y+k5Z+OIiwidiI6InlrYy15aGNmZGdjIn1dfV0sCiAgICAgICAgInN0ZiI6W3sia2V5IjoiY2F0ZUlkIiwibmFtZSI6IuWIhuexuyIsInZhbHVlIjpbeyJuIjoi5YWo6YOoIiwidiI6InN0ZiJ9LHsibiI6IuWNleeUsOiKs+mai+WUkOa8lOS5iSIsInYiOiJzdGYtc3R5eSJ9LHsibiI6IuWNleeUsOiKs+S5seS4luaerembhCIsInYiOiJzdGYtbHN4eCJ9LHsibiI6IuWNleeUsOiKs+eZveecieWkp+S+oCIsInYiOiJzdGYtYm1keCJ9LHsibiI6IuWNleeUsOiKs+erpeael+S8oCIsInYiOiJzdGYtdGx6In0seyJuIjoi5Y2V55Sw6Iqz5rC05rWS5LygIiwidiI6InN0Zi1zaHoifSx7Im4iOiLljZXnlLDoirPkuInkvqDkupTkuYkiLCJ2Ijoic3RmLXN4d3kifSx7Im4iOiLljZXnlLDoirPkuInkvqDliZEiLCJ2Ijoic3RmLXN4aiJ9LHsibiI6IuWNleeUsOiKs+Wkp+aYjua8lOS5iSIsInYiOiJzdGYtZG15eSJ9LHsibiI6IuWNleeUsOiKs+m+meiZjumjjuS6keS8miIsInYiOiJzdGYtbGhmeWgifSx7Im4iOiLljZXnlLDoirPkuInlm73mvJTkuYkiLCJ2Ijoic3RmLXNneXkifSx7Im4iOiLljZXnlLDoirPolpvlrrblsIYiLCJ2Ijoic3RmLXhqaiJ9LHsibiI6IuWNleeUsOiKs+a4heWumOWGjCIsInYiOiJzdGYtcWdjIn0seyJuIjoi5Y2V55Sw6Iqz5bCP5LqU5LmJIiwidiI6InN0Zi14d3kifSx7Im4iOiLljZXnlLDoirPpk4HmiYfmgKrkvqAiLCJ2Ijoic3RmLXRzZ3gifSx7Im4iOiLljZXnlLDoirPmpZrmsYnkuonpm4QiLCJ2Ijoic3RmLWNoengifV19XSwKICAgICAgICAidGx5IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoidGx5In0seyJuIjoi55Sw6L+e5YWD5rC05rWS5LygIiwidiI6InRseS1zaHoifSx7Im4iOiLnlLDov57lhYPmnajlrrblsIYiLCJ2IjoidGx5LXlqaiJ9LHsibiI6IueUsOi/nuWFg+mai+WUkOa8lOS5iSIsInYiOiJ0bHktc3R5eSJ9LHsibiI6IueUsOi/nuWFg+S4ieS+oOS6lOS5iSIsInYiOiJ0bHktc3h3eSJ9LHsibiI6IueUsOi/nuWFg+WImOengOS8oCIsInYiOiJ0bHktbHh6In0seyJuIjoi55Sw6L+e5YWD5bCP5YWr5LmJIiwidiI6InRseS14YnkifSx7Im4iOiLnlLDov57lhYPljIXlhazmoYgiLCJ2IjoidGx5LWJnYSJ9LHsibiI6IueUsOi/nuWFg+Wkp+ivneaIkOivrSIsInYiOiJ0bHktZGhjeSJ9LHsibiI6IueUsOi/nuWFg+WPjOmVluiusCIsInYiOiJ0bHktc2JqIn0seyJuIjoi55Sw6L+e5YWD5rW36Z2S5aSpIiwidiI6InRseS1ocXQifSx7Im4iOiLnlLDov57lhYPovr3msojmiJjlvbkiLCJ2IjoidGx5LWxzenkifSx7Im4iOiLnlLDov57lhYPooYDmuoXmtKXpl6giLCJ2IjoidGx5LXhqam0ifSx7Im4iOiLnlLDov57lhYPplZzoirHnvJgiLCJ2IjoidGx5LWpoeSJ9LHsibiI6IueUsOi/nuWFg+WtmeW6nuaWl+aZuiIsInYiOiJ0bHktc3BkeiJ9LHsibiI6IueUsOi/nuWFg+WtmeiGkeS4juW6nua2kyIsInYiOiJ0bHktc2J5cGoifV19XSwKICAgICAgICAibGxmIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoibGxmIn0seyJuIjoi5YiY5YWw6Iqz5bKz6aOe5LygIiwidiI6ImxsZi15ZnoifSx7Im4iOiLliJjlhbDoirPmnajlrrblsIblhajkvKAiLCJ2IjoibGxmLXlqanF6In0seyJuIjoi5YiY5YWw6Iqz5ZG85a625bCGIiwidiI6ImxsZi1oamoifSx7Im4iOiLliJjlhbDoirPotbXljKHog6TmvJTkuYkiLCJ2IjoibGxmLXpreXl5In0seyJuIjoi5YiY5YWw6Iqz5pyx5YWD55KL5ryU5LmJIiwidiI6ImxsZi16eXp5eSJ9LHsibiI6IuWImOWFsOiKs+e6oualvOaipiIsInYiOiJsbGYtaGxtIn0seyJuIjoi5YiY5YWw6Iqz5LqU5Yek5pyd6Ziz5YiAIiwidiI6ImxsZi13ZmN5ZCJ9LHsibiI6IuWImOWFsOiKs+aWsOWys+mjnuS8oCIsInYiOiJsbGYteHlmeiJ9LHsibiI6IuWImOWFsOiKs+adqOWutuWwhiIsInYiOiJsbGYteWpqIn0seyJuIjoi5YiY5YWw6Iqz6KW/5ZSQ5ryU5LmJIiwidiI6ImxsZi14dHl5In0seyJuIjoi5YiY5YWw6Iqz5qiK5qKo6IqxIiwidiI6ImxsZi1mbGgifSx7Im4iOiLliJjlhbDoirPlpKfllJDkvqDlpbMiLCJ2IjoibGxmLWR0eG4ifSx7Im4iOiLliJjlhbDoirPpu5HomY7kvKAiLCJ2IjoibGxmLWhoeiJ9LHsibiI6IuWImOWFsOiKs+a0quatpuWkp+W4nSIsInYiOiJsbGYtaHdkZCJ9LHsibiI6IuWImOWFsOiKs+WlkeS4ueiQp+WkquWQjiIsInYiOiJsbGYtcWR4dGgifV19XSwKICAgICAgICAibGxyIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoibGxyIn0seyJuIjoi6L+e5Li95aaC5Lic5rGJ5ryU5LmJIiwidiI6Imxsci1kaHl5In0seyJuIjoi6L+e5Li95aaC5aSn6ZqL5ZSQIiwidiI6Imxsci1kc3QifSx7Im4iOiLov57kuL3lpoLkuInlm73mvJTkuYkiLCJ2IjoibGxyLXNneXkifSx7Im4iOiLov57kuL3lpoLpm43mraPliZHkvqDlm74iLCJ2IjoibGxyLXl6anh0In0seyJuIjoi6L+e5Li95aaC57qi5qW85qKmIiwidiI6Imxsci1obG0ifSx7Im4iOiLov57kuL3lpoLpvpnlm77lhazmoYgiLCJ2IjoibGxyLWx0Z2EifSx7Im4iOiLov57kuL3lpoLpub/pvI7orrAiLCJ2IjoibGxyLWxkaiJ9LHsibiI6Iui/nuS4veWmguWImOWFrOahiCIsInYiOiJsbHItbGdhIn0seyJuIjoi6L+e5Li95aaC5bq354aZ56eB6K6/IiwidiI6Imxsci1reHNmIn0seyJuIjoi6L+e5Li95aaC5Lic5ZGo5YiX5Zu9IiwidiI6Imxsci1kemxnIn0seyJuIjoi6L+e5Li95aaC5Y2B5LqM5aWz5L6gIiwidiI6Imxsci1zZW54In0seyJuIjoi6L+e5Li95aaC5pm65Zyj5Lic5pa55pyUIiwidiI6Imxsci16c2RmcyJ9LHsibiI6Iui/nuS4veWmguS+oOS5ieiLsembhOS8oCIsInYiOiJsbHIteHl5eHoifSx7Im4iOiLov57kuL3lpoLok6zojrHliZHkvqAiLCJ2IjoibGxyLXBsangifSx7Im4iOiLov57kuL3lpoLlurfnhpnlpKfluJ0iLCJ2IjoibGxyLWt4ZGQifV19XSwKICAgICAgICAienN6IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoienN6In0seyJuIjoi5byg5bCR5L2Q5aSn5piO5YmR5L6gIiwidiI6Inpzei1kbWp4In0seyJuIjoi5byg5bCR5L2Q6ZuN5q2j5YmR5L6g5Zu+IiwidiI6Inpzei15emp4dCJ9LHsibiI6IuW8oOWwkeS9kOWkqem+meWFq+mDqCIsInYiOiJ6c3otdGxiYiJ9LHsibiI6IuW8oOWwkeS9kOaYhuS7keWJkeS+oCIsInYiOiJ6c3ota2xqeCJ9LHsibiI6IuW8oOWwkeS9kOWkmuaDheWJkeWuouaXoOaDheWJkSIsInYiOiJ6c3otZHFqa3dxaiJ9LHsibiI6IuW8oOWwkeS9kOeskeWCsuaxn+a5liIsInYiOiJ6c3oteGFqaCJ9LHsibiI6IuW8oOWwkeS9kOWwhOmbleiLsembhOS8oCIsInYiOiJ6c3otc2R5eHoifSx7Im4iOiLlvKDlsJHkvZDlgJrlpKnlsaDpvpnorrAiLCJ2IjoienN6LXl0dGxqIn0seyJuIjoi5byg5bCR5L2Q56We6ZuV5L6g5L6jIiwidiI6Inpzei1zZHhsIn0seyJuIjoi5byg5bCR5L2Q6ZKf5YeM5LygIiwidiI6Inpzei16bHoifSx7Im4iOiLlvKDlsJHkvZDmmI7lj7LlpYfkvqAiLCJ2IjoienN6LW1zcXgifSx7Im4iOiLlvKDlsJHkvZDkuK3lm73ooYDmoYgiLCJ2IjoienN6LXpneGEifSx7Im4iOiLlvKDlsJHkvZDnpZ7liZHmg4rlpKnliLrpm43mraMiLCJ2IjoienN6LXNqanRjeXoifSx7Im4iOiLlvKDlsJHkvZDosarmsJTmg4rlpKkiLCJ2IjoienN6LWhxanQifSx7Im4iOiLlvKDlsJHkvZDkubHkuJbmganku4ciLCJ2IjoienN6LWxzZWMifV19XSwKICAgICAgICAidHp5IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoidHp5In0seyJuIjoi55Sw5oiY5LmJ5p2O6Ieq5oiQIiwidiI6InR6eS1semMifSx7Im4iOiLnlLDmiJjkuYnnp5jlr4bliJfovaYiLCJ2IjoidHp5LW1tbGMifSx7Im4iOiLnlLDmiJjkuYnmsJHlm73po47kupEiLCJ2IjoidHp5LW1nZnkifSx7Im4iOiLnlLDmiJjkuYnlpJXnhafntKvnpoHln44iLCJ2IjoidHp5LXh6empjIn0seyJuIjoi55Sw5oiY5LmJ6aOO6Zuo5YWz5bGxIiwidiI6InR6eS1meWdzIn0seyJuIjoi55Sw5oiY5LmJ6IGK5paL5b+X5byCIiwidiI6InR6eS1senp5In0seyJuIjoi55Sw5oiY5LmJ5L6g5LmJ6LGq5p2wIiwidiI6InR6eS14eWhqIn0seyJuIjoi6aOO5LqR5Lq654mp6JKL5LuL55+zIiwidiI6InR6eS1meXJ3ampzIn0seyJuIjoi55Sw5oiY5LmJ57ud5a+G6KGM5YqoIiwidiI6InR6eS1qbXhkIn0seyJuIjoi55Sw5oiY5LmJ54eV5a2Q5p2O5LiJ5Lyg5aWHIiwidiI6InR6eS15emxzY3EifSx7Im4iOiLnlLDmiJjkuYnkuK3lm73lj6Tku6PlpYfmoYgiLCJ2IjoidHp5LXpnZ2RxYSJ9LHsibiI6IueUsOaImOS5ieeBq+eJm+mYtSIsInYiOiJ0enktaG56In0seyJuIjoi55Sw5oiY5LmJ5Y6/5aeU5Lmm6K6wIiwidiI6InR6eS14d3NqIn0seyJuIjoi55Sw5oiY5LmJ5pGn5q+B56We6aOO5Y+3IiwidiI6InR6eS1jaHNmaCJ9LHsibiI6IueUsOaImOS5ieS7h+Wkp+WomCIsInYiOiJ0enktY2RuIn1dfV0KICAgIH0sCiAgICBmaWx0ZXJfZGVmOnsKICAgICAgICB5a2M6e2NhdGVJZDoneWtjJ30sCiAgICAgICAgc3RmOntjYXRlSWQ6J3N0Zid9LAogICAgICAgIHRseTp7Y2F0ZUlkOid0bHknfSwKICAgICAgICBsbGY6e2NhdGVJZDonbGxmJ30sCiAgICAgICAgbGxyOntjYXRlSWQ6J2xscid9LAogICAgICAgIHpzejp7Y2F0ZUlkOid6c3onfSwKICAgICAgICB0enk6e2NhdGVJZDondHp5J30KICAgIH0sCiAgICBzZWFyY2hVcmw6Jy9zby8qKl9meXBhZ2UuaHRtbCcsCiAgICBzZWFyY2hhYmxlOjIsCiAgICBxdWlja1NlYXJjaDowLAogICAgaGVhZGVyczp7CiAgICAgICAgJ1VzZXItQWdlbnQnOidNT0JJTEVfVUEnCiAgICB9LAogICAgdGltZW91dDo1MDAwLAogICAgY2xhc3NfcGFyc2U6ICcubGlzdC1uYXZpJiZsaTpndCgxKTthJiZUZXh0O2EmJmhyZWY7LyhcXHcrKS5odG1sJywKICAgIHBsYXlfcGFyc2U6dHJ1ZSwKICAgIGxhenk6J2pzOmlucHV0PXtqeDowLHVybDppbnB1dCxwYXJzZTowfScsCiAgICBsaW1pdDo2LAogICAg5o6o6I2QOicqJywKICAgIOS4gOe6pzonI3Bvc3RfbGlzdF9ib3gmJmxpO2gyJiZUZXh0O2ltZyYmc3JjOy5mX3ImJnNwYW46ZXEoMykmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ewogICAgICAgIHRpdGxlOidoMSYmVGV4dDsudmlldyYmVGV4dCcsCiAgICAgICAgaW1nOidpbWcmJnNyYycsCiAgICAgICAgZGVzYzonLnZpZXcmJlRleHQ7OzsubG1uYW1lJiZUZXh0Oy5hdXRob3ImJlRleHQnLAogICAgICAgIGNvbnRlbnQ6Jy5qQXNyUHlmNCYmcDplcSgxKSYmVGV4dCcsCiAgICAgICAgLy8gdGFiczonanM6VEFCUz1bIuivhOS5pumaj+i6q+WQrCJdJywKICAgICAgICBsaXN0czonanM6dmFyIFZpZGVvTGlzdEpzb247VmlkZW9MaXN0SnNvbj1ldmFsKGh0bWwuc3BsaXQoImF1ZGlvOiAiKVsxXS5zcGxpdCgifVwpIilbMF0pO2xldCBsaXN0MT1bXTtWaWRlb0xpc3RKc29uLmZvckVhY2goZnVuY3Rpb24oaXQpe2xpc3QxLnB1c2goaXQubmFtZS5zdHJpcCgpKyIkaHR0cHM6IitpdC51cmwpfSk7TElTVFM9W2xpc3QxXTsnLAogICAgfSwKICAgIOaQnOe0ojogJyonLAp9
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+a4hemjjkRKJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy52dnZkai5jb20nLAogICAgLy8gdXJsOiAnL3NvcnQvZnljbGFzcy8wLTAtMC0wLWZ5cGFnZS5odG1sJywKICAgIHVybDogJy9zb3J0L2Z5Y2xhc3MvZnlmaWx0ZXIuaHRtbCcsCiAgICBmaWx0ZXJhYmxlOiAxLCAvL+aYr+WQpuWQr+eUqOWIhuexu+etm+mAiSwKICAgIGZpbHRlcl91cmw6ICd7e2ZsLmNsYXNzIG9yICIwIn19LXt7ZmwubGFuZyBvciAiMCJ9fS17e2ZsLnllYXIgb3IgIjAifX0te3tmbC5ieSBvciAiMCJ9fS1meXBhZ2UnLAogICAgZmlsdGVyOiB7CiAgICAgICAgImMxIjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuWIhuexuyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oWi5pGH5Liy54OnIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueahOmrmOS4sueDpyIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnoo7mi43kuLLng6ciLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57Kk6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpJbor60iLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJjMiI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua1geihjOmHkeabsiIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj5Hng6fnu4/lhbgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57Kk6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpJbor60iLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJjMyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkVETS9EYW5jZS9FbGVjdHJvL0hvdXNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkZ1bmt5SG91c2UvUHJvZ0hvdXNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRyYXAvSGlwSG9wL1JuYi9GdW5rL0JCIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkhhcmRzdHlsZS9UZWNobm8vVHJhbmNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLml7bpl7QiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjPmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIx5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEx5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEw5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjnmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI35pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjbmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjXmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjTmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjXlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIz5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjLlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIw5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTnlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE35bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTblubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsOS4iuS8oCIsCiAgICAgICAgICAgICAgICAidiI6ICIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnsr7lk4HmjqjojZAiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pys5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4iuWRqOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5pyI54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6pueDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlubTluqbkuIvovb0iLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiYzQiOiBbewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG57G7IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJFRE0vRGFuY2UvRWxlY3Ryby9Ib3VzZSIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRnVua3lIb3VzZS9Qcm9nSG91c2UiLAogICAgICAgICAgICAgICAgInYiOiAiMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRyYXAvSGlwSG9wL1JuYi9GdW5rL0JCIiwKICAgICAgICAgICAgICAgICJ2IjogIjEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJIYXJkc3R5bGUvVGVjaG5vL1RyYW5jZSIsCiAgICAgICAgICAgICAgICAidiI6ICIxMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC9zbz9rZXk9KiomY2lkPTAmbGlzdD0yJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDIsIC8v5piv5ZCm5ZCv55So5YWo5bGA5pCc57SiLAogICAgcXVpY2tTZWFyY2g6IDAsIC8v5piv5ZCm5ZCv55So5b+r6YCf5pCc57SiLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLCAvL+e9keermeeahOWFqOWxgOivt+axgui2heaXtizpu5jorqTmmK8zMDAw5q+r56eSCiAgICBjbGFzc19wYXJzZTogJyN0b3BfYmFubmVyY3QmJi5zZS5iYW5uZXJvZmY7YSYmdGl0bGU7YSYmaHJlZjsvc29ydC8oLio/KS8nLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6ICcjcmVjcy1saXN0JiZsaTtoMiYmVGV4dDsqO2kmJlRleHQ7YSYmaHJlZicsCiAgICDkuIDnuqc6ICcuaXNnb29kX2xpc3Q7YSYmdGl0bGU7aW1nJiZzcmM7LnNjXzEmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJyonLAp9
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+icu+ick0ZNJywKICAgIGhvc3Q6ICdodHRwOi8vd3d3LnFpbmd0aW5nLmZtJywKICAgIHVybDogJy9yYWRpb3BhZ2UvZnljbGFzcy9meXBhZ2UnLAogICAgc2VhcmNoVXJsOiAnJywKICAgIHNlYXJjaGFibGU6IDAsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGNsYXNzX25hbWU6ICflub/kuJwm5rWZ5rGfJuWMl+S6rCblpKnmtKUm5rKz5YyXJuS4iua1tyblsbHopb8m5YaF6JKZ5Y+kJui+veWugSblkInmnpcm6buR6b6Z5rGfJuaxn+iLjyblronlvr0m56aP5bu6Juaxn+ilvyblsbHkuJwm5rKz5Y2XJua5luWMlybmuZbljZcm5bm/6KW/Jua1t+WNlybph43luoYm5Zub5bedJui0teW3nibkupHljZcm6ZmV6KW/JueUmOiCgyblroHlpI8m5paw55aGJuilv+iXjybpnZLmtbcm6LWE6K6vJumfs+S5kCbkuqTpgJom57uP5rWOJuaWh+iJuibpg73luIIm5L2T6IKyJuWPjOivrSbnu7zlkIgm55Sf5rS7JuaXhea4uCbmm7Loibom5pa56KiAJywKICAgIGNsYXNzX3VybDogJzIxNyY5OSYzJjUmNyY4MyYxOSYzMSY0NCY1OSY2OSY4NSYxMTEmMTI5JjEzOSYxNTEmMTY5JjE4NyYyMDImMjM5JjI1NCYyNTcmMjU5JjI4MSYyOTEmMzE2JjMyNyYzNTEmMzU3JjMwOCYzNDImNDMzJjQ0MiY0MjkmNDM5JjQzMiY0NDEmNDMwJjQzMSY0NDAmNDM4JjQzNSY0MzYmNDM0JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIHBsYXlfanNvbjogMCwKICAgIGxhenk6ICdqczppbnB1dD1pbnB1dC5yZXBsYWNlKCJ3d3cucWluZ3RpbmcuZm0vcmFkaW9zLyIsImxodHRwLnFpbmd0aW5nLmZtL2xpdmUvIikrIi82NGsubXAzIicsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvL+aOqOiNkDonKicsCiAgICDkuIDnuqc6ICcuY29udGVudFNlYyYmLnJhZGlvO3NwYW4mJlRleHQ7aW1nJiZzcmM7LmRlc2NSYWRpbyYmVGV4dDthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnJywKCiAgICAvL+aYr+WQpuWQr+eUqOi+heWKqeWXheaOojogMSwwCiAgICBzbmlmZmVyOiAxLAogICAgLy8g6L6F5Yqp5ZeF5o6i6KeE5YiZCiAgICBpc1ZpZGVvOiAiaHR0cCgoPyFodHRwKS4pezI2LH1cXC4obTN1OHxtcDR8Zmx2fGF2aXxta3Z8d212fG1wZ3xtcGVnfG1vdnx0c3wzZ3B8cm18cm12Ynxhc2Z8bTRhfG1wM3x3bWEpIiwKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+acieWjsOe7mOacrOe9kScsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cueW91c2hlbmdodWliZW4uY29tJywKICAgIHVybDogJy9meWNsYXNzL2Z5cGFnZScsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoLnBocD8mcT0qKiZwYWdlPWZ5cGFnZScsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAwLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLCAvL+e9keermeeahOWFqOWxgOivt+axgui2heaXtizpu5jorqTmmK8zMDAw5q+r56eSCiAgICBjbGFzc19wYXJzZTogJyNtZW51LW1haW4mJmxpOmd0KDApOmx0KDcpO2EmJlRleHQ7YSYmaHJlZjtjb20vKFxcdyspJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsaW1pdDogNiwKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnYXJ0aWNsZS5leGNlcnB0LWM1O2EmJnRpdGxlO2ltZyYmc3JjOy5wb3N0LWxpa2UmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJ2FydGljbGUuZXhjZXJwdC10dzsqOyo7dGltZSYmVGV4dDsqJywKfQ==
|
||||
@@ -0,0 +1 @@
|
||||
Ly8g6YGT6ZW/IGRycHnku5PlupMgaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV8zMjM5NDM1MS9kcl9weQovLyDpgZPplb8gZHJweeWuieWNk+acrOWcsOaQreW7uuivtOaYjiBodHRwczovL2NvZGUuZ2l0bGluay5vcmcuY24vYXBpL3YxL3JlcG9zL2hqZGhueC9kcl9weS9ibG9iL21hc3Rlci8lRTUlQUUlODklRTUlOEQlOTMlRTYlOUMlQUMlRTUlOUMlQjAlRTYlOTAlQUQlRTUlQkIlQkElRTglQUYlQjQlRTYlOTglOEUubWQKLy8g6YGT6ZW/IGRycHnlhpnmupAg5qih5p2/6KeE5YiZ6K+05piOIGh0dHBzOi8vZ2l0Y29kZS5uZXQvc3VwZXJ0bG8vZHJfcHkjJUU2JUE4JUExJUU2JTlEJUJGJUU4JUE3JTg0JUU1JTg4JTk5JUU4JUFGJUI0JUU2JTk4JThFCi8vIOmBk+mVvyBkcnB55YaZ5rqQIOWll+aooeaooeeJiCBodHRwczovL2docHJveHkubmV0L2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9oamRobngvZHJfcHkvbWFpbi9qcy8lRTYlQTglQTElRTYlOUQlQkYuanMKLy8g6YGT6ZW/IGRycHnlhpnmupAg5b2x54mH5pWZ56iLIGh0dHA6Ly8xMDEuMzQuNjcuMjM3OjUyNDQvJUU2JTk1JTk5JUU4JTgyJUIyL2RycHkKLy8g6YGT6ZW/IGRycHnlhpnmupAg5b2x54mH5pWZ56iLKG0zdTjliIfniYcpIGh0dHBzOi8vZnJlZWRycHkucnVuLmdvb3JtLmlvL3R4dC9qYy9wbGF5bGlzdC5tM3U4Ci8vIOa1t+mYlOS4i+i9vSBodHRwczovL2hhaWt1by5sYW56b3VpLmNvbS91L0dvbGRSaXZlcgovLyBQbHV0byBQbGF5ZXLlrpjmlrlURyBodHRwczovL3QubWUvUGx1dG9QbGF5ZXIKLy8gUGx1dG8gUGxheWVy5a6Y5pa5VEcgaHR0cHM6Ly90Lm1lL1BsdXRvUGxheWVyQ2hhbm5lbAoKLy8gcGx1dG8g5pKt5pS+5q2j5bi4Ci8vIOS/iuiAgeeahOWjs+aIllB5dGhvbkJveCDlnKhydWxlc+aWsOWinuW6leS4i+iuvuWumiDljbPlj6/mraPluLjmkq3mlL4KLy8geyJob3N0Ijoid3d3LmRqdXUuY29tIiwicnVsZSI6WyJtcDQuZGp1dS5jb20iXX0sCgp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAnRErpn7PkuZAnLAogICAgaG9zdDogJ2h0dHA6Ly93d3cuZGp1dS5jb20nLAogICAgaG9tZVVybDogJy9leGNsdXNpdmUvMTE1XzEuaHRtbCcsIC8v572R56uZ55qE6aaW6aG16ZO+5o6lLOWPr+S7peaYr+WujOaVtOi3r+W+hOaIluiAheebuOWvuei3r+W+hCznlKjkuo7liIbnsbvojrflj5blkozmjqjojZDojrflj5YgZnljbGFzc+aYr+WIhuexu+agh+etviBmeXBhZ2XmmK/pobXmlbAKICAgIHVybDogJy9kamxpc3QvZnljbGFzc19meXBhZ2UuaHRtbCcsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoP211c2ljbmFtZT0qKicsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBjbGFzc19wYXJzZTogJyN0b3BfYmFubmVyX2JnIGRpdjthJiZUZXh0O2EmJmhyZWY7L2RqbGlzdC8oXFxkKylfMS5odG1sJywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICBkb3VibGU6IGZhbHNlLAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICcubGlzdF9tdXNpY2xpc3QgdHI6Z3QoMCk7YSYmdGl0bGU7aW1nJiZzcmM7LmNvcjk5OTplcSgxKSYmVGV4dDthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnKjsqOyo7LnNjXzEmJlRleHQ7KicsCn0=
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"class": [
|
||||
{
|
||||
"type_name": "有声小说",
|
||||
"type_id": "有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "玄幻有声小说",
|
||||
"type_id": "玄幻有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "奇幻有声小说",
|
||||
"type_id": "奇幻有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "都市有声小说",
|
||||
"type_id": "都市有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "言情有声小说",
|
||||
"type_id": "言情有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "武侠有声小说",
|
||||
"type_id": "武侠有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "仙侠有声小说",
|
||||
"type_id": "仙侠有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "科幻有声小说",
|
||||
"type_id": "科幻有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "重生有声小说",
|
||||
"type_id": "重生有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "穿越有声小说",
|
||||
"type_id": "穿越有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "恐怖惊悚有声小说",
|
||||
"type_id": "恐怖惊悚有声小说"
|
||||
},
|
||||
{
|
||||
"type_name": "网游竞技有声小说",
|
||||
"type_id": "网游竞技有声小说"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"class": [
|
||||
{
|
||||
"type_name": "春晚小品",
|
||||
"type_id": "春晚小品"
|
||||
},
|
||||
{
|
||||
"type_name": "赵本山",
|
||||
"type_id": "赵本山"
|
||||
},
|
||||
{
|
||||
"type_name": "陈佩斯",
|
||||
"type_id": "陈佩斯"
|
||||
},
|
||||
{
|
||||
"type_name": "冯巩",
|
||||
"type_id": "冯巩"
|
||||
},
|
||||
{
|
||||
"type_name": "宋小宝",
|
||||
"type_id": "宋小宝"
|
||||
},
|
||||
{
|
||||
"type_name": "赵丽蓉",
|
||||
"type_id": "赵丽蓉"
|
||||
},
|
||||
{
|
||||
"type_name": "郭达",
|
||||
"type_id": "郭达"
|
||||
},
|
||||
{
|
||||
"type_name": "潘长江",
|
||||
"type_id": "潘长江"
|
||||
},
|
||||
{
|
||||
"type_name": "郭冬临",
|
||||
"type_id": "郭冬临"
|
||||
},
|
||||
{
|
||||
"type_name": "严顺开",
|
||||
"type_id": "严顺开"
|
||||
},
|
||||
{
|
||||
"type_name": "文松",
|
||||
"type_id": "文松"
|
||||
},
|
||||
{
|
||||
"type_name": "开心麻花",
|
||||
"type_id": "开心麻花"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,200 @@
|
||||
{
|
||||
"class": [
|
||||
{
|
||||
"type_name": "潮剧",
|
||||
"type_id": "潮剧"
|
||||
},
|
||||
{
|
||||
"type_name": "粤剧",
|
||||
"type_id": "粤剧"
|
||||
},
|
||||
{
|
||||
"type_name": "京剧",
|
||||
"type_id": "京剧"
|
||||
},
|
||||
{
|
||||
"type_name": "越剧",
|
||||
"type_id": "越剧"
|
||||
},
|
||||
{
|
||||
"type_name": "芗剧",
|
||||
"type_id": "芗剧"
|
||||
},
|
||||
{
|
||||
"type_name": "蒲剧",
|
||||
"type_id": "蒲剧"
|
||||
},
|
||||
{
|
||||
"type_name": "闽剧",
|
||||
"type_id": "闽剧"
|
||||
},
|
||||
{
|
||||
"type_name": "喊麦",
|
||||
"type_id": "喊麦"
|
||||
},
|
||||
{
|
||||
"type_name": "陕北说书",
|
||||
"type_id": "陕北说书"
|
||||
},
|
||||
{
|
||||
"type_name": "庐剧",
|
||||
"type_id": "庐剧"
|
||||
},
|
||||
{
|
||||
"type_name": "吕剧",
|
||||
"type_id": "吕剧"
|
||||
},
|
||||
{
|
||||
"type_name": "眉户",
|
||||
"type_id": "眉户"
|
||||
},
|
||||
{
|
||||
"type_name": "歌仔戏",
|
||||
"type_id": "歌仔戏"
|
||||
},
|
||||
{
|
||||
"type_name": "黄梅戏",
|
||||
"type_id": "黄梅戏"
|
||||
},
|
||||
{
|
||||
"type_name": "黄梅戏",
|
||||
"type_id": "黄梅戏"
|
||||
},
|
||||
{
|
||||
"type_name": "评剧",
|
||||
"type_id": "评剧"
|
||||
},
|
||||
{
|
||||
"type_name": "豫剧",
|
||||
"type_id": "豫剧"
|
||||
},
|
||||
{
|
||||
"type_name": "沪剧",
|
||||
"type_id": "沪剧"
|
||||
},
|
||||
{
|
||||
"type_name": "昆曲",
|
||||
"type_id": "昆曲"
|
||||
},
|
||||
{
|
||||
"type_name": "花鼓戏",
|
||||
"type_id": "花鼓戏"
|
||||
},
|
||||
{
|
||||
"type_name": "超清潮剧",
|
||||
"type_id": "超清潮剧"
|
||||
},
|
||||
{
|
||||
"type_name": "百花潮剧院",
|
||||
"type_id": "百花潮剧院"
|
||||
},
|
||||
{
|
||||
"type_name": "香港潮剧",
|
||||
"type_id": "香港潮剧"
|
||||
},
|
||||
{
|
||||
"type_name": "潮剧院",
|
||||
"type_id": "潮剧院"
|
||||
},
|
||||
{
|
||||
"type_name": "潮剧团",
|
||||
"type_id": "潮剧团"
|
||||
},
|
||||
{
|
||||
"type_name": "潮剧全剧",
|
||||
"type_id": "潮剧全剧"
|
||||
},
|
||||
{
|
||||
"type_name": "潮剧选段",
|
||||
"type_id": "潮剧选段"
|
||||
},
|
||||
{
|
||||
"type_name": "名家潮剧",
|
||||
"type_id": "名家潮剧"
|
||||
},
|
||||
{
|
||||
"type_name": "潮汕小品",
|
||||
"type_id": "潮汕小品"
|
||||
},
|
||||
{
|
||||
"type_name": "潮汕讲古",
|
||||
"type_id": "潮汕讲古"
|
||||
},
|
||||
{
|
||||
"type_name": "河北梆子",
|
||||
"type_id": "河北梆子"
|
||||
},
|
||||
{
|
||||
"type_name": "梆子腔",
|
||||
"type_id": "梆子腔"
|
||||
},
|
||||
{
|
||||
"type_name": "晋剧",
|
||||
"type_id": "晋剧"
|
||||
},
|
||||
{
|
||||
"type_name": "龙江剧",
|
||||
"type_id": "龙江剧"
|
||||
},
|
||||
{
|
||||
"type_name": "越调",
|
||||
"type_id": "越调"
|
||||
},
|
||||
{
|
||||
"type_name": "河南曲剧",
|
||||
"type_id": "河南曲剧"
|
||||
},
|
||||
{
|
||||
"type_name": "山东梆子",
|
||||
"type_id": "山东梆子"
|
||||
},
|
||||
{
|
||||
"type_name": "淮剧",
|
||||
"type_id": "淮剧"
|
||||
},
|
||||
{
|
||||
"type_name": "滑稽戏",
|
||||
"type_id": "滑稽戏"
|
||||
},
|
||||
{
|
||||
"type_name": "婺剧",
|
||||
"type_id": "婺剧"
|
||||
},
|
||||
{
|
||||
"type_name": "绍剧",
|
||||
"type_id": "绍剧"
|
||||
},
|
||||
{
|
||||
"type_name": "徽剧",
|
||||
"type_id": "徽剧"
|
||||
},
|
||||
{
|
||||
"type_name": "雁剧",
|
||||
"type_id": "雁剧"
|
||||
},
|
||||
{
|
||||
"type_name": "上党梆子",
|
||||
"type_id": "上党梆子"
|
||||
},
|
||||
{
|
||||
"type_name": "秦腔",
|
||||
"type_id": "秦腔"
|
||||
},
|
||||
{
|
||||
"type_name": "武安平调",
|
||||
"type_id": "武安平调"
|
||||
},
|
||||
{
|
||||
"type_name": "二人台",
|
||||
"type_id": "二人台"
|
||||
},
|
||||
{
|
||||
"type_name": "吉剧",
|
||||
"type_id": "吉剧"
|
||||
},
|
||||
{
|
||||
"type_name": "高腔",
|
||||
"type_id": "高腔"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"class": [
|
||||
{
|
||||
"type_name": "单口相声",
|
||||
"type_id": "单口相声"
|
||||
},
|
||||
{
|
||||
"type_name": "群口相声",
|
||||
"type_id": "群口相声"
|
||||
},
|
||||
{
|
||||
"type_name": "德云社",
|
||||
"type_id": "德云社"
|
||||
},
|
||||
{
|
||||
"type_name": "青曲社",
|
||||
"type_id": "青曲社"
|
||||
},
|
||||
{
|
||||
"type_name": "郭德纲",
|
||||
"type_id": "郭德纲"
|
||||
},
|
||||
{
|
||||
"type_name": "岳云鹏",
|
||||
"type_id": "岳云鹏"
|
||||
},
|
||||
{
|
||||
"type_name": "曹云金",
|
||||
"type_id": "曹云金"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,702 @@
|
||||
{
|
||||
"class": [
|
||||
{
|
||||
"type_name": "演唱会筛选",
|
||||
"type_id": "演唱会超清"
|
||||
},
|
||||
{
|
||||
"type_name": "粤语",
|
||||
"type_id": "粤语歌曲超清"
|
||||
},
|
||||
{
|
||||
"type_name": "热榜",
|
||||
"type_id": "2022年热们歌曲超清"
|
||||
},
|
||||
{
|
||||
"type_name": "抖音神曲",
|
||||
"type_id": "抖音神曲超清"
|
||||
},
|
||||
{
|
||||
"type_name": "经典老歌",
|
||||
"type_id": "经典老歌超清"
|
||||
},
|
||||
{
|
||||
"type_name": "DJ",
|
||||
"type_id": "DJ歌曲超清"
|
||||
},
|
||||
{
|
||||
"type_name": "网红翻唱",
|
||||
"type_id": "网红翻唱歌曲超清"
|
||||
},
|
||||
{
|
||||
"type_name": "韩国女团",
|
||||
"type_id": "韩国女团演唱会超清"
|
||||
}
|
||||
],
|
||||
"filters": {
|
||||
"演唱会超清": [
|
||||
{
|
||||
"key": "order",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "综合排序",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "最多点击",
|
||||
"v": "click"
|
||||
},
|
||||
{
|
||||
"n": "最新发布",
|
||||
"v": "pubdate"
|
||||
},
|
||||
{
|
||||
"n": "最多弹幕",
|
||||
"v": "dm"
|
||||
},
|
||||
{
|
||||
"n": "最多收藏",
|
||||
"v": "stow"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "tid",
|
||||
"name": "分类",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "A阿杜",
|
||||
"v": "阿杜演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "A阿黛尔",
|
||||
"v": "阿黛尔演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "BBeyond",
|
||||
"v": "Beyond演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "BBy2",
|
||||
"v": "By2演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "BBIGBANG",
|
||||
"v": "BIGBANG演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "B布兰妮",
|
||||
"v": "布兰妮演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "B坂井泉水",
|
||||
"v": "坂井泉水演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C陈奕迅",
|
||||
"v": "陈奕迅演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C蔡依林",
|
||||
"v": "蔡依林演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C初音未来",
|
||||
"v": "初音未来演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C蔡健雅",
|
||||
"v": "蔡健雅演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C陈小春",
|
||||
"v": "陈小春演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C草蜢",
|
||||
"v": "草蜢演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C陈慧娴",
|
||||
"v": "陈慧娴演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C崔健",
|
||||
"v": "崔健演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "C仓木麻衣",
|
||||
"v": "仓木麻衣演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D戴荃",
|
||||
"v": "戴荃演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D动力火车",
|
||||
"v": "动力火车演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D邓丽君",
|
||||
"v": "邓丽君演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D丁当",
|
||||
"v": "丁当演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D刀郎",
|
||||
"v": "刀郎演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D邓紫棋",
|
||||
"v": "邓紫棋演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D戴佩妮",
|
||||
"v": "戴佩妮演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "D邓丽君",
|
||||
"v": "邓丽君演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F飞儿乐队",
|
||||
"v": "飞儿乐队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F费玉清",
|
||||
"v": "费玉清演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F费翔",
|
||||
"v": "费翔演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F方大同",
|
||||
"v": "方大同演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F房东的猫",
|
||||
"v": "房东的猫演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F凤飞飞",
|
||||
"v": "凤飞飞演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "F凤凰传奇",
|
||||
"v": "凤凰传奇演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "G郭采洁",
|
||||
"v": "郭采洁演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "G光良",
|
||||
"v": "光良演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "G郭静",
|
||||
"v": "郭静演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "G郭富城",
|
||||
"v": "郭富城演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H胡彦斌",
|
||||
"v": "胡彦斌演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H胡夏",
|
||||
"v": "胡夏演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H韩红",
|
||||
"v": "韩红演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H黄品源",
|
||||
"v": "黄品源演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H黄小琥",
|
||||
"v": "黄小琥演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H花儿乐队",
|
||||
"v": "花儿乐队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H黄家强",
|
||||
"v": "黄家强演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "H后街男孩",
|
||||
"v": "后街男孩演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "J经典老歌",
|
||||
"v": "经典老歌演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "J贾斯丁比伯",
|
||||
"v": "贾斯丁比伯演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "J金池",
|
||||
"v": "金池演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "J金志文",
|
||||
"v": "金志文演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "J焦迈奇",
|
||||
"v": "焦迈奇演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "K筷子兄弟",
|
||||
"v": "筷子兄弟演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李玟",
|
||||
"v": "李玟演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林忆莲",
|
||||
"v": "林忆莲演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李克勤",
|
||||
"v": "李克勤演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L刘宪华",
|
||||
"v": "刘宪华演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李圣杰",
|
||||
"v": "李圣杰演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林宥嘉",
|
||||
"v": "林宥嘉演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L梁静茹",
|
||||
"v": "梁静茹演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李健",
|
||||
"v": "李健演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林俊杰",
|
||||
"v": "林俊杰演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李玉刚",
|
||||
"v": "李玉刚演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林志炫",
|
||||
"v": "林志炫演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李荣浩",
|
||||
"v": "李荣浩演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李宇春",
|
||||
"v": "李宇春演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L洛天依",
|
||||
"v": "洛天依演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林子祥",
|
||||
"v": "林子祥演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L李宗盛",
|
||||
"v": "李宗盛演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L黎明",
|
||||
"v": "黎明演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L刘德华",
|
||||
"v": "刘德华演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L罗大佑",
|
||||
"v": "罗大佑演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L林肯公园",
|
||||
"v": "林肯公园演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "LLadyGaga",
|
||||
"v": "LadyGaga演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "L旅行团乐队",
|
||||
"v": "旅行团乐队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "M莫文蔚",
|
||||
"v": "莫文蔚演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "M毛不易",
|
||||
"v": "毛不易演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "M梅艳芳",
|
||||
"v": "梅艳芳演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "M迈克尔杰克逊",
|
||||
"v": "迈克尔杰克逊演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "N南拳妈妈",
|
||||
"v": "南拳妈妈演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "P朴树",
|
||||
"v": "朴树演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Q齐秦",
|
||||
"v": "齐秦演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Q青鸟飞鱼",
|
||||
"v": "青鸟飞鱼演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "R容祖儿",
|
||||
"v": "容祖儿演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "R任贤齐",
|
||||
"v": "任贤齐演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "S水木年华",
|
||||
"v": "水木年华演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "S孙燕姿",
|
||||
"v": "孙燕姿演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "S苏打绿",
|
||||
"v": "苏打绿演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "SSHE",
|
||||
"v": "SHE演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "S孙楠",
|
||||
"v": "孙楠演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T陶喆",
|
||||
"v": "陶喆演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T谭咏麟",
|
||||
"v": "谭咏麟演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T田馥甄",
|
||||
"v": "田馥甄演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T谭维维",
|
||||
"v": "谭维维演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T逃跑计划",
|
||||
"v": "逃跑计划演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T田震",
|
||||
"v": "田震演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T谭晶",
|
||||
"v": "谭晶演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T屠洪刚",
|
||||
"v": "屠洪刚演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "T泰勒·斯威夫特",
|
||||
"v": "泰勒·斯威夫特演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W王力宏",
|
||||
"v": "王力宏演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W王杰",
|
||||
"v": "王杰演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W吴克群",
|
||||
"v": "吴克群演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W王心凌",
|
||||
"v": "王心凌演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W王靖雯",
|
||||
"v": "好声音王靖雯演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W汪峰",
|
||||
"v": "汪峰演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W伍佰",
|
||||
"v": "伍佰演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W王菲",
|
||||
"v": "王菲演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W五月天",
|
||||
"v": "五月天演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "W汪苏泷",
|
||||
"v": "汪苏泷演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X徐佳莹",
|
||||
"v": "徐佳莹演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X弦子",
|
||||
"v": "弦子演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X萧亚轩",
|
||||
"v": "萧亚轩演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X许巍",
|
||||
"v": "许巍演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X薛之谦",
|
||||
"v": "薛之谦演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X许嵩",
|
||||
"v": "许嵩演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X小虎队",
|
||||
"v": "小虎队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X萧敬腾",
|
||||
"v": "萧敬腾演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X谢霆锋",
|
||||
"v": "谢霆锋演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X徐小凤",
|
||||
"v": "徐小凤演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "X信乐队",
|
||||
"v": "信乐队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y夜愿乐队",
|
||||
"v": "夜愿乐队演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y羽泉",
|
||||
"v": "羽泉演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y郁可唯",
|
||||
"v": "郁可唯演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y叶倩文",
|
||||
"v": "叶倩文演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y杨坤",
|
||||
"v": "杨坤演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y庾澄庆",
|
||||
"v": "庾澄庆演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y尤长靖",
|
||||
"v": "尤长靖演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y易烊千玺",
|
||||
"v": "易烊千玺演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y袁娅维",
|
||||
"v": "袁娅维演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y杨丞琳",
|
||||
"v": "杨丞琳演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y杨千嬅",
|
||||
"v": "杨千嬅演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Y杨宗纬",
|
||||
"v": "杨宗纬演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z郑秀文",
|
||||
"v": "郑秀文演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周杰伦",
|
||||
"v": "周杰伦演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张学友",
|
||||
"v": "张学友演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张信哲",
|
||||
"v": "张信哲演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张宇",
|
||||
"v": "张宇演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周华健",
|
||||
"v": "周华健演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张韶涵",
|
||||
"v": "张韶涵演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周深",
|
||||
"v": "周深演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z纵贯线",
|
||||
"v": "纵贯线演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z赵雷",
|
||||
"v": "赵雷演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周传雄",
|
||||
"v": "周传雄演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张国荣",
|
||||
"v": "张国荣演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周慧敏",
|
||||
"v": "周慧敏演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张惠妹",
|
||||
"v": "张惠妹演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z周笔畅",
|
||||
"v": "周笔畅演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z郑中基",
|
||||
"v": "郑中基演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张艺兴",
|
||||
"v": "张艺兴演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张震岳",
|
||||
"v": "张震岳演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z张雨生",
|
||||
"v": "张雨生演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z郑智化",
|
||||
"v": "郑智化演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z卓依婷",
|
||||
"v": "卓依婷演唱会超清"
|
||||
},
|
||||
{
|
||||
"n": "Z中岛美雪",
|
||||
"v": "中岛美雪演唱会超清"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "duration",
|
||||
"name": "时长",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "60分钟以上",
|
||||
"v": "4"
|
||||
},
|
||||
{
|
||||
"n": "30~60分钟",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "10~30分钟",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "10分钟以下",
|
||||
"v": "1"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
"规则名": "戏曲多多",
|
||||
"规则作者": "",
|
||||
"请求头参数": "User-Agent$okhttp/3.12.6",
|
||||
"网页编码格式": "UTF-8",
|
||||
"图片是否需要代理": "0",
|
||||
"是否开启获取首页数据": "0",
|
||||
"首页推荐链接": "",
|
||||
"首页列表数组规则": "",
|
||||
"首页片单列表数组规则": "",
|
||||
"首页片单是否Jsoup写法": "1",
|
||||
"首页片单标题": "a&&title",
|
||||
"首页片单链接": "a&&href",
|
||||
"首页片单图片": "img&&src",
|
||||
"首页片单副标题": "",
|
||||
"首页片单链接加前缀": "",
|
||||
"首页片单链接加后缀": "",
|
||||
"分类起始页码": "0",
|
||||
"分类链接": "https://main.xiquduoduo.com/bama/service/s.php?type=getcollabellist&collid={cateId}&label=默认&pg={catePg}&ps=30",
|
||||
"分类名称": "花鼓戏&黄梅戏&京剧&老电影&小品相声&儿歌多多&越剧&车载歌曲&采茶戏&豫剧&晋剧&经典歌曲&祁剧&桂剧&民间小调&二人转&河南坠子&评剧&歌仔戏&曲剧&湘剧&川剧&秦腔&婺剧&大平调&越调&莲花落&淮剧&赣剧&春晚戏曲&昆曲&锡剧&二人台&上党梆子&河北梆子&眉户戏&扬剧&皮影戏&绍兴莲花落&北路梆子&泗州戏&楚剧&庐剧&蒲剧&潮剧&评书&沪剧&粤剧&莆仙戏&琼剧&藏剧&布袋戏&吕剧&闽剧&黔剧&滇剧&新疆曲子戏&陇剧&漫瀚剧",
|
||||
"分类名称替换词": "80000084&80000018&80000013&80000221&80000083&80000069&80000086&80000214&80000103&80000017&80000020&80000219&80000100&80000102&80000224&80000014&80000023&80000091&80000087&80000022&80000096&80000088&80000019&80000216&80000217&80000218&80000136&80000095&80000099&80000015&80000090&80000097&80000021&80000025&80000027&80000110&80000048&80000092&80000137&80000024&80000220&80000098&80000101&80000093&80000026&80000223&80000089&80000085&80000215&80000104&80000112&80000114&80000094&80000105&80000106&80000107&80000108&80000109&80000113",
|
||||
"筛选数据": {},
|
||||
//"筛选数据": "ext",
|
||||
//{cateId}
|
||||
"筛选子分类名称": "",
|
||||
"筛选子分类替换词": "",
|
||||
//{class}
|
||||
"筛选类型名称": "",
|
||||
"筛选类型替换词": "*",
|
||||
//{area}
|
||||
"筛选地区名称": "",
|
||||
"筛选地区替换词": "*",
|
||||
//{year}
|
||||
"筛选年份名称": "",
|
||||
"筛选年份替换词": "*",
|
||||
//{lang}
|
||||
"筛选语言名称": "",
|
||||
"筛选语言替换词": "*",
|
||||
//{by}
|
||||
"筛选排序名称": "默认&最新&高清&全本",
|
||||
"筛选排序替换词": "*",
|
||||
"分类截取模式": "0",
|
||||
"分类列表数组规则": "list",
|
||||
"分类片单是否Jsoup写法": "1",
|
||||
"分类片单标题": "name",
|
||||
"分类片单链接": "ddurl",
|
||||
"分类片单图片": "pic",
|
||||
"分类片单副标题": "",
|
||||
"分类片单链接加前缀": "",
|
||||
"分类片单链接加后缀": "",
|
||||
"搜索请求头参数": "User-Agent$okhttp/3.12.6",
|
||||
"搜索起始页码":"0",
|
||||
"搜索链接": "https://main.xiquduoduo.com/bama/service/s.php?type=ddsearch&keyword={wd}&pg={SearchPg}&ps=30&album=true&allbz=true&origin=true",
|
||||
"POST请求数据": "",
|
||||
"搜索截取模式": "0",
|
||||
"搜索列表数组规则": "list",
|
||||
"搜索片单是否Jsoup写法": "1",
|
||||
"搜索片单图片": "pic",
|
||||
"搜索片单标题": "name",
|
||||
"搜索片单链接": "ddurl",
|
||||
"搜索片单副标题": "",
|
||||
"搜索片单链接加前缀": "",
|
||||
"搜索片单链接加后缀": "",
|
||||
"链接是否直接播放": "1",
|
||||
"直接播放链接加前缀": "",
|
||||
"直接播放链接加后缀": "",
|
||||
"直接播放直链视频请求头": "",
|
||||
"是否开启手动嗅探": "0",
|
||||
"手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos",
|
||||
"手动嗅探视频链接过滤词": ".html#=http"
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"首页": "0",
|
||||
// "播放链接前缀": "https://www.gyf.lol",
|
||||
"数组": "data\":{\"tit&&s_log",
|
||||
"图片": "https://p0.ssl.cdn.btime.com/+ssl.cdn.btime.com/&&\"",
|
||||
"副标题": "le\":\"&&\"",
|
||||
"标题": "text\":\"&&\"",
|
||||
"链接": "item.btime.com/&&\"",
|
||||
"链接前缀": "https://app.api.btime.com/video/play?callback=jQuery36009651202523243325_1747927554988&id=",
|
||||
// "线路标题": "</i>&&<span",
|
||||
"播放数组": "video_streams&&audio_streams",
|
||||
"播放列表": "stream&&duration",
|
||||
"播放标题": "stream_vbt\":\"&&\"",
|
||||
"播放链接": "url\":\"&&\"",
|
||||
"分类url": "https://pc.api.btime.com/btimeweb/infoFlow?callback=jQuery36002244958011106073_1747920210579&list_id={cateId}&refresh={catePg}&count=2000&expands=pageinfo&_=1747920210580",
|
||||
"分类": "2025$btv_08da67cea600bf3c78973427bfaba12d_s0_2025#2024$btv_08da67cea600bf3c78973427bfaba12d_s0_2024#2023$btv_08da67cea600bf3c78973427bfaba12d_s0_2023#2022$btv_08da67cea600bf3c78973427bfaba12d_s0_2022#2021$btv_08da67cea600bf3c78973427bfaba12d_s0_2021#2020$btv_08da67cea600bf3c78973427bfaba12d_s0_2020#2019$btv_08da67cea600bf3c78973427bfaba12d_s0_2019#2018$btv_08da67cea600bf3c78973427bfaba12d_s0_2018"
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
@@ -0,0 +1,240 @@
|
||||
import re
|
||||
import sys
|
||||
from base64 import b64encode, b64decode
|
||||
from urllib.parse import quote, unquote
|
||||
from pyquery import PyQuery as pq
|
||||
from requests import Session, adapters
|
||||
from urllib3.util.retry import Retry
|
||||
from concurrent.futures import ThreadPoolExecutor, as_completed
|
||||
sys.path.append('..')
|
||||
from base.spider import Spider
|
||||
|
||||
class Spider(Spider):
|
||||
def init(self, extend=""):
|
||||
self.host = "https://www.22a5.com"
|
||||
self.session = Session()
|
||||
adapter = adapters.HTTPAdapter(max_retries=Retry(total=3, backoff_factor=0.5, status_forcelist=[429, 500, 502, 503, 504]), pool_connections=20, pool_maxsize=50)
|
||||
self.session.mount("http://", adapter)
|
||||
self.session.mount("https://", adapter)
|
||||
self.headers = {"User-Agent": "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Mobile Safari/537.36"}
|
||||
self.session.headers.update(self.headers)
|
||||
|
||||
def getName(self): return "爱听音乐"
|
||||
def isVideoFormat(self, url): return bool(re.search(r'\.(m3u8|mp4|mp3|m4a|flv)(\?|$)', url or "", re.I))
|
||||
def manualVideoCheck(self): return False
|
||||
def destroy(self): self.session.close()
|
||||
|
||||
def homeContent(self, filter):
|
||||
classes = [{"type_name": n, "type_id": i} for n, i in [("歌手","/singerlist/index/index/index/index.html"), ("TOP榜单","/list/top.html"), ("新歌榜","/list/new.html"), ("电台","/radiolist/index.html"), ("高清MV","/mvlist/oumei.html"), ("专辑","/albumlist/index.html"), ("歌单","/playtype/index.html")]]
|
||||
filters = {p: d for p in [c["type_id"] for c in classes if "singer" not in c["type_id"]] if (d := self._fetch_filters(p))}
|
||||
|
||||
if "/radiolist/index.html" not in filters:
|
||||
filters["/radiolist/index.html"] = [{"key": "id", "name": "分类", "value": [{"n": n, "v": v} for n,v in zip(["最新","最热","有声小说","相声","音乐","情感","国漫","影视","脱口秀","历史","儿童","教育","八卦","推理","头条"], ["index","hot","novel","xiangyi","music","emotion","game","yingshi","talkshow","history","children","education","gossip","tuili","headline"])]}]
|
||||
|
||||
filters["/singerlist/index/index/index/index.html"] = [
|
||||
{"key": "area", "name": "地区", "value": [{"n": n, "v": v} for n,v in [("全部","index"),("华语","huayu"),("欧美","oumei"),("韩国","hanguo"),("日本","ribrn")]]},
|
||||
{"key": "sex", "name": "性别", "value": [{"n": n, "v": v} for n,v in [("全部","index"),("男","male"),("女","girl"),("组合","band")]]},
|
||||
{"key": "genre", "name": "流派", "value": [{"n": n, "v": v} for n,v in [("全部","index"),("流行","liuxing"),("电子","dianzi"),("摇滚","yaogun"),("嘻哈","xiha"),("R&B","rb"),("民谣","minyao"),("爵士","jueshi"),("古典","gudian")]]},
|
||||
{"key": "char", "name": "字母", "value": [{"n": n, "v": v} for n,v in [("全部","index")] + [{"n": chr(i), "v": chr(i).lower()} for i in range(65, 91)]]}
|
||||
]
|
||||
return {"class": classes, "filters": filters, "list": []}
|
||||
|
||||
def homeVideoContent(self): return {"list": []}
|
||||
|
||||
def categoryContent(self, tid, pg, filter, extend):
|
||||
pg = int(pg or 1)
|
||||
url = tid
|
||||
if "/singerlist/" in tid:
|
||||
p = tid.split('/')
|
||||
if len(p) >= 6:
|
||||
url = "/".join(p[:2] + [extend.get(k, p[i]) for i, k in enumerate(["area", "sex", "genre"], 2)] + [f"{extend.get('char', 'index')}.html"])
|
||||
elif "id" in extend and extend["id"] not in ["index", "top"]:
|
||||
url = tid.replace("index.html", f"{extend['id']}.html").replace("top.html", f"{extend['id']}.html")
|
||||
if url == tid: url = f"{tid.rsplit('/', 1)[0]}/{extend['id']}.html"
|
||||
|
||||
if pg > 1:
|
||||
sep = "/" if any(x in url for x in ["/singerlist/", "/radiolist/", "/mvlist/", "/playtype/", "/list/"]) else "_"
|
||||
url = re.sub(r'(_\d+|/\d+)?\.html$', f'{sep}{pg}.html', url)
|
||||
|
||||
doc = self.getpq(url)
|
||||
return {"list": self._parse_list(doc(".play_list li, .video_list li, .pic_list li, .singer_list li, .ali li, .layui-row li, .base_l li"), tid), "page": pg, "pagecount": 9999, "limit": 90, "total": 999999}
|
||||
|
||||
def searchContent(self, key, quick, pg="1"):
|
||||
return {"list": self._parse_list(self.getpq(f"/so/{quote(key)}/{pg}.html")(".base_l li, .play_list li"), "search"), "page": int(pg)}
|
||||
|
||||
def detailContent(self, ids):
|
||||
url = self._abs(ids[0])
|
||||
doc = self.getpq(url)
|
||||
vod = {"vod_id": url, "vod_name": self._clean(doc("h1").text() or doc("title").text()), "vod_pic": self._abs(doc(".djpg img, .pic img, .djpic img").attr("src")), "vod_play_from": "爱听音乐", "vod_content": ""}
|
||||
|
||||
if any(x in url for x in ["/playlist/", "/album/", "/list/", "/singer/", "/special/", "/radio/", "/radiolist/"]):
|
||||
eps = self._get_eps(doc)
|
||||
page_urls = {self._abs(a.attr("href")) for a in doc(".page a, .dede_pages a, .pagelist a").items() if a.attr("href") and "javascript" not in a.attr("href")} - {url}
|
||||
if page_urls:
|
||||
with ThreadPoolExecutor(max_workers=5) as ex:
|
||||
for r in as_completed([ex.submit(lambda u: self._get_eps(self.getpq(u)), u) for u in sorted(page_urls, key=lambda x: int(re.search(r'[_\/](\d+)\.html', x).group(1)) if re.search(r'[_\/](\d+)\.html', x) else 0)]):
|
||||
eps.extend(r.result() or [])
|
||||
if eps:
|
||||
vod.update({"vod_play_from": "播放列表", "vod_play_url": "#".join(eps)})
|
||||
return {"list": [vod]}
|
||||
|
||||
play_list = []
|
||||
if mid := re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', url):
|
||||
lrc_url = f"{self.host}/plug/down.php?ac=music&lk=lrc&id={mid.group(2)}"
|
||||
play_list = [f"播放${self.e64('0@@@@' + url + '|||' + lrc_url)}"]
|
||||
|
||||
elif vid := re.search(r'/(video|mp4)/([^/]+)\.html', url):
|
||||
with ThreadPoolExecutor(max_workers=3) as ex:
|
||||
fs = {ex.submit(self._api, "/plug/down.php", {"ac": "vplay", "id": vid.group(2), "q": q}): n for n, q in [("蓝光", 1080), ("超清", 720), ("高清", 480)]}
|
||||
play_list = [f"{fs[f]}${self.e64('0@@@@'+u)}" for f in as_completed(fs) if (u := f.result())]
|
||||
play_list.sort(key=lambda x: {"蓝":0, "超":1, "高":2}.get(x[0], 3))
|
||||
|
||||
vod["vod_play_url"] = "#".join(play_list) if play_list else f"解析失败${self.e64('1@@@@'+url)}"
|
||||
return {"list": [vod]}
|
||||
|
||||
def playerContent(self, flag, id, vipFlags):
|
||||
raw = self.d64(id).split("@@@@")[-1]
|
||||
url, subt = raw.split("|||") if "|||" in raw else (raw, "")
|
||||
url = url.replace(r"\/", "/")
|
||||
|
||||
if ".html" in url and not self.isVideoFormat(url):
|
||||
if mid := re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', url):
|
||||
if r_url := self._api("/js/play.php", method="POST", data={"id": mid.group(2), "type": "music"}, headers={"Referer": url.replace("http://","https://"), "X-Requested-With": "XMLHttpRequest"}):
|
||||
url = r_url if ".php" not in r_url else url
|
||||
elif vid := re.search(r'/(video|mp4)/([^/]+)\.html', url):
|
||||
with ThreadPoolExecutor(max_workers=3) as ex:
|
||||
for f in as_completed([ex.submit(self._api, "/plug/down.php", {"ac": "vplay", "id": vid.group(2), "q": q}) for q in [1080, 720, 480]]):
|
||||
if v_url := f.result():
|
||||
url = v_url; break
|
||||
|
||||
result = {"parse": 0, "url": url, "header": {"User-Agent": self.headers["User-Agent"]}}
|
||||
if "22a5.com" in url: result["header"]["Referer"] = self.host + "/"
|
||||
|
||||
# OK影视3.6.5+支持LRC格式滚动歌词
|
||||
if subt:
|
||||
try:
|
||||
r = self.session.get(subt, headers={"Referer": self.host + "/"}, timeout=5)
|
||||
lrc_content = r.text
|
||||
if lrc_content:
|
||||
# 过滤广告内容
|
||||
lrc_content = self._filter_lrc_ads(lrc_content)
|
||||
result["lrc"] = lrc_content
|
||||
except:
|
||||
pass
|
||||
|
||||
return result
|
||||
|
||||
def _filter_lrc_ads(self, lrc_text):
|
||||
"""过滤LRC歌词中的广告内容"""
|
||||
lines = lrc_text.splitlines()
|
||||
filtered_lines = []
|
||||
|
||||
# 广告关键词模式
|
||||
ad_patterns = [
|
||||
r'欢迎来访.*',
|
||||
r'本站.*',
|
||||
r'.*广告.*',
|
||||
r'QQ群.*',
|
||||
r'.*www\..*',
|
||||
r'.*http.*',
|
||||
r'.*\.com.*',
|
||||
r'.*\.cn.*',
|
||||
r'.*\.net.*',
|
||||
r'.*音乐网.*',
|
||||
r'.*提供.*',
|
||||
r'.*下载.*',
|
||||
]
|
||||
|
||||
for line in lines:
|
||||
# 保留时间标签行,但过滤掉广告文本
|
||||
if re.match(r'\[\d{2}:\d{2}', line):
|
||||
# 检查是否包含广告
|
||||
is_ad = False
|
||||
for pattern in ad_patterns:
|
||||
if re.search(pattern, line, re.IGNORECASE):
|
||||
is_ad = True
|
||||
break
|
||||
|
||||
if not is_ad:
|
||||
filtered_lines.append(line)
|
||||
else:
|
||||
# 非时间标签行(可能是元数据),保留
|
||||
filtered_lines.append(line)
|
||||
|
||||
return '\n'.join(filtered_lines)
|
||||
|
||||
def localProxy(self, param):
|
||||
url = unquote(param.get("url", ""))
|
||||
type_ = param.get("type")
|
||||
|
||||
if type_ == "img":
|
||||
return [200, "image/jpeg", self.session.get(url, headers={"Referer": self.host + "/"}, timeout=5).content, {}]
|
||||
|
||||
elif type_ == "lrc":
|
||||
try:
|
||||
r = self.session.get(url, headers={"Referer": self.host + "/"}, timeout=5)
|
||||
# 同时过滤代理中的广告
|
||||
lrc_content = r.text
|
||||
lrc_content = self._filter_lrc_ads(lrc_content)
|
||||
return [200, "application/octet-stream", lrc_content.encode('utf-8'), {}]
|
||||
except:
|
||||
return [404, "text/plain", "Error", {}]
|
||||
|
||||
return None
|
||||
|
||||
def _parse_list(self, items, tid=""):
|
||||
res = []
|
||||
for li in items.items():
|
||||
a = li("a").eq(0)
|
||||
if not (href := a.attr("href")) or href == "/" or any(x in href for x in ["/user/", "/login/", "javascript"]): continue
|
||||
if not (name := self._clean(li(".name").text() or a.attr("title") or a.text())): continue
|
||||
pic = self._abs((li("img").attr("src") or "").replace('120', '500'))
|
||||
res.append({"vod_id": self._abs(href), "vod_name": name, "vod_pic": f"{self.getProxyUrl()}&url={pic}&type=img" if pic else "", "style": {"type": "oval" if "/singer/" in href else ("list" if any(x in tid for x in ["/list/", "/playtype/", "/albumlist/"]) else "rect"), "ratio": 1 if "/singer/" in href else 1.33}})
|
||||
return res
|
||||
|
||||
def _get_eps(self, doc):
|
||||
eps = []
|
||||
for li in doc(".play_list li, .song_list li, .music_list li").items():
|
||||
if not (a := li("a").eq(0)).attr("href") or not re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', a.attr("href")): continue
|
||||
full_url = self._abs(a.attr("href"))
|
||||
|
||||
lrc_part = ""
|
||||
mid = re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', full_url)
|
||||
if mid:
|
||||
lrc_url = f"{self.host}/plug/down.php?ac=music&lk=lrc&id={mid.group(2)}"
|
||||
lrc_part = f"|||{lrc_url}"
|
||||
|
||||
eps.append(f"{self._clean(a.text() or li('.name').text())}${self.e64('0@@@@' + full_url + lrc_part)}")
|
||||
return eps
|
||||
|
||||
def _clean(self, text): return re.sub(r'(爱玩音乐网|视频下载说明|视频下载地址|www\.2t58\.com|MP3免费下载|LRC歌词下载|全部歌曲|\[第\d+页\]|刷新|每日推荐|最新|热门|推荐|MV|高清|无损)', '', text or "", flags=re.I).strip()
|
||||
|
||||
def _fetch_filters(self, url):
|
||||
doc, filters = self.getpq(url), []
|
||||
for i, group in enumerate([doc(s) for s in [".ilingku_fl", ".class_list", ".screen_list", ".box_list", ".nav_list"] if doc(s)]):
|
||||
opts, seen = [{"n": "全部", "v": "top" if "top" in url else "index"}], set()
|
||||
for a in group("a").items():
|
||||
if (v := (a.attr("href") or "").split("?")[0].rstrip('/').split('/')[-1].replace('.html','')) and v not in seen:
|
||||
opts.append({"n": a.text().strip(), "v": v}); seen.add(v)
|
||||
if len(opts) > 1: filters.append({"key": f"id{i}" if i else "id", "name": "分类", "value": opts})
|
||||
return filters
|
||||
|
||||
def _api(self, path, params=None, method="GET", headers=None, data=None):
|
||||
try:
|
||||
h = self.headers.copy()
|
||||
if headers: h.update(headers)
|
||||
r = (self.session.post if method == "POST" else self.session.get)(f"{self.host}{path}", params=params, data=data, headers=h, timeout=10, allow_redirects=False)
|
||||
if loc := r.headers.get("Location"): return self._abs(loc.strip())
|
||||
return self._abs(r.json().get("url", "").replace(r"\/", "/")) or (r.text.strip() if r.text.strip().startswith("http") else "")
|
||||
except: return ""
|
||||
|
||||
def getpq(self, url):
|
||||
import time
|
||||
for _ in range(2):
|
||||
try: return pq(self.session.get(self._abs(url), timeout=5).text)
|
||||
except: time.sleep(0.1)
|
||||
return pq("<html></html>")
|
||||
|
||||
def _abs(self, url): return url if url.startswith("http") else (f"{self.host}{'/' if not url.startswith('/') else ''}{url}" if url else "")
|
||||
def e64(self, text): return b64encode(text.encode("utf-8")).decode("utf-8")
|
||||
def d64(self, text): return b64decode(text.encode("utf-8")).decode("utf-8")
|
||||
Reference in New Issue
Block a user