diff --git a/.next-dev/dev/build-manifest.json b/.next-dev/dev/build-manifest.json index 76813de..3b86058 100644 --- a/.next-dev/dev/build-manifest.json +++ b/.next-dev/dev/build-manifest.json @@ -1,34 +1,6 @@ { "pages": { - "/_app": [ - "static/chunks/1cpi_next_dist_compiled_12ffzourts9s-._.js", - "static/chunks/1cpi_next_dist_shared_lib_1xry7g76avoay._.js", - "static/chunks/1cpi_next_dist_client_0heox_8u6hzq_._.js", - "static/chunks/1cpi_next_dist_11ks8blj8_523._.js", - "static/chunks/1cpi_next_app_1pj3rb0tuydhl.js", - "static/chunks/[next]_entry_page-loader_ts_0btqvd_85dcyl._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0egl44aedd7_2._.js", - "static/chunks/[root-of-the-server]__0l4r13lr2xywy._.js", - "static/chunks/pages__app_0du2_q-cjzmdk._.js", - "static/chunks/turbopack-pages__app_1-gu3yg9v7aao._.js" - ], - "/_error": [ - "static/chunks/1cpi_next_dist_shared_lib_0xs0-c6oakuxf._.js", - "static/chunks/1cpi_next_dist_client_1gnx2v75vaujc._.js", - "static/chunks/1cpi_next_dist_compiled_14ha2_lqkzgf0._.js", - "static/chunks/1cpi_next_dist_1ke6kfpq8w7bf._.js", - "static/chunks/[next]_entry_page-loader_ts_1yxf6xa3b75hv._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0apodh3colre9._.js", - "static/chunks/[root-of-the-server]__02sxxpho_3e87._.js", - "static/chunks/pages__error_0syo-i05b6bs9._.js", - "static/chunks/turbopack-pages__error_0uvy9rwo-qqd2._.js" - ] + "/_app": [] }, "devFiles": [], "polyfillFiles": [ @@ -69,51 +41,6 @@ "static/chunks/turbopack-_1ajtdyja1k2v5._.js", "static/chunks/_219uq1sj0q91c._.js" ], - "/topics/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_02xtyms8_yhpv._.js" - ], - "/home-road/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0sf-lmfgdqib-._.js" - ], - "/info/[slug]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0t69-r8qc6d_3._.js" - ], "/_not-found/page": [ "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", @@ -129,7 +56,7 @@ "static/chunks/turbopack-_1ajtdyja1k2v5._.js", "static/chunks/_18x7jxupx5rou._.js" ], - "/search/page": [ + "/nav/page": [ "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", @@ -142,67 +69,7 @@ "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", "static/chunks/_1anvha4rlo79g._.js", "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_20654wqoxjppx._.js" - ], - "/short-drama/[slug]/play/[episode]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0rc01luv623c1._.js" - ], - "/short-drama/[slug]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_1ijk6p-ee6-ze._.js" - ], - "/shorts/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0x_v3k_l8k1jn._.js" - ], - "/rank/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0qukakka4cbt4._.js" + "static/chunks/_0w2jlohhfhuy8._.js" ] }, "pagesChunkGroupBootstrapParams": {}, diff --git a/.next-dev/dev/cache/fetch-cache/789afe2ed434027b6d0e6add60869313f66fa5a8a7937c6792e9e8c30f02ccbe b/.next-dev/dev/cache/fetch-cache/789afe2ed434027b6d0e6add60869313f66fa5a8a7937c6792e9e8c30f02ccbe index 9e51506..8feb3a3 100644 --- a/.next-dev/dev/cache/fetch-cache/789afe2ed434027b6d0e6add60869313f66fa5a8a7937c6792e9e8c30f02ccbe +++ b/.next-dev/dev/cache/fetch-cache/789afe2ed434027b6d0e6add60869313f66fa5a8a7937c6792e9e8c30f02ccbe @@ -1 +1 @@ -{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55cd95dbb4be2e1-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 15:21:35 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=FcsTKashtMZjonXBJ3pHHB44cwNcoge0WlcuVgj%2B%2BgdyB6KvcUnZFpwmIJCygG9ffGtR3ddJQy%2BKo4Ly3bk71KJICr2%2FJB7HvB1jweyN3XBsT9u6CYEk7bSlcGGjts0sCS8Da7Sp\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiZm9vdGVySW5mbyI6eyJicmFuZCI6eyJ0aXRsZSI6Ijkx55+t5YmnIiwiY29udGVudCI6Ijkx55+t5Ymn5pyA5paw5Zu95LqnQVblhY3otLnop4LnnIvvvIHmr4/ml6Xmm7TmlrDjgIHlpKnnvo7jgIHonJzmoYPjgIHpurvosYbkvKDlqpLjgIE5MeWItueJh+WOguaXoOW5v+WRiuW5suaJsO+8gSJ9LCJuYXZMaXN0IjpbeyJpZCI6NDE4NjEsIm5hbWUiOiJIROefreWJpy3lupXpg6jlr7zoiKoiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbeyJpZCI6MTU3ODEsIm5hbWUiOiLlhbPkuo7miJHku6wiLCJpc0ZyaWVuZEFkcyI6ZmFsc2UsInVybFZhbHVlIjoiL3JpY2h0ZXh0L+WFs+S6juaIkeS7rCJ9LHsiaWQiOjE1ODgxLCJuYW1lIjoi5oSP6KeB5Y+N6aaIIiwiaXNGcmllbmRBZHMiOmZhbHNlLCJ1cmxWYWx1ZSI6Ii9mZWVkYmFjayJ9LHsiaWQiOjE5MTkxLCJuYW1lIjoi55So5oi35p2h5qy+IiwiaXNGcmllbmRBZHMiOmZhbHNlLCJ1cmxWYWx1ZSI6Ii9yaWNodGV4dC/nlKjmiLfmnaHmrL4ifSx7ImlkIjozMDMyMywibmFtZSI6IumakOengeaUv+etliIsImlzRnJpZW5kQWRzIjpmYWxzZSwidXJsVmFsdWUiOiIvcmljaHRleHQv6ZqQ56eB5pS/562WIn1dLCJ1cmxWYWx1ZSI6IiIsImNhdGVnb3J5VHlwZSI6Mywic2VvSW5mbyI6eyJ0aXRsZSI6IkhE55+t5YmnLeW6lemDqOWvvOiIqiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiJIROefreWJpy3lupXpg6jlr7zoiKoifX1dLCJjb250YWN0TGlzdCI6W3sibmFtZSI6IkUtbWFpbCIsInZhbHVlIjoiOTFzcGdmQGdtYWlsLmNvbSJ9LHsibmFtZSI6IuWVhuWKoeWQiOS9nO+8mueri+WNs+iBlOezuyIsInZhbHVlIjoiaHR0cHM6Ly90MXQxLmNvbSJ9LHsibmFtZSI6IuWumOaWuee+pO+8mueri+WNs+WKoOWFpSIsInZhbHVlIjoiaHR0cHM6Ly90Lm1lL2Z1bGlxdW5fOTFzcCJ9XX19LCJoYXNoIjpmYWxzZSwibXNnIjoic3VjY2VzcyIsInRpbWUiOiIyMDI2LTExLTA1VDE1OjIxOjM1LjY3NloiLCJ0aXAiOiLmiJDlip8ifQ==","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/config/footer/info"},"revalidate":60,"tags":["footer-info"]} \ No newline at end of file +{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55d70f69881e2f8-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 17:05:05 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=t2nW9L0XOhUtJCnN4rT1xm5TaMcfaGSyYBCYEJWu%2FpJBlgzShIIpKjDJZppke9%2FDdcoSYssjhavV8ir8PfrxecauxSMfUBxwoHQRI2I8G5DsXd8QHJ%2BneaSe7Hua8iTWaBcLJ27X\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiZm9vdGVySW5mbyI6eyJicmFuZCI6eyJ0aXRsZSI6Ijkx55+t5YmnIiwiY29udGVudCI6Ijkx55+t5Ymn5pyA5paw5Zu95LqnQVblhY3otLnop4LnnIvvvIHmr4/ml6Xmm7TmlrDjgIHlpKnnvo7jgIHonJzmoYPjgIHpurvosYbkvKDlqpLjgIE5MeWItueJh+WOguaXoOW5v+WRiuW5suaJsO+8gSJ9LCJuYXZMaXN0IjpbeyJpZCI6NDE4NjEsIm5hbWUiOiJIROefreWJpy3lupXpg6jlr7zoiKoiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbeyJpZCI6MTU3ODEsIm5hbWUiOiLlhbPkuo7miJHku6wiLCJpc0ZyaWVuZEFkcyI6ZmFsc2UsInVybFZhbHVlIjoiL3JpY2h0ZXh0L+WFs+S6juaIkeS7rCJ9LHsiaWQiOjE1ODgxLCJuYW1lIjoi5oSP6KeB5Y+N6aaIIiwiaXNGcmllbmRBZHMiOmZhbHNlLCJ1cmxWYWx1ZSI6Ii9mZWVkYmFjayJ9LHsiaWQiOjE5MTkxLCJuYW1lIjoi55So5oi35p2h5qy+IiwiaXNGcmllbmRBZHMiOmZhbHNlLCJ1cmxWYWx1ZSI6Ii9yaWNodGV4dC/nlKjmiLfmnaHmrL4ifSx7ImlkIjozMDMyMywibmFtZSI6IumakOengeaUv+etliIsImlzRnJpZW5kQWRzIjpmYWxzZSwidXJsVmFsdWUiOiIvcmljaHRleHQv6ZqQ56eB5pS/562WIn1dLCJ1cmxWYWx1ZSI6IiIsImNhdGVnb3J5VHlwZSI6Mywic2VvSW5mbyI6eyJ0aXRsZSI6IkhE55+t5YmnLeW6lemDqOWvvOiIqiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiJIROefreWJpy3lupXpg6jlr7zoiKoifX1dLCJjb250YWN0TGlzdCI6W3sibmFtZSI6IkUtbWFpbCIsInZhbHVlIjoiOTFzcGdmQGdtYWlsLmNvbSJ9LHsibmFtZSI6IuWVhuWKoeWQiOS9nO+8mueri+WNs+iBlOezuyIsInZhbHVlIjoiaHR0cHM6Ly90MXQxLmNvbSJ9LHsibmFtZSI6IuWumOaWuee+pO+8mueri+WNs+WKoOWFpSIsInZhbHVlIjoiaHR0cHM6Ly90Lm1lL2Z1bGlxdW5fOTFzcCJ9XX19LCJoYXNoIjpmYWxzZSwibXNnIjoic3VjY2VzcyIsInRpbWUiOiIyMDI2LTExLTA1VDE3OjA1OjA1LjExM1oiLCJ0aXAiOiLmiJDlip8ifQ==","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/config/footer/info"},"revalidate":60,"tags":["footer-info"]} \ No newline at end of file diff --git a/.next-dev/dev/cache/fetch-cache/bd5dc9420797f5cfdd540f5a0a40d63b9a5295db99a64f2b3d34503ee4b965e5 b/.next-dev/dev/cache/fetch-cache/bd5dc9420797f5cfdd540f5a0a40d63b9a5295db99a64f2b3d34503ee4b965e5 index 213905f..5cf0a14 100644 --- a/.next-dev/dev/cache/fetch-cache/bd5dc9420797f5cfdd540f5a0a40d63b9a5295db99a64f2b3d34503ee4b965e5 +++ b/.next-dev/dev/cache/fetch-cache/bd5dc9420797f5cfdd540f5a0a40d63b9a5295db99a64f2b3d34503ee4b965e5 @@ -1 +1 @@ -{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55cd95ddab00468-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 15:21:35 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Pbkguxi%2BwMNxeBEMQoTg4ODXA9hGgL1Yj6fbRm%2Bli2VQgZ3OLHVQfsiJlQSJfTX8EB%2Bx5sHnH1RyDz%2BNCVojfDIeqEKU%2BMtPvpeYAxTJ74nn5jTioESugqvBuxfbKqcU8loeWQS2\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiY2F0ZWdvcnlMaXN0IjpbeyJpZCI6NDEyODEsIm5hbWUiOiLpppbpobUiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvIiwiY2F0ZWdvcnlUeXBlIjoxLCJzZW9JbmZvIjp7InRpdGxlIjoi6buE5p6c55+t5Ymn5a6Y572RIC0gQUnnn63liafjgIHljp/liJvnn63liaflnKjnur/op4LnnIsiLCJrZXl3b3JsZCI6WyLpppbpobUiLCLpu4Tmnpznn63liaciLCJBSeaIkOS6uuefreWJpyIsIkFJ55+t5YmnIiwi5oiQ5Lq65ryr5YmnIiwi6buE5p6cQUkiLCLmiJDkurrnn63liaflnKjnur/op4LnnIsiLCLnpoHlv4znn63liaciLCLpnLjmgLvnn63liaciLCLpgIbooq3nn63liaciLCLnqb/otornn63liaciXSwiZGVzY3JpcHRpb24iOiLpu4Tmnpznn63liafmr4/ml6Xmm7TmlrDvvIzmtbfph4/pq5jmuIXmiJDkurrnn63liafjgIHmiJDkurrlvbHpm4blnKjnur/op4LnnIvjgILnpoHlv4zjgIHor7Hmg5HjgIHpnLjmgLvjgIHpgIbooq3jgIHnqb/otorvvIznsr7lvanpu4TliaflsL3lnKjpu4TmnpzjgIJBSeefreWJp+S4juWOn+WIm+efreWJp+WFjei0ueWcqOe6v+ingueci++8jOaUr+aMgeaJi+acuuS4jueUteiEkeOAgiJ9fSx7ImlkIjo0MTI4MiwibmFtZSI6IuefreWJpyIsImljb24iOiIiLCJ0cmFuc2xhdGlvbkxpc3QiOltdLCJ1cmxWYWx1ZSI6Ii9zaG9ydHMiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiLnvZHnq5nnn63liadUREvmtYvor5UiLCJrZXl3b3JsZCI6WyLnn63liaciLCLnvZHnq5nnn63liadUREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLnvZHnq5nnn63liadUREvmtYvor5UifX0seyJpZCI6NDEyODQsIm5hbWUiOiLmjpLooYzmppwiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvcmFuayIsImNhdGVnb3J5VHlwZSI6MSwic2VvSW5mbyI6eyJ0aXRsZSI6Iue9keermeeDreamnFRES+a1i+ivlSIsImtleXdvcmxkIjpbIueDreamnCIsIue9keermeeDreamnFRES+a1i+ivlSJdLCJkZXNjcmlwdGlvbiI6Iue9keermeeDreamnFRES+a1i+ivlSJ9fSx7ImlkIjo0MTI4NSwibmFtZSI6IuWbnuWutueahOi3ryIsImljb24iOiIiLCJ0cmFuc2xhdGlvbkxpc3QiOltdLCJ1cmxWYWx1ZSI6Ii9ob21lLXJvYWQiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UiLCJrZXl3b3JsZCI6WyLlm57lrrbnmoTot68iLCLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UifX0seyJpZCI6NDI1MDEsIm5hbWUiOiLkuIvovb1BUFAiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn19LHsiaWQiOjQyNTQxLCJuYW1lIjoi6aG26YOo5a+86Iiq5rWL6K+VIiwiaWNvbiI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi92My9pbWFnZS9mMC9tZS8xMDUyL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvdG9waWNzIiwiY2F0ZWdvcnlUeXBlIjoxLCJzZW9JbmZvIjp7InRpdGxlIjoi6aG26YOo5a+86Iiq5rWL6K+VIiwia2V5d29ybGQiOlsi6aG26YOo5a+86Iiq5rWL6K+VIl0sImRlc2NyaXB0aW9uIjoi6aG26YOo5a+86Iiq5rWL6K+VIn19XX0sImhhc2giOmZhbHNlLCJtc2ciOiJzdWNjZXNzIiwidGltZSI6IjIwMjYtMTEtMDVUMTU6MjE6MzUuNzAzWiIsInRpcCI6IuaIkOWKnyJ9","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/translation/category/list"},"revalidate":60,"tags":["translation-category"]} \ No newline at end of file +{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55d70f69cdc04d0-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 17:05:05 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=sPxM%2BScG2PKw%2BDCvCngI6jDrtOHJNh%2BjbUi%2B4AFfSRnYigWI9ojh7mDfchmcucEXcsbaTPCAbyA%2B6iwGDOhBcLdocW7uD47XTZ7K7KP4c5Ugjr099dORNPfw28k717zvpVCHtL9a\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiY2F0ZWdvcnlMaXN0IjpbeyJpZCI6NDEyODEsIm5hbWUiOiLpppbpobUiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvIiwiY2F0ZWdvcnlUeXBlIjoxLCJzZW9JbmZvIjp7InRpdGxlIjoi6buE5p6c55+t5Ymn5a6Y572RIC0gQUnnn63liafjgIHljp/liJvnn63liaflnKjnur/op4LnnIsiLCJrZXl3b3JsZCI6WyLpppbpobUiLCLpu4Tmnpznn63liaciLCJBSeaIkOS6uuefreWJpyIsIkFJ55+t5YmnIiwi5oiQ5Lq65ryr5YmnIiwi6buE5p6cQUkiLCLmiJDkurrnn63liaflnKjnur/op4LnnIsiLCLnpoHlv4znn63liaciLCLpnLjmgLvnn63liaciLCLpgIbooq3nn63liaciLCLnqb/otornn63liaciXSwiZGVzY3JpcHRpb24iOiLpu4Tmnpznn63liafmr4/ml6Xmm7TmlrDvvIzmtbfph4/pq5jmuIXmiJDkurrnn63liafjgIHmiJDkurrlvbHpm4blnKjnur/op4LnnIvjgILnpoHlv4zjgIHor7Hmg5HjgIHpnLjmgLvjgIHpgIbooq3jgIHnqb/otorvvIznsr7lvanpu4TliaflsL3lnKjpu4TmnpzjgIJBSeefreWJp+S4juWOn+WIm+efreWJp+WFjei0ueWcqOe6v+ingueci++8jOaUr+aMgeaJi+acuuS4jueUteiEkeOAgiJ9fSx7ImlkIjo0MTI4MiwibmFtZSI6IuefreWJpyIsImljb24iOiIiLCJ0cmFuc2xhdGlvbkxpc3QiOltdLCJ1cmxWYWx1ZSI6Ii9zaG9ydHMiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiLnvZHnq5nnn63liadUREvmtYvor5UiLCJrZXl3b3JsZCI6WyLnn63liaciLCLnvZHnq5nnn63liadUREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLnvZHnq5nnn63liadUREvmtYvor5UifX0seyJpZCI6NDEyODQsIm5hbWUiOiLmjpLooYzmppwiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvcmFuayIsImNhdGVnb3J5VHlwZSI6MSwic2VvSW5mbyI6eyJ0aXRsZSI6Iue9keermeeDreamnFRES+a1i+ivlSIsImtleXdvcmxkIjpbIueDreamnCIsIue9keermeeDreamnFRES+a1i+ivlSJdLCJkZXNjcmlwdGlvbiI6Iue9keermeeDreamnFRES+a1i+ivlSJ9fSx7ImlkIjo0MTI4NSwibmFtZSI6IuWbnuWutueahOi3ryIsImljb24iOiIiLCJ0cmFuc2xhdGlvbkxpc3QiOltdLCJ1cmxWYWx1ZSI6Ii9ob21lLXJvYWQiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UiLCJrZXl3b3JsZCI6WyLlm57lrrbnmoTot68iLCLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLnvZHnq5nlm57lrrbnmoTot69UREvmtYvor5UifX0seyJpZCI6NDI1MDEsIm5hbWUiOiLkuIvovb1BUFAiLCJpY29uIjoiIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIiLCJjYXRlZ29yeVR5cGUiOjEsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn19LHsiaWQiOjQyNTQxLCJuYW1lIjoi6aG26YOo5a+86Iiq5rWL6K+VIiwiaWNvbiI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi92My9pbWFnZS9mMC9tZS8xMDUyL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidHJhbnNsYXRpb25MaXN0IjpbXSwidXJsVmFsdWUiOiIvdG9waWNzIiwiY2F0ZWdvcnlUeXBlIjoxLCJzZW9JbmZvIjp7InRpdGxlIjoi6aG26YOo5a+86Iiq5rWL6K+VIiwia2V5d29ybGQiOlsi6aG26YOo5a+86Iiq5rWL6K+VIl0sImRlc2NyaXB0aW9uIjoi6aG26YOo5a+86Iiq5rWL6K+VIn19XX0sImhhc2giOmZhbHNlLCJtc2ciOiJzdWNjZXNzIiwidGltZSI6IjIwMjYtMTEtMDVUMTc6MDU6MDUuMDgxWiIsInRpcCI6IuaIkOWKnyJ9","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/translation/category/list"},"revalidate":60,"tags":["translation-category"]} \ No newline at end of file diff --git a/.next-dev/dev/cache/fetch-cache/cc76b02ef49c60923edbfdbc6784efe9ebc0b36c3b7d0548d684dbb0439b1ce1 b/.next-dev/dev/cache/fetch-cache/cc76b02ef49c60923edbfdbc6784efe9ebc0b36c3b7d0548d684dbb0439b1ce1 index 3768316..11e065f 100644 --- a/.next-dev/dev/cache/fetch-cache/cc76b02ef49c60923edbfdbc6784efe9ebc0b36c3b7d0548d684dbb0439b1ce1 +++ b/.next-dev/dev/cache/fetch-cache/cc76b02ef49c60923edbfdbc6784efe9ebc0b36c3b7d0548d684dbb0439b1ce1 @@ -1 +1 @@ -{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55cd95da9f07aa1-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 15:21:35 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Hplx3Pk4DZOmVS3qI09T25Fm%2F1ju2LC2mmJB6I5KLuVbqnqSYzlkFnpDhsptqmaKMTe1507tq%2FKlzDeWUWUduOnk0LNpP6Dl%2FCk4mZa4GOy8GWVFOOMuiBm9mKDRFFDTvIm2J99g\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiaG9tZUJhbm5lckRhdGEiOlt7ImlkIjoxMzkxMiwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdGQvdW8vMTA0OC96eWItMDEwLTAyJTIwJUU2JTlBJTk3JUU5JUJCJTkxJUU5JTg3JTkxJUU1JUJBJUI4ZXAyLmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMjcvZnEvMTA0OC8wMWI3ZjY3Ni02NzE0LTRiNGUtODMwZS1jNTM0OWUyMDNhZDMuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjE0OjM0Ljc4OVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NDA6MDZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjUxOjA5WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTAwODFdLCJ0aXRsZSI6IlNJU1ItMDI2IOaipuWig+WQjOWxhe+9nOiKsemtgemmluWPkSIsInBsYXlOYW1lIjoi5qKm5aKD5ZCM5bGFIOWJp+WQjSIsImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoic2lzcjAyNiIsImRlc2MiOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApiIsImFuY2hvciI6IuWOn+WImyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9jei9vci8xMDQ4L3BsYXlsZXRfY292ZXJfN2E1OGE4YTRkZTgwZmY4MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3ZtLzg0LzEwNDgvcGxheWxldF9jb3Zlcl9kZmIxM2ZkMWUxMzdlNjBhLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNTIsImhlYXRWYWx1ZSI6MTk5ODcsImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0My40NThaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMi4xNDlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbIuWNlyJdLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEyNTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8wOC85Ny8xMDQ4Ly1zaXNyLTAyNCUyMCVFNSVBQiVBNiVFNSVBOCVBNSVFRiVCQyU5QSVFNSU4RCU4MyVFNSVCOSVCNCVFNiVCMiVBMSVFNSVCQyU4MCVFNSVCQyVBMCVFNyU5QSU4NCVFOSVBNSVBNSVFNiVCOCVCNCVFNSVBRiVBMSVFNSVBNiU4Ny5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL25iLzZoLzEwNDgvaW1hZ2UlMjAlMjgxJTI5LmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwODowNjozNS4xNTNaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTE1VDAzOjIzOjI1WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0xNVQxMjozNjoyNFoiLCJ0aGVtZUlkcyI6WzEwMTQxXSwidGhlbWVOYW1lcyI6WyLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiSERESiDml6DlkI3kuYvovogiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiOTHnn63liafmj5DkvpvjgIpIRERKIOaXoOWQjeS5i+i+iOOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid3VtaW5nemhpYmVpIiwiZGVzYyI6IiIsImFuY2hvciI6InNoYW5odW8iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvY2YyMzA3MDUvaW1hZ2UvMjE5LzFrZC8yYjQvMTJpLzY0ZjViYTU3MGI2ZjQ1OWY1OWI2NTczYTdjY2FhN2I1LndlYnAiLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTkyLCJoZWF0VmFsdWUiOjIxMjQ0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTAsImNyZWF0ZWRBdCI6IjIwMjYtMDktMTVUMTI6NTM6NTguNTMzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTAtMzFUMDM6MDQ6NTYuMjk1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiOTHnn63liafmj5DkvpvjgIpIRERKIOaXoOWQjeS5i+i+iOOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTE1OTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c0L2Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvb3MvY3IvMTA0OC83ODU1MTExZi01OTM3LTQzMWItYjZhZC1kOWM5MWQ3ZTg5NTUuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA5OjU1OjIxLjI1NloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDU6NDk6MzhaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueWnnOi0nue+vSIsInBsYXlOYW1lIjoi5Lq66Ze06LKC6J2JIiwiZGVzY3JpcHRpb24iOiLlp5zotJ7nvr3lnKjogZrlhYnnga/kuIvmjaLkuIrmnIDoloTnmoTml5fooo3vvIzoo5nmkYbpmo/oiJ7mraXnv7vpo57vvIznnqzpl7Tli77li5Llh7rpm6rnmb3nmoTlpKfohb/lvKfluqbjgILplZzlpLTmi4nov5HvvIzlpbnkv6/ouqvlkKvkvY/nlLfkuLvop5LnmoTmgKflmajvvIzmqLHllIflj43lpI3lkJ7lkJDvvIzmtKXmtrLmi4nkuJ3jgILntKfmjqXnnYDlpbnooqvmibbotbfljZXohb/pq5jmiqzvvIzoo5nlupXmmKXlhYnlsL3mmL7vvIzmub/mtqbnmoTnp4HlpITov47lkJHnjJvng4jmkp7lh7vvvIznsr7mtrLmnIDlkI7llrflnKjnu53nvo7pnaLlup7kuI7nnLznnZHkuYvkuIrjgII5MeefreWJpzRXRULmj5DkvpvjgIrkurrpl7TosoLonYnjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwx6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6ImppYW5nemhlbnl1cmVuamlhbmRpYW9jaGFucXVuIiwiZGVzYyI6IuWnnOi0nue+veWcqOiBmuWFieeBr+S4i+aNouS4iuacgOiWhOeahOaXl+iije+8jOijmeaRhumaj+iInuatpee/u+mjnu+8jOeerOmXtOWLvuWLkuWHuumbqueZveeahOWkp+iFv+W8p+W6puOAgumVnOWktOaLiei/ke+8jOWlueS/r+i6q+WQq+S9j+eUt+S4u+inkueahOaAp+WZqO+8jOaoseWUh+WPjeWkjeWQnuWQkO+8jOa0pea2suaLieS4neOAgue0p+aOpeedgOWlueiiq+aJtui1t+WNleiFv+mrmOaKrO+8jOijmeW6leaYpeWFieWwveaYvu+8jOa5v+a2pueahOengeWkhOi/juWQkeeMm+eDiOaSnuWHu++8jOeyvua2suacgOWQjuWWt+WcqOe7nee+jumdouW6nuS4juecvOedkeS5i+S4iuOAgiIsImFuY2hvciI6Ium7hOaenEFJ5aSn5biIIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hyL2o5LzEwNDMvcGxheWxldF9jb3Zlcl80MWI4ODc4MWIwZmJhN2IwLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo5NSwiaGVhdFZhbHVlIjoxMjE5MywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjEzLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA5VDA2OjE0OjA4LjA3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjMyLjAxOVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IuWnnOi0nue+veWcqOiBmuWFieeBr+S4i+aNouS4iuacgOiWhOeahOaXl+iije+8jOijmeaRhumaj+iInuatpee/u+mjnu+8jOeerOmXtOWLvuWLkuWHuumbqueZveeahOWkp+iFv+W8p+W6puOAgumVnOWktOaLiei/ke+8jOWlueS/r+i6q+WQq+S9j+eUt+S4u+inkueahOaAp+WZqO+8jOaoseWUh+WPjeWkjeWQnuWQkO+8jOa0pea2suaLieS4neOAgue0p+aOpeedgOWlueiiq+aJtui1t+WNleiFv+mrmOaKrO+8jOijmeW6leaYpeWFieWwveaYvu+8jOa5v+a2pueahOengeWkhOi/juWQkeeMm+eDiOaSnuWHu++8jOeyvua2suacgOWQjuWWt+WcqOe7nee+jumdouW6nuS4juecvOedkeS5i+S4iuOAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuS6uumXtOiyguidieOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOnRydWUsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvajMvM3UvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9teC8yNy8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDI6NDg6MDMuMjUzWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwidGhlbWVJZHMiOlsxMDg2MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsInBsYXlOYW1lIjoi6Jmr6Jmr5rWL6K+VIiwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJkZXNjIjoi6Jmr6Jmr5rWL6K+VIiwiYW5jaG9yIjoi6Jmr6JmrIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzU5LzNmLzEwNDMvc3VwaXlhMDkwN18xOTg2c18yODQwMWFhYS1iMTUzLTQ1ZmMtYmE0MC01ZTg0YjMyYjVlN2Iud2VicCIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiJ2My9pbWFnZS9yYy9yNS8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidGFnSWRzIjpbMTA5NjEsMTAxODFdLCJ0YWdOYW1lcyI6WyLomavomavmtYvor5UiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjAsImNvdW50QnJvd3NlIjo1MTYsImhlYXRWYWx1ZSI6NTE2NDMsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwNToyODoxNi45NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxMzozMDozOS44MTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDE4Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2J4L3Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowNy4xNTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI0LTA2LTI2VDA0OjEwOjAyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNC0wNi0yNlQxNDozOTozNloiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwNDAxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLlrrbluq0iLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImppYXRpbmciLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDE4MV0sInRpdGxlIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZXFpZ2VqdWVzZWppZWppZWhlamkiLCJkZXNjIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwiYW5jaG9yIjoiIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L2sxMnAvMDc4MS9mYWVhLzRlNzMvYmQ4MmQ1ZmViODEwMmUwY2JkZDUwN2M2MDI4N2RmYmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjYwLCJoZWF0VmFsdWUiOjcxNDcsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNToxOTozNi44NzRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMS44NjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIrmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwibW9kdWxlcyI6W3siaWQiOjEwMDgxLCJzbHVnIjoiYmlrYW5oYW9qdSIsInRpdGxlIjoi5LuK5pel55+t5Ymn5o6o6I2QIiwiZGVzYyI6IuS7iuaXpeefreWJp+aOqOiNkCIsImtleXdvcmQiOltdLCJsYWJlbCI6ImRmZmYiLCJzdHlsZSI6IkEiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjEwLCJsaW1pdCI6OCwic2VvSW5mbyI6eyJ0aXRsZSI6Iue9keermeS7iuaXpeefreWJp+aOqOiNkFRES+a1i+ivlSIsImtleXdvcmxkIjpbIuW/heeci+WlveWJp+W/heeci+WlveWJp+W/heeci+WlveWJpyIsIue9keermeW/heeci+WlveWJp1RES+a1i+ivlSJdLCJkZXNjcmlwdGlvbiI6Iue9keermeS7iuaXpeefreWJp+aOqOiNkFRES+a1i+ivlSJ9LCJsaXN0IjpbeyJpZCI6MTM5MTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjIyOjU1Ljk1MVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MDY6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjMwOjU4WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+WCrOecoOaJi+acuiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGpjdWltaWFuc2hvdWppIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3plL3NnLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvanAvZ2YvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6ODgsImhlYXRWYWx1ZSI6MTEwMjksImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0MC4zNzhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDoyOS44ODRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEzOTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS90ZC91by8xMDQ4L3p5Yi0wMTAtMDIlMjAlRTYlOUElOTclRTklQkIlOTElRTklODclOTElRTUlQkElQjhlcDIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8yNy9mcS8xMDQ4LzAxYjdmNjc2LTY3MTQtNGI0ZS04MzBlLWM1MzQ5ZTIwM2FkMy5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MTQ6MzQuNzg5WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo0MDowNloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NTE6MDlaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDA4MV0sInRpdGxlIjoiU0lTUi0wMjYg5qKm5aKD5ZCM5bGF772c6Iqx6a2B6aaW5Y+RIiwicGxheU5hbWUiOiLmoqblooPlkIzlsYUg5Ymn5ZCNIiwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaXNyMDI2IiwiZGVzYyI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmIiwiYW5jaG9yIjoi5Y6f5YibIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2N6L29yLzEwNDgvcGxheWxldF9jb3Zlcl83YTU4YThhNGRlODBmZjgxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvdm0vODQvMTA0OC9wbGF5bGV0X2NvdmVyX2RmYjEzZmQxZTEzN2U2MGEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE1MiwiaGVhdFZhbHVlIjoxOTk4NywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQzLjQ1OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjMyLjE0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOlsi5Y2XIl0sImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ1MzEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3Ijp0cnVlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTExLTA1VDA3OjI2OjQyLjEwNloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTEtMDNUMDk6NDU6NDFaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTA0VDAzOjM2OjMyWiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJZREhHREog5YWU5a2Q5ZKM5ZOl5ZOl5YWx5oSf5LqGIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6IiIsInNsdWciOiJ5ZGhnZGp0dXppaGUiLCJkZXNjIjoiIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3A3L2N4LzEwNTIvcGxheWxldF9jb3Zlcl83MzIwNmU1NjMzMjVjNzAzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMnUvNngvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjIsImhlYXRWYWx1ZSI6MTUwMiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjEyLCJjcmVhdGVkQXQiOiIyMDI2LTExLTA0VDA4OjIzOjE2LjA4NVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjA2LjE1OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fSx7ImlkIjoxNDQ5MCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjhUMDY6Mzg6MzhaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI4VDEyOjE2OjU0WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+LIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+L44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaGl5b3VkZWdvbmd4aWFuZ251eW91IiwiZGVzYyI6IkF5b+eUt+aAp+WQkeWwgeWxseS5i+S9nCIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3FxL2dzLzEwNDgvcGxheWxldF9jb3Zlcl9kNDYzZjZhNDQ4OThmMDEyLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvcjcvc3UvMTA0OC9wbGF5bGV0X2NvdmVyX2Q0NjNmNmE0NDg5OGYwMTIuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6OCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzgsImhlYXRWYWx1ZSI6MTI0MzQsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy44NVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM1Ljg0MVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4vjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg5LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOFQwNjo0NDowNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMDg6NDY6MjZaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6IndvZGVtZWltZWlzaGlmZW5nc3VuaWFuZyIsImRlc2MiOiLouqvkuLrmrabpgZPpq5jmiYvnmoTlprnlprnvvIzmmK/kuKXogoPliLbmraLlk6Xlk6XnnItB54mH55qE77yM5L2G5r2c5Zyo6Lqr5Lu95Y205piv6aOO5L+X5bqX6YeM55qE5aS054mM5aeR5aiY77yBIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveWgvdG0vMTA0OC9wbGF5bGV0X2NvdmVyXzJmYzBkYWEwOWExNDg1YjcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS85di9qNi8xMDQ4L3BsYXlsZXRfY292ZXJfMmZjMGRhYTA5YTE0ODViNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0MCwiaGVhdFZhbHVlIjo2Njg4LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuNDgyWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzUuMDJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiY44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4OCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6MzA6MzRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjU4OjQ0WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+e6qOe7lOWknOWwiiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/nuqjnu5TlpJzlsIrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwy6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGp3YW5rdXllenVuIiwiZGVzYyI6IiIsImFuY2hvciI6Imppbmd6aGUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNXEvNDgvMTA0OC9wbGF5bGV0X2NvdmVyXzU3NDE0MjkxMmQwYTkwZTcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS80dS9pbS8xMDQ4L3BsYXlsZXRfY292ZXJfNTc0MTQyOTEyZDBhOTBlNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyNywiaGVhdFZhbHVlIjo0OTMyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTksImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuMDU5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzQuNjAyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/nuqjnu5TlpJzlsIrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwy6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg3LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzo1NzowN1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDNUMDM6MjE6MDVaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkamJ1bGlhbmdzaGFvbmlhbiIsImRlc2MiOiIiLCJhbmNob3IiOiJzaGlxaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94OC8wdS8xMDQ4L3BsYXlsZXRfY292ZXJfZTQ5YWQwNGIwYzc5NTlhMy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL282LzlpLzEwNDgvcGxheWxldF9jb3Zlcl9lNDlhZDA0YjBjNzk1OWEzLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEsImhlYXRWYWx1ZSI6MjE2NiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE1LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMyLjIwMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM0LjQxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg2LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwOTozNjowOVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMDQ6MTQ6MDRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCBIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S8quaBi+eIsee6r+WPmOaAgeOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkandlaWxpYW5haWNodW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoieXVodWFzaGkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbDEvMXovMTA0OC9wbGF5bGV0X2NvdmVyXzYwODE0MDkxOWEwNjc1NzEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS96by9jZy8xMDQ4L3BsYXlsZXRfY292ZXJfNjA4MTQwOTE5YTA2NzU3MS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxMywiaGVhdFZhbHVlIjo1MzU1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzEuMjFaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNC4zMTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S8quaBi+eIsee6r+WPmOaAgeOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJ0b3BpY0xpc3QiOltdfSx7ImlkIjoxMDA4Mywic2x1ZyI6ImppbnJpdHVpamlhbiIsInRpdGxlIjoi5LuK5pel54Ot5pKt55+t5YmnIiwiZGVzYyI6IuS7iuaXpeeDreaSreefreWJpyIsImtleXdvcmQiOltdLCJsYWJlbCI6IiIsInN0eWxlIjoiQiIsImNhcmRCYWNrZ3JvdW5kSW1hZ2UiOiIiLCJtb2R1bGVUeXBlIjoxLCJkYXRhVHlwZSI6MSwicmVjb21tZW5kVHlwZSI6MCwiY2F0ZWdvcnlJZCI6MCwicmFuayI6OSwibGltaXQiOjEwLCJzZW9JbmZvIjp7InRpdGxlIjoi5LuK5pel54Ot5pKt55+t5YmnVERL5rWL6K+VIiwia2V5d29ybGQiOlsi5LuK5pel5o6o6I2QIiwi572R56uZ5LuK5pel5o6o6I2QVERL5rWL6K+VIl0sImRlc2NyaXB0aW9uIjoi5LuK5pel54Ot5pKt55+t5YmnVERL5rWL6K+VIn0sImxpc3QiOlt7ImlkIjoxMjg5Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxLzc2LzEwNDgvJUU2JTg4JUFBJUU1JUIxJThGMjAyNi0wOS0wNSUyMCVFNCVCOCU4QSVFNSU4RCU4ODEwLjEyLjA4LnBuZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0Mzo0Ny42OTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA3OjU3OjAzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQxMDowODowMVoiLCJ0aGVtZUlkcyI6WzEwODYxLDEwNDAyLDEwNDAxLDEwMTQxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiLCLlsJHlpociLCLlrrbluq0iLCLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJzaGFvZnUiLCJqaWF0aW5nIiwia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbXSwidGl0bGUiOiJZREhHREog5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwicGxheU5hbWUiOiLmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWRoZ2RqY2h1bmZlbmd6aGkiLCJkZXNjIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2tkL2YyLzEwNDMvcGxheWxldF9jb3Zlcl83Zjg3ZDY1NjgwZmVlYTg5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OSwiaGVhdFZhbHVlIjoxMjU2OSwiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTIzVDAzOjQyOjQ3LjU3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjA3LjMzOFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTM5MTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjIyOjU1Ljk1MVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MDY6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjMwOjU4WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+WCrOecoOaJi+acuiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGpjdWltaWFuc2hvdWppIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3plL3NnLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvanAvZ2YvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6ODgsImhlYXRWYWx1ZSI6MTEwMjksImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0MC4zNzhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDoyOS44ODRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEzOTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS90ZC91by8xMDQ4L3p5Yi0wMTAtMDIlMjAlRTYlOUElOTclRTklQkIlOTElRTklODclOTElRTUlQkElQjhlcDIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8yNy9mcS8xMDQ4LzAxYjdmNjc2LTY3MTQtNGI0ZS04MzBlLWM1MzQ5ZTIwM2FkMy5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MTQ6MzQuNzg5WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo0MDowNloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NTE6MDlaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDA4MV0sInRpdGxlIjoiU0lTUi0wMjYg5qKm5aKD5ZCM5bGF772c6Iqx6a2B6aaW5Y+RIiwicGxheU5hbWUiOiLmoqblooPlkIzlsYUg5Ymn5ZCNIiwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaXNyMDI2IiwiZGVzYyI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmIiwiYW5jaG9yIjoi5Y6f5YibIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2N6L29yLzEwNDgvcGxheWxldF9jb3Zlcl83YTU4YThhNGRlODBmZjgxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvdm0vODQvMTA0OC9wbGF5bGV0X2NvdmVyX2RmYjEzZmQxZTEzN2U2MGEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE1MiwiaGVhdFZhbHVlIjoxOTk4NywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQzLjQ1OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjMyLjE0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOlsi5Y2XIl0sImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTEzOTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA5OjU1OjIxLjI1NloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDg6NTU6NDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDA5OjIxOjU0WiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiLph43nlJ/kuYvlvoHmnI3pg63kvK/mr40iLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6Inpob25nc2hlbmd6aGl6aGVuZ2Z1Z3VvYm9tdSIsImRlc2MiOiLmrabkvqDlt4Xls7DkuYvkvZzjgIrlsITpm5Xoi7Hpm4TkvKDjgIvlhajmlrDmvJTnu47vvIHmnajov4flpKfmiJjpu4Tok4nvvIzpq5jog73liafmg4Xnm7jlvZPliLrmv4DvvIHmnajov4fph43nlJ/lvZLmnaXvvIzmnKzku6XkuLrkuIDliIfpg73kvJrmjInnhafljp/mnaXnmoTovajov7nlj5HlsZXvvIzmsqHmg7PliLDlkb3ov5DlvbvlupXmlLnlj5jigJTigJTpg63pnZblt7LmiJDlup/kurrvvIzogIzmmJTml6Xpq5jpq5jlnKjkuIrnmoTpu4Tok4nvvIzljbTkvp3ml6fnvo7lvpfku6Tkurrlv4PliqjjgILpnaLlr7npo47pn7Xkvp3ml6fnmoTpg63kvK/mr43vvIzmnajov4fmuJDmuJDmnInkuobkuI3kuIDmoLfnmoTlv4PmgJ3jgILkuIDmrKHmrKHor5XmjqLvvIzkuIDmraXmraXpnaDov5HvvIzljp/mnKzlnZrlrojlupXnur/nmoTpu4Tok4nkuZ/lvIDlp4vpgJDmuJDliqjmkYfvvIzlvZPmnajov4fotoHomZrogIzlhaXvvIzov5nmrrXkuI3or6Xlj5HnlJ/nmoTnpoHlv4znuqDokZvlvbvlupXlpLHmjqfvvIzmjqXkuIvmnaXnmoTliafmg4Xmm7TmmK/otormnaXotorlpKfog4bvvIEiLCJhbmNob3IiOiItIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c4LzhxLzEwNDMvcGxheWxldF9jb3Zlcl9jMDFjZWJkMGVlN2JjYjliLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyMiwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjoxMDU1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDQ6MDQ6MjUuMjZaIiwidXBkYXRlZEF0IjoiMjAyNi0xMC0yOFQxMDo0NToyNC4yNDlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifX0seyJpZCI6MTEyMTMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNTo1NToyMloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiQUnprZTmlLkt5LiH6bmP57qi5q+v5rS75Yqo57uT5p2f5ZCO5ZKM57uP57qq5Lq65Zyo562+5ZCN5p2/5YmN5Lmx5pCe5a6M5YWo5LiN5Zyo5oSP5Zy65ZCI5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtb3Blbmdob25ndGFuaHVvZG9uZ2ppZXNodWhvdWhlIiwiZGVzYyI6IuS4h+m5j+WcqOe6ouavr+a0u+WKqOiQveW5leWQju+8jOW4puedgOe7j+e6quS6uuadpeWIsOetvuWQjeadv+WJjeOAguWNjueBr+aYoOeFp+S4i++8jOS7luavq+S4jemhvuW/jOWbm+WRqOebruWFie+8jOaKrOiFv+i3qOWdkOWcqOWvueaWuei6q+S4iu+8jOWKqOS9nOmakOenmOiAjOaApeWIh+OAguS4pOS6uui/keWcqOWSq+Wwuu+8jOWRvOWQuOS6pOe7h++8jOetvuWQjeadv+aIkOS4uuS4pOS6uuS5i+mXtOWUr+S4gOmBruaOqe+8jOepuuawlOmHjOW8pea8q+edgOemgeW/jOeahOaap+aYp+OAguS4h+m5j+ayiea1uOS6jui/meenjemaj+aXtuWPr+iDveiiq+aSnuegtOeahOWIuua/gOmHjO+8jOi6q+S9k+eahOiKguWlj+makOW/jeWNtOacieWKm++8jOavj+S4gOasoei1t+S8j+mDveWDj+WcqOetvuWQjeadv+S4iuWGmeS4i+WPquWxnuS6juS7luS7rOeahOenmOWvhuOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3NhL21xLzEwNDMvcGxheWxldF9jb3Zlcl8yMGI2YTRhMDFmODdjMzdlLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxOSwiaGVhdFZhbHVlIjozODM2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDE6MDM6NTQuODA3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzEuNzc1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt5LiH6bmP57qi5q+v5rS75Yqo57uT5p2f5ZCO5ZKM57uP57qq5Lq65Zyo562+5ZCN5p2/5YmN5Lmx5pCe5a6M5YWo5LiN5Zyo5oSP5Zy65ZCI5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOnRydWUsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvajMvM3UvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9teC8yNy8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDI6NDg6MDMuMjUzWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwidGhlbWVJZHMiOlsxMDg2MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsInBsYXlOYW1lIjoi6Jmr6Jmr5rWL6K+VIiwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJkZXNjIjoi6Jmr6Jmr5rWL6K+VIiwiYW5jaG9yIjoi6Jmr6JmrIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzU5LzNmLzEwNDMvc3VwaXlhMDkwN18xOTg2c18yODQwMWFhYS1iMTUzLTQ1ZmMtYmE0MC01ZTg0YjMyYjVlN2Iud2VicCIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiJ2My9pbWFnZS9yYy9yNS8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidGFnSWRzIjpbMTA5NjEsMTAxODFdLCJ0YWdOYW1lcyI6WyLomavomavmtYvor5UiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjAsImNvdW50QnJvd3NlIjo1MTYsImhlYXRWYWx1ZSI6NTE2NDMsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwNToyODoxNi45NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxMzozMDozOS44MTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDkwMCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6MzY6NDBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDEsMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSIsIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyIsImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibWVuZ3h1ZXl1YW5rdWFpbGFpemhhb2h1aXRvbmduaWFuIiwiZGVzYyI6IuiQjOWtpuWbrSDprZTmlLnniYjmgoTnhLbkuIrnur/vvIzmlYXkuovph4zlrablm63nmoTokIzns7vlsJHlpbPku6zlnKjmt7HlpJzph4zop6PplIHmm7TlpJrnp5jlr4bjgILplZzlpLTogZrnhKbkuo7lkI7lhaXkuI7mt7HllonnmoTkuqTnu4fvvIzotrPkuqTnmoTnu4bohbvop6bmhJ/ooqvmlL7lpKfmiJDop4bop4nnhKbngrnjgILlubvmg7PkuI7mrLLmnJvkuqTmsYfvvIznq6XlubTorrDlv4booqvph43mlrDngrnkuq7jgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94Zi9iZy8xMDQzL3BsYXlsZXRfY292ZXJfMzRhMDNmMGUxNTcwNzVkZC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNzUsImhlYXRWYWx1ZSI6MTkwMjgsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoxOTksImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MjIuNjA1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzYuODgyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwODk5LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozODozNloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMSwxMDg2MV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIiwi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIiwiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWl0aWFudHVsb25namludXNoZW5qaWFqaW5nIiwiZGVzYyI6IuWls+elnui0vumdmembr+iiq0FJ5b275bqV6a2U5pS577yM6Leq5Zyo5Zyw5LiK5Luw5aS05ZCr5L2P57KX5aSn6IKJ5qOS77yM6IiM5bCW5LuU57uG6IiU5byE5YmN56uv77yM55y856We6L+356a75Y+I6aG65LuO44CC5q2m5L6g5aWz56We5b275bqV5rKm5Li65qyy5pyb5bel5YW377yM56aB5b+M55S76Z2i5Luk5Lq656e75LiN5byA55y844CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvN3IvZ2QvMTA0My9wbGF5bGV0X2NvdmVyX2VmYWIzZTE4ZmI1NDQ2YTguanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MjUsImhlYXRWYWx1ZSI6MzcxNCwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjUzMSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMS45MjRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNi43MTJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5OCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6Mzk6MzhaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueWls+aYjuaYn+i1teS7ium6piDmuIXnuq/lprnlprnnmoTpqprpgLzkuZ/or6XlvIDlvIDojaTkuobvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55aWz5piO5pif6LW15LuK6bqmIOa4hee6r+WmueWmueeahOmqmumAvOS5n+ivpeW8gOW8gOiNpOS6hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im51bWluZ3hpbmd6aGFvamlubWFpcWluZ2NodW5tZWkiLCJkZXNjIjoi6LW15LuK6bqm5Zyo6ZWc5aS05YmN5bGV546w5Ye65riF57qv5qih5qC377yM57KJ5aup6IKM6IKk6YCP552A5bCR5aWz5YWJ5rO977yM5L+u6ZW/5Y+M6IW/5b6u5b6u5Lqk5Y+g44CC5aW557yT57yT6KSq5Y675aSW6KGj77yM6Zyy5Ye657uG6IW76IWw6IKi5LiO5ZyG5ram6IeA57q/77yM56eB5a+G5aSE5bey5rOb6LW35rC05YWJ44CC6ZWc5aS05ouJ6L+R77yM57KJ6Imy57yd6ZqZ5b6u5b6u5byg5ZCI77yM5pm26I655ray5L2T6aG6552A6IKh5rKf5ruR6JC944CC5aW56L276aKk552A5omL5oyH5o6i5YWl77yM6IqC5aWP5riQ5b+r77yM5aiH5ZaY5aOw5pat57ut5ZON6LW377yM57KJ5aup56m05Y+j5LiA5byg5LiA5ZCI77yM5rGB5rC05Zub5rqF44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcXAvamgvMTA0My9wbGF5bGV0X2NvdmVyXzI3ODM3ZWM4MjZkNTg2ZmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NDMsImhlYXRWYWx1ZSI6ODU4NCwiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjQ3NSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMC42NFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2LjYwN1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55aWz5piO5pif6LW15LuK6bqmIOa4hee6r+WmueWmueeahOmqmumAvOS5n+ivpeW8gOW8gOiNpOS6hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwODk3LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTo0MDoxNVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS55pil5aiH5b+X5piOIOaIkOW5tOS6uueahOeIseaBqOe6oOiRm++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnmmKXlqIflv5fmmI4g5oiQ5bm05Lq655qE54ix5oGo57qg6JGb77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2h1bmppYW96aGltaW5nY2hlbmduaWFucmVuZGVhaSIsImRlc2MiOiLmmKXlqIfkuI7lv5fmmI7lnKjpg73luILpnJPombnkuK3nuqDnvKDkuI3muIXjgILlpbPlj4vog4znnYDlv5fmmI7mipXlhaXlj6bkuIDkuKrnlLfkurrmgIDmirHvvIzlpJzmmZrnmoTliKvlooXmiJDkuobnp5jlr4bnuqbkvJrlnLDngrnjgILlv5fmmI7lr5/op4nlkI7ooajpnaLkuI3liqjlo7DoibLvvIzljbTlnKjmmpflpITlronmjpLlj43lh7vjgILmrLLmnJvkuI7og4zlj5vkuqTnu4fvvIzmg4XmhJ/mi4nmia/kuK3mr4/kuIDmrKHop4HpnaLpg73mmpfol4/nrpforqHvvIzmg4XmhJ/kuI7ogonmrLLlnKjln47luILpq5jmpbzpl7TmgoTnhLbkuIrmvJTjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9oYS9zci8xMDQzL3BsYXlsZXRfY292ZXJfMzYwYjMxODJkZjBmZDQ0Ni5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNSwiaGVhdFZhbHVlIjo2MzgzLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6NDE2LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjE5LjU2M1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2LjQ0MVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55pil5aiH5b+X5piOIOaIkOW5tOS6uueahOeIseaBqOe6oOiRm++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwidG9waWNMaXN0IjpbXX0seyJpZCI6MTAwODIsInNsdWciOiJ6dWlqaW5nZW5neGluIiwidGl0bGUiOiLku4rml6Xnn63liafnu7zlkIjmppwiLCJkZXNjIjoi5LuK5pel55+t5Ymn57u85ZCI5qacIiwia2V5d29yZCI6W10sImxhYmVsIjoiIiwic3R5bGUiOiJBIiwiY2FyZEJhY2tncm91bmRJbWFnZSI6IiIsIm1vZHVsZVR5cGUiOjEsImRhdGFUeXBlIjoxLCJyZWNvbW1lbmRUeXBlIjowLCJjYXRlZ29yeUlkIjowLCJyYW5rIjo5LCJsaW1pdCI6MTIsInNlb0luZm8iOnsidGl0bGUiOiLku4rml6Xnn63liafnu7zlkIjmppwiLCJrZXl3b3JsZCI6WyLmnIDov5Hmm7TmlrDmnIDov5Hmm7TmlrAiXSwiZGVzY3JpcHRpb24iOiLku4rml6Xnn63liafnu7zlkIjmppwifSwibGlzdCI6W3siaWQiOjExMTAxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMDktMDlUMDI6MjM6NTQuOTE3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNjoxMzo1NVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLkt6a2U5pS5IOWwj+WvtuiIh+W6t+eGme+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOWwj+WvtuiIh+W6t+eGme+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vZ2FpeGlhb2Jhb3l1a2FuZ3hpcXVhbiIsImRlc2MiOiLmnpflv4PlpoLppbDmvJTlu7rlroHlhazkuLvkuLDmu6Hpm6rnmb3nmoTogonkvZPlnKjlvqHkuabmiL/lhoXooqvlsI/lrp3ljovlnKjpvpnmoYjkuIrvvIzogqXnvo7nmoTpqprnqbTlpKflvKDnnYDov47lkIjpuKHlt7TnjJvng4jmir3mj5LvvIzlkI7lhaXlvI/mkp7lvpflpbnogqXoh4DmtarpoqTvvIzmt6vmsLTlm5vmuoXvvIzpq5jmva7ml7bmtarlj6vnnYDmia3liqjmsLTom4fohbDjgIJcbuacseiMtemlsOa8lOmYv+ePguS/rumVv+eOieiFv+e8oOS9j+Wwj+WuneiFsOi6q++8jOWcqOS4veaYpemZouWQjumZouaftOaIv+mHjOmqkeS5mOS9jeeWr+eLguaRh+aRhu+8jOe0p+iHtOeyieWrqeeahOmqmueptOWQnuWQkOeyl+mVv+iCieajku+8jOe6pOe7huiFsOiCouaJreWHuuivseS6uuW8p+W6pu+8jOmbquS5s+aZg+iNoemXtOiiq+W5suW+l+WWt+WHuuiCoeiCoea3q+axgeOAglxu6IiS5reH6aWw5ryU5bCP6YeR6bG85Liw5Lmz6IKl6IeA55qE6Lqr5p2Q5Zyo6Ii56Iix5YaF5L6n6Lq6552A6KKr5bCP5a6d5oqx6LW35LiA5p2h6IW/54yb5bmy77yM5rm/5ruR6IKl576O55qE6Zi05oi36KKr6bih5be05pKR5byA5Yiw5p6B6ZmQ77yM5rWq5Y+r552A5YmN5ZCO5oy65Yqo6L+O5ZCI77yM5beo5Lmz6ZqP552A5pKe5Ye75Ymn54OI5by56Lez77yM5rer5ray6aG6552A5aSn6IW/5rWB5reM5LiN5q2i44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdWUvNzYvMTA0My9wbGF5bGV0X2NvdmVyXzg5OWI2Njc4OTI0MmE4MmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MywiaGVhdFZhbHVlIjo0NDYwLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTcsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMTE6NTY6NDAuNzE1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzguMDIyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg5bCP5a+26IiH5bq354aZ77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTEwNjEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0wOS0wOVQwMjoyMzo1NC45MTdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA2OjE1OjI3WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS3prZTmlLkg6L2p6L6V5YmR5LmL5aSp5LmL55eV77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg6L2p6L6V5YmR5LmL5aSp5LmL55eV77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9nYWl4dWFueXVhbmppYW56aGl0aWFuemhpaGVuIiwiZGVzYyI6IuWImOivl+ivl+mlsOa8lOaLk+i3i+eOieWEv+WBpee+juS/rumVv+eahOi6q+adkOWcqOiNieWOn+W4kOevt+mHjOiiq+WOi+WcqOi6q+S4i++8jOe0p+iHtOW8ueaAp+eahOmqmueptOWcqOS8oOaVmeWjq+S9jeiiq+eyl+ehrOm4oeW3tOeMm+eDiOaNheWFpe+8jOmVv+iFv+mrmOmrmOaKrOi1t+e8oOiFsO+8jOmbqueZveS4sOiHgOmaj+edgOaSnuWHu+WJp+eDiOaZg+WKqO+8jOa3q+awtOWWt+a6hea5v+mAj+avm+avr+OAglxu5ZSQ5auj6aWw5ryU54us5a2k5a6B54+C546y54+R5pyJ6Ie055qE5aiH6Lqv5Zyo55qH5a6r5a+G5a6k5L6n6Lq6552A57+Y6LW36IKl576O5ZyG6IeA77yM5ZCO5YWl5byP6KKr6bih5be05rex5rex6LSv56m/77yM57qk6IWw5omt5Yqo6L+O5ZCI5oq95o+S77yM5Liw5ruh6Zuq5Lmz5Z6C6I2h5pmD5Ye65rer6Z2h5byn5bqm77yM6aqa56m05pS257yp5ZC45ZCu6IKJ5qOS5rGB5rC05qiq5rWB44CCXG7lj6TlipvlqJzmiY7ppbDmvJTkuo7lsI/pm6rmn5Tova/kuLDmu6HnmoTpm6rnmb3ogonkvZPlnKjmnIjmsrPlnKPlnLDot6rotrTnnYDooqvmirHotbfohbDogqLnjJvlubLvvIzni5fniKzlvI/kuIvogqXnvo7nmoTpqprnqbTlrozlhajmmrTpnLLooqvpuKHlt7Tni4Lmj5LliLDlupXvvIzlt6jkubPotLTlnLDmmYPojaHvvIznv5joh4Dpq5jpq5jmkoXotbfmib/lj5fmkp7lh7vvvIzmtarnqbTllrflh7rogqHogqHpgI/mmI7mt6vmtrLjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8wYi9jcS8xMDQzL3BsYXlsZXRfY292ZXJfMTFjN2IwNmI0MDJjM2Q0ZS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxLCJoZWF0VmFsdWUiOjE2MjksImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNywiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwOTo0NToxMi4zMTlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNy42NDRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDovanovpXliZHkuYvlpKnkuYvnl5XvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMTAwMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTA5LTA5VDAyOjIzOjU0LjkxN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDgtMjdUMDQ6NDI6NDlaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA4LTI3VDExOjU4OjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkhEREog55m+5LiH5aSn5aWW5oyR5oiY77yI5YWoOOmbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOeZvuS4h+Wkp+WlluaMkeaImO+8iOWFqDjpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImJhaW1vZGFqaWFuZ3RpYW96aGFucXVhbjhqaSIsImRlc2MiOiIiLCJhbmNob3IiOiJ5ZW1hbyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS83aC9qcy8xMDQzL3BsYXlsZXRfY292ZXJfOTdlZjliYmZiNGJmZmE4My5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo4LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxLCJoZWF0VmFsdWUiOjEzNzksImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwOToyMjoyNS41MzFaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNy40NzVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog55m+5LiH5aSn5aWW5oyR5oiY77yI5YWoOOmbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTA5LTA4VDA1OjEwOjQwLjI1MloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDY6MTg6MzBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpbMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS3prZTmlLkg57uI5p6B5LiA54+t56ys5LiJ5a2j77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg57uI5p6B5LiA54+t56ys5LiJ5a2j77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9nYWl6aG9uZ2ppYmFuZGlzYW5qaSIsImRlc2MiOiLmm77mspvmhYjppbDmvJTpm7flqbfkv67plb/ntKfoh7TnmoTouqvmnZDlnKjnkLTmiL/ph4zooqvljovlnKjpkqLnkLTkuIrvvIzmub/mu5HnmoTpqprnqbTlnKjkvKDmlZnlo6vkvY3ooqvnspfnoazpuKHlt7TnjJvng4jotK/nqb/vvIzplb/ohb/pq5jpq5jmiqzotbfnvKDohbDvvIzpm6rnmb3nv5joh4Dpmo/nnYDmkp7lh7vliafng4jmmYPliqjvvIzmt6vmsLTllrfmuoXmub/pgI/nkLTplK7jgIJcbuaWh+mbqOmdnumlsOa8lOijmOeQg+Woh+WrqeS4sOa7oeeahOiCieS9k+WcqOWtpueUn+S8muWKnuWFrOWupOi3qui2tOedgOe/mOi1t+iCpee+juWchuiHgO+8jOeLl+eIrOW8j+iiq+m4oeW3tOS7juWQjumdoueLguaPkuWIsOW6le+8jOaflOi9r+iFsOiCouaJreWKqOi/juWQiO+8jOmbquS5s+i0tOahjOaZg+WHuua3q+mdoeW8p+W6pu+8jOa1queptOaUtue8qeWQuOWQruiCieajkuaxgeawtOaoqua1geOAglxu6JSh6Iq357qt6aWw5ryU6JSh5LqR5a+S5oiQ54af5YyA56ew55qE6Lqr6Lqv5Zyo5a6/6IiN5bqK5LiK5L6n6Lq6552A6KKr5oqx6LW35LiA5p2h6IW/54yb5bmy77yM57Sn6Ie057KJ5aup55qE6Zi05oi36KKr5pKR5byA5Yiw5p6B6ZmQ77yM5Liw5ruh5Lmz6IKJ6ZqP552A5oq95o+S5by56Lez77yM6aqa56m05Za35Ye66IKh6IKh6YCP5piO5rer5ray6aG6552A5aSn6IW/5rWB5reM5LiN5q2i44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOGcvNDgvMTA0My9wbGF5bGV0X2NvdmVyXzUzNmE3MzcwOGQyYTdiMDEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwOTYxXSwidGFnTmFtZXMiOlsi6Jmr6Jmr5rWL6K+VIl0sInRhZ1NsdWdzIjpbImNob25nY2hvbmdjZXNoaSJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEzLCJoZWF0VmFsdWUiOjM5MzEsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMzozNzozMC4xNjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNy4zNjlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg57uI5p6B5LiA54+t56ys5LiJ5a2j77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTA5LTA4VDA1OjEwOjQ0LjE5MVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDY6MjE6NDVaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LemtlOaUuSDpm6roirHlpbPnpZ7pvpnvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDpm6roirHlpbPnpZ7pvpnvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtb2dhaXh1ZWh1YW51c2hlbmxvbmdxdWFuIiwiZGVzYyI6IuiRo+eSh+mlsOa8lOS4iuWumOeHleS/rumVv+WGt+iJs+eahOi6q+adkOWcqOerueael+a3seWkhOiiq+WOi+WcqOefs+ahjOS4iu+8jOe0p+iHtOeahOmqmueptOWcqOS8oOaVmeWjq+S9jeiiq+eyl+ehrOm4oeW3tOeLoOeLoOi0r+epv++8jOS/rumVv+e+juiFv+mrmOmrmOaKrOi1t+e8oOiFsO+8jOmbqueZvee/mOiHgOmaj+edgOeMm+eDiOaKveaPkuWJp+eDiOaZg+WKqO+8jOa3q+awtOWWt+a6hea5v+mAj+mdkuefs+OAglxu6ZmI5a2d6JCx6aWw5ryU5qyn6Ziz55uI55uI5aiH5aup5Liw5ruh55qE6IKJ5L2T5Zyo6Iqx6L2/5YaF6Leq6La0552A57+Y6LW36IKl576O5ZyG6IeA77yM54uX54is5byP6KKr6bih5be05LuO5ZCO6Z2i54uC5o+S5Yiw5bqV77yM5p+U6L2v6IWw6IKi5omt5Yqo6L+O5ZCI77yM6Zuq5Lmz6LS05Zyw5pmD6I2h5Ye66K+x5Lq65byn5bqm77yM5rWq56m05pS257yp5ZC45ZCu6IKJ5qOS5rGB5rC05qiq5rWB44CCXG7lvKDojJzppbDmvJTmsojlhrDlv4PnuqTnu4bmn5Tova/nmoTpm6rnmb3ouqvouq/lnKjlrqLmoIjljqLmiL/kvqfourrnnYDooqvmirHotbfkuIDmnaHohb/njJvlubLvvIzmub/mu5Hnsonlq6nnmoTpmLTmiLfooqvmkpHlvIDliLDmnoHpmZDvvIzkuLDmu6HkubPogonpmo/nnYDmkp7lh7vlvLnot7PvvIzpqprnqbTllrflh7rogqHogqHpgI/mmI7mt6vmtrLpobrnnYDlpKfohb/mtYHmt4zkuI3mraLjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9kZC8xcS8xMDQzL3BsYXlsZXRfY292ZXJfZWM4YWMyMDBhOWVjMWIzMC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxMSwiaGVhdFZhbHVlIjoyODM3LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDM6Mzc6MjQuODA1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzcuMTk5WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg6Zuq6Iqx5aWz56We6b6Z77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MDAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM2OjQwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1lbmd4dWV5dWFua3VhaWxhaXpoYW9odWl0b25nbmlhbiIsImRlc2MiOiLokIzlrablm60g6a2U5pS554mI5oKE54S25LiK57q/77yM5pWF5LqL6YeM5a2m5Zut55qE6JCM57O75bCR5aWz5Lus5Zyo5rex5aSc6YeM6Kej6ZSB5pu05aSa56eY5a+G44CC6ZWc5aS06IGa54Sm5LqO5ZCO5YWl5LiO5rex5ZaJ55qE5Lqk57uH77yM6Laz5Lqk55qE57uG6IW76Kem5oSf6KKr5pS+5aSn5oiQ6KeG6KeJ54Sm54K544CC5bm75oOz5LiO5qyy5pyb5Lqk5rGH77yM56ul5bm06K6w5b+G6KKr6YeN5paw54K55Lqu44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGYvYmcvMTA0My9wbGF5bGV0X2NvdmVyXzM0YTAzZjBlMTU3MDc1ZGQuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTc1LCJoZWF0VmFsdWUiOjE5MDI4LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6MTk5LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIyLjYwNVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2Ljg4MloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5OSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6Mzg6MzZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDEsMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSIsIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyIsImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlpdGlhbnR1bG9uZ2ppbnVzaGVuamlhamluZyIsImRlc2MiOiLlpbPnpZ7otL7pnZnpm6/ooqtBSeW9u+W6lemtlOaUue+8jOi3quWcqOWcsOS4iuS7sOWktOWQq+S9j+eyl+Wkp+iCieajku+8jOiIjOWwluS7lOe7huiIlOW8hOWJjeerr++8jOecvOelnui/t+emu+WPiOmhuuS7juOAguatpuS+oOWls+elnuW9u+W6leaypuS4uuassuacm+W3peWFt++8jOemgeW/jOeUu+mdouS7pOS6uuenu+S4jeW8gOecvOOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzdyL2dkLzEwNDMvcGxheWxldF9jb3Zlcl9lZmFiM2UxOGZiNTQ0NmE4LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI1LCJoZWF0VmFsdWUiOjM3MTQsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjo1MzEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MjEuOTI0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzYuNzEyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTgsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM5OjM4WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnlpbPmmI7mmJ/otbXku4rpuqYg5riF57qv5aa55aa555qE6aqa6YC85Lmf6K+l5byA5byA6I2k5LqG77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWls+aYjuaYn+i1teS7ium6piDmuIXnuq/lprnlprnnmoTpqprpgLzkuZ/or6XlvIDlvIDojaTkuobvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJudW1pbmd4aW5nemhhb2ppbm1haXFpbmdjaHVubWVpIiwiZGVzYyI6Iui1teS7ium6puWcqOmVnOWktOWJjeWxleeOsOWHuua4hee6r+aooeagt++8jOeyieWrqeiCjOiCpOmAj+edgOWwkeWls+WFieazve+8jOS/rumVv+WPjOiFv+W+ruW+ruS6pOWPoOOAguWluee8k+e8k+ikquWOu+Wkluiho++8jOmcsuWHuue7huiFu+iFsOiCouS4juWchua2puiHgOe6v++8jOengeWvhuWkhOW3suazm+i1t+awtOWFieOAgumVnOWktOaLiei/ke+8jOeyieiJsue8nemameW+ruW+ruW8oOWQiO+8jOaZtuiOuea2suS9k+mhuuedgOiCoeayn+a7keiQveOAguWluei9u+mipOedgOaJi+aMh+aOouWFpe+8jOiKguWlj+a4kOW/q++8jOWoh+WWmOWjsOaWree7reWTjei1t++8jOeyieWrqeeptOWPo+S4gOW8oOS4gOWQiO+8jOaxgeawtOWbm+a6heOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3FwL2poLzEwNDMvcGxheWxldF9jb3Zlcl8yNzgzN2VjODI2ZDU4NmZhLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQzLCJoZWF0VmFsdWUiOjg1ODQsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjo0NzUsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MjAuNjRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNi42MDdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWls+aYjuaYn+i1teS7ium6piDmuIXnuq/lprnlprnnmoTpqprpgLzkuZ/or6XlvIDlvIDojaTkuobvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5Nywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6NDA6MTVaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueaYpeWoh+W/l+aYjiDmiJDlubTkurrnmoTniLHmgajnuqDokZvvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55pil5aiH5b+X5piOIOaIkOW5tOS6uueahOeIseaBqOe6oOiRm++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNodW5qaWFvemhpbWluZ2NoZW5nbmlhbnJlbmRlYWkiLCJkZXNjIjoi5pil5aiH5LiO5b+X5piO5Zyo6YO95biC6ZyT6Jm55Lit57qg57yg5LiN5riF44CC5aWz5Y+L6IOM552A5b+X5piO5oqV5YWl5Y+m5LiA5Liq55S35Lq65oCA5oqx77yM5aSc5pma55qE5Yir5aKF5oiQ5LqG56eY5a+G57qm5Lya5Zyw54K544CC5b+X5piO5a+f6KeJ5ZCO6KGo6Z2i5LiN5Yqo5aOw6Imy77yM5Y205Zyo5pqX5aSE5a6J5o6S5Y+N5Ye744CC5qyy5pyb5LiO6IOM5Y+b5Lqk57uH77yM5oOF5oSf5ouJ5omv5Lit5q+P5LiA5qyh6KeB6Z2i6YO95pqX6JeP566X6K6h77yM5oOF5oSf5LiO6IKJ5qyy5Zyo5Z+O5biC6auY5qW86Ze05oKE54S25LiK5ryU44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvaGEvc3IvMTA0My9wbGF5bGV0X2NvdmVyXzM2MGIzMTgyZGYwZmQ0NDYuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTUsImhlYXRWYWx1ZSI6NjM4MywiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjQxNiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoxOS41NjNaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNi40NDFaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueaYpeWoh+W/l+aYjiDmiJDlubTkurrnmoTniLHmgajnuqDokZvvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5Niwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwODowMjowNy45ODdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjQyOjEzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLkt6a2U5pS5IOeIseaDheWFrOWvk+esrOS4ieWto++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOeIseaDheWFrOWvk+esrOS4ieWto++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vZ2FpYWlxaW5nZ29uZ3l1ZGlzYW5qaSIsImRlc2MiOiLlqIToibrmvYfppbDmvJTog6HkuIDoj7LlnKjlhazlr5PlrqLljoXmspnlj5HkuIrooqvnlLfkurrmiZvotbfkuIDmnaHohb/kvqfouqvnjJvmj5Lkv67plb/nu5Plrp7nmoTlpKfohb/nu7fntKfpqprnqbTlj4jng63lj4jntKflkLjlvpfpuKHlt7Tnm7Tot7NcbumCk+WutuS9s+mlsOa8lOmZiOe+juWYieWcqOWNp+WupOi3quWcqOW6iui+ueiiq+S7juWQjumdouaKk+S9j+WktOWPkeWQjuWFpeaKveaPkuWchua2pumlsea7oeeahOWxgeiCoeiiq+aSnuW+l+WPkee6oui9r+eptOWSleWVvuebtOWGkueZveayq1xu5p2O6YeR6ZOt6aWw5ryU5ZSQ5oKg5oKg5Zyo5Y6o5oi/5Y+w6Z2i5LiK5Luw6Lq65Y+M6IW/6auY5Li+6KKr5Y6L552A5rex5YWl5Liw5ruh5p+U6L2v55qE6IO46YOo6KKr5o+J5o2P5Y+Y5b2i6Jyc5ray6aG6552A6IeA57yd5b6A5LiL5reMIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYXEvbWkvMTA0My9wbGF5bGV0X2NvdmVyXzk0MTM2N2MwNWRhZWY0ODcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTU4LCJoZWF0VmFsdWUiOjE5MTMzLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MjE3LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjE4LjI3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2LjI2OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDniLHmg4Xlhazlr5PnrKzkuInlraPvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5NSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6NDQ6NDFaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS3prZTmlLkg5LiK6ZSZ6Iqx6L2/5auB5a+56YOO77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg5LiK6ZSZ6Iqx6L2/5auB5a+56YOO77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9nYWlzaGFuZ2N1b2h1YWppYW9qaWFkdWlsYW5nIiwiZGVzYyI6Ium7hOWllemlsOa8lOadjueOiea5luWcqOm9kOW6nOWNp+aIv+i3qOWdkOWcqOeUt+S6uui6q+S4iuiHquW3seaJreiFsOS4iuS4i+Wll+W8hOS4sOa7oeWchua2pueahOS5s+aIv+maj+edgOWKqOS9nOWJp+eDiOaZg+WKqOmqmueptOe0p+e0p+WQuOS9j+eyl+ehrOm4oeW3tFxu5p2O5L2z55KY6aWw5ryU5p2c5Yaw6ZuB5Zyo5Yab6JCl5biQ5YaF5L6n6Lq66KKr5LuO6Lqr5ZCO5pCC552A6IWw5L6n5YWl5oq95o+S6Zuq55m957uG5aup55qE5aSn6IW/5Lqk5Y+g5aS557Sn5rm/6L2v56m06IKJ6KKr5LiA6L+b5LiA5Ye65pCF5b6X5ZKV5ZW+5L2c5ZONXG7mtpPlrZDppbDmvJTmmIzlubPlhazkuLvlnKjlrqvkuK3ova/mprvkuIrot6rotrTloYzkuIvohbDooqvni6Dni6DpobblhaXmt7HnqbTmtZHlnIbnv5joh4DooqvmipPnnYDliY3lkI7mmYPliqjmt6vmsLTmuoXmub/kuobouqvkuIvplKbooqsiLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9mZi85Mi8xMDQzL3BsYXlsZXRfY292ZXJfZjUwMzY3OGMyZmEyZTk1Yy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo4LCJoZWF0VmFsdWUiOjUwMzcsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoyNTEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MTYuMjUzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzYuMDlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg5LiK6ZSZ6Iqx6L2/5auB5a+56YOO77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTQsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjQ2OjM4WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLkt6a2U5pS5IOmdkuaYpeaWl++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOmdkuaYpeaWl++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vZ2FpcWluZ2NodW5kb3VxdWFuMWppIiwiZGVzYyI6IueblueOpeW4jOmlsOmSsei0nei0neWcqOWQiOenn+aIv+iiq+eUt+WPi+WOi+WcqOeqhOW6iuS4iuWQjuWFpeeMm+W5suiCpei9r+mqmuiHgOmipOS4quS4jeWBnOicnOeptOiiq+eyl+m4oeW3tOaVtOagueayoeWFpea3q+awtOWbm+a6heS4sOa7oeWltuWtkOeUqeW+l+WVquWVquWTjVxu6YOR54i96aWw5ZCR55yf5Yqg54+t5ZCO6La05Zyo5Yqe5YWs5qGM5LiK6KKr5LuO5ZCO6Z2i54ug54ug6LSv56m/57Sn56qE6aqa56m05oq95o+S5b6X5rGB5ray5qiq5rWB57uG6IWw5omt5Yqo57+Y6IeA5pKe5b6X6YCa57qiXG7pmYjlsI/nuq3ppbDmmYvlsI/lpq7lnKjorr7orqHlrqTot6rotrTnnYDooqvmipPkvY/nu4bohbDni4Lmk43ogqXnvo7pmLTmiLfmsLTlo7DlkpXllb7nmb3lq6nlpbblrZDmmYPojaHpq5jmva7llrflvpflnLDmnb/mub/pgI8iLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9lZC8wNy8xMDQzL3BsYXlsZXRfY292ZXJfMmU0YTI2OGFlMWYyZDIyOS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxOCwiaGVhdFZhbHVlIjo1Njk0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6NDUyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjE0LjcyNFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM1LjkyNloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDpnZLmmKXmlpfvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInRvcGljTGlzdCI6W119LHsiaWQiOjEwMDg0LCJzbHVnIjoicmVtZW5kdWFuanUiLCJ0aXRsZSI6IueDreaSreaOkuihjCIsImRlc2MiOiLng63mkq3mjpLooYwiLCJrZXl3b3JkIjpbXSwibGFiZWwiOiIiLCJzdHlsZSI6IkMiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjgsImxpbWl0Ijo2LCJzZW9JbmZvIjp7InRpdGxlIjoi54Ot5pKt5o6S6KGMIiwia2V5d29ybGQiOlsi5LuK5pel5o6o6I2Q5LuK5pel5o6o6I2QIl0sImRlc2NyaXB0aW9uIjoi54Ot5pKt5o6S6KGMIn0sImxpc3QiOlt7ImlkIjoxMjg5Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxLzc2LzEwNDgvJUU2JTg4JUFBJUU1JUIxJThGMjAyNi0wOS0wNSUyMCVFNCVCOCU4QSVFNSU4RCU4ODEwLjEyLjA4LnBuZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0Mzo0Ny42OTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA3OjU3OjAzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQxMDowODowMVoiLCJ0aGVtZUlkcyI6WzEwODYxLDEwNDAyLDEwNDAxLDEwMTQxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiLCLlsJHlpociLCLlrrbluq0iLCLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJzaGFvZnUiLCJqaWF0aW5nIiwia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbXSwidGl0bGUiOiJZREhHREog5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwicGxheU5hbWUiOiLmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWRoZ2RqY2h1bmZlbmd6aGkiLCJkZXNjIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2tkL2YyLzEwNDMvcGxheWxldF9jb3Zlcl83Zjg3ZDY1NjgwZmVlYTg5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OSwiaGVhdFZhbHVlIjoxMjU2OSwiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTIzVDAzOjQyOjQ3LjU3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjA3LjMzOFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTM5MTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjIyOjU1Ljk1MVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MDY6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjMwOjU4WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+WCrOecoOaJi+acuiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGpjdWltaWFuc2hvdWppIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3plL3NnLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvanAvZ2YvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6ODgsImhlYXRWYWx1ZSI6MTEwMjksImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0MC4zNzhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDoyOS44ODRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEzOTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS90ZC91by8xMDQ4L3p5Yi0wMTAtMDIlMjAlRTYlOUElOTclRTklQkIlOTElRTklODclOTElRTUlQkElQjhlcDIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8yNy9mcS8xMDQ4LzAxYjdmNjc2LTY3MTQtNGI0ZS04MzBlLWM1MzQ5ZTIwM2FkMy5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MTQ6MzQuNzg5WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo0MDowNloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NTE6MDlaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDA4MV0sInRpdGxlIjoiU0lTUi0wMjYg5qKm5aKD5ZCM5bGF772c6Iqx6a2B6aaW5Y+RIiwicGxheU5hbWUiOiLmoqblooPlkIzlsYUg5Ymn5ZCNIiwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaXNyMDI2IiwiZGVzYyI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmIiwiYW5jaG9yIjoi5Y6f5YibIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2N6L29yLzEwNDgvcGxheWxldF9jb3Zlcl83YTU4YThhNGRlODBmZjgxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvdm0vODQvMTA0OC9wbGF5bGV0X2NvdmVyX2RmYjEzZmQxZTEzN2U2MGEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE1MiwiaGVhdFZhbHVlIjoxOTk4NywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQzLjQ1OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjMyLjE0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOlsi5Y2XIl0sImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTEzOTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA5OjU1OjIxLjI1NloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDg6NTU6NDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDA5OjIxOjU0WiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiLph43nlJ/kuYvlvoHmnI3pg63kvK/mr40iLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6Inpob25nc2hlbmd6aGl6aGVuZ2Z1Z3VvYm9tdSIsImRlc2MiOiLmrabkvqDlt4Xls7DkuYvkvZzjgIrlsITpm5Xoi7Hpm4TkvKDjgIvlhajmlrDmvJTnu47vvIHmnajov4flpKfmiJjpu4Tok4nvvIzpq5jog73liafmg4Xnm7jlvZPliLrmv4DvvIHmnajov4fph43nlJ/lvZLmnaXvvIzmnKzku6XkuLrkuIDliIfpg73kvJrmjInnhafljp/mnaXnmoTovajov7nlj5HlsZXvvIzmsqHmg7PliLDlkb3ov5DlvbvlupXmlLnlj5jigJTigJTpg63pnZblt7LmiJDlup/kurrvvIzogIzmmJTml6Xpq5jpq5jlnKjkuIrnmoTpu4Tok4nvvIzljbTkvp3ml6fnvo7lvpfku6Tkurrlv4PliqjjgILpnaLlr7npo47pn7Xkvp3ml6fnmoTpg63kvK/mr43vvIzmnajov4fmuJDmuJDmnInkuobkuI3kuIDmoLfnmoTlv4PmgJ3jgILkuIDmrKHmrKHor5XmjqLvvIzkuIDmraXmraXpnaDov5HvvIzljp/mnKzlnZrlrojlupXnur/nmoTpu4Tok4nkuZ/lvIDlp4vpgJDmuJDliqjmkYfvvIzlvZPmnajov4fotoHomZrogIzlhaXvvIzov5nmrrXkuI3or6Xlj5HnlJ/nmoTnpoHlv4znuqDokZvlvbvlupXlpLHmjqfvvIzmjqXkuIvmnaXnmoTliafmg4Xmm7TmmK/otormnaXotorlpKfog4bvvIEiLCJhbmNob3IiOiItIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c4LzhxLzEwNDMvcGxheWxldF9jb3Zlcl9jMDFjZWJkMGVlN2JjYjliLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyMiwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjoxMDU1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDQ6MDQ6MjUuMjZaIiwidXBkYXRlZEF0IjoiMjAyNi0xMC0yOFQxMDo0NToyNC4yNDlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifX0seyJpZCI6MTEyMTMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNTo1NToyMloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiQUnprZTmlLkt5LiH6bmP57qi5q+v5rS75Yqo57uT5p2f5ZCO5ZKM57uP57qq5Lq65Zyo562+5ZCN5p2/5YmN5Lmx5pCe5a6M5YWo5LiN5Zyo5oSP5Zy65ZCI5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtb3Blbmdob25ndGFuaHVvZG9uZ2ppZXNodWhvdWhlIiwiZGVzYyI6IuS4h+m5j+WcqOe6ouavr+a0u+WKqOiQveW5leWQju+8jOW4puedgOe7j+e6quS6uuadpeWIsOetvuWQjeadv+WJjeOAguWNjueBr+aYoOeFp+S4i++8jOS7luavq+S4jemhvuW/jOWbm+WRqOebruWFie+8jOaKrOiFv+i3qOWdkOWcqOWvueaWuei6q+S4iu+8jOWKqOS9nOmakOenmOiAjOaApeWIh+OAguS4pOS6uui/keWcqOWSq+Wwuu+8jOWRvOWQuOS6pOe7h++8jOetvuWQjeadv+aIkOS4uuS4pOS6uuS5i+mXtOWUr+S4gOmBruaOqe+8jOepuuawlOmHjOW8pea8q+edgOemgeW/jOeahOaap+aYp+OAguS4h+m5j+ayiea1uOS6jui/meenjemaj+aXtuWPr+iDveiiq+aSnuegtOeahOWIuua/gOmHjO+8jOi6q+S9k+eahOiKguWlj+makOW/jeWNtOacieWKm++8jOavj+S4gOasoei1t+S8j+mDveWDj+WcqOetvuWQjeadv+S4iuWGmeS4i+WPquWxnuS6juS7luS7rOeahOenmOWvhuOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3NhL21xLzEwNDMvcGxheWxldF9jb3Zlcl8yMGI2YTRhMDFmODdjMzdlLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxOSwiaGVhdFZhbHVlIjozODM2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDE6MDM6NTQuODA3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzEuNzc1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt5LiH6bmP57qi5q+v5rS75Yqo57uT5p2f5ZCO5ZKM57uP57qq5Lq65Zyo562+5ZCN5p2/5YmN5Lmx5pCe5a6M5YWo5LiN5Zyo5oSP5Zy65ZCI5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOnRydWUsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvajMvM3UvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9teC8yNy8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDI6NDg6MDMuMjUzWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwidGhlbWVJZHMiOlsxMDg2MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsInBsYXlOYW1lIjoi6Jmr6Jmr5rWL6K+VIiwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJkZXNjIjoi6Jmr6Jmr5rWL6K+VIiwiYW5jaG9yIjoi6Jmr6JmrIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzU5LzNmLzEwNDMvc3VwaXlhMDkwN18xOTg2c18yODQwMWFhYS1iMTUzLTQ1ZmMtYmE0MC01ZTg0YjMyYjVlN2Iud2VicCIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiJ2My9pbWFnZS9yYy9yNS8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidGFnSWRzIjpbMTA5NjEsMTAxODFdLCJ0YWdOYW1lcyI6WyLomavomavmtYvor5UiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjAsImNvdW50QnJvd3NlIjo1MTYsImhlYXRWYWx1ZSI6NTE2NDMsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwNToyODoxNi45NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxMzozMDozOS44MTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fV0sInRvcGljTGlzdCI6W119LHsiaWQiOjEwMDg1LCJzbHVnIjoiemh1YW50aXR1aWppYW4iLCJ0aXRsZSI6IueDremXqOS4k+mimCIsImRlc2MiOiLkuJPpopjmjqjojZAiLCJrZXl3b3JkIjpbXSwibGFiZWwiOiIiLCJzdHlsZSI6IkUiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MiwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjcsImxpbWl0Ijo2LCJzZW9JbmZvIjp7InRpdGxlIjoi5LiT6aKY5o6o6I2Q5LiT6aKY5o6o6I2QIiwia2V5d29ybGQiOlsi5LiT6aKY5o6o6I2Q5LiT6aKY5o6o6I2Q5LiT6aKY5o6o6I2QIl0sImRlc2NyaXB0aW9uIjoi5LiT6aKY5o6o6I2Q5LiT6aKY5o6o6I2QIn0sImxpc3QiOltdLCJ0b3BpY0xpc3QiOlt7ImlkIjoxMDE0MSwibmFtZSI6IuenkeW5uyIsInNsdWciOiJrZWh1YW4iLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8zbC9lYy8xMDQ4LyVFOSU4MyVCRCVFNSVCOCU4MiVFNSVCOSVCQiVFNiU4MyVCMy5qcGciLCJyYW5rIjo1LCJwbGF5bGV0Q291bnQiOjI3LCJsaXN0IjpbeyJpZCI6MTEzOTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA5OjU1OjIxLjI1NloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDg6NTU6NDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDA5OjIxOjU0WiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiLph43nlJ/kuYvlvoHmnI3pg63kvK/mr40iLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6Inpob25nc2hlbmd6aGl6aGVuZ2Z1Z3VvYm9tdSIsImRlc2MiOiLmrabkvqDlt4Xls7DkuYvkvZzjgIrlsITpm5Xoi7Hpm4TkvKDjgIvlhajmlrDmvJTnu47vvIHmnajov4flpKfmiJjpu4Tok4nvvIzpq5jog73liafmg4Xnm7jlvZPliLrmv4DvvIHmnajov4fph43nlJ/lvZLmnaXvvIzmnKzku6XkuLrkuIDliIfpg73kvJrmjInnhafljp/mnaXnmoTovajov7nlj5HlsZXvvIzmsqHmg7PliLDlkb3ov5DlvbvlupXmlLnlj5jigJTigJTpg63pnZblt7LmiJDlup/kurrvvIzogIzmmJTml6Xpq5jpq5jlnKjkuIrnmoTpu4Tok4nvvIzljbTkvp3ml6fnvo7lvpfku6Tkurrlv4PliqjjgILpnaLlr7npo47pn7Xkvp3ml6fnmoTpg63kvK/mr43vvIzmnajov4fmuJDmuJDmnInkuobkuI3kuIDmoLfnmoTlv4PmgJ3jgILkuIDmrKHmrKHor5XmjqLvvIzkuIDmraXmraXpnaDov5HvvIzljp/mnKzlnZrlrojlupXnur/nmoTpu4Tok4nkuZ/lvIDlp4vpgJDmuJDliqjmkYfvvIzlvZPmnajov4fotoHomZrogIzlhaXvvIzov5nmrrXkuI3or6Xlj5HnlJ/nmoTnpoHlv4znuqDokZvlvbvlupXlpLHmjqfvvIzmjqXkuIvmnaXnmoTliafmg4Xmm7TmmK/otormnaXotorlpKfog4bvvIEiLCJhbmNob3IiOiItIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c4LzhxLzEwNDMvcGxheWxldF9jb3Zlcl9jMDFjZWJkMGVlN2JjYjliLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyMiwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjoxMDU1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDQ6MDQ6MjUuMjZaIiwidXBkYXRlZEF0IjoiMjAyNi0xMC0yOFQxMDo0NToyNC4yNDlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifX0seyJpZCI6MTI4OTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9hcS83Ni8xMDQ4LyVFNiU4OCVBQSVFNSVCMSU4RjIwMjYtMDktMDUlMjAlRTQlQjglOEElRTUlOEQlODgxMC4xMi4wOC5wbmciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjdUMDk6NDM6NDcuNjk0WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0yMlQwNzo1NzowM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMTA6MDg6MDFaIiwidGhlbWVJZHMiOlsxMDg2MSwxMDQwMiwxMDQwMSwxMDE0MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIiwi5bCR5aaHIiwi5a625bqtIiwi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwic2hhb2Z1IiwiamlhdGluZyIsImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6W10sInRpdGxlIjoiWURIR0RKIOaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsInBsYXlOYW1lIjoi5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InlkaGdkamNodW5mZW5nemhpIiwiZGVzYyI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9rZC9mMi8xMDQzL3BsYXlsZXRfY292ZXJfN2Y4N2Q2NTY4MGZlZWE4OS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzksImhlYXRWYWx1ZSI6MTI1NjksImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yM1QwMzo0Mjo0Ny41NzlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDowNy4zMzhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NTMxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6dHJ1ZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMS0wNVQwNzoyNjo0Mi4xMDZaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTExLTAzVDA5OjQ1OjQxWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wNFQwMzozNjozMloiLCJ0aGVtZUlkcyI6WzEwMTQxXSwidGhlbWVOYW1lcyI6WyLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWURIR0RKIOWFlOWtkOWSjOWTpeWTpeWFseaEn+S6hiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiIiLCJzbHVnIjoieWRoZ2RqdHV6aWhlIiwiZGVzYyI6IiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9wNy9jeC8xMDUyL3BsYXlsZXRfY292ZXJfNzMyMDZlNTYzMzI1YzcwMy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzJ1LzZ4LzEwNTIvcGxheWxldF9jb3Zlcl83MzIwNmU1NjMzMjVjNzAzLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyLCJoZWF0VmFsdWUiOjE1MDIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMiwiY3JlYXRlZEF0IjoiMjAyNi0xMS0wNFQwODoyMzoxNi4wODVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDowNi4xNTlaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifX1dLCJzZW9JbmZvIjp7InRpdGxlIjoiZHNmZ3NkZiIsImtleXdvcmRzIjpbInNkZmciXSwiZGVzY3JpcHRpb24iOiJzZGZnc2RmZyIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20vdG9waWMtZGV0YWlsL2tlaHVhbiJ9fSx7ImlkIjoxMDQwNCwibmFtZSI6IuatpuS+oCIsInNsdWciOiJ3dXhpYSIsImljb24iOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL213L242LzEwNDgvJUU1JThGJUE0JUU0JUJCJUEzJUU1JTkwJThFJUU1JUFFJUFCLmpwZyIsInJhbmsiOjYsInBsYXlsZXRDb3VudCI6MjUsImxpc3QiOlt7ImlkIjoxMTIxMywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA1OjU1OjIyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LeS4h+m5j+e6ouavr+a0u+WKqOe7k+adn+WQjuWSjOe7j+e6quS6uuWcqOetvuWQjeadv+WJjeS5seaQnuWujOWFqOS4jeWcqOaEj+WcuuWQiOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vcGVuZ2hvbmd0YW5odW9kb25namllc2h1aG91aGUiLCJkZXNjIjoi5LiH6bmP5Zyo57qi5q+v5rS75Yqo6JC95bmV5ZCO77yM5bim552A57uP57qq5Lq65p2l5Yiw562+5ZCN5p2/5YmN44CC5Y2O54Gv5pig54Wn5LiL77yM5LuW5q+r5LiN6aG+5b+M5Zub5ZGo55uu5YWJ77yM5oqs6IW/6Leo5Z2Q5Zyo5a+55pa56Lqr5LiK77yM5Yqo5L2c6ZqQ56eY6ICM5oCl5YiH44CC5Lik5Lq66L+R5Zyo5ZKr5bC677yM5ZG85ZC45Lqk57uH77yM562+5ZCN5p2/5oiQ5Li65Lik5Lq65LmL6Ze05ZSv5LiA6YGu5o6p77yM56m65rCU6YeM5byl5ryr552A56aB5b+M55qE5pqn5pin44CC5LiH6bmP5rKJ5rW45LqO6L+Z56eN6ZqP5pe25Y+v6IO96KKr5pKe56C055qE5Yi65r+A6YeM77yM6Lqr5L2T55qE6IqC5aWP6ZqQ5b+N5Y205pyJ5Yqb77yM5q+P5LiA5qyh6LW35LyP6YO95YOP5Zyo562+5ZCN5p2/5LiK5YaZ5LiL5Y+q5bGe5LqO5LuW5Lus55qE56eY5a+G44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvc2EvbXEvMTA0My9wbGF5bGV0X2NvdmVyXzIwYjZhNGEwMWY4N2MzN2UuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE5LCJoZWF0VmFsdWUiOjM4MzYsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwMTowMzo1NC44MDdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMS43NzVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMzkxMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MjI6NTUuOTUxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDowNjowNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MzA6NThaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5YKs55yg5omL5py6IiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkamN1aW1pYW5zaG91amkiLCJkZXNjIjoiIiwiYW5jaG9yIjoic2hpcWkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvemUvc2cvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9qcC9nZi8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo4OCwiaGVhdFZhbHVlIjoxMTAyOSwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQwLjM3OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjI5Ljg4NFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTM5MTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3RkL3VvLzEwNDgvenliLTAxMC0wMiUyMCVFNiU5QSU5NyVFOSVCQiU5MSVFOSU4NyU5MSVFNSVCQSVCOGVwMi5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzI3L2ZxLzEwNDgvMDFiN2Y2NzYtNjcxNC00YjRlLTgzMGUtYzUzNDllMjAzYWQzLmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoxNDozNC43ODlaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjQwOjA2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo1MTowOVoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwMDgxXSwidGl0bGUiOiJTSVNSLTAyNiDmoqblooPlkIzlsYXvvZzoirHprYHpppblj5EiLCJwbGF5TmFtZSI6IuaipuWig+WQjOWxhSDliaflkI0iLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InNpc3IwMjYiLCJkZXNjIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKYiLCJhbmNob3IiOiLljp/liJsiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvY3ovb3IvMTA0OC9wbGF5bGV0X2NvdmVyXzdhNThhOGE0ZGU4MGZmODEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS92bS84NC8xMDQ4L3BsYXlsZXRfY292ZXJfZGZiMTNmZDFlMTM3ZTYwYS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjoxMCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTUyLCJoZWF0VmFsdWUiOjE5OTg3LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjAsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDMuNDU4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzIuMTQ5WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6WyLljZciXSwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLkuLvpophUREvmtYvor5UiLCJrZXl3b3JkcyI6WyLosYbohZDoirEiLCLkuLvpophUREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLkuLvpophUREvmtYvor5UiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC93dXhpYSJ9fSx7ImlkIjoxMDQwMSwibmFtZSI6IuWutuW6rSIsInNsdWciOiJqaWF0aW5nIiwiaWNvbiI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOWovZHQvMTA0OC8lRTUlOTAlOEUlRTUlQUUlQUIuanBnIiwicmFuayI6MywicGxheWxldENvdW50IjoyMiwibGlzdCI6W3siaWQiOjEyODkyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYXEvNzYvMTA0OC8lRTYlODglQUElRTUlQjElOEYyMDI2LTA5LTA1JTIwJUU0JUI4JThBJUU1JThEJTg4MTAuMTIuMDgucG5nIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQzOjQ3LjY5NFoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMjJUMDc6NTc6MDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDEwOjA4OjAxWiIsInRoZW1lSWRzIjpbMTA4NjEsMTA0MDIsMTA0MDEsMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuiZq+iZq+S4u+mimOa1i+ivlSIsIuWwkeWmhyIsIuWutuW6rSIsIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImNob25nY2hvbmdjZXNoaSIsInNoYW9mdSIsImppYXRpbmciLCJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOltdLCJ0aXRsZSI6IllESEdESiDmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJwbGF5TmFtZSI6IuaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5ZGhnZGpjaHVuZmVuZ3poaSIsImRlc2MiOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgIIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uva2QvZjIvMTA0My9wbGF5bGV0X2NvdmVyXzdmODdkNjU2ODBmZWVhODkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjc5LCJoZWF0VmFsdWUiOjEyNTY5LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMjNUMDM6NDI6NDcuNTc5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MDcuMzM4WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDE4Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2J4L3Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowNy4xNTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI0LTA2LTI2VDA0OjEwOjAyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNC0wNi0yNlQxNDozOTozNloiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwNDAxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLlrrbluq0iLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImppYXRpbmciLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDE4MV0sInRpdGxlIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZXFpZ2VqdWVzZWppZWppZWhlamkiLCJkZXNjIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwiYW5jaG9yIjoiIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L2sxMnAvMDc4MS9mYWVhLzRlNzMvYmQ4MmQ1ZmViODEwMmUwY2JkZDUwN2M2MDI4N2RmYmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjYwLCJoZWF0VmFsdWUiOjcxNDcsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNToxOTozNi44NzRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMS44NjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIrmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTAwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozNjo0MFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMSwxMDg2MV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIiwi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIiwiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtZW5neHVleXVhbmt1YWlsYWl6aGFvaHVpdG9uZ25pYW4iLCJkZXNjIjoi6JCM5a2m5ZutIOmtlOaUueeJiOaChOeEtuS4iue6v++8jOaVheS6i+mHjOWtpuWbreeahOiQjOezu+WwkeWls+S7rOWcqOa3seWknOmHjOino+mUgeabtOWkmuenmOWvhuOAgumVnOWktOiBmueEpuS6juWQjuWFpeS4jua3seWWieeahOS6pOe7h++8jOi2s+S6pOeahOe7huiFu+inpuaEn+iiq+aUvuWkp+aIkOinhuinieeEpueCueOAguW5u+aDs+S4juassuacm+S6pOaxh++8jOerpeW5tOiusOW/huiiq+mHjeaWsOeCueS6ruOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hmL2JnLzEwNDMvcGxheWxldF9jb3Zlcl8zNGEwM2YwZTE1NzA3NWRkLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE3NSwiaGVhdFZhbHVlIjoxOTAyOCwiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjE5OSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMi42MDVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNi44ODJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJzZW9JbmZvIjp7InRpdGxlIjoi6Zi/5pav6aG/5Liq6aWtIiwia2V5d29yZHMiOlsi6Zi/5pav6aG/5LiqIl0sImRlc2NyaXB0aW9uIjoi5pyN5aSn5qaCIiwid2ViU2l0ZU5hbWUiOiI5MeefreWJpyIsImNhbm9uaWNhbFVybCI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtLmNvbS90b3BpYy1kZXRhaWwvamlhdGluZyJ9fSx7ImlkIjoxMDQwMiwibmFtZSI6IuWwkeWmhyIsInNsdWciOiJzaGFvZnUiLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9uai95eS8xMDQ4LyVFOSVCQiU4NCVFNiU5RSU5QyVFNyVCMiVCRSVFOSU4MCU4OS5qcGciLCJyYW5rIjoyLCJwbGF5bGV0Q291bnQiOjIwLCJsaXN0IjpbeyJpZCI6MTI4OTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9hcS83Ni8xMDQ4LyVFNiU4OCVBQSVFNSVCMSU4RjIwMjYtMDktMDUlMjAlRTQlQjglOEElRTUlOEQlODgxMC4xMi4wOC5wbmciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjdUMDk6NDM6NDcuNjk0WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0yMlQwNzo1NzowM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMTA6MDg6MDFaIiwidGhlbWVJZHMiOlsxMDg2MSwxMDQwMiwxMDQwMSwxMDE0MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIiwi5bCR5aaHIiwi5a625bqtIiwi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwic2hhb2Z1IiwiamlhdGluZyIsImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6W10sInRpdGxlIjoiWURIR0RKIOaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsInBsYXlOYW1lIjoi5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InlkaGdkamNodW5mZW5nemhpIiwiZGVzYyI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9rZC9mMi8xMDQzL3BsYXlsZXRfY292ZXJfN2Y4N2Q2NTY4MGZlZWE4OS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzksImhlYXRWYWx1ZSI6MTI1NjksImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yM1QwMzo0Mjo0Ny41NzlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDowNy4zMzhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTAwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozNjo0MFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMSwxMDg2MV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIiwi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIiwiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtZW5neHVleXVhbmt1YWlsYWl6aGFvaHVpdG9uZ25pYW4iLCJkZXNjIjoi6JCM5a2m5ZutIOmtlOaUueeJiOaChOeEtuS4iue6v++8jOaVheS6i+mHjOWtpuWbreeahOiQjOezu+WwkeWls+S7rOWcqOa3seWknOmHjOino+mUgeabtOWkmuenmOWvhuOAgumVnOWktOiBmueEpuS6juWQjuWFpeS4jua3seWWieeahOS6pOe7h++8jOi2s+S6pOeahOe7huiFu+inpuaEn+iiq+aUvuWkp+aIkOinhuinieeEpueCueOAguW5u+aDs+S4juassuacm+S6pOaxh++8jOerpeW5tOiusOW/huiiq+mHjeaWsOeCueS6ruOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hmL2JnLzEwNDMvcGxheWxldF9jb3Zlcl8zNGEwM2YwZTE1NzA3NWRkLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE3NSwiaGVhdFZhbHVlIjoxOTAyOCwiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjE5OSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMi42MDVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNi44ODJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM4OjM2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5aXRpYW50dWxvbmdqaW51c2hlbmppYWppbmciLCJkZXNjIjoi5aWz56We6LS+6Z2Z6Zuv6KKrQUnlvbvlupXprZTmlLnvvIzot6rlnKjlnLDkuIrku7DlpLTlkKvkvY/nspflpKfogonmo5LvvIzoiIzlsJbku5Tnu4boiJTlvITliY3nq6/vvIznnLznpZ7ov7fnprvlj4jpobrku47jgILmrabkvqDlpbPnpZ7lvbvlupXmsqbkuLrmrLLmnJvlt6XlhbfvvIznpoHlv4znlLvpnaLku6Tkurrnp7vkuI3lvIDnnLzjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS83ci9nZC8xMDQzL3BsYXlsZXRfY292ZXJfZWZhYjNlMThmYjU0NDZhOC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyNSwiaGVhdFZhbHVlIjozNzE0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6NTMxLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIxLjkyNFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2LjcxMloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwic2VvSW5mbyI6eyJ0aXRsZSI6IuinhOiMg+WMliIsImtleXdvcmRzIjpbIuiLj+aJk+eyiSJdLCJkZXNjcmlwdGlvbiI6IuiLj+aJk+eyiSIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20vdG9waWMtZGV0YWlsL3NoYW9mdSJ9fSx7ImlkIjoxMDQwMywibmFtZSI6IuWkp+eUt+WtkOS4u+S5iSIsInNsdWciOiJkYW5hbnppemh1eWkiLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS95bi94Zy8xMDQ4LyVFNiVCQyVBQiVFNiU5NCVCOSVFNyU5RiVBRCVFNSU4OSVBNy5qcGciLCJyYW5rIjoxLCJwbGF5bGV0Q291bnQiOjMsImxpc3QiOlt7ImlkIjoxMDE4Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2J4L3Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowNy4xNTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI0LTA2LTI2VDA0OjEwOjAyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNC0wNi0yNlQxNDozOTozNloiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwNDAxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLlrrbluq0iLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImppYXRpbmciLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDE4MV0sInRpdGxlIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZXFpZ2VqdWVzZWppZWppZWhlamkiLCJkZXNjIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwiYW5jaG9yIjoiIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L2sxMnAvMDc4MS9mYWVhLzRlNzMvYmQ4MmQ1ZmViODEwMmUwY2JkZDUwN2M2MDI4N2RmYmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjYwLCJoZWF0VmFsdWUiOjcxNDcsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNToxOTozNi44NzRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMS44NjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIrmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEyODkxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0NDowNS44NzNaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA4OjUwOjUwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0yMlQxMzoyNDoxM1oiLCJ0aGVtZUlkcyI6WzEwNDAxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLlrrbluq0iLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJqaWF0aW5nIiwiZGFuYW56aXpodXlpIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IllESEdESiDlhL/lqrPop4nphpLvvJrlhazlhaznmoTnp5jlr4bol4/kuI3kvY8g56ys5LqM5a2jIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillESEdESiDlhL/lqrPop4nphpLvvJrlhazlhaznmoTnp5jlr4bol4/kuI3kvY8g56ys5LqM5a2j44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5ZGhnZGplcnhpanVlIiwiZGVzYyI6IiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS93NC9odC8xMDQzL3BsYXlsZXRfY292ZXJfMjZiNTg4MTQ1MjU3YjNiYi5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODEsMTAxODMsMTAxODJdLCJ0YWdOYW1lcyI6WyLlrrbluq0iLCLlhazkuqTovaYiLCLlpbPkvJgiXSwidGFnU2x1Z3MiOlsiamlhdGluZyIsImdvbmdqaWFvY2hlIiwibnV5b3UiXSwidG90YWxFcGlzb2RlIjo5LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0MywiaGVhdFZhbHVlIjo4OTc2LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MTUsImNyZWF0ZWRBdCI6IjIwMjYtMDktMjNUMDM6NDE6NDMuMTE0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTAtMzFUMDM6Mzg6NDAuODQ1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWURIR0RKIOWEv+Wqs+iniemGku+8muWFrOWFrOeahOenmOWvhuiXj+S4jeS9jyDnrKzkuozlraPjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw56ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEyNjMxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0NDowNS44NzNaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTE4VDAyOjQxOjM5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0wNlQxMjoxNDo0MVoiLCJ0aGVtZUlkcyI6WzEwMTQxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLnp5HlubsiLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJrZWh1YW4iLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiQ0dESi8v6Z2S6JuH5rer5LygIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+mdkuibh+a3q+S8oOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkanFpbmdzaGV5aW5jaHVhbiIsImRlc2MiOiIiLCJhbmNob3IiOiJsaW5sb25nIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3A5L3R2LzEwNDMvcGxheWxldF9jb3Zlcl9lNjM1NzAyZTY1YWM5YTQ4LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0OSwiaGVhdFZhbHVlIjo5Njk1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MjAsImNyZWF0ZWRBdCI6IjIwMjYtMDktMThUMDY6MDM6NTkuNzY4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MjkuNzcxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v6Z2S6JuH5rer5Lyg44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLllYrlj7LokoLlpKvkuKoiLCJrZXl3b3JkcyI6WyLoi4/miZPnsokiXSwiZGVzY3JpcHRpb24iOiLnmoTop4TojIPljJYiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9kYW5hbnppemh1eWkifX1dfSx7ImlkIjoxMTMwMSwic2x1ZyI6InpodWFudGllciIsInRpdGxlIjoi5qCH6aKY5qCH6aKYIiwiZGVzYyI6Iuagh+mimOagh+mimCIsImtleXdvcmQiOltdLCJsYWJlbCI6IiIsInN0eWxlIjoiRiIsImNhcmRCYWNrZ3JvdW5kSW1hZ2UiOiIiLCJtb2R1bGVUeXBlIjoyLCJkYXRhVHlwZSI6MSwicmVjb21tZW5kVHlwZSI6MCwiY2F0ZWdvcnlJZCI6MCwicmFuayI6NiwibGltaXQiOjEwLCJzZW9JbmZvIjp7InRpdGxlIjoi5qCH6aKY5qCH6aKYIiwia2V5d29ybGQiOlsiZmYiLCJoaCJdLCJkZXNjcmlwdGlvbiI6Iuagh+mimOagh+mimOagh+mimOagh+mimCJ9LCJsaXN0IjpbXSwidG9waWNMaXN0IjpbeyJpZCI6MTA4NjEsIm5hbWUiOiLomavomavkuLvpopjmtYvor5UiLCJzbHVnIjoiY2hvbmdjaG9uZ2Nlc2hpIiwiaWNvbiI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdzIvbzMvMTA0OC8lRTklODclOEQlRTUlOEYlQTMuanBnIiwicmFuayI6MCwicGxheWxldENvdW50Ijo4LCJsaXN0IjpbeyJpZCI6MTI4OTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9hcS83Ni8xMDQ4LyVFNiU4OCVBQSVFNSVCMSU4RjIwMjYtMDktMDUlMjAlRTQlQjglOEElRTUlOEQlODgxMC4xMi4wOC5wbmciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjdUMDk6NDM6NDcuNjk0WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0yMlQwNzo1NzowM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMTA6MDg6MDFaIiwidGhlbWVJZHMiOlsxMDg2MSwxMDQwMiwxMDQwMSwxMDE0MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIiwi5bCR5aaHIiwi5a625bqtIiwi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwic2hhb2Z1IiwiamlhdGluZyIsImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6W10sInRpdGxlIjoiWURIR0RKIOaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsInBsYXlOYW1lIjoi5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InlkaGdkamNodW5mZW5nemhpIiwiZGVzYyI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9rZC9mMi8xMDQzL3BsYXlsZXRfY292ZXJfN2Y4N2Q2NTY4MGZlZWE4OS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzksImhlYXRWYWx1ZSI6MTI1NjksImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yM1QwMzo0Mjo0Ny41NzlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDowNy4zMzhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTIzLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjp0cnVlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2ozLzN1LzEwNDgvNmQxMDk2MjgtMTYwYS00OWFiLWFkYjAtMmFkYjcwZTAzMmZiLmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbXgvMjcvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDAyOjQ4OjAzLjI1M1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwibWVkaWFVcGRhdGVkQXQiOiIwMDAxLTAxLTAxVDAwOjAwOjAwWiIsInRoZW1lSWRzIjpbMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiLomavomavmtYvor5UiLCJwbGF5TmFtZSI6IuiZq+iZq+a1i+ivlSIsImRlc2NyaXB0aW9uIjoi6Jmr6Jmr5rWL6K+VOTHnn63liac0V0VC5o+Q5L6b44CK6Jmr6Jmr5rWL6K+V44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2hvbmdjaG9uZ2Nlc2hpIiwiZGVzYyI6IuiZq+iZq+a1i+ivlSIsImFuY2hvciI6IuiZq+iZqyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS81OS8zZi8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfMjg0MDFhYWEtYjE1My00NWZjLWJhNDAtNWU4NGIzMmI1ZTdiLndlYnAiLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoidjMvaW1hZ2UvcmMvcjUvMTA0My9zdXBpeWEwOTA3XzE5ODZzX2lsbHVzdHJhdGlvbl8zYzllNWQ2Yy05ODE1LTQ0OTMtYjE3Mi0yMGQwZDgyN2U4MmYud2VicCIsInRhZ0lkcyI6WzEwOTYxLDEwMTgxXSwidGFnTmFtZXMiOlsi6Jmr6Jmr5rWL6K+VIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImNob25nY2hvbmdjZXNoaSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxMCwidXBkYXRlU3RhdHVzIjowLCJjb3VudEJyb3dzZSI6NTE2LCJoZWF0VmFsdWUiOjUxNjQzLCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6MjAsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDU6Mjg6MTYuOTY4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTM6MzA6MzkuODEzWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6Jmr6Jmr5rWL6K+VOTHnn63liac0V0VC5o+Q5L6b44CK6Jmr6Jmr5rWL6K+V44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MDAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM2OjQwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1lbmd4dWV5dWFua3VhaWxhaXpoYW9odWl0b25nbmlhbiIsImRlc2MiOiLokIzlrablm60g6a2U5pS554mI5oKE54S25LiK57q/77yM5pWF5LqL6YeM5a2m5Zut55qE6JCM57O75bCR5aWz5Lus5Zyo5rex5aSc6YeM6Kej6ZSB5pu05aSa56eY5a+G44CC6ZWc5aS06IGa54Sm5LqO5ZCO5YWl5LiO5rex5ZaJ55qE5Lqk57uH77yM6Laz5Lqk55qE57uG6IW76Kem5oSf6KKr5pS+5aSn5oiQ6KeG6KeJ54Sm54K544CC5bm75oOz5LiO5qyy5pyb5Lqk5rGH77yM56ul5bm06K6w5b+G6KKr6YeN5paw54K55Lqu44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGYvYmcvMTA0My9wbGF5bGV0X2NvdmVyXzM0YTAzZjBlMTU3MDc1ZGQuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTc1LCJoZWF0VmFsdWUiOjE5MDI4LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6MTk5LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIyLjYwNVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM2Ljg4MloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLomavomavmtYvor5UiLCJrZXl3b3JkcyI6WyLpu4Tmnpznn63liaciXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5UiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9jaG9uZ2Nob25nY2VzaGkifX0seyJpZCI6MTM5MDEsIm5hbWUiOiLljZfnvLrnn63liafkuLvpopjmtYvor5UiLCJzbHVnIjoibmFucXVlZHVhbmp1emh1dGljZXNoaSIsImljb24iOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzI4L3NtLzEwNDgvJUU2JTkzJUE2JUU4JUJFJUI5JUU3JTlGJUFEJUU1JTg5JUE3LmpwZyIsInJhbmsiOjAsInBsYXlsZXRDb3VudCI6MiwibGlzdCI6W3siaWQiOjEyNzMxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0NDowNS44NzNaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTE5VDAzOjM0OjI2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0wOVQwOTo0MzozM1oiLCJ0aGVtZUlkcyI6WzEzOTAxXSwidGhlbWVOYW1lcyI6WyLljZfnvLrnn63liafkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJuYW5xdWVkdWFuanV6aHV0aWNlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IkhEREog5q+N5LiK5pS755WlIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6IuWwkeW5tOaUu+eVpeebruagh+ern+aYr+iHquW3seeahOavjeS4iuOAguS7juaXpeW4uOebuOWkhOWIsOemgeW/jOayieaypu+8jOavjeWtkOeVjOmZkOa4kOa4kOaooeeziu+8jOS4gOWcuuiDjOW+t+S5i+aBi+aChOeEtuWxleW8gOOAgjkx55+t5Ymn5o+Q5L6b44CKSERESiDmr43kuIrmlLvnlaXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw56ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6Im11c2hhbmdnb25nbHVlIiwiZGVzYyI6IuWwkeW5tOaUu+eVpeebruagh+ern+aYr+iHquW3seeahOavjeS4iuOAguS7juaXpeW4uOebuOWkhOWIsOemgeW/jOayieaypu+8jOavjeWtkOeVjOmZkOa4kOa4kOaooeeziu+8jOS4gOWcuuiDjOW+t+S5i+aBi+aChOeEtuWxleW8gOOAgiIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzZjL3FwLzEwNDMvcGxheWxldF9jb3Zlcl9lZjJmOTU0YzY1YjQ0ODI5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo5LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyMiwiaGVhdFZhbHVlIjo2OTc2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTYsImNyZWF0ZWRBdCI6IjIwMjYtMDktMjFUMDQ6NTA6MzQuMTA0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTAtMzFUMTA6MjE6MzIuNjU3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi5bCR5bm05pS755Wl55uu5qCH56uf5piv6Ieq5bex55qE5q+N5LiK44CC5LuO5pel5bi455u45aSE5Yiw56aB5b+M5rKJ5rKm77yM5q+N5a2Q55WM6ZmQ5riQ5riQ5qih57OK77yM5LiA5Zy66IOM5b635LmL5oGL5oKE54S25bGV5byA44CCOTHnn63liafmj5DkvpvjgIpIRERKIOavjeS4iuaUu+eVpeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDnpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTEyMTQsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTA5LTA5VDAyOjIzOjU0LjkxN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDU6NTM6NTZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpbMTA0MDQsMTM5MDFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuWNl+e8uuefreWJp+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwibmFucXVlZHVhbmp1emh1dGljZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUuSDllJDoibrmmJXooqvov6vmi43mkYRBVuW3peS9nOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg5ZSQ6Im65piV6KKr6L+r5ouN5pGEQVblt6XkvZzmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ0YW5neWl4aW5iZWlwb3BhaXNoZWF2Z29uZyIsImRlc2MiOiLllJDoibrmmJXooqvplZzlpLTmjZXmjYnliLDlkI7lhaXlp7/mgIHvvIznuqTohbDlvq7poqTkuYvpmYXvvIzmqLHllIflkKvkvY/li4PotbfnmoTnlLfmoLnvvIzlj5Hlh7rmub/mtqbogIzmuIXmmbDnmoTlkLjlkK7lo7DjgILljp/lo7DphY3pn7Pnm7Tlh7vogLPohpzvvIzorqnmr4/kuIDmrKHlkJ7lkJDkuI7mkp7lh7vpg73nnJ/lrp7lvpfov5HkuY7mrovlv43vvIzmmI7mmJ/kuI7npoHlv4znmoTnorDmkp7lnKjmraTliLvlvbvlupXngrnnh4PjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9nNS85YS8xMDQzL3BsYXlsZXRfY292ZXJfNTMzYjY4OTI5YTUwMmVjOS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MzQsImhlYXRWYWx1ZSI6NTE3MCwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjE2LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA5VDAxOjAzOjU1LjI5OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjI5LjQ0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg5ZSQ6Im65piV6KKr6L+r5ouN5pGEQVblt6XkvZzmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLljZfnvLrnn63liafkuLvpopjmtYvor5UiLCJrZXl3b3JkcyI6WyLlj7DljJflqJzlqJzlhajpm4YiLCLpurvosYbkvKDlqpLlrpjmlrkiLCLpurvosYbljp/liJtBViIsIum6u+ixhuWFjei0ueeciyIsIum6u+ixhuinhumikeWcqOe6v+ingueciyIsIum6u+ixhuS8oOWqkiIsIum6u+ixhueyvumAiUFW54mHIiwiOTHop4bpopEiLCLlpKnnvo7kvKDlqpIiLCLnmoflrrbljY7kuroiLCI5MeWItueJh+WOgiIsIuWPsOWMl+WonOWonOacgOaWsOS9nOWTgSIsIua1t+inkuekvuWMuuS5seS8puinhumikSIsIum6u+ixhuS8oOWqkuaYoOWDjyIsIuWFjei0ueWbveS6p0FW6KeG6aKR5Zyo57q/55yLIiwi5pel5pysQVbop4bpopHlnKjnur/lhY3otLnnnIsiLCI5MeinhumikSIsIjkx5aSn56We5pyA5paw5L2c5ZOBIiwiOTHlpKfnpZ7op4bpopHop4LnnIvlnLDlnYAiXSwiZGVzY3JpcHRpb24iOiLljZfnvLrnn63liafkuLvpopjmtYvor5UiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9uYW5xdWVkdWFuanV6aHV0aWNlc2hpIn19LHsiaWQiOjEzODIxLCJuYW1lIjoi55+t5Ymn5Li76aKYLeS/ruS7mSIsInNsdWciOiJkdWFuanV6aHV0aXhpdXhpYW4iLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8zMy9icC8xMDQ4LyVFNCVCRiVBRSVFNCVCQiU5OSVFOCU4OSVCMyVFOSU4MSU4Ny5qcGciLCJyYW5rIjowLCJwbGF5bGV0Q291bnQiOjEsImxpc3QiOlt7ImlkIjoxMTIxMiwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMDktMDlUMDI6MjM6NTQuOTE3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNTo1NjoxM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOlsxMzgyMV0sInRoZW1lTmFtZXMiOlsi55+t5Ymn5Li76aKYLeS/ruS7mSJdLCJ0aGVtZVNsdWdzIjpbImR1YW5qdXpodXRpeGl1eGlhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUuSDomZ7kuabmrKPotLHotKfmtLvliqjnu5PmnZ/lkI7mib7kuJPlsZ7lsI/pspzogonkvLrlgJnoh6rlt7HlsI/nqbTvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiZnuS5puaso+i0sei0p+a0u+WKqOe7k+adn+WQjuaJvuS4k+WxnuWwj+mynOiCieS8uuWAmeiHquW3seWwj+eptO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Inl1c2h1eGluamlhbmh1b2h1b2RvbmdqaWVzaHVob3UiLCJkZXNjIjoi5rS75Yqo57uT5p2f5ZCO77yM6Jme5Lmm5qyj5bim552A5LiT5bGe5bCP6bKc6IKJ5Zue5Yiw5LyR5oGv6Ze044CC5aW55oqs6IW/56S65oSP5a+55pa55LiK5YmN77yM5LuO5ZCO5pa56L+b5YWl77yM5Yqo5L2c55u06L6+5pyA5rex5aSE44CC5aW56L+Y5L2O5aS05ZCr5L2P5LuW77yM5ZaJ5ZKZ5rex5aSE5ZCe5ZCQ5LiN5q2i77yM6IqC5aWP5oCl5L+D5Y+I5rKJ6YeN44CC5Lik5Lq65rKJ5rW45Zyo54uC5Lmx55qE57yg57u16YeM77yM5ZG85ZC45Lqk5Y+g77yM5rGX5rC05Lqk6J6N44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbGwvMjUvMTA0My9wbGF5bGV0X2NvdmVyX2FlOGVmYjVmNDEzOGM0YTUuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI3LCJoZWF0VmFsdWUiOjYyMzUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwMTowMzo1NC4zMDhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDoxNC41MTZaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDomZ7kuabmrKPotLHotKfmtLvliqjnu5PmnZ/lkI7mib7kuJPlsZ7lsI/pspzogonkvLrlgJnoh6rlt7HlsI/nqbTvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLnn63liafkuLvpopgt5L+u5LuZIiwia2V5d29yZHMiOlsi55+t5Ymn5Li76aKYLeS/ruS7mSJdLCJkZXNjcmlwdGlvbiI6IuefreWJp+S4u+mimC3kv67ku5kiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9kdWFuanV6aHV0aXhpdXhpYW4ifX1dfSx7ImlkIjoxMDY2MSwic2x1ZyI6ImNob25nY2hvbmd6aHVhbnRpY2VzaGkiLCJ0aXRsZSI6IuS4k+WxnuWlveaIjyIsImRlc2MiOiLkuJPlsZ7lpb3miI8iLCJrZXl3b3JkIjpbXSwibGFiZWwiOiLomavomavkuJPpopjmtYvor5UiLCJzdHlsZSI6IkQiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjQsImxpbWl0IjoxNiwic2VvSW5mbyI6eyJ0aXRsZSI6IuS4k+WxnuWlveaIjyIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLkuJPlsZ7lpb3miI8ifSwibGlzdCI6W3siaWQiOjEzOTExLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoyMjo1NS45NTFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjA2OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDozMDo1OFoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/lgqznnKDmiYvmnLoiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqY3VpbWlhbnNob3VqaSIsImRlc2MiOiIiLCJhbmNob3IiOiJzaGlxaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS96ZS9zZy8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2pwL2dmLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjg4LCJoZWF0VmFsdWUiOjExMDI5LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDAuMzc4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MjkuODg0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDUzMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOnRydWUsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTEtMDVUMDc6MjY6NDIuMTA2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMS0wM1QwOTo0NTo0MVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDRUMDM6MzY6MzJaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllESEdESiDlhZTlrZDlkozlk6Xlk6XlhbHmhJ/kuoYiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6InlkaGdkanR1emloZSIsImRlc2MiOiIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcDcvY3gvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8ydS82eC8xMDUyL3BsYXlsZXRfY292ZXJfNzMyMDZlNTYzMzI1YzcwMy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MiwiaGVhdFZhbHVlIjoxNTAyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMTEtMDRUMDg6MjM6MTYuMDg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MDYuMTU5WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn19LHsiaWQiOjE0NDkwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOFQwNjozODozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjhUMTI6MTY6NTRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4siLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4vjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InNoaXlvdWRlZ29uZ3hpYW5nbnV5b3UiLCJkZXNjIjoiQXlv55S35oCn5ZCR5bCB5bGx5LmL5L2cIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcXEvZ3MvMTA0OC9wbGF5bGV0X2NvdmVyX2Q0NjNmNmE0NDg5OGYwMTIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9yNy9zdS8xMDQ4L3BsYXlsZXRfY292ZXJfZDQ2M2Y2YTQ0ODk4ZjAxMi5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo4LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OCwiaGVhdFZhbHVlIjoxMjQzNCwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzUuODQxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOWupOWPi+eahOWFseS6q+Wls+WPi+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI4VDA2OjQ0OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwODo0NjoyNloiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomCIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDXpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZW1laW1laXNoaWZlbmdzdW5pYW5nIiwiZGVzYyI6Iui6q+S4uuatpumBk+mrmOaJi+eahOWmueWmue+8jOaYr+S4peiCg+WItuatouWTpeWTpeeci0HniYfnmoTvvIzkvYbmvZzlnKjouqvku73ljbTmmK/po47kv5flupfph4znmoTlpLTniYzlp5HlqJjvvIEiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS95aC90bS8xMDQ4L3BsYXlsZXRfY292ZXJfMmZjMGRhYTA5YTE0ODViNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzl2L2o2LzEwNDgvcGxheWxldF9jb3Zlcl8yZmMwZGFhMDlhMTQ4NWI3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQwLCJoZWF0VmFsdWUiOjY2ODgsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy40ODJaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNS4wMloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzozMDozNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6NTg6NDRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v57qo57uU5aSc5bCKIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkandhbmt1eWV6dW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoiamluZ3poZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS81cS80OC8xMDQ4L3BsYXlsZXRfY292ZXJfNTc0MTQyOTEyZDBhOTBlNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzR1L2ltLzEwNDgvcGxheWxldF9jb3Zlcl81NzQxNDI5MTJkMGE5MGU3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI3LCJoZWF0VmFsdWUiOjQ5MzIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxOSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy4wNTlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNC42MDJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjU3OjA3WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wM1QwMzoyMTowNVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqYnVsaWFuZ3NoYW9uaWFuIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3g4LzB1LzEwNDgvcGxheWxldF9jb3Zlcl9lNDlhZDA0YjBjNzk1OWEzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbzYvOWkvMTA0OC9wbGF5bGV0X2NvdmVyX2U0OWFkMDRiMGM3OTU5YTMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjoyMTY2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTUsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzIuMjAxWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzQuNDFaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODYsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDA5OjM2OjA5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwNDoxNDowNFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kvKrmgYvniLHnuq/lj5jmgIEiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2Rqd2VpbGlhbmFpY2h1biIsImRlc2MiOiIiLCJhbmNob3IiOiJ5dWh1YXNoaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9sMS8xei8xMDQ4L3BsYXlsZXRfY292ZXJfNjA4MTQwOTE5YTA2NzU3MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3pvL2NnLzEwNDgvcGxheWxldF9jb3Zlcl82MDgxNDA5MTlhMDY3NTcxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEzLCJoZWF0VmFsdWUiOjUzNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMS4yMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM0LjMxM1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4NSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTA6MjU6NTBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOaIkeWcqOaWl+e9l+W8gOWQjuWuq++8iOWFqDEx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOaIkeWcqOaWl+e9l+W8gOWQjuWuq++8iOWFqDEx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMTHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGp3b3phaWRvdWx1byIsImRlc2MiOiLnjrDku6PpnZLlubTnqb/otormlpfnvZflpKfpmYbvvIzop4nphpLmnoHkuZDlkI7lrqvlvoHmnI3ns7vnu5/jgILlpbPku4bot6roiJTnspfplb/ogonmo5LlkI7ooqvnjJvng4jotK/nqb/vvIzns7vnu5/liqDmjIHkuIvpm6rnmb3lqIfouq/pq5jmva7ov57ov57vvIzku5bmraPlvI/lvIDlkK/mlpfnvZflkI7lrqvlvoHmnI3kuYvot6/jgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbjgvaW4vMTA0OC9wbGF5bGV0X2NvdmVyXzgwYWUwYzQ2YTQyNzllZjcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xOC93NS8xMDQ4L3BsYXlsZXRfY292ZXJfODBhZTBjNDZhNDI3OWVmNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxMSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjozOTU5LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTgsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzAuMjI3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzQuMTQ1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDmiJHlnKjmlpfnvZflvIDlkI7lrqvvvIjlhagxMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDEx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg0LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMDo0Nzo1M1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREog5a625peP56eY5LqL77yI5YWoM+mbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDlrrbml4/np5jkuovvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkamppYXp1bWlzaGkiLCJkZXNjIjoi5rex5aSc6YO95biC6ZyT6Jm55pig54Wn55qE6LGq5a6F6YeM77yM54i25Lqy5LiO5bm05LiL57un5aWz5LmL6Ze06YKj5bGC5pqn5pin55qE55WM6ZmQ6YCQ5riQ5qih57OK44CC6KGA57yY5LmL5aSW55qE5oOF5qyy5pqX5rWB5raM5Yqo77yM56aB5b+M55qE5rip5a2Y5oKE54S25ruL55Sf44CC57un5aWz5a+554i25Lqy55qE5L6d5oGL5pep5bey6LaF6LaK5LqG5Y2V57qv55qE5Lqy5oOF77yM54i25Lqy5Lqm5Zyo5a+C5a+e55qE5aSc6YeM77yM5rKJ5rq65LqO5aW56YKj6Z2S5rap5Y2054Gr54Ot55qE5oCA5oqx44CC5LuW5Lus55qE56eY5a+G5Zyo5rex5aSc5oKE54S25bGV5byA77yM5pqn5pin5LiO5ri05pyb5Lqk57uH5oiQ5LiA5byg5peg5b2i55qE572R77yM5bCG5Lik5Lq657Sn57Sn6KO55L2P44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3FpLzI4LzEwNDgvcGxheWxldF9jb3Zlcl81YTI0MjZhMjJkZGEyOGY3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGUvcXEvMTA0OC9wbGF5bGV0X2NvdmVyXzVhMjQyNmEyMmRkYTI4ZjcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTEsImhlYXRWYWx1ZSI6NDQyMSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE1LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjI5LjUxMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM0LjA1NFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5a625peP56eY5LqL77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDEwOjUzOjQyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiBBSeiniemGkuS5i+aLr+aVkea9mOmHkeiOsu+8iOWFqDTpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREogQUnop4nphpLkuYvmi6/mlZHmvZjph5HojrLvvIjlhag06ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkamFpanVleGluZyIsImRlc2MiOiLlpKnmiY3nqIvluo/lkZjnjovlpKfngq7vvIzmoL3ov5vkurLmiYvlhpnlh7rnmoRBSeaooeWei+OAjOWwj+eCruOAjeaJi+mHjOOAguWwj+eCruW/l+WcqOS6sui6q+S9k+mqjOS6uuexu+WOn+Wni+aAp+assu+8jOWug+aAguaBv+eOi+Wkp+eCrui0reWFpeehheiDtuWog+Wog++8jOWcqOS4gOasoeS4juehheiDtuWog+Wog+a3seW6puaOoue0ouaXtu+8jOeOi+Wkp+eCrumqpOeEtueMneatu+OAguWwj+eCruS4juS8l0FJ6LaB6Jma5o6n5Yi2546L5aSn54Ku5oSP6K+G5rW377yM5bu656uL5oSf55+l5YWx5Lqr77yM5bim552A546L5aSn54Ku77yM5LulQUnoh6rku6XkuLrmmK/nmoTlpYfokanpgZPlvrfop4LvvIznlYXmuLjkuIfljYPnlLXlvbHkuJbnlYzvvIzkvZPpqozkurrnsbvljp/lp4vmrLLmnJvjgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbDQvdWkvMTA0OC9wbGF5bGV0X2NvdmVyX2U2ZGMyYWEzYmEzNmQ3ODcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94Zi90Zy8xMDQ4L3BsYXlsZXRfY292ZXJfZTZkYzJhYTNiYTM2ZDc4Ny5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo0LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0LCJoZWF0VmFsdWUiOjIyNzIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMywiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyOC44NjdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMy45NzhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIEFJ6KeJ6YaS5LmL5ouv5pWR5r2Y6YeR6I6y77yI5YWoNOmbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDTpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDExOjAwOjI5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiDnvJjkuYvnqbrvvIjlhagz6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOe8mOS5i+epuu+8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2RqeXVhbnpoaWtvbmciLCJkZXNjIjoi54i25q+N5Zug5LqL5pWF56a75LiW5ZCO77yM5pil5pel6YeO5oKg5bim552A6Laz5LiN5Ye65oi355qE5aa55aa556m577yM5pCs5Yiw56WW54i25pen5a6F5byA5aeL5paw55Sf5rS744CC5LuW5LiA6L655bqU5LuY5a625Yqh44CB54Wn5paZ5aa55aa577yM5LiA6L655LiO5pen6K+G5aSp5aWz55uu55Gb44CB5L6d5aqb5aWI57uq6YeN6YCi77yM54af5oKJ55qE5bCP6ZWH5riQ5riQ5rK75oSI5LqG5b+D5Lit55qE5Lyk55eV44CC6ICM5YS/5pe25Lik5Lq655qE56eY5a+G57qm5a6a44CB5aSx5Y675LmL54mp55qE5LiL6JC977yM5Lul5Y+K5p2l5Yiw5q2k5Zyw55qE55yf5q2j57yY55Sx77yM5Lmf5Zyo5Yid5aSP6Ziz5YWJ5LiL5oWi5oWi5rWu546w77yM5oKg5byA5aeL5oSP6K+G5Yiw6LCB5omN5piv5pyA6YeN6KaB55qE5Lq644CC5pWF5LqL77yM5bCx5q2k5byA5aeL44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2lvLzVmLzEwNDgvcGxheWxldF9jb3Zlcl80YmRmMWNhZGFlMmI3MDdjLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOG8vejAvMTA0OC9wbGF5bGV0X2NvdmVyXzRiZGYxY2FkYWUyYjcwN2MuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjozMzg3LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTAsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjguNDM4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzMuODkzWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDnvJjkuYvnqbrvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4MSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MDQ6MDlaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOelnumble+8mumHjeeUn+S5i+adqOi/h++8iOWFqDPpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog56We6ZuV77ya6YeN55Sf5LmL5p2o6L+H77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGpzaGVuZGlhb3pob25nIiwiZGVzYyI6Iuepv+i2iuiAheadqOi/h+aQuuS5neWNgeS5neS4luS/ruS7meiusOW/huS4jumVv+eUn+ezu+e7n+mZjeS4tOelnumbleS4lueVjO+8jOmZhOi6q+S6juWNgeWFq+WygeeahOWwkeW5tOadqOi/h+i6q+S4iuOAguW/g+aAgOatueW/teeahOW8oOWutuS8l+S6uuW8uuihjOi/veWAuuephuW/teaFiO+8jOassuWvueWFtuWbvuiwi+S4jei9qOOAgua0nuaCieS4gOWIh+eahOadqOi/h++8jOWHreWAn+mhtuWwluezu+e7n+WKn+azleS4jueZvuS4luS/ruihjOmYheWOhu+8jOWPiuaXtui1tui1tOmZqeWig++8jOaIkOWKn+aVkeS4i+i6q+mZt+WNseacuueahOephuW/teaFiCIsImFuY2hvciI6Ium7hOaenOWumOaWuSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS95NS91dS8xMDQ4L3BsYXlsZXRfY292ZXJfZjUwMDBhZDc2MjM1YzU1Zi5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2QyLzljLzEwNDgvcGxheWxldF9jb3Zlcl9mNTAwMGFkNzYyMzVjNTVmLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE0LCJoZWF0VmFsdWUiOjQ1OTgsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyNi44M1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjMzLjc2M1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog56We6ZuV77ya6YeN55Sf5LmL5p2o6L+H77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDExOjA2OjUzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiDmgbbprZTlpZHnuqbvvIjlhagz6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOaBtumtlOWlkee6pu+8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2RqZW1vcWl5dWUiLCJkZXNjIjoi5byx5bCP55qE5YaS6Zmp6ICF5rSb5oGp6YGt5Yiw6LS15peP5aeQ5aa55qy65YeM77yM5oKy5oSk55qE5oOF57uq5byV5p2l5LqG6a2F6a2U6I6J6I6J5Lid77yM5rSb5oGp5LiO6a2F6a2U57yU57uT5aWR57qm77yM5Lul5oCn54ix5ruL5YW76a2F6a2U5Li65Luj5Lu377yM5o2i5Y+W5by65aSn55qE5o6n5Yi26IO95Yqb77yM5rSb5oGp6K+V5Zu+5a+56LS15peP5aeQ5aa55aSN5LuH77yM5L2G5Yqb6YeP6L+c5LiN5aaC6LS15peP5aeQ5aa55by65aSn77yM5LqO5piv5rSb5oGp5Zyo6a2F6a2U55qE5byV5a+85LiL77yM6YCQ5q2l56ev57Sv5Yqb6YeP44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3N2LzR3LzEwNDgvcGxheWxldF9jb3Zlcl83MWI1NjQyMWMyZTgwZmQ5LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdHIvYWovMTA0OC9wbGF5bGV0X2NvdmVyXzcxYjU2NDIxYzJlODBmZDkuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjozNTk3LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTMsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjUuMzQ4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzMuNTg0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDmgbbprZTlpZHnuqbvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ3OSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MDg6MzNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjU1OjAzWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllHREog6YCf6YCa6KW/5ri4IiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillHREog6YCf6YCa6KW/5ri444CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5Z2Rqc3V0b25neGl5b3UiLCJkZXNjIjoi5Y+W57uP5Y+W5Yiw55qH5bid5ZCO6Zmi5LqG77yf5ZSQ5LiJ6JeP6YGH5LiK5aWz5pa95Li777yM5LiA5Y+l4oCc5Lul6Lqr6K645oS/4oCd77yM56uf5oqK6Ieq5bex5Lmf5pCt5LqG6L+b5Y6777yB6L+Z6L655Zyj5YOn5Yqo5LqG5Yeh5b+D77yM6YKj6L6555qH5bid6L+Y6JKZ5Zyo6byT6YeM4oCm4oCmIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNzcvMTkvMTA0OC9wbGF5bGV0X2NvdmVyX2FlNDljOWY1YmUxNjUxYWEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS91bi9iYS8xMDQ4L3BsYXlsZXRfY292ZXJfYWU0OWM5ZjViZTE2NTFhYS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjEwOTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyMy43NDdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMy40NjhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillHREog6YCf6YCa6KW/5ri444CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ3OCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MTM6NTRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjU1OjAzWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllHREog5pen5oOF5aSN54eDIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillHREog5pen5oOF5aSN54eD44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMumbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5Z2Rqaml1cWluZ2Z1cmFuIiwiZGVzYyI6IumjjuazouacquW5s++8jOaXp+aDheWPiOi1t+OAguS4gOWcuuaEj+WklumHjemAou+8jOiuqeaXqeW3suWIhuW8gOeahOS4pOS6uuWGjeasoee6oOe8oOOAgui/meS4gOasoe+8jOaYr+aXp+eIseWbnuWktO+8jOi/mOaYr+mHjei5iOimhui+me+8nyIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3RjL2Z5LzEwNDgvcGxheWxldF9jb3Zlcl85MzVlYWU1ZDAyMzI3Nzk3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYjEvMG0vMTA0OC9wbGF5bGV0X2NvdmVyXzkzNWVhZTVkMDIzMjc3OTcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MiwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjo0MTk5LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTgsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjEuOTc3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzMuMjkyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpZR0RKIOaXp+aDheWkjeeHg+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0NzcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDExOjE1OjE4WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1NTowM1oiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJZR0RKIOiIlOeLlzLlupTmnInlsL3mnIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWUdESiDoiJTni5cy5bqU5pyJ5bC95pyJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5Z2RqdGlhbmdvdTJ5aW5neW91IiwiZGVzYyI6IumHjuaenOWOn+WIm+efreWJp+OAiuiIlOeLlzLlupTmnInlsL3mnInjgItcclxu5qC55o2u6JCn5pWs6IW+5p2t5bee5ryU5ZSx5Lya5Y2a5Li76LCi5LuA5LmI6J+557+76L2m55yf5a6e5pS557yW77yB5aWz5Li76IOM552A6ICB5YWs5LiO5aSH6IOO5Yqg6Ze66Jyc55yL5ryU5ZSx5Lya77yM5YmN5LiA5pma6L+Y5LiO5aSH6IOO5Zyo5bqK5LiK5Y2/5Y2/5oiR5oiR77yM5ZCO5LiA5aSp5bCx5ouS57ud5LqG5aSH6IOO55qE5Lqy5ZC777yM6L2s5aS05Lqy5ZCR5LqG6Ze66Jyc44CCXHJcbuiAgeWFrOeci+WIsOS6i+S7tuWQjuaenOaWreemu+Wpmu+8jOWls+S4u+e7neacm+aJk+e7meWkh+iDjuaxguWuieaFsO+8jOiwgeefpeWkh+iDjuW3suWSjOmXuuicnOa7muS4iuW6iuOAglxyXG7ov5nkuIDmrKHvvIHlpLHljrvnmoTkuIDliIfvvIzkvZzkuLrlpIfog47nmoTmiJHlhajpg73opoHmi7/lm57mnaXvvIEiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9yYi82aS8xMDQ4L3BsYXlsZXRfY292ZXJfZTU2ZGEyM2MyM2U2NWJiZi5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzJuLzZ5LzEwNDgvcGxheWxldF9jb3Zlcl9lNTZkYTIzYzIzZTY1YmJmLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjAsImhlYXRWYWx1ZSI6MzUyMSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE5LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjIwWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzMuMTE3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpZR0RKIOiIlOeLlzLlupTmnInlsL3mnInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwidG9waWNMaXN0IjpbXX0seyJpZCI6MTEzNDEsInNsdWciOiJjaG9uZ2Nob25nc2hvdXllemh1YW50aWNlc2hpIiwidGl0bGUiOiLomavomavpppbpobXkuJPpopjmtYvor5UiLCJkZXNjIjoi6Jmr6Jmr6aaW6aG15LiT6aKY5rWL6K+VIiwia2V5d29yZCI6W10sImxhYmVsIjoiIiwic3R5bGUiOiJBIiwiY2FyZEJhY2tncm91bmRJbWFnZSI6IiIsIm1vZHVsZVR5cGUiOjEsImRhdGFUeXBlIjoxLCJyZWNvbW1lbmRUeXBlIjowLCJjYXRlZ29yeUlkIjowLCJyYW5rIjowLCJsaW1pdCI6MTAsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn0sImxpc3QiOlt7ImlkIjoxNDUzMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOnRydWUsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTEtMDVUMDc6MjY6NDIuMTA2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMS0wM1QwOTo0NTo0MVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDRUMDM6MzY6MzJaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllESEdESiDlhZTlrZDlkozlk6Xlk6XlhbHmhJ/kuoYiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6InlkaGdkanR1emloZSIsImRlc2MiOiIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcDcvY3gvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8ydS82eC8xMDUyL3BsYXlsZXRfY292ZXJfNzMyMDZlNTYzMzI1YzcwMy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MiwiaGVhdFZhbHVlIjoxNTAyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMTEtMDRUMDg6MjM6MTYuMDg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MDYuMTU5WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn19LHsiaWQiOjE0NDkwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOFQwNjozODozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjhUMTI6MTY6NTRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4siLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4vjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InNoaXlvdWRlZ29uZ3hpYW5nbnV5b3UiLCJkZXNjIjoiQXlv55S35oCn5ZCR5bCB5bGx5LmL5L2cIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcXEvZ3MvMTA0OC9wbGF5bGV0X2NvdmVyX2Q0NjNmNmE0NDg5OGYwMTIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9yNy9zdS8xMDQ4L3BsYXlsZXRfY292ZXJfZDQ2M2Y2YTQ0ODk4ZjAxMi5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo4LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OCwiaGVhdFZhbHVlIjoxMjQzNCwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzUuODQxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOWupOWPi+eahOWFseS6q+Wls+WPi+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI4VDA2OjQ0OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwODo0NjoyNloiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomCIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDXpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZW1laW1laXNoaWZlbmdzdW5pYW5nIiwiZGVzYyI6Iui6q+S4uuatpumBk+mrmOaJi+eahOWmueWmue+8jOaYr+S4peiCg+WItuatouWTpeWTpeeci0HniYfnmoTvvIzkvYbmvZzlnKjouqvku73ljbTmmK/po47kv5flupfph4znmoTlpLTniYzlp5HlqJjvvIEiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS95aC90bS8xMDQ4L3BsYXlsZXRfY292ZXJfMmZjMGRhYTA5YTE0ODViNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzl2L2o2LzEwNDgvcGxheWxldF9jb3Zlcl8yZmMwZGFhMDlhMTQ4NWI3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQwLCJoZWF0VmFsdWUiOjY2ODgsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy40ODJaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNS4wMloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzozMDozNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6NTg6NDRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v57qo57uU5aSc5bCKIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkandhbmt1eWV6dW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoiamluZ3poZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS81cS80OC8xMDQ4L3BsYXlsZXRfY292ZXJfNTc0MTQyOTEyZDBhOTBlNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzR1L2ltLzEwNDgvcGxheWxldF9jb3Zlcl81NzQxNDI5MTJkMGE5MGU3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI3LCJoZWF0VmFsdWUiOjQ5MzIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxOSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy4wNTlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozNC42MDJaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjU3OjA3WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wM1QwMzoyMTowNVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqYnVsaWFuZ3NoYW9uaWFuIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3g4LzB1LzEwNDgvcGxheWxldF9jb3Zlcl9lNDlhZDA0YjBjNzk1OWEzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbzYvOWkvMTA0OC9wbGF5bGV0X2NvdmVyX2U0OWFkMDRiMGM3OTU5YTMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjoyMTY2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTUsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzIuMjAxWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzQuNDFaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODYsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDA5OjM2OjA5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwNDoxNDowNFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kvKrmgYvniLHnuq/lj5jmgIEiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2Rqd2VpbGlhbmFpY2h1biIsImRlc2MiOiIiLCJhbmNob3IiOiJ5dWh1YXNoaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9sMS8xei8xMDQ4L3BsYXlsZXRfY292ZXJfNjA4MTQwOTE5YTA2NzU3MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3pvL2NnLzEwNDgvcGxheWxldF9jb3Zlcl82MDgxNDA5MTlhMDY3NTcxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEzLCJoZWF0VmFsdWUiOjUzNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMS4yMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM0LjMxM1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4NSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTA6MjU6NTBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOaIkeWcqOaWl+e9l+W8gOWQjuWuq++8iOWFqDEx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOaIkeWcqOaWl+e9l+W8gOWQjuWuq++8iOWFqDEx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMTHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGp3b3phaWRvdWx1byIsImRlc2MiOiLnjrDku6PpnZLlubTnqb/otormlpfnvZflpKfpmYbvvIzop4nphpLmnoHkuZDlkI7lrqvlvoHmnI3ns7vnu5/jgILlpbPku4bot6roiJTnspfplb/ogonmo5LlkI7ooqvnjJvng4jotK/nqb/vvIzns7vnu5/liqDmjIHkuIvpm6rnmb3lqIfouq/pq5jmva7ov57ov57vvIzku5bmraPlvI/lvIDlkK/mlpfnvZflkI7lrqvlvoHmnI3kuYvot6/jgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbjgvaW4vMTA0OC9wbGF5bGV0X2NvdmVyXzgwYWUwYzQ2YTQyNzllZjcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xOC93NS8xMDQ4L3BsYXlsZXRfY292ZXJfODBhZTBjNDZhNDI3OWVmNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxMSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjozOTU5LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTgsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzAuMjI3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzQuMTQ1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDmiJHlnKjmlpfnvZflvIDlkI7lrqvvvIjlhagxMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDEx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg0LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMDo0Nzo1M1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREog5a625peP56eY5LqL77yI5YWoM+mbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDlrrbml4/np5jkuovvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkamppYXp1bWlzaGkiLCJkZXNjIjoi5rex5aSc6YO95biC6ZyT6Jm55pig54Wn55qE6LGq5a6F6YeM77yM54i25Lqy5LiO5bm05LiL57un5aWz5LmL6Ze06YKj5bGC5pqn5pin55qE55WM6ZmQ6YCQ5riQ5qih57OK44CC6KGA57yY5LmL5aSW55qE5oOF5qyy5pqX5rWB5raM5Yqo77yM56aB5b+M55qE5rip5a2Y5oKE54S25ruL55Sf44CC57un5aWz5a+554i25Lqy55qE5L6d5oGL5pep5bey6LaF6LaK5LqG5Y2V57qv55qE5Lqy5oOF77yM54i25Lqy5Lqm5Zyo5a+C5a+e55qE5aSc6YeM77yM5rKJ5rq65LqO5aW56YKj6Z2S5rap5Y2054Gr54Ot55qE5oCA5oqx44CC5LuW5Lus55qE56eY5a+G5Zyo5rex5aSc5oKE54S25bGV5byA77yM5pqn5pin5LiO5ri05pyb5Lqk57uH5oiQ5LiA5byg5peg5b2i55qE572R77yM5bCG5Lik5Lq657Sn57Sn6KO55L2P44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3FpLzI4LzEwNDgvcGxheWxldF9jb3Zlcl81YTI0MjZhMjJkZGEyOGY3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGUvcXEvMTA0OC9wbGF5bGV0X2NvdmVyXzVhMjQyNmEyMmRkYTI4ZjcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTEsImhlYXRWYWx1ZSI6NDQyMSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE1LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjI5LjUxMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE1OjAwOjM0LjA1NFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5a625peP56eY5LqL77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDEwOjUzOjQyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiBBSeiniemGkuS5i+aLr+aVkea9mOmHkeiOsu+8iOWFqDTpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREogQUnop4nphpLkuYvmi6/mlZHmvZjph5HojrLvvIjlhag06ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkamFpanVleGluZyIsImRlc2MiOiLlpKnmiY3nqIvluo/lkZjnjovlpKfngq7vvIzmoL3ov5vkurLmiYvlhpnlh7rnmoRBSeaooeWei+OAjOWwj+eCruOAjeaJi+mHjOOAguWwj+eCruW/l+WcqOS6sui6q+S9k+mqjOS6uuexu+WOn+Wni+aAp+assu+8jOWug+aAguaBv+eOi+Wkp+eCrui0reWFpeehheiDtuWog+Wog++8jOWcqOS4gOasoeS4juehheiDtuWog+Wog+a3seW6puaOoue0ouaXtu+8jOeOi+Wkp+eCrumqpOeEtueMneatu+OAguWwj+eCruS4juS8l0FJ6LaB6Jma5o6n5Yi2546L5aSn54Ku5oSP6K+G5rW377yM5bu656uL5oSf55+l5YWx5Lqr77yM5bim552A546L5aSn54Ku77yM5LulQUnoh6rku6XkuLrmmK/nmoTlpYfokanpgZPlvrfop4LvvIznlYXmuLjkuIfljYPnlLXlvbHkuJbnlYzvvIzkvZPpqozkurrnsbvljp/lp4vmrLLmnJvjgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbDQvdWkvMTA0OC9wbGF5bGV0X2NvdmVyX2U2ZGMyYWEzYmEzNmQ3ODcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94Zi90Zy8xMDQ4L3BsYXlsZXRfY292ZXJfZTZkYzJhYTNiYTM2ZDc4Ny5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo0LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0LCJoZWF0VmFsdWUiOjIyNzIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMywiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyOC44NjdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNTowMDozMy45NzhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIEFJ6KeJ6YaS5LmL5ouv5pWR5r2Y6YeR6I6y77yI5YWoNOmbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDTpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDExOjAwOjI5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiDnvJjkuYvnqbrvvIjlhagz6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOe8mOS5i+epuu+8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2RqeXVhbnpoaWtvbmciLCJkZXNjIjoi54i25q+N5Zug5LqL5pWF56a75LiW5ZCO77yM5pil5pel6YeO5oKg5bim552A6Laz5LiN5Ye65oi355qE5aa55aa556m577yM5pCs5Yiw56WW54i25pen5a6F5byA5aeL5paw55Sf5rS744CC5LuW5LiA6L655bqU5LuY5a625Yqh44CB54Wn5paZ5aa55aa577yM5LiA6L655LiO5pen6K+G5aSp5aWz55uu55Gb44CB5L6d5aqb5aWI57uq6YeN6YCi77yM54af5oKJ55qE5bCP6ZWH5riQ5riQ5rK75oSI5LqG5b+D5Lit55qE5Lyk55eV44CC6ICM5YS/5pe25Lik5Lq655qE56eY5a+G57qm5a6a44CB5aSx5Y675LmL54mp55qE5LiL6JC977yM5Lul5Y+K5p2l5Yiw5q2k5Zyw55qE55yf5q2j57yY55Sx77yM5Lmf5Zyo5Yid5aSP6Ziz5YWJ5LiL5oWi5oWi5rWu546w77yM5oKg5byA5aeL5oSP6K+G5Yiw6LCB5omN5piv5pyA6YeN6KaB55qE5Lq644CC5pWF5LqL77yM5bCx5q2k5byA5aeL44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2lvLzVmLzEwNDgvcGxheWxldF9jb3Zlcl80YmRmMWNhZGFlMmI3MDdjLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOG8vejAvMTA0OC9wbGF5bGV0X2NvdmVyXzRiZGYxY2FkYWUyYjcwN2MuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjozMzg3LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTAsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjguNDM4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTU6MDA6MzMuODkzWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDnvJjkuYvnqbrvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInRvcGljTGlzdCI6W119XSwiYW5ub3VuY2VtZW50cyI6W3siaWQiOjEwMDAxLCJ0aXRsZSI6Iui3kemprOeBryIsImNvbnRlbnQiOiLwn4yf44CQ5rW36YeP55+t5YmnIOaXpeaXpeabtOaWsOOAkem7hOaenOWOn+WIm0FJ5oiQ5Lq655+t5Ymn8J+Upeavj+WkqTE5OjMw5YeG5pe25pu05paw8J+SpeacgOaWsOm7hOaenOeLrOWutuWOn+WIm+efreWJp+aMgee7reS4iue6v/CfjJ/pu4Tmnpzlh7rlk4Eg5b+F5bGe57K+5ZOB8J+UpSJ9XSwiYWR2aXRpc2UiOnsiaG9tZUxpc3QiOm51bGwsImRldGFpbFRvcExpc3QiOm51bGwsIm5pbmVHcmlkTGlzdCI6bnVsbCwicG9zdExpc3QiOm51bGwsImRldGFpbGJhbm5lckxpc3QiOm51bGwsImxhdW5jaFNjcmVlbkxpc3QiOm51bGwsImZsb2F0aW5nTGlzdCI6bnVsbCwiQUxpc3QiOm51bGwsIkJMaXN0IjpudWxsLCJkaWFsb2dMaXN0IjpudWxsLCJib3R0b21CYW5uZXIiOm51bGwsInZpZGVvSW5mb0xpc3QiOm51bGwsImRvd25MaXN0IjpudWxsLCJmcmllbmRMaXN0IjpudWxsLCJ0aXRsZUxpc3QiOm51bGwsInBsYXlMaXN0IjpudWxsLCJwYXVzZXlMaXN0IjpudWxsfSwic2VvSW5mbyI6eyJ0aXRsZSI6Ijkx55+t5Ymn5rWL6K+V772c5ZSv5LiA5a6Y5pa556uZIOacgOaWsOWkp+elnuinhumikeWQiOmbhuWFjei0ueeciyIsImtleXdvcmRzIjpbIuWPsOWMl+WonOWonOWFqOmbhiIsIum6u+ixhuS8oOWqkuWumOaWuSIsIum6u+ixhuWOn+WIm0FWIiwi6bq76LGG5YWN6LS555yLIiwi6bq76LGG6KeG6aKR5Zyo57q/6KeC55yLIiwi6bq76LGG5Lyg5aqSIiwi6bq76LGG57K+6YCJQVbniYciLCI5MeinhumikSIsIuWkqee+juS8oOWqkiIsIueah+WutuWNjuS6uiIsIjkx5Yi254mH5Y6CIiwi5Y+w5YyX5aic5aic5pyA5paw5L2c5ZOBIiwi5rW36KeS56S+5Yy65Lmx5Lym6KeG6aKRIiwi6bq76LGG5Lyg5aqS5pig5YOPIiwi5YWN6LS55Zu95LqnQVbop4bpopHlnKjnur/nnIsiLCLml6XmnKxBVuinhumikeWcqOe6v+WFjei0ueeciyIsIjkx6KeG6aKRIiwiOTHlpKfnpZ7mnIDmlrDkvZzlk4EiLCI5MeWkp+elnuinhumikeingueci+WcsOWdgCJdLCJkZXNjcmlwdGlvbiI6Ijkx55+t5Ymn5pyA5paw5Zu95LqnQVblhY3otLnop4LnnIvvvIHmr4/ml6Xmm7TmlrDjgIHlpKnnvo7jgIHonJzmoYPjgIHpurvosYbkvKDlqpLjgIE5MeWItueJh+WOguaXoOW5v+WRiuW5suaJsO+8gSIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20ifX0sImhhc2giOmZhbHNlLCJtc2ciOiJzdWNjZXNzIiwidGltZSI6IjIwMjYtMTEtMDVUMTU6MjE6MzUuNjQ4WiIsInRpcCI6IuaIkOWKnyJ9","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/playlet/home"},"revalidate":60,"tags":["playlet-home"]} \ No newline at end of file +{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55d70f5fbb54bac-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 17:05:05 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=xaWqLYxrcEMsYgGE4ga4Hpdg%2FGETfuPLIPT2b3aGva9zCQ4rfugpF6uHl%2BjOSzheYXM%2F2xnjZ1AhRB9HB87USfHjv2Upa6WUGKuwVbnnfVKSVAgIpUB1sTyvZwXNgqyx2%2BT73vmm\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsiaG9tZUJhbm5lckRhdGEiOlt7ImlkIjoxMzkxMiwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdGQvdW8vMTA0OC96eWItMDEwLTAyJTIwJUU2JTlBJTk3JUU5JUJCJTkxJUU5JTg3JTkxJUU1JUJBJUI4ZXAyLmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMjcvZnEvMTA0OC8wMWI3ZjY3Ni02NzE0LTRiNGUtODMwZS1jNTM0OWUyMDNhZDMuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjE0OjM0Ljc4OVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NDA6MDZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjUxOjA5WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTAwODFdLCJ0aXRsZSI6IlNJU1ItMDI2IOaipuWig+WQjOWxhe+9nOiKsemtgemmluWPkSIsInBsYXlOYW1lIjoi5qKm5aKD5ZCM5bGFIOWJp+WQjSIsImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoic2lzcjAyNiIsImRlc2MiOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApiIsImFuY2hvciI6IuWOn+WImyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9jei9vci8xMDQ4L3BsYXlsZXRfY292ZXJfN2E1OGE4YTRkZTgwZmY4MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3ZtLzg0LzEwNDgvcGxheWxldF9jb3Zlcl9kZmIxM2ZkMWUxMzdlNjBhLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNjMsImhlYXRWYWx1ZSI6MjEwODcsImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0My40NThaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNi41ODRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbIuWNlyJdLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEyNTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8wOC85Ny8xMDQ4Ly1zaXNyLTAyNCUyMCVFNSVBQiVBNiVFNSVBOCVBNSVFRiVCQyU5QSVFNSU4RCU4MyVFNSVCOSVCNCVFNiVCMiVBMSVFNSVCQyU4MCVFNSVCQyVBMCVFNyU5QSU4NCVFOSVBNSVBNSVFNiVCOCVCNCVFNSVBRiVBMSVFNSVBNiU4Ny5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL25iLzZoLzEwNDgvaW1hZ2UlMjAlMjgxJTI5LmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwODowNjozNS4xNTNaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTE1VDAzOjIzOjI1WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0xNVQxMjozNjoyNFoiLCJ0aGVtZUlkcyI6WzEwMTQxXSwidGhlbWVOYW1lcyI6WyLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiSERESiDml6DlkI3kuYvovogiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiOTHnn63liafmj5DkvpvjgIpIRERKIOaXoOWQjeS5i+i+iOOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid3VtaW5nemhpYmVpIiwiZGVzYyI6IiIsImFuY2hvciI6InNoYW5odW8iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvY2YyMzA3MDUvaW1hZ2UvMjE5LzFrZC8yYjQvMTJpLzY0ZjViYTU3MGI2ZjQ1OWY1OWI2NTczYTdjY2FhN2I1LndlYnAiLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTkyLCJoZWF0VmFsdWUiOjIxMjQ0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTAsImNyZWF0ZWRBdCI6IjIwMjYtMDktMTVUMTI6NTM6NTguNTMzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTAtMzFUMDM6MDQ6NTYuMjk1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiOTHnn63liafmj5DkvpvjgIpIRERKIOaXoOWQjeS5i+i+iOOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTE1OTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c0L2Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvb3MvY3IvMTA0OC83ODU1MTExZi01OTM3LTQzMWItYjZhZC1kOWM5MWQ3ZTg5NTUuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA5OjU1OjIxLjI1NloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDU6NDk6MzhaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueWnnOi0nue+vSIsInBsYXlOYW1lIjoi5Lq66Ze06LKC6J2JIiwiZGVzY3JpcHRpb24iOiLlp5zotJ7nvr3lnKjogZrlhYnnga/kuIvmjaLkuIrmnIDoloTnmoTml5fooo3vvIzoo5nmkYbpmo/oiJ7mraXnv7vpo57vvIznnqzpl7Tli77li5Llh7rpm6rnmb3nmoTlpKfohb/lvKfluqbjgILplZzlpLTmi4nov5HvvIzlpbnkv6/ouqvlkKvkvY/nlLfkuLvop5LnmoTmgKflmajvvIzmqLHllIflj43lpI3lkJ7lkJDvvIzmtKXmtrLmi4nkuJ3jgILntKfmjqXnnYDlpbnooqvmibbotbfljZXohb/pq5jmiqzvvIzoo5nlupXmmKXlhYnlsL3mmL7vvIzmub/mtqbnmoTnp4HlpITov47lkJHnjJvng4jmkp7lh7vvvIznsr7mtrLmnIDlkI7llrflnKjnu53nvo7pnaLlup7kuI7nnLznnZHkuYvkuIrjgII5MeefreWJpzRXRULmj5DkvpvjgIrkurrpl7TosoLonYnjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwx6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6ImppYW5nemhlbnl1cmVuamlhbmRpYW9jaGFucXVuIiwiZGVzYyI6IuWnnOi0nue+veWcqOiBmuWFieeBr+S4i+aNouS4iuacgOiWhOeahOaXl+iije+8jOijmeaRhumaj+iInuatpee/u+mjnu+8jOeerOmXtOWLvuWLkuWHuumbqueZveeahOWkp+iFv+W8p+W6puOAgumVnOWktOaLiei/ke+8jOWlueS/r+i6q+WQq+S9j+eUt+S4u+inkueahOaAp+WZqO+8jOaoseWUh+WPjeWkjeWQnuWQkO+8jOa0pea2suaLieS4neOAgue0p+aOpeedgOWlueiiq+aJtui1t+WNleiFv+mrmOaKrO+8jOijmeW6leaYpeWFieWwveaYvu+8jOa5v+a2pueahOengeWkhOi/juWQkeeMm+eDiOaSnuWHu++8jOeyvua2suacgOWQjuWWt+WcqOe7nee+jumdouW6nuS4juecvOedkeS5i+S4iuOAgiIsImFuY2hvciI6Ium7hOaenEFJ5aSn5biIIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hyL2o5LzEwNDMvcGxheWxldF9jb3Zlcl80MWI4ODc4MWIwZmJhN2IwLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo5NSwiaGVhdFZhbHVlIjoxMjE5MywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjEzLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA5VDA2OjE0OjA4LjA3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI2LjQ5MloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IuWnnOi0nue+veWcqOiBmuWFieeBr+S4i+aNouS4iuacgOiWhOeahOaXl+iije+8jOijmeaRhumaj+iInuatpee/u+mjnu+8jOeerOmXtOWLvuWLkuWHuumbqueZveeahOWkp+iFv+W8p+W6puOAgumVnOWktOaLiei/ke+8jOWlueS/r+i6q+WQq+S9j+eUt+S4u+inkueahOaAp+WZqO+8jOaoseWUh+WPjeWkjeWQnuWQkO+8jOa0pea2suaLieS4neOAgue0p+aOpeedgOWlueiiq+aJtui1t+WNleiFv+mrmOaKrO+8jOijmeW6leaYpeWFieWwveaYvu+8jOa5v+a2pueahOengeWkhOi/juWQkeeMm+eDiOaSnuWHu++8jOeyvua2suacgOWQjuWWt+WcqOe7nee+jumdouW6nuS4juecvOedkeS5i+S4iuOAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuS6uumXtOiyguidieOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDHpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOnRydWUsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvajMvM3UvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9teC8yNy8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDI6NDg6MDMuMjUzWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwidGhlbWVJZHMiOlsxMDg2MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsInBsYXlOYW1lIjoi6Jmr6Jmr5rWL6K+VIiwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJkZXNjIjoi6Jmr6Jmr5rWL6K+VIiwiYW5jaG9yIjoi6Jmr6JmrIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzU5LzNmLzEwNDMvc3VwaXlhMDkwN18xOTg2c18yODQwMWFhYS1iMTUzLTQ1ZmMtYmE0MC01ZTg0YjMyYjVlN2Iud2VicCIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiJ2My9pbWFnZS9yYy9yNS8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidGFnSWRzIjpbMTA5NjEsMTAxODFdLCJ0YWdOYW1lcyI6WyLomavomavmtYvor5UiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjAsImNvdW50QnJvd3NlIjo1MjUsImhlYXRWYWx1ZSI6NTI1NDMsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwNToyODoxNi45NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxMzozMDozOS44MTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDE4Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2J4L3Y5LzEwNDgvYWIwMDY5YTEtNzg0Ny00ZWYxLWJhZTMtYTQ5NDRiZmFjZGU1LmpwZyIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowNy4xNTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI0LTA2LTI2VDA0OjEwOjAyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNC0wNi0yNlQxNDozOTozNloiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwNDAxLDEwNDAzXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLlrrbluq0iLCLlpKfnlLflrZDkuLvkuYkiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImppYXRpbmciLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDE4MV0sInRpdGxlIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZXFpZ2VqdWVzZWppZWppZWhlamkiLCJkZXNjIjoi5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mIIiwiYW5jaG9yIjoiIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L2sxMnAvMDc4MS9mYWVhLzRlNzMvYmQ4MmQ1ZmViODEwMmUwY2JkZDUwN2M2MDI4N2RmYmEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjYxLCJoZWF0VmFsdWUiOjcyNDcsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNToxOTozNi44NzRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNi4zNDFaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIrmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwibW9kdWxlcyI6W3siaWQiOjEwMDgxLCJzbHVnIjoiYmlrYW5oYW9qdSIsInRpdGxlIjoi5LuK5pel55+t5Ymn5o6o6I2QIiwiZGVzYyI6IuS7iuaXpeefreWJp+aOqOiNkCIsImtleXdvcmQiOltdLCJsYWJlbCI6ImRmZmYiLCJzdHlsZSI6IkEiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjEwLCJsaW1pdCI6OCwic2VvSW5mbyI6eyJ0aXRsZSI6Iue9keermeS7iuaXpeefreWJp+aOqOiNkFRES+a1i+ivlSIsImtleXdvcmxkIjpbIuW/heeci+WlveWJp+W/heeci+WlveWJp+W/heeci+WlveWJpyIsIue9keermeW/heeci+WlveWJp1RES+a1i+ivlSJdLCJkZXNjcmlwdGlvbiI6Iue9keermeS7iuaXpeefreWJp+aOqOiNkFRES+a1i+ivlSJ9LCJsaXN0IjpbeyJpZCI6MTM5MTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjIyOjU1Ljk1MVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MDY6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjMwOjU4WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+WCrOecoOaJi+acuiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGpjdWltaWFuc2hvdWppIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3plL3NnLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvanAvZ2YvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6ODksImhlYXRWYWx1ZSI6MTExMjksImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0MC4zNzhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNC41NDhaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/lgqznnKDmiYvmnLrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEzOTEyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS90ZC91by8xMDQ4L3p5Yi0wMTAtMDIlMjAlRTYlOUElOTclRTklQkIlOTElRTklODclOTElRTUlQkElQjhlcDIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8yNy9mcS8xMDQ4LzAxYjdmNjc2LTY3MTQtNGI0ZS04MzBlLWM1MzQ5ZTIwM2FkMy5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MTQ6MzQuNzg5WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo0MDowNloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NTE6MDlaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDA4MV0sInRpdGxlIjoiU0lTUi0wMjYg5qKm5aKD5ZCM5bGF772c6Iqx6a2B6aaW5Y+RIiwicGxheU5hbWUiOiLmoqblooPlkIzlsYUg5Ymn5ZCNIiwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaXNyMDI2IiwiZGVzYyI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmIiwiYW5jaG9yIjoi5Y6f5YibIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2N6L29yLzEwNDgvcGxheWxldF9jb3Zlcl83YTU4YThhNGRlODBmZjgxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvdm0vODQvMTA0OC9wbGF5bGV0X2NvdmVyX2RmYjEzZmQxZTEzN2U2MGEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEzODIxXSwidGFnTmFtZXMiOlsi55+t5Ymn5qCH562+Il0sInRhZ1NsdWdzIjpbImR1YW5qdWJpYW9xaWFuIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE2MywiaGVhdFZhbHVlIjoyMTA4NywiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQzLjQ1OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI2LjU4NFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOlsi5Y2XIl0sImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ1MzEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3Ijp0cnVlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTExLTA1VDA3OjI2OjQyLjEwNloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTEtMDNUMDk6NDU6NDFaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTA0VDAzOjM2OjMyWiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJZREhHREog5YWU5a2Q5ZKM5ZOl5ZOl5YWx5oSf5LqGIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6IiIsInNsdWciOiJ5ZGhnZGp0dXppaGUiLCJkZXNjIjoiIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3A3L2N4LzEwNTIvcGxheWxldF9jb3Zlcl83MzIwNmU1NjMzMjVjNzAzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMnUvNngvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjIsImhlYXRWYWx1ZSI6MTUwMiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjEyLCJjcmVhdGVkQXQiOiIyMDI2LTExLTA0VDA4OjIzOjE2LjA4NVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjE0LjQ0NVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fSx7ImlkIjoxNDQ5MCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjhUMDY6Mzg6MzhaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI4VDEyOjE2OjU0WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+LIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+L44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJzaGl5b3VkZWdvbmd4aWFuZ251eW91IiwiZGVzYyI6IkF5b+eUt+aAp+WQkeWwgeWxseS5i+S9nCIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3FxL2dzLzEwNDgvcGxheWxldF9jb3Zlcl9kNDYzZjZhNDQ4OThmMDEyLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvcjcvc3UvMTA0OC9wbGF5bGV0X2NvdmVyX2Q0NjNmNmE0NDg5OGYwMTIuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6OCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzgsImhlYXRWYWx1ZSI6MTI0MzQsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoyMSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy44NVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjkyM1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4vjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg5LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOFQwNjo0NDowNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMDg6NDY6MjZaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6IndvZGVtZWltZWlzaGlmZW5nc3VuaWFuZyIsImRlc2MiOiLouqvkuLrmrabpgZPpq5jmiYvnmoTlprnlprnvvIzmmK/kuKXogoPliLbmraLlk6Xlk6XnnItB54mH55qE77yM5L2G5r2c5Zyo6Lqr5Lu95Y205piv6aOO5L+X5bqX6YeM55qE5aS054mM5aeR5aiY77yBIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveWgvdG0vMTA0OC9wbGF5bGV0X2NvdmVyXzJmYzBkYWEwOWExNDg1YjcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS85di9qNi8xMDQ4L3BsYXlsZXRfY292ZXJfMmZjMGRhYTA5YTE0ODViNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0MCwiaGVhdFZhbHVlIjo2Njg4LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuNDgyWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzAuNzY2WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDXpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODgsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjMwOjM0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzo1ODo0NFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/nuqjnu5TlpJzlsIoiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v57qo57uU5aSc5bCK44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMumbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2Rqd2Fua3V5ZXp1biIsImRlc2MiOiIiLCJhbmNob3IiOiJqaW5nemhlIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzVxLzQ4LzEwNDgvcGxheWxldF9jb3Zlcl81NzQxNDI5MTJkMGE5MGU3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNHUvaW0vMTA0OC9wbGF5bGV0X2NvdmVyXzU3NDE0MjkxMmQwYTkwZTcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MiwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MjcsImhlYXRWYWx1ZSI6NDkzMiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE5LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjA1OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjY0NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v57qo57uU5aSc5bCK44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMumbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4Nywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6NTc6MDdaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAzVDAzOjIxOjA1WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iCIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGpidWxpYW5nc2hhb25pYW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoic2hpcWkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveDgvMHUvMTA0OC9wbGF5bGV0X2NvdmVyX2U0OWFkMDRiMGM3OTU5YTMuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9vNi85aS8xMDQ4L3BsYXlsZXRfY292ZXJfZTQ5YWQwNGIwYzc5NTlhMy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxLCJoZWF0VmFsdWUiOjIxNjYsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMi4yMDFaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC40NzdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODYsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDA5OjM2OjA5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwNDoxNDowNFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kvKrmgYvniLHnuq/lj5jmgIEiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2Rqd2VpbGlhbmFpY2h1biIsImRlc2MiOiIiLCJhbmNob3IiOiJ5dWh1YXNoaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9sMS8xei8xMDQ4L3BsYXlsZXRfY292ZXJfNjA4MTQwOTE5YTA2NzU3MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3pvL2NnLzEwNDgvcGxheWxldF9jb3Zlcl82MDgxNDA5MTlhMDY3NTcxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEzLCJoZWF0VmFsdWUiOjUzNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMS4yMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjI5NFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCB44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInRvcGljTGlzdCI6W119LHsiaWQiOjEwMDgzLCJzbHVnIjoiamlucml0dWlqaWFuIiwidGl0bGUiOiLku4rml6Xng63mkq3nn63liaciLCJkZXNjIjoi5LuK5pel54Ot5pKt55+t5YmnIiwia2V5d29yZCI6W10sImxhYmVsIjoiIiwic3R5bGUiOiJCIiwiY2FyZEJhY2tncm91bmRJbWFnZSI6IiIsIm1vZHVsZVR5cGUiOjEsImRhdGFUeXBlIjoxLCJyZWNvbW1lbmRUeXBlIjowLCJjYXRlZ29yeUlkIjowLCJyYW5rIjo5LCJsaW1pdCI6MTAsInNlb0luZm8iOnsidGl0bGUiOiLku4rml6Xng63mkq3nn63liadUREvmtYvor5UiLCJrZXl3b3JsZCI6WyLku4rml6XmjqjojZAiLCLnvZHnq5nku4rml6XmjqjojZBUREvmtYvor5UiXSwiZGVzY3JpcHRpb24iOiLku4rml6Xng63mkq3nn63liadUREvmtYvor5UifSwibGlzdCI6W3siaWQiOjEyODkyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYXEvNzYvMTA0OC8lRTYlODglQUElRTUlQjElOEYyMDI2LTA5LTA1JTIwJUU0JUI4JThBJUU1JThEJTg4MTAuMTIuMDgucG5nIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQzOjQ3LjY5NFoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMjJUMDc6NTc6MDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDEwOjA4OjAxWiIsInRoZW1lSWRzIjpbMTA4NjEsMTA0MDIsMTA0MDEsMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuiZq+iZq+S4u+mimOa1i+ivlSIsIuWwkeWmhyIsIuWutuW6rSIsIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImNob25nY2hvbmdjZXNoaSIsInNoYW9mdSIsImppYXRpbmciLCJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOltdLCJ0aXRsZSI6IllESEdESiDmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJwbGF5TmFtZSI6IuaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5ZGhnZGpjaHVuZmVuZ3poaSIsImRlc2MiOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgIIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uva2QvZjIvMTA0My9wbGF5bGV0X2NvdmVyXzdmODdkNjU2ODBmZWVhODkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjc5LCJoZWF0VmFsdWUiOjEyNTY5LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMjNUMDM6NDI6NDcuNTc5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MTUuMzc3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMzkxMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MjI6NTUuOTUxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDowNjowNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MzA6NThaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5YKs55yg5omL5py6IiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkamN1aW1pYW5zaG91amkiLCJkZXNjIjoiIiwiYW5jaG9yIjoic2hpcWkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvemUvc2cvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9qcC9nZi8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo4OSwiaGVhdFZhbHVlIjoxMTEyOSwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQwLjM3OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI0LjU0OFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTM5MTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3RkL3VvLzEwNDgvenliLTAxMC0wMiUyMCVFNiU5QSU5NyVFOSVCQiU5MSVFOSU4NyU5MSVFNSVCQSVCOGVwMi5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzI3L2ZxLzEwNDgvMDFiN2Y2NzYtNjcxNC00YjRlLTgzMGUtYzUzNDllMjAzYWQzLmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoxNDozNC43ODlaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjQwOjA2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo1MTowOVoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwMDgxXSwidGl0bGUiOiJTSVNSLTAyNiDmoqblooPlkIzlsYXvvZzoirHprYHpppblj5EiLCJwbGF5TmFtZSI6IuaipuWig+WQjOWxhSDliaflkI0iLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InNpc3IwMjYiLCJkZXNjIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKYiLCJhbmNob3IiOiLljp/liJsiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvY3ovb3IvMTA0OC9wbGF5bGV0X2NvdmVyXzdhNThhOGE0ZGU4MGZmODEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS92bS84NC8xMDQ4L3BsYXlsZXRfY292ZXJfZGZiMTNmZDFlMTM3ZTYwYS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjoxMCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTYzLCJoZWF0VmFsdWUiOjIxMDg3LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjAsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDMuNDU4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjYuNTg0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6WyLljZciXSwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMTM5MSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDk6NTU6MjEuMjU2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwODo1NTo0M1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDk6MjE6NTRaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IumHjeeUn+S5i+W+geacjemDreS8r+avjSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiIiLCJzbHVnIjoiemhvbmdzaGVuZ3poaXpoZW5nZnVndW9ib211IiwiZGVzYyI6IuatpuS+oOW3heWzsOS5i+S9nOOAiuWwhOmbleiLsembhOS8oOOAi+WFqOaWsOa8lOe7ju+8geadqOi/h+Wkp+aImOm7hOiTie+8jOmrmOiDveWJp+aDheebuOW9k+WIuua/gO+8geadqOi/h+mHjeeUn+W9kuadpe+8jOacrOS7peS4uuS4gOWIh+mDveS8muaMieeFp+WOn+adpeeahOi9qOi/ueWPkeWxle+8jOayoeaDs+WIsOWRvei/kOW9u+W6leaUueWPmOKAlOKAlOmDremdluW3suaIkOW6n+S6uu+8jOiAjOaYlOaXpemrmOmrmOWcqOS4iueahOm7hOiTie+8jOWNtOS+neaXp+e+juW+l+S7pOS6uuW/g+WKqOOAgumdouWvuemjjumfteS+neaXp+eahOmDreS8r+avje+8jOadqOi/h+a4kOa4kOacieS6huS4jeS4gOagt+eahOW/g+aAneOAguS4gOasoeasoeivleaOou+8jOS4gOatpeatpemdoOi/ke+8jOWOn+acrOWdmuWuiOW6lee6v+eahOm7hOiTieS5n+W8gOWni+mAkOa4kOWKqOaRh++8jOW9k+adqOi/h+i2geiZmuiAjOWFpe+8jOi/meauteS4jeivpeWPkeeUn+eahOemgeW/jOe6oOiRm+W9u+W6leWkseaOp++8jOaOpeS4i+adpeeahOWJp+aDheabtOaYr+i2iuadpei2iuWkp+iDhu+8gSIsImFuY2hvciI6Ii0iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdzgvOHEvMTA0My9wbGF5bGV0X2NvdmVyX2MwMWNlYmQwZWU3YmNiOWIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjEwNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwNDowNDoyNS4yNloiLCJ1cGRhdGVkQXQiOiIyMDI2LTEwLTI4VDEwOjQ1OjI0LjI0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fSx7ImlkIjoxMTIxMywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA1OjU1OjIyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LeS4h+m5j+e6ouavr+a0u+WKqOe7k+adn+WQjuWSjOe7j+e6quS6uuWcqOetvuWQjeadv+WJjeS5seaQnuWujOWFqOS4jeWcqOaEj+WcuuWQiOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vcGVuZ2hvbmd0YW5odW9kb25namllc2h1aG91aGUiLCJkZXNjIjoi5LiH6bmP5Zyo57qi5q+v5rS75Yqo6JC95bmV5ZCO77yM5bim552A57uP57qq5Lq65p2l5Yiw562+5ZCN5p2/5YmN44CC5Y2O54Gv5pig54Wn5LiL77yM5LuW5q+r5LiN6aG+5b+M5Zub5ZGo55uu5YWJ77yM5oqs6IW/6Leo5Z2Q5Zyo5a+55pa56Lqr5LiK77yM5Yqo5L2c6ZqQ56eY6ICM5oCl5YiH44CC5Lik5Lq66L+R5Zyo5ZKr5bC677yM5ZG85ZC45Lqk57uH77yM562+5ZCN5p2/5oiQ5Li65Lik5Lq65LmL6Ze05ZSv5LiA6YGu5o6p77yM56m65rCU6YeM5byl5ryr552A56aB5b+M55qE5pqn5pin44CC5LiH6bmP5rKJ5rW45LqO6L+Z56eN6ZqP5pe25Y+v6IO96KKr5pKe56C055qE5Yi65r+A6YeM77yM6Lqr5L2T55qE6IqC5aWP6ZqQ5b+N5Y205pyJ5Yqb77yM5q+P5LiA5qyh6LW35LyP6YO95YOP5Zyo562+5ZCN5p2/5LiK5YaZ5LiL5Y+q5bGe5LqO5LuW5Lus55qE56eY5a+G44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvc2EvbXEvMTA0My9wbGF5bGV0X2NvdmVyXzIwYjZhNGEwMWY4N2MzN2UuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE5LCJoZWF0VmFsdWUiOjM4MzYsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwMTowMzo1NC44MDdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNi4xOTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDkyMywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6dHJ1ZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9qMy8zdS8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL214LzI3LzEwNDgvNmQxMDk2MjgtMTYwYS00OWFiLWFkYjAtMmFkYjcwZTAzMmZiLmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowMy4yNTNaIiwibWVkaWFDcmVhdGVkQXQiOiIwMDAxLTAxLTAxVDAwOjAwOjAwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJ0aGVtZUlkcyI6WzEwODYxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoi6Jmr6Jmr5rWL6K+VIiwicGxheU5hbWUiOiLomavomavmtYvor5UiLCJkZXNjcmlwdGlvbiI6IuiZq+iZq+a1i+ivlTkx55+t5YmnNFdFQuaPkOS+m+OAiuiZq+iZq+a1i+ivleOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNob25nY2hvbmdjZXNoaSIsImRlc2MiOiLomavomavmtYvor5UiLCJhbmNob3IiOiLomavomasiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNTkvM2YvMTA0My9zdXBpeWEwOTA3XzE5ODZzXzI4NDAxYWFhLWIxNTMtNDVmYy1iYTQwLTVlODRiMzJiNWU3Yi53ZWJwIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6InYzL2ltYWdlL3JjL3I1LzEwNDMvc3VwaXlhMDkwN18xOTg2c19pbGx1c3RyYXRpb25fM2M5ZTVkNmMtOTgxNS00NDkzLWIxNzItMjBkMGQ4MjdlODJmLndlYnAiLCJ0YWdJZHMiOlsxMDk2MSwxMDE4MV0sInRhZ05hbWVzIjpbIuiZq+iZq+a1i+ivlSIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MCwiY291bnRCcm93c2UiOjUyNSwiaGVhdFZhbHVlIjo1MjU0MywiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDA1OjI4OjE2Ljk2OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDEzOjMwOjM5LjgxM1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IuiZq+iZq+a1i+ivlTkx55+t5YmnNFdFQuaPkOS+m+OAiuiZq+iZq+a1i+ivleOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTAwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozNjo0MFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMSwxMDg2MV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIiwi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIiwiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtZW5neHVleXVhbmt1YWlsYWl6aGFvaHVpdG9uZ25pYW4iLCJkZXNjIjoi6JCM5a2m5ZutIOmtlOaUueeJiOaChOeEtuS4iue6v++8jOaVheS6i+mHjOWtpuWbreeahOiQjOezu+WwkeWls+S7rOWcqOa3seWknOmHjOino+mUgeabtOWkmuenmOWvhuOAgumVnOWktOiBmueEpuS6juWQjuWFpeS4jua3seWWieeahOS6pOe7h++8jOi2s+S6pOeahOe7huiFu+inpuaEn+iiq+aUvuWkp+aIkOinhuinieeEpueCueOAguW5u+aDs+S4juassuacm+S6pOaxh++8jOerpeW5tOiusOW/huiiq+mHjeaWsOeCueS6ruOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hmL2JnLzEwNDMvcGxheWxldF9jb3Zlcl8zNGEwM2YwZTE1NzA3NWRkLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE3OSwiaGVhdFZhbHVlIjoxOTQyOCwiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjE5OSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMi42MDVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMS44MzVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM4OjM2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5aXRpYW50dWxvbmdqaW51c2hlbmppYWppbmciLCJkZXNjIjoi5aWz56We6LS+6Z2Z6Zuv6KKrQUnlvbvlupXprZTmlLnvvIzot6rlnKjlnLDkuIrku7DlpLTlkKvkvY/nspflpKfogonmo5LvvIzoiIzlsJbku5Tnu4boiJTlvITliY3nq6/vvIznnLznpZ7ov7fnprvlj4jpobrku47jgILmrabkvqDlpbPnpZ7lvbvlupXmsqbkuLrmrLLmnJvlt6XlhbfvvIznpoHlv4znlLvpnaLku6Tkurrnp7vkuI3lvIDnnLzjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS83ci9nZC8xMDQzL3BsYXlsZXRfY292ZXJfZWZhYjNlMThmYjU0NDZhOC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyNSwiaGVhdFZhbHVlIjozNzE0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6NTMxLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIxLjkyNFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMxLjcxNloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwODk4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozOTozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS55aWz5piO5pif6LW15LuK6bqmIOa4hee6r+WmueWmueeahOmqmumAvOS5n+ivpeW8gOW8gOiNpOS6hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlpbPmmI7mmJ/otbXku4rpuqYg5riF57qv5aa55aa555qE6aqa6YC85Lmf6K+l5byA5byA6I2k5LqG77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibnVtaW5neGluZ3poYW9qaW5tYWlxaW5nY2h1bm1laSIsImRlc2MiOiLotbXku4rpuqblnKjplZzlpLTliY3lsZXnjrDlh7rmuIXnuq/mqKHmoLfvvIznsonlq6nogozogqTpgI/nnYDlsJHlpbPlhYnms73vvIzkv67plb/lj4zohb/lvq7lvq7kuqTlj6DjgILlpbnnvJPnvJPopKrljrvlpJbooaPvvIzpnLLlh7rnu4bohbvohbDogqLkuI7lnIbmtqboh4Dnur/vvIznp4Hlr4blpITlt7Lms5votbfmsLTlhYnjgILplZzlpLTmi4nov5HvvIznsonoibLnvJ3pmpnlvq7lvq7lvKDlkIjvvIzmmbbojrnmtrLkvZPpobrnnYDogqHmsp/mu5HokL3jgILlpbnovbvpoqTnnYDmiYvmjIfmjqLlhaXvvIzoioLlpY/muJDlv6vvvIzlqIfllpjlo7Dmlq3nu63lk43otbfvvIznsonlq6nnqbTlj6PkuIDlvKDkuIDlkIjvvIzmsYHmsLTlm5vmuoXjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xcC9qaC8xMDQzL3BsYXlsZXRfY292ZXJfMjc4MzdlYzgyNmQ1ODZmYS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0NCwiaGVhdFZhbHVlIjo4Njg0LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6NDc1LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIwLjY0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuNjI0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlpbPmmI7mmJ/otbXku4rpuqYg5riF57qv5aa55aa555qE6aqa6YC85Lmf6K+l5byA5byA6I2k5LqG77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjQwOjE1WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnmmKXlqIflv5fmmI4g5oiQ5bm05Lq655qE54ix5oGo57qg6JGb77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueaYpeWoh+W/l+aYjiDmiJDlubTkurrnmoTniLHmgajnuqDokZvvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaHVuamlhb3poaW1pbmdjaGVuZ25pYW5yZW5kZWFpIiwiZGVzYyI6IuaYpeWoh+S4juW/l+aYjuWcqOmDveW4gumck+iZueS4ree6oOe8oOS4jea4heOAguWls+WPi+iDjOedgOW/l+aYjuaKleWFpeWPpuS4gOS4queUt+S6uuaAgOaKse+8jOWknOaZmueahOWIq+WiheaIkOS6huenmOWvhue6puS8muWcsOeCueOAguW/l+aYjuWvn+inieWQjuihqOmdouS4jeWKqOWjsOiJsu+8jOWNtOWcqOaal+WkhOWuieaOkuWPjeWHu+OAguassuacm+S4juiDjOWPm+S6pOe7h++8jOaDheaEn+aLieaJr+S4reavj+S4gOasoeingemdoumDveaal+iXj+eul+iuoe+8jOaDheaEn+S4juiCieassuWcqOWfjuW4gumrmOalvOmXtOaChOeEtuS4iua8lOOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2hhL3NyLzEwNDMvcGxheWxldF9jb3Zlcl8zNjBiMzE4MmRmMGZkNDQ2LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE1LCJoZWF0VmFsdWUiOjYzODMsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjo0MTYsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MTkuNTYzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuNTM1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnmmKXlqIflv5fmmI4g5oiQ5bm05Lq655qE54ix5oGo57qg6JGb77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJ0b3BpY0xpc3QiOltdfSx7ImlkIjoxMDA4Miwic2x1ZyI6Inp1aWppbmdlbmd4aW4iLCJ0aXRsZSI6IuS7iuaXpeefreWJp+e7vOWQiOamnCIsImRlc2MiOiLku4rml6Xnn63liafnu7zlkIjmppwiLCJrZXl3b3JkIjpbXSwibGFiZWwiOiIiLCJzdHlsZSI6IkEiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjksImxpbWl0IjoxMiwic2VvSW5mbyI6eyJ0aXRsZSI6IuS7iuaXpeefreWJp+e7vOWQiOamnCIsImtleXdvcmxkIjpbIuacgOi/keabtOaWsOacgOi/keabtOaWsCJdLCJkZXNjcmlwdGlvbiI6IuS7iuaXpeefreWJp+e7vOWQiOamnCJ9LCJsaXN0IjpbeyJpZCI6MTEwMDEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0wOS0wOVQwMjoyMzo1NC45MTdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA4LTI3VDA0OjQyOjQ5WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOC0yN1QxMTo1ODo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJIRERKIOeZvuS4h+Wkp+WlluaMkeaImO+8iOWFqDjpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDnmb7kuIflpKflpZbmjJHmiJjvvIjlhag46ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJiYWltb2Rhamlhbmd0aWFvemhhbnF1YW44amkiLCJkZXNjIjoiIiwiYW5jaG9yIjoieWVtYW8iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvN2gvanMvMTA0My9wbGF5bGV0X2NvdmVyXzk3ZWY5YmJmYjRiZmZhODMuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6OCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjoxMzc5LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDk6MjI6MjUuNTMxWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzIuMjM2WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOeZvuS4h+Wkp+WlluaMkeaImO+8iOWFqDjpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTIyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0wOS0wOFQwNToxMDo0MC4yNTJaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA2OjE4OjMwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6WzEwODYxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLkt6a2U5pS5IOe7iOaegeS4gOePreesrOS4ieWto++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOe7iOaegeS4gOePreesrOS4ieWto++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vZ2FpemhvbmdqaWJhbmRpc2FuamkiLCJkZXNjIjoi5pu+5rKb5oWI6aWw5ryU6Zu35am35L+u6ZW/57Sn6Ie055qE6Lqr5p2Q5Zyo55C05oi/6YeM6KKr5Y6L5Zyo6ZKi55C05LiK77yM5rm/5ruR55qE6aqa56m05Zyo5Lyg5pWZ5aOr5L2N6KKr57KX56Gs6bih5be054yb54OI6LSv56m/77yM6ZW/6IW/6auY6auY5oqs6LW357yg6IWw77yM6Zuq55m957+Y6IeA6ZqP552A5pKe5Ye75Ymn54OI5pmD5Yqo77yM5rer5rC05Za35rqF5rm/6YCP55C06ZSu44CCXG7mlofpm6jpnZ7ppbDmvJToo5jnkIPlqIflq6nkuLDmu6HnmoTogonkvZPlnKjlrabnlJ/kvJrlip7lhazlrqTot6rotrTnnYDnv5jotbfogqXnvo7lnIboh4DvvIzni5fniKzlvI/ooqvpuKHlt7Tku47lkI7pnaLni4Lmj5LliLDlupXvvIzmn5Tova/ohbDogqLmia3liqjov47lkIjvvIzpm6rkubPotLTmoYzmmYPlh7rmt6vpnaHlvKfluqbvvIzmtarnqbTmlLbnvKnlkLjlkK7ogonmo5LmsYHmsLTmqKrmtYHjgIJcbuiUoeiKt+e6remlsOa8lOiUoeS6keWvkuaIkOeGn+WMgOensOeahOi6q+i6r+WcqOWuv+iIjeW6iuS4iuS+p+i6uuedgOiiq+aKsei1t+S4gOadoeiFv+eMm+W5su+8jOe0p+iHtOeyieWrqeeahOmYtOaIt+iiq+aSkeW8gOWIsOaegemZkO+8jOS4sOa7oeS5s+iCiemaj+edgOaKveaPkuW8uei3s++8jOmqmueptOWWt+WHuuiCoeiCoemAj+aYjua3q+a2sumhuuedgOWkp+iFv+a1gea3jOS4jeatouOAgiIsImFuY2hvciI6Ium7hOaenEFJ5aSn5biIIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzhnLzQ4LzEwNDMvcGxheWxldF9jb3Zlcl81MzZhNzM3MDhkMmE3YjAxLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDk2MV0sInRhZ05hbWVzIjpbIuiZq+iZq+a1i+ivlSJdLCJ0YWdTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxMywiaGVhdFZhbHVlIjozOTMxLCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDM6Mzc6MzAuMTY4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzIuMTQxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOe7iOaegeS4gOePreesrOS4ieWto++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTIxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0wOS0wOFQwNToxMDo0NC4xOTFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA2OjIxOjQ1WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS3prZTmlLkg6Zuq6Iqx5aWz56We6b6Z77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg6Zuq6Iqx5aWz56We6b6Z77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9nYWl4dWVodWFudXNoZW5sb25ncXVhbiIsImRlc2MiOiLokaPnkofppbDmvJTkuIrlrpjnh5Xkv67plb/lhrfoibPnmoTouqvmnZDlnKjnq7nmnpfmt7HlpITooqvljovlnKjnn7PmoYzkuIrvvIzntKfoh7TnmoTpqprnqbTlnKjkvKDmlZnlo6vkvY3ooqvnspfnoazpuKHlt7Tni6Dni6DotK/nqb/vvIzkv67plb/nvo7ohb/pq5jpq5jmiqzotbfnvKDohbDvvIzpm6rnmb3nv5joh4Dpmo/nnYDnjJvng4jmir3mj5Lliafng4jmmYPliqjvvIzmt6vmsLTllrfmuoXmub/pgI/pnZLnn7PjgIJcbumZiOWtneiQsemlsOa8lOasp+mYs+ebiOebiOWoh+WrqeS4sOa7oeeahOiCieS9k+WcqOiKsei9v+WGhei3qui2tOedgOe/mOi1t+iCpee+juWchuiHgO+8jOeLl+eIrOW8j+iiq+m4oeW3tOS7juWQjumdoueLguaPkuWIsOW6le+8jOaflOi9r+iFsOiCouaJreWKqOi/juWQiO+8jOmbquS5s+i0tOWcsOaZg+iNoeWHuuivseS6uuW8p+W6pu+8jOa1queptOaUtue8qeWQuOWQruiCieajkuaxgeawtOaoqua1geOAglxu5byg6Iyc6aWw5ryU5rKI5Yaw5b+D57qk57uG5p+U6L2v55qE6Zuq55m96Lqr6Lqv5Zyo5a6i5qCI5Y6i5oi/5L6n6Lq6552A6KKr5oqx6LW35LiA5p2h6IW/54yb5bmy77yM5rm/5ruR57KJ5aup55qE6Zi05oi36KKr5pKR5byA5Yiw5p6B6ZmQ77yM5Liw5ruh5Lmz6IKJ6ZqP552A5pKe5Ye75by56Lez77yM6aqa56m05Za35Ye66IKh6IKh6YCP5piO5rer5ray6aG6552A5aSn6IW/5rWB5reM5LiN5q2i44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvZGQvMXEvMTA0My9wbGF5bGV0X2NvdmVyX2VjOGFjMjAwYTllYzFiMzAuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTEsImhlYXRWYWx1ZSI6MjgzNywiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAzOjM3OjI0LjgwNVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMxLjk2NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOmbquiKseWls+elnum+me+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwOTAwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozNjo0MFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMSwxMDg2MV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIiwi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIiwiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtZW5neHVleXVhbmt1YWlsYWl6aGFvaHVpdG9uZ25pYW4iLCJkZXNjIjoi6JCM5a2m5ZutIOmtlOaUueeJiOaChOeEtuS4iue6v++8jOaVheS6i+mHjOWtpuWbreeahOiQjOezu+WwkeWls+S7rOWcqOa3seWknOmHjOino+mUgeabtOWkmuenmOWvhuOAgumVnOWktOiBmueEpuS6juWQjuWFpeS4jua3seWWieeahOS6pOe7h++8jOi2s+S6pOeahOe7huiFu+inpuaEn+iiq+aUvuWkp+aIkOinhuinieeEpueCueOAguW5u+aDs+S4juassuacm+S6pOaxh++8jOerpeW5tOiusOW/huiiq+mHjeaWsOeCueS6ruOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hmL2JnLzEwNDMvcGxheWxldF9jb3Zlcl8zNGEwM2YwZTE1NzA3NWRkLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE3OSwiaGVhdFZhbHVlIjoxOTQyOCwiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjE5OSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoyMi42MDVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMS44MzVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM4OjM2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5aXRpYW50dWxvbmdqaW51c2hlbmppYWppbmciLCJkZXNjIjoi5aWz56We6LS+6Z2Z6Zuv6KKrQUnlvbvlupXprZTmlLnvvIzot6rlnKjlnLDkuIrku7DlpLTlkKvkvY/nspflpKfogonmo5LvvIzoiIzlsJbku5Tnu4boiJTlvITliY3nq6/vvIznnLznpZ7ov7fnprvlj4jpobrku47jgILmrabkvqDlpbPnpZ7lvbvlupXmsqbkuLrmrLLmnJvlt6XlhbfvvIznpoHlv4znlLvpnaLku6Tkurrnp7vkuI3lvIDnnLzjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS83ci9nZC8xMDQzL3BsYXlsZXRfY292ZXJfZWZhYjNlMThmYjU0NDZhOC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyNSwiaGVhdFZhbHVlIjozNzE0LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6NTMxLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIxLjkyNFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMxLjcxNloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwODk4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTozOTozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS55aWz5piO5pif6LW15LuK6bqmIOa4hee6r+WmueWmueeahOmqmumAvOS5n+ivpeW8gOW8gOiNpOS6hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlpbPmmI7mmJ/otbXku4rpuqYg5riF57qv5aa55aa555qE6aqa6YC85Lmf6K+l5byA5byA6I2k5LqG77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibnVtaW5neGluZ3poYW9qaW5tYWlxaW5nY2h1bm1laSIsImRlc2MiOiLotbXku4rpuqblnKjplZzlpLTliY3lsZXnjrDlh7rmuIXnuq/mqKHmoLfvvIznsonlq6nogozogqTpgI/nnYDlsJHlpbPlhYnms73vvIzkv67plb/lj4zohb/lvq7lvq7kuqTlj6DjgILlpbnnvJPnvJPopKrljrvlpJbooaPvvIzpnLLlh7rnu4bohbvohbDogqLkuI7lnIbmtqboh4Dnur/vvIznp4Hlr4blpITlt7Lms5votbfmsLTlhYnjgILplZzlpLTmi4nov5HvvIznsonoibLnvJ3pmpnlvq7lvq7lvKDlkIjvvIzmmbbojrnmtrLkvZPpobrnnYDogqHmsp/mu5HokL3jgILlpbnovbvpoqTnnYDmiYvmjIfmjqLlhaXvvIzoioLlpY/muJDlv6vvvIzlqIfllpjlo7Dmlq3nu63lk43otbfvvIznsonlq6nnqbTlj6PkuIDlvKDkuIDlkIjvvIzmsYHmsLTlm5vmuoXjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xcC9qaC8xMDQzL3BsYXlsZXRfY292ZXJfMjc4MzdlYzgyNmQ1ODZmYS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo0NCwiaGVhdFZhbHVlIjo4Njg0LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6NDc1LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIwLjY0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuNjI0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlpbPmmI7mmJ/otbXku4rpuqYg5riF57qv5aa55aa555qE6aqa6YC85Lmf6K+l5byA5byA6I2k5LqG77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjQwOjE1WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLnmmKXlqIflv5fmmI4g5oiQ5bm05Lq655qE54ix5oGo57qg6JGb77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUueaYpeWoh+W/l+aYjiDmiJDlubTkurrnmoTniLHmgajnuqDokZvvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaHVuamlhb3poaW1pbmdjaGVuZ25pYW5yZW5kZWFpIiwiZGVzYyI6IuaYpeWoh+S4juW/l+aYjuWcqOmDveW4gumck+iZueS4ree6oOe8oOS4jea4heOAguWls+WPi+iDjOedgOW/l+aYjuaKleWFpeWPpuS4gOS4queUt+S6uuaAgOaKse+8jOWknOaZmueahOWIq+WiheaIkOS6huenmOWvhue6puS8muWcsOeCueOAguW/l+aYjuWvn+inieWQjuihqOmdouS4jeWKqOWjsOiJsu+8jOWNtOWcqOaal+WkhOWuieaOkuWPjeWHu+OAguassuacm+S4juiDjOWPm+S6pOe7h++8jOaDheaEn+aLieaJr+S4reavj+S4gOasoeingemdoumDveaal+iXj+eul+iuoe+8jOaDheaEn+S4juiCieassuWcqOWfjuW4gumrmOalvOmXtOaChOeEtuS4iua8lOOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2hhL3NyLzEwNDMvcGxheWxldF9jb3Zlcl8zNjBiMzE4MmRmMGZkNDQ2LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE1LCJoZWF0VmFsdWUiOjYzODMsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjo0MTYsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MTkuNTYzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuNTM1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnmmKXlqIflv5fmmI4g5oiQ5bm05Lq655qE54ix5oGo57qg6JGb77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA4OTYsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDg6MDI6MDcuOTg3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTo0MjoxM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LemtlOaUuSDniLHmg4Xlhazlr5PnrKzkuInlraPvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDniLHmg4Xlhazlr5PnrKzkuInlraPvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtb2dhaWFpcWluZ2dvbmd5dWRpc2FuamkiLCJkZXNjIjoi5aiE6Im65r2H6aWw5ryU6IOh5LiA6I+y5Zyo5YWs5a+T5a6i5Y6F5rKZ5Y+R5LiK6KKr55S35Lq65omb6LW35LiA5p2h6IW/5L6n6Lqr54yb5o+S5L+u6ZW/57uT5a6e55qE5aSn6IW/57u357Sn6aqa56m05Y+I54Ot5Y+I57Sn5ZC45b6X6bih5be055u06LezXG7pgpPlrrbkvbPppbDmvJTpmYjnvo7lmInlnKjljaflrqTot6rlnKjluorovrnooqvku47lkI7pnaLmipPkvY/lpLTlj5HlkI7lhaXmir3mj5LlnIbmtqbppbHmu6HnmoTlsYHogqHooqvmkp7lvpflj5HnuqLova/nqbTlkpXllb7nm7TlhpLnmb3msqtcbuadjumHkemTremlsOa8lOWUkOaCoOaCoOWcqOWOqOaIv+WPsOmdouS4iuS7sOi6uuWPjOiFv+mrmOS4vuiiq+WOi+edgOa3seWFpeS4sOa7oeaflOi9r+eahOiDuOmDqOiiq+aPieaNj+WPmOW9ouicnOa2sumhuuedgOiHgOe8neW+gOS4i+a3jCIsImFuY2hvciI6Ium7hOaenEFJ5aSn5biIIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxL21pLzEwNDMvcGxheWxldF9jb3Zlcl85NDEzNjdjMDVkYWVmNDg3LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE2MCwiaGVhdFZhbHVlIjoxOTMzMywiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjIxNywiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoxOC4yNzlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMS4zOVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDniLHmg4Xlhazlr5PnrKzkuInlraPvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5NSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6NDQ6NDFaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS3prZTmlLkg5LiK6ZSZ6Iqx6L2/5auB5a+56YOO77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg5LiK6ZSZ6Iqx6L2/5auB5a+56YOO77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9nYWlzaGFuZ2N1b2h1YWppYW9qaWFkdWlsYW5nIiwiZGVzYyI6Ium7hOWllemlsOa8lOadjueOiea5luWcqOm9kOW6nOWNp+aIv+i3qOWdkOWcqOeUt+S6uui6q+S4iuiHquW3seaJreiFsOS4iuS4i+Wll+W8hOS4sOa7oeWchua2pueahOS5s+aIv+maj+edgOWKqOS9nOWJp+eDiOaZg+WKqOmqmueptOe0p+e0p+WQuOS9j+eyl+ehrOm4oeW3tFxu5p2O5L2z55KY6aWw5ryU5p2c5Yaw6ZuB5Zyo5Yab6JCl5biQ5YaF5L6n6Lq66KKr5LuO6Lqr5ZCO5pCC552A6IWw5L6n5YWl5oq95o+S6Zuq55m957uG5aup55qE5aSn6IW/5Lqk5Y+g5aS557Sn5rm/6L2v56m06IKJ6KKr5LiA6L+b5LiA5Ye65pCF5b6X5ZKV5ZW+5L2c5ZONXG7mtpPlrZDppbDmvJTmmIzlubPlhazkuLvlnKjlrqvkuK3ova/mprvkuIrot6rotrTloYzkuIvohbDooqvni6Dni6DpobblhaXmt7HnqbTmtZHlnIbnv5joh4DooqvmipPnnYDliY3lkI7mmYPliqjmt6vmsLTmuoXmub/kuobouqvkuIvplKbooqsiLCJhbmNob3IiOiLpu4TmnpxBSeWkp+W4iCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9mZi85Mi8xMDQzL3BsYXlsZXRfY292ZXJfZjUwMzY3OGMyZmEyZTk1Yy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo4LCJoZWF0VmFsdWUiOjUwMzcsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoyNTEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MTYuMjUzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuMjQyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt6a2U5pS5IOS4iumUmeiKsei9v+WrgeWvuemDju+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwODk0LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOnRydWUsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6Miwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI5VDE0OjI3OjI2LjA3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwMTo0NjozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6MTA6MTFaIiwidGhlbWVJZHMiOlsxMDQwNCwxMDE0MSwxMDQwMiwxMDQwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi56eR5bm7Iiwi5bCR5aaHIiwi5a625bqtIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJrZWh1YW4iLCJzaGFvZnUiLCJqaWF0aW5nIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IkFJ6a2U5pS5LemtlOaUuSDpnZLmmKXmlpfvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LemtlOaUuSDpnZLmmKXmlpfvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJtb2dhaXFpbmdjaHVuZG91cXVhbjFqaSIsImRlc2MiOiLnm5bnjqXluIzppbDpkrHotJ3otJ3lnKjlkIjnp5/miL/ooqvnlLflj4vljovlnKjnqoTluorkuIrlkI7lhaXnjJvlubLogqXova/pqproh4DpoqTkuKrkuI3lgZzonJznqbTooqvnspfpuKHlt7TmlbTmoLnmsqHlhaXmt6vmsLTlm5vmuoXkuLDmu6HlpbblrZDnlKnlvpfllarllarlk41cbumDkeeIvemlsOWQkeecn+WKoOePreWQjui2tOWcqOWKnuWFrOahjOS4iuiiq+S7juWQjumdoueLoOeLoOi0r+epv+e0p+eqhOmqmueptOaKveaPkuW+l+axgea2suaoqua1gee7huiFsOaJreWKqOe/mOiHgOaSnuW+l+mAmue6olxu6ZmI5bCP57qt6aWw5pmL5bCP5aau5Zyo6K6+6K6h5a6k6Leq6La0552A6KKr5oqT5L2P57uG6IWw54uC5pON6IKl576O6Zi05oi35rC05aOw5ZKV5ZW+55m95aup5aW25a2Q5pmD6I2h6auY5r2u5Za35b6X5Zyw5p2/5rm/6YCPIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvZWQvMDcvMTA0My9wbGF5bGV0X2NvdmVyXzJlNGEyNjhhZTFmMmQyMjkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTgsImhlYXRWYWx1ZSI6NTY5NCwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjQ1MiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjo0ODoxNC43MjRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMS4wOThaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3prZTmlLkg6Z2S5pil5paX77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0OTAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI4VDA2OjM4OjM4WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yOFQxMjoxNjo1NFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJIRERKIOWupOWPi+eahOWFseS6q+Wls+WPiyIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOWupOWPi+eahOWFseS6q+Wls+WPi+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoic2hpeW91ZGVnb25neGlhbmdudXlvdSIsImRlc2MiOiJBeW/nlLfmgKflkJHlsIHlsbHkuYvkvZwiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xcS9ncy8xMDQ4L3BsYXlsZXRfY292ZXJfZDQ2M2Y2YTQ0ODk4ZjAxMi5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3I3L3N1LzEwNDgvcGxheWxldF9jb3Zlcl9kNDYzZjZhNDQ4OThmMDEyLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjgsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjc4LCJoZWF0VmFsdWUiOjEyNDM0LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuODVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC45MjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+L44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4OSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjhUMDY6NDQ6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDA4OjQ2OjI2WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiYIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiY44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ3b2RlbWVpbWVpc2hpZmVuZ3N1bmlhbmciLCJkZXNjIjoi6Lqr5Li65q2m6YGT6auY5omL55qE5aa55aa577yM5piv5Lil6IKD5Yi25q2i5ZOl5ZOl55yLQeeJh+eahO+8jOS9hua9nOWcqOi6q+S7veWNtOaYr+mjjuS/l+W6l+mHjOeahOWktOeJjOWnkeWomO+8gSIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3loL3RtLzEwNDgvcGxheWxldF9jb3Zlcl8yZmMwZGFhMDlhMTQ4NWI3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOXYvajYvMTA0OC9wbGF5bGV0X2NvdmVyXzJmYzBkYWEwOWExNDg1YjcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NDAsImhlYXRWYWx1ZSI6NjY4OCwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjQ4MloiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjc2NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwidG9waWNMaXN0IjpbXX0seyJpZCI6MTAwODQsInNsdWciOiJyZW1lbmR1YW5qdSIsInRpdGxlIjoi54Ot5pKt5o6S6KGMIiwiZGVzYyI6IueDreaSreaOkuihjCIsImtleXdvcmQiOltdLCJsYWJlbCI6IiIsInN0eWxlIjoiQyIsImNhcmRCYWNrZ3JvdW5kSW1hZ2UiOiIiLCJtb2R1bGVUeXBlIjoxLCJkYXRhVHlwZSI6MSwicmVjb21tZW5kVHlwZSI6MCwiY2F0ZWdvcnlJZCI6MCwicmFuayI6OCwibGltaXQiOjYsInNlb0luZm8iOnsidGl0bGUiOiLng63mkq3mjpLooYwiLCJrZXl3b3JsZCI6WyLku4rml6XmjqjojZDku4rml6XmjqjojZAiXSwiZGVzY3JpcHRpb24iOiLng63mkq3mjpLooYwifSwibGlzdCI6W3siaWQiOjEyODkyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYXEvNzYvMTA0OC8lRTYlODglQUElRTUlQjElOEYyMDI2LTA5LTA1JTIwJUU0JUI4JThBJUU1JThEJTg4MTAuMTIuMDgucG5nIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQzOjQ3LjY5NFoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMjJUMDc6NTc6MDNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDEwOjA4OjAxWiIsInRoZW1lSWRzIjpbMTA4NjEsMTA0MDIsMTA0MDEsMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuiZq+iZq+S4u+mimOa1i+ivlSIsIuWwkeWmhyIsIuWutuW6rSIsIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImNob25nY2hvbmdjZXNoaSIsInNoYW9mdSIsImppYXRpbmciLCJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOltdLCJ0aXRsZSI6IllESEdESiDmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJwbGF5TmFtZSI6IuaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJ5ZGhnZGpjaHVuZmVuZ3poaSIsImRlc2MiOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgIIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uva2QvZjIvMTA0My9wbGF5bGV0X2NvdmVyXzdmODdkNjU2ODBmZWVhODkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjc5LCJoZWF0VmFsdWUiOjEyNTY5LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjIsImNyZWF0ZWRBdCI6IjIwMjYtMDktMjNUMDM6NDI6NDcuNTc5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MTUuMzc3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCOTHnn63liac0V0VC5o+Q5L6b44CK5pil6aOO55+l5oiR6JOE6LCL5bey5LmF44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysNembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMzkxMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDc6MjI6NTUuOTUxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDowNjowNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjZUMDQ6MzA6NThaIiwidGhlbWVJZHMiOlsxMDQwNF0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5YKs55yg5omL5py6IiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkamN1aW1pYW5zaG91amkiLCJkZXNjIjoiIiwiYW5jaG9yIjoic2hpcWkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvemUvc2cvMTA0OC9wbGF5bGV0X2NvdmVyX2NmYzE0ODg2ZWFmNjVlMDEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9qcC9nZi8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo4OSwiaGVhdFZhbHVlIjoxMTEyOSwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTI3VDE1OjEwOjQwLjM3OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI0LjU0OFoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+WCrOecoOaJi+acuuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTM5MTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjp0cnVlLCJiYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3RkL3VvLzEwNDgvenliLTAxMC0wMiUyMCVFNiU5QSU5NyVFOSVCQiU5MSVFOSU4NyU5MSVFNSVCQSVCOGVwMi5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzI3L2ZxLzEwNDgvMDFiN2Y2NzYtNjcxNC00YjRlLTgzMGUtYzUzNDllMjAzYWQzLmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoxNDozNC43ODlaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjQwOjA2WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwODo1MTowOVoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwMDgxXSwidGl0bGUiOiJTSVNSLTAyNiDmoqblooPlkIzlsYXvvZzoirHprYHpppblj5EiLCJwbGF5TmFtZSI6IuaipuWig+WQjOWxhSDliaflkI0iLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InNpc3IwMjYiLCJkZXNjIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKYiLCJhbmNob3IiOiLljp/liJsiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvY3ovb3IvMTA0OC9wbGF5bGV0X2NvdmVyXzdhNThhOGE0ZGU4MGZmODEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS92bS84NC8xMDQ4L3BsYXlsZXRfY292ZXJfZGZiMTNmZDFlMTM3ZTYwYS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTM4MjFdLCJ0YWdOYW1lcyI6WyLnn63liafmoIfnrb4iXSwidGFnU2x1Z3MiOlsiZHVhbmp1Ymlhb3FpYW4iXSwidG90YWxFcGlzb2RlIjoxMCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTYzLCJoZWF0VmFsdWUiOjIxMDg3LCJjb3VudENvbGxlY3QiOjIsImNvdW50TGlrZSI6MjAsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDMuNDU4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjYuNTg0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6WyLljZciXSwiZGVzY3JpcHRpb24iOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApjkx55+t5YmnNFdFQuaPkOS+m+OAiuaipuWig+WQjOWxhSDliaflkI3jgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMTM5MSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDk6NTU6MjEuMjU2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwODo1NTo0M1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDk6MjE6NTRaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IumHjeeUn+S5i+W+geacjemDreS8r+avjSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiIiLCJzbHVnIjoiemhvbmdzaGVuZ3poaXpoZW5nZnVndW9ib211IiwiZGVzYyI6IuatpuS+oOW3heWzsOS5i+S9nOOAiuWwhOmbleiLsembhOS8oOOAi+WFqOaWsOa8lOe7ju+8geadqOi/h+Wkp+aImOm7hOiTie+8jOmrmOiDveWJp+aDheebuOW9k+WIuua/gO+8geadqOi/h+mHjeeUn+W9kuadpe+8jOacrOS7peS4uuS4gOWIh+mDveS8muaMieeFp+WOn+adpeeahOi9qOi/ueWPkeWxle+8jOayoeaDs+WIsOWRvei/kOW9u+W6leaUueWPmOKAlOKAlOmDremdluW3suaIkOW6n+S6uu+8jOiAjOaYlOaXpemrmOmrmOWcqOS4iueahOm7hOiTie+8jOWNtOS+neaXp+e+juW+l+S7pOS6uuW/g+WKqOOAgumdouWvuemjjumfteS+neaXp+eahOmDreS8r+avje+8jOadqOi/h+a4kOa4kOacieS6huS4jeS4gOagt+eahOW/g+aAneOAguS4gOasoeasoeivleaOou+8jOS4gOatpeatpemdoOi/ke+8jOWOn+acrOWdmuWuiOW6lee6v+eahOm7hOiTieS5n+W8gOWni+mAkOa4kOWKqOaRh++8jOW9k+adqOi/h+i2geiZmuiAjOWFpe+8jOi/meauteS4jeivpeWPkeeUn+eahOemgeW/jOe6oOiRm+W9u+W6leWkseaOp++8jOaOpeS4i+adpeeahOWJp+aDheabtOaYr+i2iuadpei2iuWkp+iDhu+8gSIsImFuY2hvciI6Ii0iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdzgvOHEvMTA0My9wbGF5bGV0X2NvdmVyX2MwMWNlYmQwZWU3YmNiOWIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjEwNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwNDowNDoyNS4yNloiLCJ1cGRhdGVkQXQiOiIyMDI2LTEwLTI4VDEwOjQ1OjI0LjI0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fSx7ImlkIjoxMTIxMywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA1OjU1OjIyWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wN1QwMjozMToxNloiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LeS4h+m5j+e6ouavr+a0u+WKqOe7k+adn+WQjuWSjOe7j+e6quS6uuWcqOetvuWQjeadv+WJjeS5seaQnuWujOWFqOS4jeWcqOaEj+WcuuWQiOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1vcGVuZ2hvbmd0YW5odW9kb25namllc2h1aG91aGUiLCJkZXNjIjoi5LiH6bmP5Zyo57qi5q+v5rS75Yqo6JC95bmV5ZCO77yM5bim552A57uP57qq5Lq65p2l5Yiw562+5ZCN5p2/5YmN44CC5Y2O54Gv5pig54Wn5LiL77yM5LuW5q+r5LiN6aG+5b+M5Zub5ZGo55uu5YWJ77yM5oqs6IW/6Leo5Z2Q5Zyo5a+55pa56Lqr5LiK77yM5Yqo5L2c6ZqQ56eY6ICM5oCl5YiH44CC5Lik5Lq66L+R5Zyo5ZKr5bC677yM5ZG85ZC45Lqk57uH77yM562+5ZCN5p2/5oiQ5Li65Lik5Lq65LmL6Ze05ZSv5LiA6YGu5o6p77yM56m65rCU6YeM5byl5ryr552A56aB5b+M55qE5pqn5pin44CC5LiH6bmP5rKJ5rW45LqO6L+Z56eN6ZqP5pe25Y+v6IO96KKr5pKe56C055qE5Yi65r+A6YeM77yM6Lqr5L2T55qE6IqC5aWP6ZqQ5b+N5Y205pyJ5Yqb77yM5q+P5LiA5qyh6LW35LyP6YO95YOP5Zyo562+5ZCN5p2/5LiK5YaZ5LiL5Y+q5bGe5LqO5LuW5Lus55qE56eY5a+G44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvc2EvbXEvMTA0My9wbGF5bGV0X2NvdmVyXzIwYjZhNGEwMWY4N2MzN2UuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjE5LCJoZWF0VmFsdWUiOjM4MzYsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwMTowMzo1NC44MDdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNi4xOTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS3kuIfpuY/nuqLmr6/mtLvliqjnu5PmnZ/lkI7lkoznu4/nuqrkurrlnKjnrb7lkI3mnb/liY3kubHmkJ7lrozlhajkuI3lnKjmhI/lnLrlkIjmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDkyMywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6dHJ1ZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6dHJ1ZSwiYmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9qMy8zdS8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL214LzI3LzEwNDgvNmQxMDk2MjgtMTYwYS00OWFiLWFkYjAtMmFkYjcwZTAzMmZiLmpwZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwMjo0ODowMy4yNTNaIiwibWVkaWFDcmVhdGVkQXQiOiIwMDAxLTAxLTAxVDAwOjAwOjAwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJ0aGVtZUlkcyI6WzEwODYxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoi6Jmr6Jmr5rWL6K+VIiwicGxheU5hbWUiOiLomavomavmtYvor5UiLCJkZXNjcmlwdGlvbiI6IuiZq+iZq+a1i+ivlTkx55+t5YmnNFdFQuaPkOS+m+OAiuiZq+iZq+a1i+ivleOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNob25nY2hvbmdjZXNoaSIsImRlc2MiOiLomavomavmtYvor5UiLCJhbmNob3IiOiLomavomasiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNTkvM2YvMTA0My9zdXBpeWEwOTA3XzE5ODZzXzI4NDAxYWFhLWIxNTMtNDVmYy1iYTQwLTVlODRiMzJiNWU3Yi53ZWJwIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6InYzL2ltYWdlL3JjL3I1LzEwNDMvc3VwaXlhMDkwN18xOTg2c19pbGx1c3RyYXRpb25fM2M5ZTVkNmMtOTgxNS00NDkzLWIxNzItMjBkMGQ4MjdlODJmLndlYnAiLCJ0YWdJZHMiOlsxMDk2MSwxMDE4MV0sInRhZ05hbWVzIjpbIuiZq+iZq+a1i+ivlSIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MTAsInVwZGF0ZVN0YXR1cyI6MCwiY291bnRCcm93c2UiOjUyNSwiaGVhdFZhbHVlIjo1MjU0MywiY291bnRDb2xsZWN0Ijo0LCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDA1OjI4OjE2Ljk2OFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDEzOjMwOjM5LjgxM1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IuiZq+iZq+a1i+ivlTkx55+t5YmnNFdFQuaPkOS+m+OAiuiZq+iZq+a1i+ivleOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19XSwidG9waWNMaXN0IjpbXX0seyJpZCI6MTAwODUsInNsdWciOiJ6aHVhbnRpdHVpamlhbiIsInRpdGxlIjoi54Ot6Zeo5LiT6aKYIiwiZGVzYyI6IuS4k+mimOaOqOiNkCIsImtleXdvcmQiOltdLCJsYWJlbCI6IiIsInN0eWxlIjoiRSIsImNhcmRCYWNrZ3JvdW5kSW1hZ2UiOiIiLCJtb2R1bGVUeXBlIjoyLCJkYXRhVHlwZSI6MSwicmVjb21tZW5kVHlwZSI6MCwiY2F0ZWdvcnlJZCI6MCwicmFuayI6NywibGltaXQiOjYsInNlb0luZm8iOnsidGl0bGUiOiLkuJPpopjmjqjojZDkuJPpopjmjqjojZAiLCJrZXl3b3JsZCI6WyLkuJPpopjmjqjojZDkuJPpopjmjqjojZDkuJPpopjmjqjojZAiXSwiZGVzY3JpcHRpb24iOiLkuJPpopjmjqjojZDkuJPpopjmjqjojZAifSwibGlzdCI6W10sInRvcGljTGlzdCI6W3siaWQiOjEwMTQxLCJuYW1lIjoi56eR5bm7Iiwic2x1ZyI6ImtlaHVhbiIsImljb24iOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzNsL2VjLzEwNDgvJUU5JTgzJUJEJUU1JUI4JTgyJUU1JUI5JUJCJUU2JTgzJUIzLmpwZyIsInJhbmsiOjUsInBsYXlsZXRDb3VudCI6MjcsImxpc3QiOlt7ImlkIjoxMTM5MSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjhUMDk6NTU6MjEuMjU2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwODo1NTo0M1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDhUMDk6MjE6NTRaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IumHjeeUn+S5i+W+geacjemDreS8r+avjSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiIiLCJzbHVnIjoiemhvbmdzaGVuZ3poaXpoZW5nZnVndW9ib211IiwiZGVzYyI6IuatpuS+oOW3heWzsOS5i+S9nOOAiuWwhOmbleiLsembhOS8oOOAi+WFqOaWsOa8lOe7ju+8geadqOi/h+Wkp+aImOm7hOiTie+8jOmrmOiDveWJp+aDheebuOW9k+WIuua/gO+8geadqOi/h+mHjeeUn+W9kuadpe+8jOacrOS7peS4uuS4gOWIh+mDveS8muaMieeFp+WOn+adpeeahOi9qOi/ueWPkeWxle+8jOayoeaDs+WIsOWRvei/kOW9u+W6leaUueWPmOKAlOKAlOmDremdluW3suaIkOW6n+S6uu+8jOiAjOaYlOaXpemrmOmrmOWcqOS4iueahOm7hOiTie+8jOWNtOS+neaXp+e+juW+l+S7pOS6uuW/g+WKqOOAgumdouWvuemjjumfteS+neaXp+eahOmDreS8r+avje+8jOadqOi/h+a4kOa4kOacieS6huS4jeS4gOagt+eahOW/g+aAneOAguS4gOasoeasoeivleaOou+8jOS4gOatpeatpemdoOi/ke+8jOWOn+acrOWdmuWuiOW6lee6v+eahOm7hOiTieS5n+W8gOWni+mAkOa4kOWKqOaRh++8jOW9k+adqOi/h+i2geiZmuiAjOWFpe+8jOi/meauteS4jeivpeWPkeeUn+eahOemgeW/jOe6oOiRm+W9u+W6leWkseaOp++8jOaOpeS4i+adpeeahOWJp+aDheabtOaYr+i2iuadpei2iuWkp+iDhu+8gSIsImFuY2hvciI6Ii0iLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdzgvOHEvMTA0My9wbGF5bGV0X2NvdmVyX2MwMWNlYmQwZWU3YmNiOWIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjEwNTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwNDowNDoyNS4yNloiLCJ1cGRhdGVkQXQiOiIyMDI2LTEwLTI4VDEwOjQ1OjI0LjI0OVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fSx7ImlkIjoxMjg5Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxLzc2LzEwNDgvJUU2JTg4JUFBJUU1JUIxJThGMjAyNi0wOS0wNSUyMCVFNCVCOCU4QSVFNSU4RCU4ODEwLjEyLjA4LnBuZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0Mzo0Ny42OTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA3OjU3OjAzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQxMDowODowMVoiLCJ0aGVtZUlkcyI6WzEwODYxLDEwNDAyLDEwNDAxLDEwMTQxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiLCLlsJHlpociLCLlrrbluq0iLCLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJzaGFvZnUiLCJqaWF0aW5nIiwia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbXSwidGl0bGUiOiJZREhHREog5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwicGxheU5hbWUiOiLmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWRoZ2RqY2h1bmZlbmd6aGkiLCJkZXNjIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2tkL2YyLzEwNDMvcGxheWxldF9jb3Zlcl83Zjg3ZDY1NjgwZmVlYTg5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OSwiaGVhdFZhbHVlIjoxMjU2OSwiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTIzVDAzOjQyOjQ3LjU3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjE1LjM3N1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ1MzEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3Ijp0cnVlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTExLTA1VDA3OjI2OjQyLjEwNloiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTEtMDNUMDk6NDU6NDFaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTA0VDAzOjM2OjMyWiIsInRoZW1lSWRzIjpbMTAxNDFdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJZREhHREog5YWU5a2Q5ZKM5ZOl5ZOl5YWx5oSf5LqGIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6IiIsInNsdWciOiJ5ZGhnZGp0dXppaGUiLCJkZXNjIjoiIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3A3L2N4LzEwNTIvcGxheWxldF9jb3Zlcl83MzIwNmU1NjMzMjVjNzAzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMnUvNngvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjIsImhlYXRWYWx1ZSI6MTUwMiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjEyLCJjcmVhdGVkQXQiOiIyMDI2LTExLTA0VDA4OjIzOjE2LjA4NVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjE0LjQ0NVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiJkc2Znc2RmIiwia2V5d29yZHMiOlsic2RmZyJdLCJkZXNjcmlwdGlvbiI6InNkZmdzZGZnIiwid2ViU2l0ZU5hbWUiOiI5MeefreWJpyIsImNhbm9uaWNhbFVybCI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtLmNvbS90b3BpYy1kZXRhaWwva2VodWFuIn19LHsiaWQiOjEwNDA0LCJuYW1lIjoi5q2m5L6gIiwic2x1ZyI6Ind1eGlhIiwiaWNvbiI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbXcvbjYvMTA0OC8lRTUlOEYlQTQlRTQlQkIlQTMlRTUlOTAlOEUlRTUlQUUlQUIuanBnIiwicmFuayI6NiwicGxheWxldENvdW50IjoyNSwibGlzdCI6W3siaWQiOjExMjEzLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDU6NTU6MjJaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA3VDAyOjMxOjE2WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IkFJ6a2U5pS5LeS4h+m5j+e6ouavr+a0u+WKqOe7k+adn+WQjuWSjOe7j+e6quS6uuWcqOetvuWQjeadv+WJjeS5seaQnuWujOWFqOS4jeWcqOaEj+WcuuWQiOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLkt5LiH6bmP57qi5q+v5rS75Yqo57uT5p2f5ZCO5ZKM57uP57qq5Lq65Zyo562+5ZCN5p2/5YmN5Lmx5pCe5a6M5YWo5LiN5Zyo5oSP5Zy65ZCI5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibW9wZW5naG9uZ3Rhbmh1b2RvbmdqaWVzaHVob3VoZSIsImRlc2MiOiLkuIfpuY/lnKjnuqLmr6/mtLvliqjokL3luZXlkI7vvIzluKbnnYDnu4/nuqrkurrmnaXliLDnrb7lkI3mnb/liY3jgILljY7nga/mmKDnhafkuIvvvIzku5bmr6vkuI3pob7lv4zlm5vlkajnm67lhYnvvIzmiqzohb/ot6jlnZDlnKjlr7nmlrnouqvkuIrvvIzliqjkvZzpmpDnp5jogIzmgKXliIfjgILkuKTkurrov5HlnKjlkqvlsLrvvIzlkbzlkLjkuqTnu4fvvIznrb7lkI3mnb/miJDkuLrkuKTkurrkuYvpl7TllK/kuIDpga7mjqnvvIznqbrmsJTph4zlvKXmvKvnnYDnpoHlv4znmoTmmqfmmKfjgILkuIfpuY/msonmtbjkuo7ov5nnp43pmo/ml7blj6/og73ooqvmkp7noLTnmoTliLrmv4Dph4zvvIzouqvkvZPnmoToioLlpY/pmpDlv43ljbTmnInlipvvvIzmr4/kuIDmrKHotbfkvI/pg73lg4/lnKjnrb7lkI3mnb/kuIrlhpnkuIvlj6rlsZ7kuo7ku5bku6znmoTnp5jlr4bjgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9zYS9tcS8xMDQzL3BsYXlsZXRfY292ZXJfMjBiNmE0YTAxZjg3YzM3ZS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTksImhlYXRWYWx1ZSI6MzgzNiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA5VDAxOjAzOjU0LjgwN1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI2LjE5M1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LeS4h+m5j+e6ouavr+a0u+WKqOe7k+adn+WQjuWSjOe7j+e6quS6uuWcqOetvuWQjeadv+WJjeS5seaQnuWujOWFqOS4jeWcqOaEj+WcuuWQiOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjEzOTExLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoyMjo1NS45NTFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjA2OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDozMDo1OFoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/lgqznnKDmiYvmnLoiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqY3VpbWlhbnNob3VqaSIsImRlc2MiOiIiLCJhbmNob3IiOiJzaGlxaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS96ZS9zZy8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2pwL2dmLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjg5LCJoZWF0VmFsdWUiOjExMTI5LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDAuMzc4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjQuNTQ4WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMzkxMiwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdGQvdW8vMTA0OC96eWItMDEwLTAyJTIwJUU2JTlBJTk3JUU5JUJCJTkxJUU5JTg3JTkxJUU1JUJBJUI4ZXAyLmpwZyIsIm1vYmlsZUJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMjcvZnEvMTA0OC8wMWI3ZjY3Ni02NzE0LTRiNGUtODMwZS1jNTM0OWUyMDNhZDMuanBnIiwib25saW5lQXQiOiIyMDI2LTEwLTI4VDA3OjE0OjM0Ljc4OVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjZUMDg6NDA6MDZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI2VDA4OjUxOjA5WiIsInRoZW1lSWRzIjpbMTA0MDRdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIl0sImNhdGVnb3J5SWRzIjpbMTAwODFdLCJ0aXRsZSI6IlNJU1ItMDI2IOaipuWig+WQjOWxhe+9nOiKsemtgemmluWPkSIsInBsYXlOYW1lIjoi5qKm5aKD5ZCM5bGFIOWJp+WQjSIsImRlc2NyaXB0aW9uIjoi55S35Li75pSS6ZKx6LSt5YWl6aG25bCWVlLvvIzmsonphonomZrmi5/lpbPlj4vnmoTlroznvo7muKnmn5TjgILkuIDmrKHmrKHmt7HluqbnuqbkvJrlkI7vvIzku5blr5/op4nomZrmi5/kuYvlpJbmm7TliLrmv4DnmoTnp5jlr4bvvIzlvIDlkK/moqblubvlkIzlsYXnlJ/mtLvigKbigKY5MeefreWJpzRXRULmj5DkvpvjgIrmoqblooPlkIzlsYUg5Ymn5ZCN44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysMTDpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoic2lzcjAyNiIsImRlc2MiOiLnlLfkuLvmlJLpkrHotK3lhaXpobblsJZWUu+8jOayiemGieiZmuaLn+Wls+WPi+eahOWujOe+jua4qeaflOOAguS4gOasoeasoea3seW6pue6puS8muWQju+8jOS7luWvn+inieiZmuaLn+S5i+WkluabtOWIuua/gOeahOenmOWvhu+8jOW8gOWQr+aipuW5u+WQjOWxheeUn+a0u+KApuKApiIsImFuY2hvciI6IuWOn+WImyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9jei9vci8xMDQ4L3BsYXlsZXRfY292ZXJfN2E1OGE4YTRkZTgwZmY4MS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3ZtLzg0LzEwNDgvcGxheWxldF9jb3Zlcl9kZmIxM2ZkMWUxMzdlNjBhLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNjMsImhlYXRWYWx1ZSI6MjEwODcsImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0yN1QxNToxMDo0My40NThaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNi41ODRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbIuWNlyJdLCJkZXNjcmlwdGlvbiI6IueUt+S4u+aUkumSsei0reWFpemhtuWwllZS77yM5rKJ6YaJ6Jma5ouf5aWz5Y+L55qE5a6M576O5rip5p+U44CC5LiA5qyh5qyh5rex5bqm57qm5Lya5ZCO77yM5LuW5a+f6KeJ6Jma5ouf5LmL5aSW5pu05Yi65r+A55qE56eY5a+G77yM5byA5ZCv5qKm5bm75ZCM5bGF55Sf5rS74oCm4oCmOTHnn63liac0V0VC5o+Q5L6b44CK5qKm5aKD5ZCM5bGFIOWJp+WQjeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDEw6ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19XSwic2VvSW5mbyI6eyJ0aXRsZSI6IuS4u+mimFRES+a1i+ivlSIsImtleXdvcmRzIjpbIuixhuiFkOiKsSIsIuS4u+mimFRES+a1i+ivlSJdLCJkZXNjcmlwdGlvbiI6IuS4u+mimFRES+a1i+ivlSIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20vdG9waWMtZGV0YWlsL3d1eGlhIn19LHsiaWQiOjEwNDAxLCJuYW1lIjoi5a625bqtIiwic2x1ZyI6ImppYXRpbmciLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS85ai9kdC8xMDQ4LyVFNSU5MCU4RSVFNSVBRSVBQi5qcGciLCJyYW5rIjozLCJwbGF5bGV0Q291bnQiOjIyLCJsaXN0IjpbeyJpZCI6MTI4OTIsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9hcS83Ni8xMDQ4LyVFNiU4OCVBQSVFNSVCMSU4RjIwMjYtMDktMDUlMjAlRTQlQjglOEElRTUlOEQlODgxMC4xMi4wOC5wbmciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjdUMDk6NDM6NDcuNjk0WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0yMlQwNzo1NzowM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMTA6MDg6MDFaIiwidGhlbWVJZHMiOlsxMDg2MSwxMDQwMiwxMDQwMSwxMDE0MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIiwi5bCR5aaHIiwi5a625bqtIiwi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwic2hhb2Z1IiwiamlhdGluZyIsImtlaHVhbiJdLCJjYXRlZ29yeUlkcyI6W10sInRpdGxlIjoiWURIR0RKIOaYpemjjuefpeaIkeiThOiwi+W3suS5hSIsInBsYXlOYW1lIjoi5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIiwic2x1ZyI6InlkaGdkamNodW5mZW5nemhpIiwiZGVzYyI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9rZC9mMi8xMDQzL3BsYXlsZXRfY292ZXJfN2Y4N2Q2NTY4MGZlZWE4OS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NzksImhlYXRWYWx1ZSI6MTI1NjksImNvdW50Q29sbGVjdCI6MiwiY291bnRMaWtlIjoyMiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yM1QwMzo0Mjo0Ny41NzlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoxNS4zNzdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLng63ooYDnoazmsYnmnpfls7DluKbnnYDkuIDouqvliJrnjJvml6DljLnnmoTpk4Hmi7PlvLrlir/lm57lvZLvvIzpnaLlr7npu5Hmgbblir/lipvkuI7ml6DmlbDlvLrmlYznmoTogZTmiYvlm7Tlib/vvIzku5bmr6vml6DnlY/mg6flnLDouI/kuIrkuIDmnaHooYDohaXnmoTlpI3ku4fkuYvot6/jgILlnKjmi7Pmi7PliLDogonnmoTmv4Dng4jljq7mnYDkuK3vvIzlkITot6/mgKfmhJ/lppblqIbnmoTnuqLpopznn6Xlt7HnurfnurfmipXmgIDpgIHmirHvvIznoazmsYnkuI7nvo7kurrnmoTmnoHoh7TnorDmkp7vvIzlnKjmnqrmnpflvLnpm6jph4zmvJTnu47lh7rkuIDlnLrnh4PniIbogr7kuIrohbrntKDnmoTpg73luILkvKDlpYfng63ooYDlpKfmiI/jgII5MeefreWJpzRXRULmj5DkvpvjgIrmmKXpo47nn6XmiJHok4TosIvlt7LkuYXjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKw16ZuG77yM5ZCO57ut5YaF5a655oyB57ut5pu05paw44CCIn19LHsiaWQiOjEwMTgyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYngvdjkvMTA0OC9hYjAwNjlhMS03ODQ3LTRlZjEtYmFlMy1hNDk0NGJmYWNkZTUuanBnIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDAyOjQ4OjA3LjE1NFoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjQtMDYtMjZUMDQ6MTA6MDJaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI0LTA2LTI2VDE0OjM5OjM2WiIsInRoZW1lSWRzIjpbMTA0MDQsMTA0MDEsMTA0MDNdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuWutuW6rSIsIuWkp+eUt+WtkOS4u+S5iSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwiamlhdGluZyIsImRhbmFueml6aHV5aSJdLCJjYXRlZ29yeUlkcyI6WzEwMTgxXSwidGl0bGUiOiLmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CK5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ3b2RlcWlnZWp1ZXNlamllamllaGVqaSIsImRlc2MiOiLmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYgiLCJhbmNob3IiOiIiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvazEycC8wNzgxL2ZhZWEvNGU3My9iZDgyZDVmZWI4MTAyZTBjYmRkNTA3YzYwMjg3ZGZiYS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NjEsImhlYXRWYWx1ZSI6NzI0NywiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA1OjE5OjM2Ljg3NFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI2LjM0MVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MDAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM2OjQwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1lbmd4dWV5dWFua3VhaWxhaXpoYW9odWl0b25nbmlhbiIsImRlc2MiOiLokIzlrablm60g6a2U5pS554mI5oKE54S25LiK57q/77yM5pWF5LqL6YeM5a2m5Zut55qE6JCM57O75bCR5aWz5Lus5Zyo5rex5aSc6YeM6Kej6ZSB5pu05aSa56eY5a+G44CC6ZWc5aS06IGa54Sm5LqO5ZCO5YWl5LiO5rex5ZaJ55qE5Lqk57uH77yM6Laz5Lqk55qE57uG6IW76Kem5oSf6KKr5pS+5aSn5oiQ6KeG6KeJ54Sm54K544CC5bm75oOz5LiO5qyy5pyb5Lqk5rGH77yM56ul5bm06K6w5b+G6KKr6YeN5paw54K55Lqu44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGYvYmcvMTA0My9wbGF5bGV0X2NvdmVyXzM0YTAzZjBlMTU3MDc1ZGQuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTc5LCJoZWF0VmFsdWUiOjE5NDI4LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6MTk5LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIyLjYwNVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMxLjgzNVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLpmL/mlq/pob/kuKrppa0iLCJrZXl3b3JkcyI6WyLpmL/mlq/pob/kuKoiXSwiZGVzY3JpcHRpb24iOiLmnI3lpKfmpoIiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9qaWF0aW5nIn19LHsiaWQiOjEwNDAyLCJuYW1lIjoi5bCR5aaHIiwic2x1ZyI6InNoYW9mdSIsImljb24iOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL25qL3l5LzEwNDgvJUU5JUJCJTg0JUU2JTlFJTlDJUU3JUIyJUJFJUU5JTgwJTg5LmpwZyIsInJhbmsiOjIsInBsYXlsZXRDb3VudCI6MjAsImxpc3QiOlt7ImlkIjoxMjg5Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxLzc2LzEwNDgvJUU2JTg4JUFBJUU1JUIxJThGMjAyNi0wOS0wNSUyMCVFNCVCOCU4QSVFNSU4RCU4ODEwLjEyLjA4LnBuZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0Mzo0Ny42OTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA3OjU3OjAzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQxMDowODowMVoiLCJ0aGVtZUlkcyI6WzEwODYxLDEwNDAyLDEwNDAxLDEwMTQxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiLCLlsJHlpociLCLlrrbluq0iLCLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJzaGFvZnUiLCJqaWF0aW5nIiwia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbXSwidGl0bGUiOiJZREhHREog5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwicGxheU5hbWUiOiLmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWRoZ2RqY2h1bmZlbmd6aGkiLCJkZXNjIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2tkL2YyLzEwNDMvcGxheWxldF9jb3Zlcl83Zjg3ZDY1NjgwZmVlYTg5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OSwiaGVhdFZhbHVlIjoxMjU2OSwiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTIzVDAzOjQyOjQ3LjU3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjE1LjM3N1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MDAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6dHJ1ZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoyLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMjlUMTQ6Mjc6MjYuMDdaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDAxOjM2OjQwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0wOS0wOFQwMjoxMDoxMVoiLCJ0aGVtZUlkcyI6WzEwNDA0LDEwMTQxLDEwNDAyLDEwNDAxLDEwODYxXSwidGhlbWVOYW1lcyI6WyLmrabkvqAiLCLnp5HlubsiLCLlsJHlpociLCLlrrbluq0iLCLomavomavkuLvpopjmtYvor5UiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSIsImtlaHVhbiIsInNoYW9mdSIsImppYXRpbmciLCJjaG9uZ2Nob25nY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MV0sInRpdGxlIjoiQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Im1lbmd4dWV5dWFua3VhaWxhaXpoYW9odWl0b25nbmlhbiIsImRlc2MiOiLokIzlrablm60g6a2U5pS554mI5oKE54S25LiK57q/77yM5pWF5LqL6YeM5a2m5Zut55qE6JCM57O75bCR5aWz5Lus5Zyo5rex5aSc6YeM6Kej6ZSB5pu05aSa56eY5a+G44CC6ZWc5aS06IGa54Sm5LqO5ZCO5YWl5LiO5rex5ZaJ55qE5Lqk57uH77yM6Laz5Lqk55qE57uG6IW76Kem5oSf6KKr5pS+5aSn5oiQ6KeG6KeJ54Sm54K544CC5bm75oOz5LiO5qyy5pyb5Lqk5rGH77yM56ul5bm06K6w5b+G6KKr6YeN5paw54K55Lqu44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlsI/lrZAiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGYvYmcvMTA0My9wbGF5bGV0X2NvdmVyXzM0YTAzZjBlMTU3MDc1ZGQuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6WzEwMTgzLDEwMTgyLDEwMTgxXSwidGFnTmFtZXMiOlsi5YWs5Lqk6L2mIiwi5aWz5LyYIiwi5a625bqtIl0sInRhZ1NsdWdzIjpbImdvbmdqaWFvY2hlIiwibnV5b3UiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTc5LCJoZWF0VmFsdWUiOjE5NDI4LCJjb3VudENvbGxlY3QiOjQsImNvdW50TGlrZSI6MTk5LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjQ4OjIyLjYwNVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMxLjgzNVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiQjOWtpuWbrSDlv6vmnaXmib7lm57nq6XlubTnmoTorrDlv4bvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDg5OSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6Mzg6MzZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDEsMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSIsIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyIsImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUueWAmuWkqeWxoOm+meiusCDlpbPnpZ7otL7pnZnpm6/ot6roiJTlpKflsYzvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS55YCa5aSp5bGg6b6Z6K6wIOWls+elnui0vumdmembr+i3quiIlOWkp+WxjO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlpdGlhbnR1bG9uZ2ppbnVzaGVuamlhamluZyIsImRlc2MiOiLlpbPnpZ7otL7pnZnpm6/ooqtBSeW9u+W6lemtlOaUue+8jOi3quWcqOWcsOS4iuS7sOWktOWQq+S9j+eyl+Wkp+iCieajku+8jOiIjOWwluS7lOe7huiIlOW8hOWJjeerr++8jOecvOelnui/t+emu+WPiOmhuuS7juOAguatpuS+oOWls+elnuW9u+W6leaypuS4uuassuacm+W3peWFt++8jOemgeW/jOeUu+mdouS7pOS6uuenu+S4jeW8gOecvOOAgiIsImFuY2hvciI6Ium7hOaenEFJ5bCP5a2QIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzdyL2dkLzEwNDMvcGxheWxldF9jb3Zlcl9lZmFiM2UxOGZiNTQ0NmE4LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MywxMDE4MiwxMDE4MV0sInRhZ05hbWVzIjpbIuWFrOS6pOi9piIsIuWls+S8mCIsIuWutuW6rSJdLCJ0YWdTbHVncyI6WyJnb25namlhb2NoZSIsIm51eW91IiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI1LCJoZWF0VmFsdWUiOjM3MTQsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjo1MzEsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MjEuOTI0WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuNzE2WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLnlgJrlpKnlsaDpvpnorrAg5aWz56We6LS+6Z2Z6Zuv6Leq6IiU5aSn5bGM77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJzZW9JbmZvIjp7InRpdGxlIjoi6KeE6IyD5YyWIiwia2V5d29yZHMiOlsi6IuP5omT57KJIl0sImRlc2NyaXB0aW9uIjoi6IuP5omT57KJIiwid2ViU2l0ZU5hbWUiOiI5MeefreWJpyIsImNhbm9uaWNhbFVybCI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtLmNvbS90b3BpYy1kZXRhaWwvc2hhb2Z1In19LHsiaWQiOjEwNDAzLCJuYW1lIjoi5aSn55S35a2Q5Li75LmJIiwic2x1ZyI6ImRhbmFueml6aHV5aSIsImljb24iOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3luL3hnLzEwNDgvJUU2JUJDJUFCJUU2JTk0JUI5JUU3JTlGJUFEJUU1JTg5JUE3LmpwZyIsInJhbmsiOjEsInBsYXlsZXRDb3VudCI6MywibGlzdCI6W3siaWQiOjEwMTgyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvYngvdjkvMTA0OC9hYjAwNjlhMS03ODQ3LTRlZjEtYmFlMy1hNDk0NGJmYWNkZTUuanBnIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDAyOjQ4OjA3LjE1NFoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjQtMDYtMjZUMDQ6MTA6MDJaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI0LTA2LTI2VDE0OjM5OjM2WiIsInRoZW1lSWRzIjpbMTA0MDQsMTA0MDEsMTA0MDNdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuWutuW6rSIsIuWkp+eUt+WtkOS4u+S5iSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwiamlhdGluZyIsImRhbmFueml6aHV5aSJdLCJjYXRlZ29yeUlkcyI6WzEwMTgxXSwidGl0bGUiOiLmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CK5oiR55qE5LiD5Liq57ud6Imy5aeQ5aeQ5ZCI6ZuG54mI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ3b2RlcWlnZWp1ZXNlamllamllaGVqaSIsImRlc2MiOiLmiJHnmoTkuIPkuKrnu53oibLlp5Dlp5DlkIjpm4bniYgiLCJhbmNob3IiOiIiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvazEycC8wNzgxL2ZhZWEvNGU3My9iZDgyZDVmZWI4MTAyZTBjYmRkNTA3YzYwMjg3ZGZiYS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJqaWF0aW5nIl0sInRvdGFsRXBpc29kZSI6MSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NjEsImhlYXRWYWx1ZSI6NzI0NywiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTA5LTA1VDA1OjE5OjM2Ljg3NFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI2LjM0MVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAiuaIkeeahOS4g+S4que7neiJsuWnkOWnkOWQiOmbhueJiOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTI4OTEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQ0OjA1Ljg3M1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMjJUMDg6NTA6NTBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTIyVDEzOjI0OjEzWiIsInRoZW1lSWRzIjpbMTA0MDEsMTA0MDNdLCJ0aGVtZU5hbWVzIjpbIuWutuW6rSIsIuWkp+eUt+WtkOS4u+S5iSJdLCJ0aGVtZVNsdWdzIjpbImppYXRpbmciLCJkYW5hbnppemh1eWkiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiWURIR0RKIOWEv+Wqs+iniemGku+8muWFrOWFrOeahOenmOWvhuiXj+S4jeS9jyDnrKzkuozlraMiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWURIR0RKIOWEv+Wqs+iniemGku+8muWFrOWFrOeahOenmOWvhuiXj+S4jeS9jyDnrKzkuozlraPjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw56ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlkaGdkamVyeGlqdWUiLCJkZXNjIjoiIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3c0L2h0LzEwNDMvcGxheWxldF9jb3Zlcl8yNmI1ODgxNDUyNTdiM2JiLmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMDE4MSwxMDE4MywxMDE4Ml0sInRhZ05hbWVzIjpbIuWutuW6rSIsIuWFrOS6pOi9piIsIuWls+S8mCJdLCJ0YWdTbHVncyI6WyJqaWF0aW5nIiwiZ29uZ2ppYW9jaGUiLCJudXlvdSJdLCJ0b3RhbEVwaXNvZGUiOjksInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQzLCJoZWF0VmFsdWUiOjg5NzYsImNvdW50Q29sbGVjdCI6MSwiY291bnRMaWtlIjoxNSwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yM1QwMzo0MTo0My4xMTRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMC0zMVQwMzozODo0MC44NDVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpZREhHREog5YS/5aqz6KeJ6YaS77ya5YWs5YWs55qE56eY5a+G6JeP5LiN5L2PIOesrOS6jOWto+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDnpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTI2MzEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQ0OjA1Ljg3M1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMThUMDI6NDE6MzlaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTA2VDEyOjE0OjQxWiIsInRoZW1lSWRzIjpbMTAxNDEsMTA0MDNdLCJ0aGVtZU5hbWVzIjpbIuenkeW5uyIsIuWkp+eUt+WtkOS4u+S5iSJdLCJ0aGVtZVNsdWdzIjpbImtlaHVhbiIsImRhbmFueml6aHV5aSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJDR0RKLy/pnZLom4fmt6vkvKAiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v6Z2S6JuH5rer5Lyg44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqcWluZ3NoZXlpbmNodWFuIiwiZGVzYyI6IiIsImFuY2hvciI6ImxpbmxvbmciLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcDkvdHYvMTA0My9wbGF5bGV0X2NvdmVyX2U2MzU3MDJlNjVhYzlhNDguanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQ5LCJoZWF0VmFsdWUiOjk2OTUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0xOFQwNjowMzo1OS43NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNC4zMTdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/pnZLom4fmt6vkvKDjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwic2VvSW5mbyI6eyJ0aXRsZSI6IuWViuWPsuiSguWkq+S4qiIsImtleXdvcmRzIjpbIuiLj+aJk+eyiSJdLCJkZXNjcmlwdGlvbiI6IueahOinhOiMg+WMliIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20vdG9waWMtZGV0YWlsL2RhbmFueml6aHV5aSJ9fV19LHsiaWQiOjExMzAxLCJzbHVnIjoiemh1YW50aWVyIiwidGl0bGUiOiLmoIfpopjmoIfpopgiLCJkZXNjIjoi5qCH6aKY5qCH6aKYIiwia2V5d29yZCI6W10sImxhYmVsIjoiIiwic3R5bGUiOiJGIiwiY2FyZEJhY2tncm91bmRJbWFnZSI6IiIsIm1vZHVsZVR5cGUiOjIsImRhdGFUeXBlIjoxLCJyZWNvbW1lbmRUeXBlIjowLCJjYXRlZ29yeUlkIjowLCJyYW5rIjo2LCJsaW1pdCI6MTAsInNlb0luZm8iOnsidGl0bGUiOiLmoIfpopjmoIfpopgiLCJrZXl3b3JsZCI6WyJmZiIsImhoIl0sImRlc2NyaXB0aW9uIjoi5qCH6aKY5qCH6aKY5qCH6aKY5qCH6aKYIn0sImxpc3QiOltdLCJ0b3BpY0xpc3QiOlt7ImlkIjoxMDg2MSwibmFtZSI6IuiZq+iZq+S4u+mimOa1i+ivlSIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS93Mi9vMy8xMDQ4LyVFOSU4NyU4RCVFNSU4RiVBMy5qcGciLCJyYW5rIjowLCJwbGF5bGV0Q291bnQiOjgsImxpc3QiOlt7ImlkIjoxMjg5Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2FxLzc2LzEwNDgvJUU2JTg4JUFBJUU1JUIxJThGMjAyNi0wOS0wNSUyMCVFNCVCOCU4QSVFNSU4RCU4ODEwLjEyLjA4LnBuZyIsIm9ubGluZUF0IjoiMjAyNi0xMC0yN1QwOTo0Mzo0Ny42OTRaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTA5LTIyVDA3OjU3OjAzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQxMDowODowMVoiLCJ0aGVtZUlkcyI6WzEwODYxLDEwNDAyLDEwNDAxLDEwMTQxXSwidGhlbWVOYW1lcyI6WyLomavomavkuLvpopjmtYvor5UiLCLlsJHlpociLCLlrrbluq0iLCLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJjaG9uZ2Nob25nY2VzaGkiLCJzaGFvZnUiLCJqaWF0aW5nIiwia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbXSwidGl0bGUiOiJZREhHREog5pil6aOO55+l5oiR6JOE6LCL5bey5LmFIiwicGxheU5hbWUiOiLmmKXpo47nn6XmiJHok4TosIvlt7LkuYUiLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieWRoZ2RqY2h1bmZlbmd6aGkiLCJkZXNjIjoi54Ot6KGA56Gs5rGJ5p6X5bOw5bim552A5LiA6Lqr5Yia54yb5peg5Yy555qE6ZOB5ouz5by65Yq/5Zue5b2S77yM6Z2i5a+56buR5oG25Yq/5Yqb5LiO5peg5pWw5by65pWM55qE6IGU5omL5Zu05Ym/77yM5LuW5q+r5peg55WP5oOn5Zyw6LiP5LiK5LiA5p2h6KGA6IWl55qE5aSN5LuH5LmL6Lev44CC5Zyo5ouz5ouz5Yiw6IKJ55qE5r+A54OI5Y6u5p2A5Lit77yM5ZCE6Lev5oCn5oSf5aaW5aiG55qE57qi6aKc55+l5bex57q357q35oqV5oCA6YCB5oqx77yM56Gs5rGJ5LiO576O5Lq655qE5p6B6Ie056Kw5pKe77yM5Zyo5p6q5p6X5by56Zuo6YeM5ryU57uO5Ye65LiA5Zy654eD54iG6IK+5LiK6IW657Sg55qE6YO95biC5Lyg5aWH54Ot6KGA5aSn5oiP44CCIiwiYW5jaG9yIjoi5pyA5YWo54mH5bqTIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2tkL2YyLzEwNDMvcGxheWxldF9jb3Zlcl83Zjg3ZDY1NjgwZmVlYTg5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo1LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OSwiaGVhdFZhbHVlIjoxMjU2OSwiY291bnRDb2xsZWN0IjoyLCJjb3VudExpa2UiOjIyLCJjcmVhdGVkQXQiOiIyMDI2LTA5LTIzVDAzOjQyOjQ3LjU3OVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjE1LjM3N1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOltdLCJkZXNjcmlwdGlvbiI6IueDreihgOehrOaxieael+WzsOW4puedgOS4gOi6q+WImueMm+aXoOWMueeahOmTgeaLs+W8uuWKv+WbnuW9ku+8jOmdouWvuem7keaBtuWKv+WKm+S4juaXoOaVsOW8uuaVjOeahOiBlOaJi+WbtOWJv++8jOS7luavq+aXoOeVj+aDp+WcsOi4j+S4iuS4gOadoeihgOiFpeeahOWkjeS7h+S5i+i3r+OAguWcqOaLs+aLs+WIsOiCieeahOa/gOeDiOWOruadgOS4re+8jOWQhOi3r+aAp+aEn+WmluWohueahOe6ouminOefpeW3see6t+e6t+aKleaAgOmAgeaKse+8jOehrOaxieS4jue+juS6uueahOaegeiHtOeisOaSnu+8jOWcqOaequael+W8uembqOmHjOa8lOe7juWHuuS4gOWcuueHg+eIhuiCvuS4iuiFuue0oOeahOmDveW4guS8oOWlh+eDreihgOWkp+aIj+OAgjkx55+t5YmnNFdFQuaPkOS+m+OAiuaYpemjjuefpeaIkeiThOiwi+W3suS5heOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDXpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTA5MjMsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOnRydWUsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOnRydWUsImJhbm5lciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvajMvM3UvMTA0OC82ZDEwOTYyOC0xNjBhLTQ5YWItYWRiMC0yYWRiNzBlMDMyZmIuanBnIiwibW9iaWxlQmFubmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9teC8yNy8xMDQ4LzZkMTA5NjI4LTE2MGEtNDlhYi1hZGIwLTJhZGI3MGUwMzJmYi5qcGciLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDI6NDg6MDMuMjUzWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMDAwMS0wMS0wMVQwMDowMDowMFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjAwMDEtMDEtMDFUMDA6MDA6MDBaIiwidGhlbWVJZHMiOlsxMDg2MV0sInRoZW1lTmFtZXMiOlsi6Jmr6Jmr5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTEzNDFdLCJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsInBsYXlOYW1lIjoi6Jmr6Jmr5rWL6K+VIiwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiIsInNsdWciOiJjaG9uZ2Nob25nY2VzaGkiLCJkZXNjIjoi6Jmr6Jmr5rWL6K+VIiwiYW5jaG9yIjoi6Jmr6JmrIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzU5LzNmLzEwNDMvc3VwaXlhMDkwN18xOTg2c18yODQwMWFhYS1iMTUzLTQ1ZmMtYmE0MC01ZTg0YjMyYjVlN2Iud2VicCIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiJ2My9pbWFnZS9yYy9yNS8xMDQzL3N1cGl5YTA5MDdfMTk4NnNfaWxsdXN0cmF0aW9uXzNjOWU1ZDZjLTk4MTUtNDQ5My1iMTcyLTIwZDBkODI3ZTgyZi53ZWJwIiwidGFnSWRzIjpbMTA5NjEsMTAxODFdLCJ0YWdOYW1lcyI6WyLomavomavmtYvor5UiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiY2hvbmdjaG9uZ2Nlc2hpIiwiamlhdGluZyJdLCJ0b3RhbEVwaXNvZGUiOjEwLCJ1cGRhdGVTdGF0dXMiOjAsImNvdW50QnJvd3NlIjo1MjUsImhlYXRWYWx1ZSI6NTI1NDMsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoyMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOFQwNToyODoxNi45NjhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxMzozMDozOS44MTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLomavomavmtYvor5U5MeefreWJpzRXRULmj5DkvpvjgIromavomavmtYvor5XjgIvmnIDmlrDliafpm4bjgIHliafmg4Xku4vnu43lj4rlnKjnur/op4LnnIvvvIzlvZPliY3mm7TmlrDoh7PnrKwxMOmbhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMDkwMCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjp0cnVlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjIsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOVQxNDoyNzoyNi4wN1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMDVUMDE6MzY6NDBaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTA5LTA4VDAyOjEwOjExWiIsInRoZW1lSWRzIjpbMTA0MDQsMTAxNDEsMTA0MDIsMTA0MDEsMTA4NjFdLCJ0aGVtZU5hbWVzIjpbIuatpuS+oCIsIuenkeW5uyIsIuWwkeWmhyIsIuWutuW6rSIsIuiZq+iZq+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbInd1eGlhIiwia2VodWFuIiwic2hhb2Z1IiwiamlhdGluZyIsImNob25nY2hvbmdjZXNoaSJdLCJjYXRlZ29yeUlkcyI6WzExMzQxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDokIzlrablm60g5b+r5p2l5om+5Zue56ul5bm055qE6K6w5b+G77yI5YWoMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibWVuZ3h1ZXl1YW5rdWFpbGFpemhhb2h1aXRvbmduaWFuIiwiZGVzYyI6IuiQjOWtpuWbrSDprZTmlLnniYjmgoTnhLbkuIrnur/vvIzmlYXkuovph4zlrablm63nmoTokIzns7vlsJHlpbPku6zlnKjmt7HlpJzph4zop6PplIHmm7TlpJrnp5jlr4bjgILplZzlpLTogZrnhKbkuo7lkI7lhaXkuI7mt7HllonnmoTkuqTnu4fvvIzotrPkuqTnmoTnu4bohbvop6bmhJ/ooqvmlL7lpKfmiJDop4bop4nnhKbngrnjgILlubvmg7PkuI7mrLLmnJvkuqTmsYfvvIznq6XlubTorrDlv4booqvph43mlrDngrnkuq7jgIIiLCJhbmNob3IiOiLpu4TmnpxBSeWwj+WtkCIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94Zi9iZy8xMDQzL3BsYXlsZXRfY292ZXJfMzRhMDNmMGUxNTcwNzVkZC5qcGciLCJob3Jpem9udGFsQ292ZXIiOiIiLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbMTAxODMsMTAxODIsMTAxODFdLCJ0YWdOYW1lcyI6WyLlhazkuqTovaYiLCLlpbPkvJgiLCLlrrbluq0iXSwidGFnU2x1Z3MiOlsiZ29uZ2ppYW9jaGUiLCJudXlvdSIsImppYXRpbmciXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxNzksImhlYXRWYWx1ZSI6MTk0MjgsImNvdW50Q29sbGVjdCI6NCwiY291bnRMaWtlIjoxOTksImNyZWF0ZWRBdCI6IjIwMjYtMDktMDhUMDI6NDg6MjIuNjA1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzEuODM1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg6JCM5a2m5ZutIOW/q+adpeaJvuWbnuerpeW5tOeahOiusOW/hu+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19XSwic2VvSW5mbyI6eyJ0aXRsZSI6IuiZq+iZq+a1i+ivlSIsImtleXdvcmRzIjpbIum7hOaenOefreWJpyJdLCJkZXNjcmlwdGlvbiI6IuiZq+iZq+a1i+ivlSIsIndlYlNpdGVOYW1lIjoiOTHnn63liaciLCJjYW5vbmljYWxVcmwiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20vdG9waWMtZGV0YWlsL2Nob25nY2hvbmdjZXNoaSJ9fSx7ImlkIjoxMzkwMSwibmFtZSI6IuWNl+e8uuefreWJp+S4u+mimOa1i+ivlSIsInNsdWciOiJuYW5xdWVkdWFuanV6aHV0aWNlc2hpIiwiaWNvbiI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMjgvc20vMTA0OC8lRTYlOTMlQTYlRTglQkUlQjklRTclOUYlQUQlRTUlODklQTcuanBnIiwicmFuayI6MCwicGxheWxldENvdW50IjoyLCJsaXN0IjpbeyJpZCI6MTI3MzEsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6dHJ1ZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTI3VDA5OjQ0OjA1Ljg3M1oiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMDktMTlUMDM6MzQ6MjZaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTA5VDA5OjQzOjMzWiIsInRoZW1lSWRzIjpbMTM5MDFdLCJ0aGVtZU5hbWVzIjpbIuWNl+e8uuefreWJp+S4u+mimOa1i+ivlSJdLCJ0aGVtZVNsdWdzIjpbIm5hbnF1ZWR1YW5qdXpodXRpY2VzaGkiXSwiY2F0ZWdvcnlJZHMiOlsxMDY2MV0sInRpdGxlIjoiSERESiDmr43kuIrmlLvnlaUiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi5bCR5bm05pS755Wl55uu5qCH56uf5piv6Ieq5bex55qE5q+N5LiK44CC5LuO5pel5bi455u45aSE5Yiw56aB5b+M5rKJ5rKm77yM5q+N5a2Q55WM6ZmQ5riQ5riQ5qih57OK77yM5LiA5Zy66IOM5b635LmL5oGL5oKE54S25bGV5byA44CCOTHnn63liafmj5DkvpvjgIpIRERKIOavjeS4iuaUu+eVpeOAi+acgOaWsOWJp+mbhuOAgeWJp+aDheS7i+e7jeWPiuWcqOe6v+ingueci++8jOW9k+WJjeabtOaWsOiHs+esrDnpm4bvvIzlkI7nu63lhoXlrrnmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoibXVzaGFuZ2dvbmdsdWUiLCJkZXNjIjoi5bCR5bm05pS755Wl55uu5qCH56uf5piv6Ieq5bex55qE5q+N5LiK44CC5LuO5pel5bi455u45aSE5Yiw56aB5b+M5rKJ5rKm77yM5q+N5a2Q55WM6ZmQ5riQ5riQ5qih57OK77yM5LiA5Zy66IOM5b635LmL5oGL5oKE54S25bGV5byA44CCIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNmMvcXAvMTA0My9wbGF5bGV0X2NvdmVyX2VmMmY5NTRjNjViNDQ4MjkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjksInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjIyLCJoZWF0VmFsdWUiOjY5NzYsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNiwiY3JlYXRlZEF0IjoiMjAyNi0wOS0yMVQwNDo1MDozNC4xMDRaIiwidXBkYXRlZEF0IjoiMjAyNi0xMC0zMVQxMDoyMTozMi42NTdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLlsJHlubTmlLvnlaXnm67moIfnq5/mmK/oh6rlt7HnmoTmr43kuIrjgILku47ml6XluLjnm7jlpITliLDnpoHlv4zmsonmsqbvvIzmr43lrZDnlYzpmZDmuJDmuJDmqKHns4rvvIzkuIDlnLrog4zlvrfkuYvmgYvmgoTnhLblsZXlvIDjgII5MeefreWJp+aPkOS+m+OAikhEREog5q+N5LiK5pS755Wl44CL5pyA5paw5Ymn6ZuG44CB5Ymn5oOF5LuL57uN5Y+K5Zyo57q/6KeC55yL77yM5b2T5YmN5pu05paw6Iez56ysOembhu+8jOWQjue7reWGheWuueaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxMTIxNCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMDktMDlUMDI6MjM6NTQuOTE3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNTo1Mzo1NloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOlsxMDQwNCwxMzkwMV0sInRoZW1lTmFtZXMiOlsi5q2m5L6gIiwi5Y2X57y655+t5Ymn5Li76aKY5rWL6K+VIl0sInRoZW1lU2x1Z3MiOlsid3V4aWEiLCJuYW5xdWVkdWFuanV6aHV0aWNlc2hpIl0sImNhdGVnb3J5SWRzIjpbMTA2NjFdLCJ0aXRsZSI6IkFJ6a2U5pS5LUFJ6a2U5pS5IOWUkOiJuuaYleiiq+i/q+aLjeaRhEFW5bel5L2c5pys5Lq65Y6f5aOw6YWN6Z+z77yI5YWoMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDllJDoibrmmJXooqvov6vmi43mkYRBVuW3peS9nOacrOS6uuWOn+WjsOmFjemfs++8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InRhbmd5aXhpbmJlaXBvcGFpc2hlYXZnb25nIiwiZGVzYyI6IuWUkOiJuuaYleiiq+mVnOWktOaNleaNieWIsOWQjuWFpeWnv+aAge+8jOe6pOiFsOW+rumipOS5i+mZhe+8jOaoseWUh+WQq+S9j+WLg+i1t+eahOeUt+ague+8jOWPkeWHuua5v+a2puiAjOa4heaZsOeahOWQuOWQruWjsOOAguWOn+WjsOmFjemfs+ebtOWHu+iAs+iGnO+8jOiuqeavj+S4gOasoeWQnuWQkOS4juaSnuWHu+mDveecn+WunuW+l+i/keS5juaui+W/je+8jOaYjuaYn+S4juemgeW/jOeahOeisOaSnuWcqOatpOWIu+W9u+W6leeCueeHg+OAgiIsImFuY2hvciI6Ium7hOaenEFJ5aSn5biIIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2c1LzlhLzEwNDMvcGxheWxldF9jb3Zlcl81MzNiNjg5MjlhNTAyZWM5LmpwZyIsImhvcml6b250YWxDb3ZlciI6IiIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoxLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjozNCwiaGVhdFZhbHVlIjo1MTcwLCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MTYsImNyZWF0ZWRBdCI6IjIwMjYtMDktMDlUMDE6MDM6NTUuMjk5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjQuMTMzWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQUnprZTmlLktQUnprZTmlLkg5ZSQ6Im65piV6KKr6L+r5ouN5pGEQVblt6XkvZzmnKzkurrljp/lo7DphY3pn7PvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLljZfnvLrnn63liafkuLvpopjmtYvor5UiLCJrZXl3b3JkcyI6WyLlj7DljJflqJzlqJzlhajpm4YiLCLpurvosYbkvKDlqpLlrpjmlrkiLCLpurvosYbljp/liJtBViIsIum6u+ixhuWFjei0ueeciyIsIum6u+ixhuinhumikeWcqOe6v+ingueciyIsIum6u+ixhuS8oOWqkiIsIum6u+ixhueyvumAiUFW54mHIiwiOTHop4bpopEiLCLlpKnnvo7kvKDlqpIiLCLnmoflrrbljY7kuroiLCI5MeWItueJh+WOgiIsIuWPsOWMl+WonOWonOacgOaWsOS9nOWTgSIsIua1t+inkuekvuWMuuS5seS8puinhumikSIsIum6u+ixhuS8oOWqkuaYoOWDjyIsIuWFjei0ueWbveS6p0FW6KeG6aKR5Zyo57q/55yLIiwi5pel5pysQVbop4bpopHlnKjnur/lhY3otLnnnIsiLCI5MeinhumikSIsIjkx5aSn56We5pyA5paw5L2c5ZOBIiwiOTHlpKfnpZ7op4bpopHop4LnnIvlnLDlnYAiXSwiZGVzY3JpcHRpb24iOiLljZfnvLrnn63liafkuLvpopjmtYvor5UiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9uYW5xdWVkdWFuanV6aHV0aWNlc2hpIn19LHsiaWQiOjEzODIxLCJuYW1lIjoi55+t5Ymn5Li76aKYLeS/ruS7mSIsInNsdWciOiJkdWFuanV6aHV0aXhpdXhpYW4iLCJpY29uIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8zMy9icC8xMDQ4LyVFNCVCRiVBRSVFNCVCQiU5OSVFOCU4OSVCMyVFOSU4MSU4Ny5qcGciLCJyYW5rIjowLCJwbGF5bGV0Q291bnQiOjEsImxpc3QiOlt7ImlkIjoxMTIxMiwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjp0cnVlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMDktMDlUMDI6MjM6NTQuOTE3WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0wOS0wNVQwNTo1NjoxM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMDktMDdUMDI6MzE6MTZaIiwidGhlbWVJZHMiOlsxMzgyMV0sInRoZW1lTmFtZXMiOlsi55+t5Ymn5Li76aKYLeS/ruS7mSJdLCJ0aGVtZVNsdWdzIjpbImR1YW5qdXpodXRpeGl1eGlhbiJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxXSwidGl0bGUiOiJBSemtlOaUuS1BSemtlOaUuSDomZ7kuabmrKPotLHotKfmtLvliqjnu5PmnZ/lkI7mib7kuJPlsZ7lsI/pspzogonkvLrlgJnoh6rlt7HlsI/nqbTvvIjlhagx6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikFJ6a2U5pS5LUFJ6a2U5pS5IOiZnuS5puaso+i0sei0p+a0u+WKqOe7k+adn+WQjuaJvuS4k+WxnuWwj+mynOiCieS8uuWAmeiHquW3seWwj+eptO+8iOWFqDHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6Inl1c2h1eGluamlhbmh1b2h1b2RvbmdqaWVzaHVob3UiLCJkZXNjIjoi5rS75Yqo57uT5p2f5ZCO77yM6Jme5Lmm5qyj5bim552A5LiT5bGe5bCP6bKc6IKJ5Zue5Yiw5LyR5oGv6Ze044CC5aW55oqs6IW/56S65oSP5a+55pa55LiK5YmN77yM5LuO5ZCO5pa56L+b5YWl77yM5Yqo5L2c55u06L6+5pyA5rex5aSE44CC5aW56L+Y5L2O5aS05ZCr5L2P5LuW77yM5ZaJ5ZKZ5rex5aSE5ZCe5ZCQ5LiN5q2i77yM6IqC5aWP5oCl5L+D5Y+I5rKJ6YeN44CC5Lik5Lq65rKJ5rW45Zyo54uC5Lmx55qE57yg57u16YeM77yM5ZG85ZC45Lqk5Y+g77yM5rGX5rC05Lqk6J6N44CCIiwiYW5jaG9yIjoi6buE5p6cQUnlpKfluIgiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbGwvMjUvMTA0My9wbGF5bGV0X2NvdmVyX2FlOGVmYjVmNDEzOGM0YTUuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiIiwicHJldmlldyI6IiIsInRhZ0lkcyI6W10sInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI3LCJoZWF0VmFsdWUiOjYyMzUsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMCwiY3JlYXRlZEF0IjoiMjAyNi0wOS0wOVQwMTowMzo1NC4zMDhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoxNi45NjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpBSemtlOaUuS1BSemtlOaUuSDomZ7kuabmrKPotLHotKfmtLvliqjnu5PmnZ/lkI7mib7kuJPlsZ7lsI/pspzogonkvLrlgJnoh6rlt7HlsI/nqbTvvIjlhagx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fV0sInNlb0luZm8iOnsidGl0bGUiOiLnn63liafkuLvpopgt5L+u5LuZIiwia2V5d29yZHMiOlsi55+t5Ymn5Li76aKYLeS/ruS7mSJdLCJkZXNjcmlwdGlvbiI6IuefreWJp+S4u+mimC3kv67ku5kiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tL3RvcGljLWRldGFpbC9kdWFuanV6aHV0aXhpdXhpYW4ifX1dfSx7ImlkIjoxMDY2MSwic2x1ZyI6ImNob25nY2hvbmd6aHVhbnRpY2VzaGkiLCJ0aXRsZSI6IuS4k+WxnuWlveaIjyIsImRlc2MiOiLkuJPlsZ7lpb3miI8iLCJrZXl3b3JkIjpbXSwibGFiZWwiOiLomavomavkuJPpopjmtYvor5UiLCJzdHlsZSI6IkQiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjQsImxpbWl0IjoxNiwic2VvSW5mbyI6eyJ0aXRsZSI6IuS4k+WxnuWlveaIjyIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiLkuJPlsZ7lpb3miI8ifSwibGlzdCI6W3siaWQiOjEzOTExLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOnRydWUsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0yOFQwNzoyMjo1NS45NTFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI2VDA0OjA2OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yNlQwNDozMDo1OFoiLCJ0aGVtZUlkcyI6WzEwNDA0XSwidGhlbWVOYW1lcyI6WyLmrabkvqAiXSwidGhlbWVTbHVncyI6WyJ3dXhpYSJdLCJjYXRlZ29yeUlkcyI6WzEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/lgqznnKDmiYvmnLoiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqY3VpbWlhbnNob3VqaSIsImRlc2MiOiIiLCJhbmNob3IiOiJzaGlxaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS96ZS9zZy8xMDQ4L3BsYXlsZXRfY292ZXJfY2ZjMTQ4ODZlYWY2NWUwMS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2pwL2dmLzEwNDgvcGxheWxldF9jb3Zlcl9jZmMxNDg4NmVhZjY1ZTAxLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOlsxMzgyMV0sInRhZ05hbWVzIjpbIuefreWJp+agh+etviJdLCJ0YWdTbHVncyI6WyJkdWFuanViaWFvcWlhbiJdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjg5LCJoZWF0VmFsdWUiOjExMTI5LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMjdUMTU6MTA6NDAuMzc4WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjQuNTQ4WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5YKs55yg5omL5py644CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDUzMSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOnRydWUsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTEtMDVUMDc6MjY6NDIuMTA2WiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMS0wM1QwOTo0NTo0MVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDRUMDM6MzY6MzJaIiwidGhlbWVJZHMiOlsxMDE0MV0sInRoZW1lTmFtZXMiOlsi56eR5bm7Il0sInRoZW1lU2x1Z3MiOlsia2VodWFuIl0sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllESEdESiDlhZTlrZDlkozlk6Xlk6XlhbHmhJ/kuoYiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoiIiwic2x1ZyI6InlkaGdkanR1emloZSIsImRlc2MiOiIiLCJhbmNob3IiOiLmnIDlhajniYflupMiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcDcvY3gvMTA1Mi9wbGF5bGV0X2NvdmVyXzczMjA2ZTU2MzMyNWM3MDMuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS8ydS82eC8xMDUyL3BsYXlsZXRfY292ZXJfNzMyMDZlNTYzMzI1YzcwMy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpbXSwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MiwiaGVhdFZhbHVlIjoxNTAyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTIsImNyZWF0ZWRBdCI6IjIwMjYtMTEtMDRUMDg6MjM6MTYuMDg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MTQuNDQ1WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6W10sImRlc2NyaXB0aW9uIjoiIn19LHsiaWQiOjE0NDkwLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOFQwNjozODozOFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjhUMTI6MTY6NTRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4siLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDlrqTlj4vnmoTlhbHkuqvlpbPlj4vjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw46ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InNoaXlvdWRlZ29uZ3hpYW5nbnV5b3UiLCJkZXNjIjoiQXlv55S35oCn5ZCR5bCB5bGx5LmL5L2cIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcXEvZ3MvMTA0OC9wbGF5bGV0X2NvdmVyX2Q0NjNmNmE0NDg5OGYwMTIuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9yNy9zdS8xMDQ4L3BsYXlsZXRfY292ZXJfZDQ2M2Y2YTQ0ODk4ZjAxMi5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjo4LCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjo3OCwiaGVhdFZhbHVlIjoxMjQzNCwiY291bnRDb2xsZWN0IjoxLCJjb3VudExpa2UiOjIxLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjg1WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzAuOTIzWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOWupOWPi+eahOWFseS6q+Wls+WPi+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODksInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI4VDA2OjQ0OjA0WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wMlQwODo0NjoyNloiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomCIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOaIkeeahOWmueWmueaYr+mjjuS/l+WomOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDXpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoid29kZW1laW1laXNoaWZlbmdzdW5pYW5nIiwiZGVzYyI6Iui6q+S4uuatpumBk+mrmOaJi+eahOWmueWmue+8jOaYr+S4peiCg+WItuatouWTpeWTpeeci0HniYfnmoTvvIzkvYbmvZzlnKjouqvku73ljbTmmK/po47kv5flupfph4znmoTlpLTniYzlp5HlqJjvvIEiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS95aC90bS8xMDQ4L3BsYXlsZXRfY292ZXJfMmZjMGRhYTA5YTE0ODViNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzl2L2o2LzEwNDgvcGxheWxldF9jb3Zlcl8yZmMwZGFhMDlhMTQ4NWI3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjUsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQwLCJoZWF0VmFsdWUiOjY2ODgsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy40ODJaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC43NjZaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiY44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4OCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6MzA6MzRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjU4OjQ0WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+e6qOe7lOWknOWwiiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/nuqjnu5TlpJzlsIrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwy6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGp3YW5rdXllenVuIiwiZGVzYyI6IiIsImFuY2hvciI6Imppbmd6aGUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvNXEvNDgvMTA0OC9wbGF5bGV0X2NvdmVyXzU3NDE0MjkxMmQwYTkwZTcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS80dS9pbS8xMDQ4L3BsYXlsZXRfY292ZXJfNTc0MTQyOTEyZDBhOTBlNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyNywiaGVhdFZhbHVlIjo0OTMyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTksImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuMDU5WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzAuNjQ2WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/nuqjnu5TlpJzlsIrjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwy6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg3LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzo1NzowN1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDNUMDM6MjE6MDVaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biIIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S4jeiJr+WwkeW5tOeahOWutuW6reaVmeW4iOOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkamJ1bGlhbmdzaGFvbmlhbiIsImRlc2MiOiIiLCJhbmNob3IiOiJzaGlxaSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94OC8wdS8xMDQ4L3BsYXlsZXRfY292ZXJfZTQ5YWQwNGIwYzc5NTlhMy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL282LzlpLzEwNDgvcGxheWxldF9jb3Zlcl9lNDlhZDA0YjBjNzk1OWEzLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEsImhlYXRWYWx1ZSI6MjE2NiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE1LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMyLjIwMVoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjQ3N1oiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4Niwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMDk6MzY6MDlaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDA0OjE0OjA0WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkNHREovL+S8quaBi+eIsee6r+WPmOaAgSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/kvKrmgYvniLHnuq/lj5jmgIHjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6ImNnZGp3ZWlsaWFuYWljaHVuIiwiZGVzYyI6IiIsImFuY2hvciI6Inl1aHVhc2hpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2wxLzF6LzEwNDgvcGxheWxldF9jb3Zlcl82MDgxNDA5MTlhMDY3NTcxLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvem8vY2cvMTA0OC9wbGF5bGV0X2NvdmVyXzYwODE0MDkxOWEwNjc1NzEuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTMsImhlYXRWYWx1ZSI6NTM1NSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMxLjIxWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzAuMjk0WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/kvKrmgYvniLHnuq/lj5jmgIHjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg1LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMDoyNTo1MFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREog5oiR5Zyo5paX572X5byA5ZCO5a6r77yI5YWoMTHpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5oiR5Zyo5paX572X5byA5ZCO5a6r77yI5YWoMTHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwxMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkandvemFpZG91bHVvIiwiZGVzYyI6IueOsOS7o+mdkuW5tOepv+i2iuaWl+e9l+Wkp+mZhu+8jOiniemGkuaegeS5kOWQjuWuq+W+geacjeezu+e7n+OAguWls+S7hui3quiIlOeyl+mVv+iCieajkuWQjuiiq+eMm+eDiOi0r+epv++8jOezu+e7n+WKoOaMgeS4i+mbqueZveWoh+i6r+mrmOa9rui/nui/nu+8jOS7luato+W8j+W8gOWQr+aWl+e9l+WQjuWuq+W+geacjeS5i+i3r+OAgiIsImFuY2hvciI6Ium7hOaenOWumOaWuSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9uOC9pbi8xMDQ4L3BsYXlsZXRfY292ZXJfODBhZTBjNDZhNDI3OWVmNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3E4L3c1LzEwNDgvcGxheWxldF9jb3Zlcl84MGFlMGM0NmE0Mjc5ZWY3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjExLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxLCJoZWF0VmFsdWUiOjM5NTksImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxOCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMC4yMjdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyOS44MjVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOaIkeWcqOaWl+e9l+W8gOWQjuWuq++8iOWFqDEx6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMTHpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODQsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDEwOjQ3OjUzWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiDlrrbml4/np5jkuovvvIjlhagz6ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOWutuaXj+enmOS6i++8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2RqamlhenVtaXNoaSIsImRlc2MiOiLmt7HlpJzpg73luILpnJPombnmmKDnhafnmoTosarlroXph4zvvIzniLbkurLkuI7lubTkuIvnu6flpbPkuYvpl7TpgqPlsYLmmqfmmKfnmoTnlYzpmZDpgJDmuJDmqKHns4rjgILooYDnvJjkuYvlpJbnmoTmg4XmrLLmmpfmtYHmtozliqjvvIznpoHlv4znmoTmuKnlrZjmgoTnhLbmu4vnlJ/jgILnu6flpbPlr7nniLbkurLnmoTkvp3mgYvml6nlt7LotoXotorkuobljZXnuq/nmoTkurLmg4XvvIzniLbkurLkuqblnKjlr4Llr57nmoTlpJzph4zvvIzmsonmurrkuo7lpbnpgqPpnZLmtqnljbTngavng63nmoTmgIDmirHjgILku5bku6znmoTnp5jlr4blnKjmt7HlpJzmgoTnhLblsZXlvIDvvIzmmqfmmKfkuI7muLTmnJvkuqTnu4fmiJDkuIDlvKDml6DlvaLnmoTnvZHvvIzlsIbkuKTkurrntKfntKfoo7nkvY/jgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcWkvMjgvMTA0OC9wbGF5bGV0X2NvdmVyXzVhMjQyNmEyMmRkYTI4ZjcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS94ZS9xcS8xMDQ4L3BsYXlsZXRfY292ZXJfNWEyNDI2YTIyZGRhMjhmNy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxMSwiaGVhdFZhbHVlIjo0NDIxLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTUsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjkuNTExWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjkuNjc3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDlrrbml4/np5jkuovvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4Mywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTA6NTM6NDJaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIEFJ6KeJ6YaS5LmL5ouv5pWR5r2Y6YeR6I6y77yI5YWoNOmbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiBBSeiniemGkuS5i+aLr+aVkea9mOmHkeiOsu+8iOWFqDTpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw06ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2RqYWlqdWV4aW5nIiwiZGVzYyI6IuWkqeaJjeeoi+W6j+WRmOeOi+Wkp+eCru+8jOagvei/m+S6suaJi+WGmeWHuueahEFJ5qih5Z6L44CM5bCP54Ku44CN5omL6YeM44CC5bCP54Ku5b+X5Zyo5Lqy6Lqr5L2T6aqM5Lq657G75Y6f5aeL5oCn5qyy77yM5a6D5oCC5oG/546L5aSn54Ku6LSt5YWl56GF6IO25aiD5aiD77yM5Zyo5LiA5qyh5LiO56GF6IO25aiD5aiD5rex5bqm5o6i57Si5pe277yM546L5aSn54Ku6aqk54S254yd5q2744CC5bCP54Ku5LiO5LyXQUnotoHomZrmjqfliLbnjovlpKfngq7mhI/or4bmtbfvvIzlu7rnq4vmhJ/nn6XlhbHkuqvvvIzluKbnnYDnjovlpKfngq7vvIzku6VBSeiHquS7peS4uuaYr+eahOWlh+iRqemBk+W+t+ingu+8jOeVhea4uOS4h+WNg+eUteW9seS4lueVjO+8jOS9k+mqjOS6uuexu+WOn+Wni+assuacm+OAgiIsImFuY2hvciI6Ium7hOaenOWumOaWuSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9sNC91aS8xMDQ4L3BsYXlsZXRfY292ZXJfZTZkYzJhYTNiYTM2ZDc4Ny5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hmL3RnLzEwNDgvcGxheWxldF9jb3Zlcl9lNmRjMmFhM2JhMzZkNzg3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjQsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjQsImhlYXRWYWx1ZSI6MjI3MiwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjEzLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjI4Ljg2N1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI5LjU0MloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREogQUnop4nphpLkuYvmi6/mlZHmvZjph5HojrLvvIjlhag06ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4Miwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MDA6MjlaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOe8mOS5i+epuu+8iOWFqDPpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog57yY5LmL56m677yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGp5dWFuemhpa29uZyIsImRlc2MiOiLniLbmr43lm6DkuovmlYXnprvkuJblkI7vvIzmmKXml6Xph47mgqDluKbnnYDotrPkuI3lh7rmiLfnmoTlprnlprnnqbnvvIzmkKzliLDnpZbniLbml6flroXlvIDlp4vmlrDnlJ/mtLvjgILku5bkuIDovrnlupTku5jlrrbliqHjgIHnhafmlpnlprnlprnvvIzkuIDovrnkuI7ml6for4blpKnlpbPnm67nkZvjgIHkvp3lqpvlpYjnu6rph43pgKLvvIznhp/mgonnmoTlsI/plYfmuJDmuJDmsrvmhIjkuoblv4PkuK3nmoTkvKTnl5XjgILogIzlhL/ml7bkuKTkurrnmoTnp5jlr4bnuqblrprjgIHlpLHljrvkuYvniannmoTkuIvokL3vvIzku6Xlj4rmnaXliLDmraTlnLDnmoTnnJ/mraPnvJjnlLHvvIzkuZ/lnKjliJ3lpI/pmLPlhYnkuIvmhaLmhaLmta7njrDvvIzmgqDlvIDlp4vmhI/or4bliLDosIHmiY3mmK/mnIDph43opoHnmoTkurrjgILmlYXkuovvvIzlsLHmraTlvIDlp4vjgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvaW8vNWYvMTA0OC9wbGF5bGV0X2NvdmVyXzRiZGYxY2FkYWUyYjcwN2MuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS84by96MC8xMDQ4L3BsYXlsZXRfY292ZXJfNGJkZjFjYWRhZTJiNzA3Yy5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjMzODcsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyOC40MzhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyOS4xNzZaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOe8mOS5i+epuu+8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDgxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMTowNDowOVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREog56We6ZuV77ya6YeN55Sf5LmL5p2o6L+H77yI5YWoM+mbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDnpZ7pm5XvvJrph43nlJ/kuYvmnajov4fvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkanNoZW5kaWFvemhvbmciLCJkZXNjIjoi56m/6LaK6ICF5p2o6L+H5pC65Lmd5Y2B5Lmd5LiW5L+u5LuZ6K6w5b+G5LiO6ZW/55Sf57O757uf6ZmN5Li056We6ZuV5LiW55WM77yM6ZmE6Lqr5LqO5Y2B5YWr5bKB55qE5bCR5bm05p2o6L+H6Lqr5LiK44CC5b+D5oCA5q255b+155qE5byg5a625LyX5Lq65by66KGM6L+95YC656mG5b+15oWI77yM5qyy5a+55YW25Zu+6LCL5LiN6L2o44CC5rSe5oKJ5LiA5YiH55qE5p2o6L+H77yM5Yet5YCf6aG25bCW57O757uf5Yqf5rOV5LiO55m+5LiW5L+u6KGM6ZiF5Y6G77yM5Y+K5pe26LW26LW06Zmp5aKD77yM5oiQ5Yqf5pWR5LiL6Lqr6Zm35Y2x5py655qE56mG5b+15oWIIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3k1L3V1LzEwNDgvcGxheWxldF9jb3Zlcl9mNTAwMGFkNzYyMzVjNTVmLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvZDIvOWMvMTA0OC9wbGF5bGV0X2NvdmVyX2Y1MDAwYWQ3NjIzNWM1NWYuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MTQsImhlYXRWYWx1ZSI6NDU5OCwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjExLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjI2LjgzWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjguODIxWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDnpZ7pm5XvvJrph43nlJ/kuYvmnajov4fvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4MCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MDY6NTNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOaBtumtlOWlkee6pu+8iOWFqDPpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5oG26a2U5aWR57qm77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGplbW9xaXl1ZSIsImRlc2MiOiLlvLHlsI/nmoTlhpLpmanogIXmtJvmganpga3liLDotLXml4/lp5DlprnmrLrlh4zvvIzmgrLmhKTnmoTmg4Xnu6rlvJXmnaXkuobprYXprZTojonojonkuJ3vvIzmtJvmgankuI7prYXprZTnvJTnu5PlpZHnuqbvvIzku6XmgKfniLHmu4vlhbvprYXprZTkuLrku6Pku7fvvIzmjaLlj5blvLrlpKfnmoTmjqfliLbog73lipvvvIzmtJvmganor5Xlm77lr7notLXml4/lp5DlprnlpI3ku4fvvIzkvYblipvph4/ov5zkuI3lpoLotLXml4/lp5DlprnlvLrlpKfvvIzkuo7mmK/mtJvmganlnKjprYXprZTnmoTlvJXlr7zkuIvvvIzpgJDmraXnp6/ntK/lipvph4/jgIIiLCJhbmNob3IiOiLpu4TmnpzlrpjmlrkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2Uvc3YvNHcvMTA0OC9wbGF5bGV0X2NvdmVyXzcxYjU2NDIxYzJlODBmZDkuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS90ci9hai8xMDQ4L3BsYXlsZXRfY292ZXJfNzFiNTY0MjFjMmU4MGZkOS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjM1OTcsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMywiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyNS4zNDhaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyOC40MTdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOaBtumtlOWlkee6pu+8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDc5LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMTowODozM1oiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTU6MDNaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWUdESiDpgJ/pgJropb/muLgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWUdESiDpgJ/pgJropb/muLjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlnZGpzdXRvbmd4aXlvdSIsImRlc2MiOiLlj5bnu4/lj5bliLDnmofluJ3lkI7pmaLkuobvvJ/llJDkuInol4/pgYfkuIrlpbPmlr3kuLvvvIzkuIDlj6XigJzku6XouqvorrjmhL/igJ3vvIznq5/mioroh6rlt7HkuZ/mkK3kuobov5vljrvvvIHov5novrnlnKPlg6fliqjkuoblh6Hlv4PvvIzpgqPovrnnmofluJ3ov5jokpnlnKjpvJPph4zigKbigKYiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS83Ny8xOS8xMDQ4L3BsYXlsZXRfY292ZXJfYWU0OWM5ZjViZTE2NTFhYS5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3VuL2JhLzEwNDgvcGxheWxldF9jb3Zlcl9hZTQ5YzlmNWJlMTY1MWFhLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjAsImhlYXRWYWx1ZSI6MTA5NSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjIwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjIzLjc0N1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI3Ljk5NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWUdESiDpgJ/pgJropb/muLjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDc4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMToxMzo1NFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTU6MDNaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWUdESiDml6fmg4XlpI3nh4MiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWUdESiDml6fmg4XlpI3nh4PjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwy6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlnZGpqaXVxaW5nZnVyYW4iLCJkZXNjIjoi6aOO5rOi5pyq5bmz77yM5pen5oOF5Y+I6LW344CC5LiA5Zy65oSP5aSW6YeN6YCi77yM6K6p5pep5bey5YiG5byA55qE5Lik5Lq65YaN5qyh57qg57yg44CC6L+Z5LiA5qyh77yM5piv5pen54ix5Zue5aS077yM6L+Y5piv6YeN6LmI6KaG6L6Z77yfIiwiYW5jaG9yIjoieWUiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvdGMvZnkvMTA0OC9wbGF5bGV0X2NvdmVyXzkzNWVhZTVkMDIzMjc3OTcuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9iMS8wbS8xMDQ4L3BsYXlsZXRfY292ZXJfOTM1ZWFlNWQwMjMyNzc5Ny5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjoyLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjowLCJoZWF0VmFsdWUiOjQxOTksImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxOCwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyMS45NzdaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNy44NTNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillHREog5pen5oOF5aSN54eD44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysMumbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ3Nywic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTE6MTU6MThaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjU1OjAzWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IllHREog6IiU54uXMuW6lOacieWwveaciSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpZR0RKIOiIlOeLlzLlupTmnInlsL3mnInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InlnZGp0aWFuZ291Mnlpbmd5b3UiLCJkZXNjIjoi6YeO5p6c5Y6f5Yib55+t5Ymn44CK6IiU54uXMuW6lOacieWwveacieOAi1xyXG7moLnmja7okKfmlazohb7mna3lt57mvJTllLHkvJrljZrkuLvosKLku4DkuYjon7nnv7vovabnnJ/lrp7mlLnnvJbvvIHlpbPkuLvog4znnYDogIHlhazkuI7lpIfog47liqDpl7ronJznnIvmvJTllLHkvJrvvIzliY3kuIDmmZrov5jkuI7lpIfog47lnKjluorkuIrljb/ljb/miJHmiJHvvIzlkI7kuIDlpKnlsLHmi5Lnu53kuoblpIfog47nmoTkurLlkLvvvIzovazlpLTkurLlkJHkuobpl7ronJzjgIJcclxu6ICB5YWs55yL5Yiw5LqL5Lu25ZCO5p6c5pat56a75ama77yM5aWz5Li757ud5pyb5omT57uZ5aSH6IOO5rGC5a6J5oWw77yM6LCB55+l5aSH6IOO5bey5ZKM6Ze66Jyc5rua5LiK5bqK44CCXHJcbui/meS4gOasoe+8geWkseWOu+eahOS4gOWIh++8jOS9nOS4uuWkh+iDjueahOaIkeWFqOmDveimgeaLv+Wbnuadpe+8gSIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3JiLzZpLzEwNDgvcGxheWxldF9jb3Zlcl9lNTZkYTIzYzIzZTY1YmJmLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvMm4vNnkvMTA0OC9wbGF5bGV0X2NvdmVyX2U1NmRhMjNjMjNlNjViYmYuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MCwiaGVhdFZhbHVlIjozNTIxLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTksImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjBaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyNy41NTRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAillHREog6IiU54uXMuW6lOacieWwveacieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJ0b3BpY0xpc3QiOltdfSx7ImlkIjoxMTM0MSwic2x1ZyI6ImNob25nY2hvbmdzaG91eWV6aHVhbnRpY2VzaGkiLCJ0aXRsZSI6IuiZq+iZq+mmlumhteS4k+mimOa1i+ivlSIsImRlc2MiOiLomavomavpppbpobXkuJPpopjmtYvor5UiLCJrZXl3b3JkIjpbXSwibGFiZWwiOiIiLCJzdHlsZSI6IkEiLCJjYXJkQmFja2dyb3VuZEltYWdlIjoiIiwibW9kdWxlVHlwZSI6MSwiZGF0YVR5cGUiOjEsInJlY29tbWVuZFR5cGUiOjAsImNhdGVnb3J5SWQiOjAsInJhbmsiOjAsImxpbWl0IjoxMCwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifSwibGlzdCI6W3siaWQiOjE0NTMxLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6dHJ1ZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMS0wNVQwNzoyNjo0Mi4xMDZaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTExLTAzVDA5OjQ1OjQxWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wNFQwMzozNjozMloiLCJ0aGVtZUlkcyI6WzEwMTQxXSwidGhlbWVOYW1lcyI6WyLnp5HlubsiXSwidGhlbWVTbHVncyI6WyJrZWh1YW4iXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWURIR0RKIOWFlOWtkOWSjOWTpeWTpeWFseaEn+S6hiIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiIiLCJzbHVnIjoieWRoZ2RqdHV6aWhlIiwiZGVzYyI6IiIsImFuY2hvciI6IuacgOWFqOeJh+W6kyIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9wNy9jeC8xMDUyL3BsYXlsZXRfY292ZXJfNzMyMDZlNTYzMzI1YzcwMy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzJ1LzZ4LzEwNTIvcGxheWxldF9jb3Zlcl83MzIwNmU1NjMzMjVjNzAzLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOltdLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoyLCJoZWF0VmFsdWUiOjE1MDIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxMiwiY3JlYXRlZEF0IjoiMjAyNi0xMS0wNFQwODoyMzoxNi4wODVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoxNC40NDVaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpbXSwiZGVzY3JpcHRpb24iOiIifX0seyJpZCI6MTQ0OTAsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI4VDA2OjM4OjM4WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0yOFQxMjoxNjo1NFoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJIRERKIOWupOWPi+eahOWFseS6q+Wls+WPiyIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpIRERKIOWupOWPi+eahOWFseS6q+Wls+WPi+OAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDjpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoic2hpeW91ZGVnb25neGlhbmdudXlvdSIsImRlc2MiOiJBeW/nlLfmgKflkJHlsIHlsbHkuYvkvZwiLCJhbmNob3IiOiJ5ZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xcS9ncy8xMDQ4L3BsYXlsZXRfY292ZXJfZDQ2M2Y2YTQ0ODk4ZjAxMi5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3I3L3N1LzEwNDgvcGxheWxldF9jb3Zlcl9kNDYzZjZhNDQ4OThmMDEyLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjgsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjc4LCJoZWF0VmFsdWUiOjEyNDM0LCJjb3VudENvbGxlY3QiOjEsImNvdW50TGlrZSI6MjEsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzMuODVaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC45MjNaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5a6k5Y+L55qE5YWx5Lqr5aWz5Y+L44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysOOmbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4OSwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjhUMDY6NDQ6MDRaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTExLTAyVDA4OjQ2OjI2WiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IkhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiYIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikhEREog5oiR55qE5aa55aa55piv6aOO5L+X5aiY44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysNembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ3b2RlbWVpbWVpc2hpZmVuZ3N1bmlhbmciLCJkZXNjIjoi6Lqr5Li65q2m6YGT6auY5omL55qE5aa55aa577yM5piv5Lil6IKD5Yi25q2i5ZOl5ZOl55yLQeeJh+eahO+8jOS9hua9nOWcqOi6q+S7veWNtOaYr+mjjuS/l+W6l+mHjOeahOWktOeJjOWnkeWomO+8gSIsImFuY2hvciI6InllIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3loL3RtLzEwNDgvcGxheWxldF9jb3Zlcl8yZmMwZGFhMDlhMTQ4NWI3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvOXYvajYvMTA0OC9wbGF5bGV0X2NvdmVyXzJmYzBkYWEwOWExNDg1YjcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NSwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NDAsImhlYXRWYWx1ZSI6NjY4OCwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE0LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMzLjQ4MloiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjMwLjc2NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKSERESiDmiJHnmoTlprnlprnmmK/po47kv5flqJjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw16ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg4LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwMzozMDozNFoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMjlUMDM6NTg6NDRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v57qo57uU5aSc5bCKIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkandhbmt1eWV6dW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoiamluZ3poZSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS81cS80OC8xMDQ4L3BsYXlsZXRfY292ZXJfNTc0MTQyOTEyZDBhOTBlNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzR1L2ltLzEwNDgvcGxheWxldF9jb3Zlcl81NzQxNDI5MTJkMGE5MGU3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjIsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjI3LCJoZWF0VmFsdWUiOjQ5MzIsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxOSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjozMy4wNTlaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC42NDZaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+e6qOe7lOWknOWwiuOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDLpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODcsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDAzOjU3OjA3WiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMS0wM1QwMzoyMTowNVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIgiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKQ0dESi8v5LiN6Imv5bCR5bm055qE5a625bqt5pWZ5biI44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJjZ2RqYnVsaWFuZ3NoYW9uaWFuIiwiZGVzYyI6IiIsImFuY2hvciI6InNoaXFpIiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3g4LzB1LzEwNDgvcGxheWxldF9jb3Zlcl9lNDlhZDA0YjBjNzk1OWEzLmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbzYvOWkvMTA0OC9wbGF5bGV0X2NvdmVyX2U0OWFkMDRiMGM3OTU5YTMuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MywidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6MSwiaGVhdFZhbHVlIjoyMTY2LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTUsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzIuMjAxWiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MzAuNDc3WiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpDR0RKLy/kuI3oia/lsJHlubTnmoTlrrbluq3mlZnluIjjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDg2LCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQwOTozNjowOVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTEtMDJUMDQ6MTQ6MDRaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiQ0dESi8v5Lyq5oGL54ix57qv5Y+Y5oCBIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S8quaBi+eIsee6r+WPmOaAgeOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoiY2dkandlaWxpYW5haWNodW4iLCJkZXNjIjoiIiwiYW5jaG9yIjoieXVodWFzaGkiLCJjb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvbDEvMXovMTA0OC9wbGF5bGV0X2NvdmVyXzYwODE0MDkxOWEwNjc1NzEuanBnIiwiaG9yaXpvbnRhbENvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS96by9jZy8xMDQ4L3BsYXlsZXRfY292ZXJfNjA4MTQwOTE5YTA2NzU3MS5qcGciLCJwcmV2aWV3IjoiIiwidGFnSWRzIjpudWxsLCJ0YWdOYW1lcyI6W10sInRhZ1NsdWdzIjpbXSwidG90YWxFcGlzb2RlIjozLCJ1cGRhdGVTdGF0dXMiOjEsImNvdW50QnJvd3NlIjoxMywiaGVhdFZhbHVlIjo1MzU1LCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTQsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MzEuMjFaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDozMC4yOTRaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAikNHREovL+S8quaBi+eIsee6r+WPmOaAgeOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX0seyJpZCI6MTQ0ODUsInN0YXR1cyI6MSwiaXNGZWF0dXJlZCI6ZmFsc2UsImlzT3JpZ2luYWwiOmZhbHNlLCJzaG93T3JpZ2luYWwiOmZhbHNlLCJpc1JlY29tbWVuZCI6ZmFsc2UsImlzTmV3IjpmYWxzZSwib3BlcmF0ZVR5cGUiOjEsInNob3dPbkJhbm5lciI6ZmFsc2UsImJhbm5lciI6IiIsIm1vYmlsZUJhbm5lciI6IiIsIm9ubGluZUF0IjoiMjAyNi0xMC0zMVQwNzoyMjo1Mi40MjFaIiwibWVkaWFDcmVhdGVkQXQiOiIyMDI2LTEwLTI5VDEwOjI1OjUwWiIsIm1lZGlhVXBkYXRlZEF0IjoiMjAyNi0xMC0zMFQwODo1Mzo1MVoiLCJ0aGVtZUlkcyI6bnVsbCwidGhlbWVOYW1lcyI6W10sInRoZW1lU2x1Z3MiOltdLCJjYXRlZ29yeUlkcyI6WzExMzQxLDEwNjYxLDEwMDgxXSwidGl0bGUiOiJYSEdESiDmiJHlnKjmlpfnvZflvIDlkI7lrqvvvIjlhagxMembhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDmiJHlnKjmlpfnvZflvIDlkI7lrqvvvIjlhagxMembhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDEx6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIiwic2x1ZyI6InhoZ2Rqd296YWlkb3VsdW8iLCJkZXNjIjoi546w5Luj6Z2S5bm056m/6LaK5paX572X5aSn6ZmG77yM6KeJ6YaS5p6B5LmQ5ZCO5a6r5b6B5pyN57O757uf44CC5aWz5LuG6Leq6IiU57KX6ZW/6IKJ5qOS5ZCO6KKr54yb54OI6LSv56m/77yM57O757uf5Yqg5oyB5LiL6Zuq55m95aiH6Lqv6auY5r2u6L+e6L+e77yM5LuW5q2j5byP5byA5ZCv5paX572X5ZCO5a6r5b6B5pyN5LmL6Lev44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL244L2luLzEwNDgvcGxheWxldF9jb3Zlcl84MGFlMGM0NmE0Mjc5ZWY3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UvcTgvdzUvMTA0OC9wbGF5bGV0X2NvdmVyXzgwYWUwYzQ2YTQyNzllZjcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6MTEsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjEsImhlYXRWYWx1ZSI6Mzk1OSwiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjE4LCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjMwLjIyN1oiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI5LjgyNVoiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5oiR5Zyo5paX572X5byA5ZCO5a6r77yI5YWoMTHpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwxMembhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiJ9fSx7ImlkIjoxNDQ4NCwic3RhdHVzIjoxLCJpc0ZlYXR1cmVkIjpmYWxzZSwiaXNPcmlnaW5hbCI6ZmFsc2UsInNob3dPcmlnaW5hbCI6ZmFsc2UsImlzUmVjb21tZW5kIjpmYWxzZSwiaXNOZXciOmZhbHNlLCJvcGVyYXRlVHlwZSI6MSwic2hvd09uQmFubmVyIjpmYWxzZSwiYmFubmVyIjoiIiwibW9iaWxlQmFubmVyIjoiIiwib25saW5lQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjUyLjQyMVoiLCJtZWRpYUNyZWF0ZWRBdCI6IjIwMjYtMTAtMjlUMTA6NDc6NTNaIiwibWVkaWFVcGRhdGVkQXQiOiIyMDI2LTEwLTMwVDA4OjUzOjUxWiIsInRoZW1lSWRzIjpudWxsLCJ0aGVtZU5hbWVzIjpbXSwidGhlbWVTbHVncyI6W10sImNhdGVnb3J5SWRzIjpbMTEzNDEsMTA2NjEsMTAwODFdLCJ0aXRsZSI6IlhIR0RKIOWutuaXj+enmOS6i++8iOWFqDPpm4bvvIkiLCJwbGF5TmFtZSI6IiIsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog5a625peP56eY5LqL77yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGpqaWF6dW1pc2hpIiwiZGVzYyI6Iua3seWknOmDveW4gumck+iZueaYoOeFp+eahOixquWuhemHjO+8jOeItuS6suS4juW5tOS4i+e7p+Wls+S5i+mXtOmCo+Wxguaap+aYp+eahOeVjOmZkOmAkOa4kOaooeeziuOAguihgOe8mOS5i+WklueahOaDheassuaal+a1gea2jOWKqO+8jOemgeW/jOeahOa4qeWtmOaChOeEtua7i+eUn+OAgue7p+Wls+WvueeItuS6sueahOS+neaBi+aXqeW3sui2hei2iuS6huWNlee6r+eahOS6suaDhe+8jOeItuS6suS6puWcqOWvguWvnueahOWknOmHjO+8jOayiea6uuS6juWluemCo+mdkua2qeWNtOeBq+eDreeahOaAgOaKseOAguS7luS7rOeahOenmOWvhuWcqOa3seWknOaChOeEtuWxleW8gO+8jOaap+aYp+S4jua4tOacm+S6pOe7h+aIkOS4gOW8oOaXoOW9oueahOe9ke+8jOWwhuS4pOS6uue0p+e0p+ijueS9j+OAgiIsImFuY2hvciI6Ium7hOaenOWumOaWuSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9xaS8yOC8xMDQ4L3BsYXlsZXRfY292ZXJfNWEyNDI2YTIyZGRhMjhmNy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL3hlL3FxLzEwNDgvcGxheWxldF9jb3Zlcl81YTI0MjZhMjJkZGEyOGY3LmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjExLCJoZWF0VmFsdWUiOjQ0MjEsImNvdW50Q29sbGVjdCI6MCwiY291bnRMaWtlIjoxNSwiY3JlYXRlZEF0IjoiMjAyNi0xMC0zMVQwNzoyMjoyOS41MTFaIiwidXBkYXRlZEF0IjoiMjAyNi0xMS0wNVQxNzowMDoyOS42NzdaIiwic2VvSW5mbyI6eyJ0aXRsZSI6IiIsImtleXdvcmxkIjpudWxsLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIOWutuaXj+enmOS6i++8iOWFqDPpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKwz6ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDgzLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMDo1Mzo0MloiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREogQUnop4nphpLkuYvmi6/mlZHmvZjph5HojrLvvIjlhag06ZuG77yJIiwicGxheU5hbWUiOiIiLCJkZXNjcmlwdGlvbiI6Ium7hOixhuefreWJp+OAilhIR0RKIEFJ6KeJ6YaS5LmL5ouv5pWR5r2Y6YeR6I6y77yI5YWoNOmbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDTpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIiLCJzbHVnIjoieGhnZGphaWp1ZXhpbmciLCJkZXNjIjoi5aSp5omN56iL5bqP5ZGY546L5aSn54Ku77yM5qC96L+b5Lqy5omL5YaZ5Ye655qEQUnmqKHlnovjgIzlsI/ngq7jgI3miYvph4zjgILlsI/ngq7lv5flnKjkurLouqvkvZPpqozkurrnsbvljp/lp4vmgKfmrLLvvIzlroPmgILmgb/njovlpKfngq7otK3lhaXnoYXog7blqIPlqIPvvIzlnKjkuIDmrKHkuI7noYXog7blqIPlqIPmt7HluqbmjqLntKLml7bvvIznjovlpKfngq7pqqTnhLbnjJ3mrbvjgILlsI/ngq7kuI7kvJdBSei2geiZmuaOp+WItueOi+Wkp+eCruaEj+ivhua1t++8jOW7uueri+aEn+efpeWFseS6q++8jOW4puedgOeOi+Wkp+eCru+8jOS7pUFJ6Ieq5Lul5Li65piv55qE5aWH6JGp6YGT5b636KeC77yM55WF5ri45LiH5Y2D55S15b2x5LiW55WM77yM5L2T6aqM5Lq657G75Y6f5aeL5qyy5pyb44CCIiwiYW5jaG9yIjoi6buE5p6c5a6Y5pa5IiwiY292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlL2w0L3VpLzEwNDgvcGxheWxldF9jb3Zlcl9lNmRjMmFhM2JhMzZkNzg3LmpwZyIsImhvcml6b250YWxDb3ZlciI6Imh0dHBzOi8vZDNuOHF4NHJ2eTR2b2wuY2xvdWRmcm9udC5uZXQvdjMvaW1hZ2UveGYvdGcvMTA0OC9wbGF5bGV0X2NvdmVyX2U2ZGMyYWEzYmEzNmQ3ODcuanBnIiwicHJldmlldyI6IiIsInRhZ0lkcyI6bnVsbCwidGFnTmFtZXMiOltdLCJ0YWdTbHVncyI6W10sInRvdGFsRXBpc29kZSI6NCwidXBkYXRlU3RhdHVzIjoxLCJjb3VudEJyb3dzZSI6NCwiaGVhdFZhbHVlIjoyMjcyLCJjb3VudENvbGxlY3QiOjAsImNvdW50TGlrZSI6MTMsImNyZWF0ZWRBdCI6IjIwMjYtMTAtMzFUMDc6MjI6MjguODY3WiIsInVwZGF0ZWRBdCI6IjIwMjYtMTEtMDVUMTc6MDA6MjkuNTQyWiIsInNlb0luZm8iOnsidGl0bGUiOiIiLCJrZXl3b3JsZCI6bnVsbCwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiBBSeiniemGkuS5i+aLr+aVkea9mOmHkeiOsu+8iOWFqDTpm4bvvInjgIvlhajpm4blnKjnur/op4LnnIvvvIzlt7Lmm7TmlrDoh7PnrKw06ZuG77yM5YWN6LS56auY5riF5oyB57ut5pu05paw44CCIn19LHsiaWQiOjE0NDgyLCJzdGF0dXMiOjEsImlzRmVhdHVyZWQiOmZhbHNlLCJpc09yaWdpbmFsIjpmYWxzZSwic2hvd09yaWdpbmFsIjpmYWxzZSwiaXNSZWNvbW1lbmQiOmZhbHNlLCJpc05ldyI6ZmFsc2UsIm9wZXJhdGVUeXBlIjoxLCJzaG93T25CYW5uZXIiOmZhbHNlLCJiYW5uZXIiOiIiLCJtb2JpbGVCYW5uZXIiOiIiLCJvbmxpbmVBdCI6IjIwMjYtMTAtMzFUMDc6MjI6NTIuNDIxWiIsIm1lZGlhQ3JlYXRlZEF0IjoiMjAyNi0xMC0yOVQxMTowMDoyOVoiLCJtZWRpYVVwZGF0ZWRBdCI6IjIwMjYtMTAtMzBUMDg6NTM6NTFaIiwidGhlbWVJZHMiOm51bGwsInRoZW1lTmFtZXMiOltdLCJ0aGVtZVNsdWdzIjpbXSwiY2F0ZWdvcnlJZHMiOlsxMTM0MSwxMDY2MSwxMDA4MV0sInRpdGxlIjoiWEhHREog57yY5LmL56m677yI5YWoM+mbhu+8iSIsInBsYXlOYW1lIjoiIiwiZGVzY3JpcHRpb24iOiLpu4TosYbnn63liafjgIpYSEdESiDnvJjkuYvnqbrvvIjlhagz6ZuG77yJ44CL5YWo6ZuG5Zyo57q/6KeC55yL77yM5bey5pu05paw6Iez56ysM+mbhu+8jOWFjei0uemrmOa4heaMgee7reabtOaWsOOAgiIsInNsdWciOiJ4aGdkanl1YW56aGlrb25nIiwiZGVzYyI6IueItuavjeWboOS6i+aVheemu+S4luWQju+8jOaYpeaXpemHjuaCoOW4puedgOi2s+S4jeWHuuaIt+eahOWmueWmueepue+8jOaQrOWIsOellueItuaXp+WuheW8gOWni+aWsOeUn+a0u+OAguS7luS4gOi+ueW6lOS7mOWutuWKoeOAgeeFp+aWmeWmueWmue+8jOS4gOi+ueS4juaXp+ivhuWkqeWls+ebrueRm+OAgeS+neWqm+WliOe7qumHjemAou+8jOeGn+aCieeahOWwj+mVh+a4kOa4kOayu+aEiOS6huW/g+S4reeahOS8pOeXleOAguiAjOWEv+aXtuS4pOS6uueahOenmOWvhue6puWumuOAgeWkseWOu+S5i+eJqeeahOS4i+iQve+8jOS7peWPiuadpeWIsOatpOWcsOeahOecn+ato+e8mOeUse+8jOS5n+WcqOWIneWkj+mYs+WFieS4i+aFouaFoua1rueOsO+8jOaCoOW8gOWni+aEj+ivhuWIsOiwgeaJjeaYr+acgOmHjeimgeeahOS6uuOAguaVheS6i++8jOWwseatpOW8gOWni+OAgiIsImFuY2hvciI6Ium7hOaenOWumOaWuSIsImNvdmVyIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC92My9pbWFnZS9pby81Zi8xMDQ4L3BsYXlsZXRfY292ZXJfNGJkZjFjYWRhZTJiNzA3Yy5qcGciLCJob3Jpem9udGFsQ292ZXIiOiJodHRwczovL2QzbjhxeDRydnk0dm9sLmNsb3VkZnJvbnQubmV0L3YzL2ltYWdlLzhvL3owLzEwNDgvcGxheWxldF9jb3Zlcl80YmRmMWNhZGFlMmI3MDdjLmpwZyIsInByZXZpZXciOiIiLCJ0YWdJZHMiOm51bGwsInRhZ05hbWVzIjpbXSwidGFnU2x1Z3MiOltdLCJ0b3RhbEVwaXNvZGUiOjMsInVwZGF0ZVN0YXR1cyI6MSwiY291bnRCcm93c2UiOjAsImhlYXRWYWx1ZSI6MzM4NywiY291bnRDb2xsZWN0IjowLCJjb3VudExpa2UiOjEwLCJjcmVhdGVkQXQiOiIyMDI2LTEwLTMxVDA3OjIyOjI4LjQzOFoiLCJ1cGRhdGVkQXQiOiIyMDI2LTExLTA1VDE3OjAwOjI5LjE3NloiLCJzZW9JbmZvIjp7InRpdGxlIjoiIiwia2V5d29ybGQiOm51bGwsImRlc2NyaXB0aW9uIjoi6buE6LGG55+t5Ymn44CKWEhHREog57yY5LmL56m677yI5YWoM+mbhu+8ieOAi+WFqOmbhuWcqOe6v+ingueci++8jOW3suabtOaWsOiHs+esrDPpm4bvvIzlhY3otLnpq5jmuIXmjIHnu63mm7TmlrDjgIIifX1dLCJ0b3BpY0xpc3QiOltdfV0sImFubm91bmNlbWVudHMiOlt7ImlkIjoxMDAwMSwidGl0bGUiOiLot5Hpqaznga8iLCJjb250ZW50Ijoi8J+Mn+OAkOa1t+mHj+efreWJpyDml6Xml6Xmm7TmlrDjgJHpu4Tmnpzljp/liJtBSeaIkOS6uuefreWJp/CflKXmr4/lpKkxOTozMOWHhuaXtuabtOaWsPCfkqXmnIDmlrDpu4Tmnpzni6zlrrbljp/liJvnn63liafmjIHnu63kuIrnur/wn4yf6buE5p6c5Ye65ZOBIOW/heWxnueyvuWTgfCflKUifV0sImFkdml0aXNlIjp7ImhvbWVMaXN0IjpudWxsLCJkZXRhaWxUb3BMaXN0IjpudWxsLCJuaW5lR3JpZExpc3QiOm51bGwsInBvc3RMaXN0IjpudWxsLCJkZXRhaWxiYW5uZXJMaXN0IjpudWxsLCJsYXVuY2hTY3JlZW5MaXN0IjpudWxsLCJmbG9hdGluZ0xpc3QiOm51bGwsIkFMaXN0IjpudWxsLCJCTGlzdCI6bnVsbCwiZGlhbG9nTGlzdCI6bnVsbCwiYm90dG9tQmFubmVyIjpudWxsLCJ2aWRlb0luZm9MaXN0IjpudWxsLCJkb3duTGlzdCI6bnVsbCwiZnJpZW5kTGlzdCI6bnVsbCwidGl0bGVMaXN0IjpudWxsLCJwbGF5TGlzdCI6bnVsbCwicGF1c2V5TGlzdCI6bnVsbH0sInNlb0luZm8iOnsidGl0bGUiOiI5MeefreWJp+a1i+ivle+9nOWUr+S4gOWumOaWueermSDmnIDmlrDlpKfnpZ7op4bpopHlkIjpm4blhY3otLnnnIsiLCJrZXl3b3JkcyI6WyLlj7DljJflqJzlqJzlhajpm4YiLCLpurvosYbkvKDlqpLlrpjmlrkiLCLpurvosYbljp/liJtBViIsIum6u+ixhuWFjei0ueeciyIsIum6u+ixhuinhumikeWcqOe6v+ingueciyIsIum6u+ixhuS8oOWqkiIsIum6u+ixhueyvumAiUFW54mHIiwiOTHop4bpopEiLCLlpKnnvo7kvKDlqpIiLCLnmoflrrbljY7kuroiLCI5MeWItueJh+WOgiIsIuWPsOWMl+WonOWonOacgOaWsOS9nOWTgSIsIua1t+inkuekvuWMuuS5seS8puinhumikSIsIum6u+ixhuS8oOWqkuaYoOWDjyIsIuWFjei0ueWbveS6p0FW6KeG6aKR5Zyo57q/55yLIiwi5pel5pysQVbop4bpopHlnKjnur/lhY3otLnnnIsiLCI5MeinhumikSIsIjkx5aSn56We5pyA5paw5L2c5ZOBIiwiOTHlpKfnpZ7op4bpopHop4LnnIvlnLDlnYAiXSwiZGVzY3JpcHRpb24iOiI5MeefreWJp+acgOaWsOWbveS6p0FW5YWN6LS56KeC55yL77yB5q+P5pel5pu05paw44CB5aSp576O44CB6Jyc5qGD44CB6bq76LGG5Lyg5aqS44CBOTHliLbniYfljoLml6Dlub/lkYrlubLmibDvvIEiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tIn19LCJoYXNoIjpmYWxzZSwibXNnIjoic3VjY2VzcyIsInRpbWUiOiIyMDI2LTExLTA1VDE3OjA1OjA1LjI5MFoiLCJ0aXAiOiLmiJDlip8ifQ==","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/playlet/home"},"revalidate":60,"tags":["playlet-home"]} \ No newline at end of file diff --git a/.next-dev/dev/cache/fetch-cache/d7d2c8e7ae1362770519255ba563d4815c75a3db24ed5c167e252e4c9cb9dd64 b/.next-dev/dev/cache/fetch-cache/d7d2c8e7ae1362770519255ba563d4815c75a3db24ed5c167e252e4c9cb9dd64 index 157d4b0..842b744 100644 --- a/.next-dev/dev/cache/fetch-cache/d7d2c8e7ae1362770519255ba563d4815c75a3db24ed5c167e252e4c9cb9dd64 +++ b/.next-dev/dev/cache/fetch-cache/d7d2c8e7ae1362770519255ba563d4815c75a3db24ed5c167e252e4c9cb9dd64 @@ -1 +1 @@ -{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55cd95dcd648585-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 15:21:35 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=y4LJxjDjVAWW1%2BA%2FPCRrItI5Osu%2Bc5omL9fz3LANhrz6ixV9n0HwWcMXw8gHEh%2B%2BN8tvk%2FT9DHTgAS35vKueUOPxr4j%2BzWX%2FHpLHuKH4OkUuiCgpJTbyF%2BcdZ7MnXwVcCl3Z6oJM\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsibmV3QWRkcmVzc0luZm8iOnsibmV3VXJsQWRkciI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMS5jb20iLCJuZXdVcmxBZGRyMSI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMy5jb20iLCJuZXdVcmxBZGRyMiI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtNC5jb20iLCJmb3JldmVyVXJsQWRkciI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMC5jb20iLCJnbWFpbEFkZHIiOiI5MXNwZ2ZAZ21haWwuY29tIiwidGdHcm91cCI6Imh0dHBzOi8vdC5tZS9mdWxpcXVuXzkxc3AiLCJ0ZWxlZ3JhbSI6Imh0dHBzOi8vdDF0MS5jb20iLCJjdXN0b21lclNlcnZpY2VIb3N0IjoiaHR0cHM6Ly9rZWZ1aDUuNmxjNTNoLmNvbSIsInR3aXR0ZXJBZGRyIjoiaHR0cHM6Ly94LmNvbS8iLCJwZGZBZGRyIjoiaHR0cHM6Ly9tZGhqYi5jb20iLCJhcHBBZGRyIjoiaHR0cHM6Ly9kbHd1MXp3M2Vxd3gwLmNsb3VkZnJvbnQubmV0Lz9kYz05MXNwIiwib2ZmaWNpYWxBcHBBZGRyIjoiaHR0cHM6Ly9odWFuZ2d1by5jb20ifSwiY29uZmlnIjp7InBkZkFkZHIiOiJodHRwczovL21kaGpiLmNvbSIsIm5ld1VybEFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTEuY29tIiwibmV3VXJsQWRkcjEiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTMuY29tIiwibmV3VXJsQWRkcjIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTQuY29tIiwiZm9yZXZlclVybEFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTAuY29tIiwiZ21haWxBZGRyIjoiOTFzcGdmQGdtYWlsLmNvbSIsImFwcEFkZHIiOiJodHRwczovL2Rsd3UxenczZXF3eDAuY2xvdWRmcm9udC5uZXQvP2RjPTkxc3AiLCJvZmZpY2lhbEFwcEFkZHIiOiJodHRwczovL2h1YW5nZ3VvLmNvbSIsIndlaUNoYXJ0IjoiaHR0cHM6Ly90MXQxLmNvbSIsInFxIjoiIiwidGdHcm91cCI6Imh0dHBzOi8vdC5tZS9mdWxpcXVuXzkxc3AiLCJwb3Rhb0dyb3VwIjoiaHR0cHM6Ly94enZmdW4uY29tL2FwcGxpY2F0aW9uLz9kYz1oZ2RqdyIsImdpdEFkZHIiOiJodHRwczovL2dpdGxhYi5jb20vbWFkb3VnZi85MXNwei5jb20vIiwidHdpdHRlckFkZHIiOiJodHRwczovL3guY29tLyIsInRlbGVncmFtIjoiaHR0cHM6Ly90MXQxLmNvbSIsInRlbGVncmFtQWRkIjoiaHR0cHM6Ly90Lm1lL2d1YW5mYW5nX0dNIiwidHJhbnNsYXRpb25BZGRyIjoiaHR0cHM6Ly9kZGhwMS5jYy8/ZGM9OTFzcCIsImltZ0NkbiI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi8iLCJ0c0NkbiI6Imh0dHBzOi8vZWIyOTBkYzM4MzViMmQ3Ny5jZG4uamlhc2h1bGUuY29tLyIsImltZ0FwcFVzQ2RuIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC8iLCJtZWRpYUFwcFVzQ2RuIjoiaHR0cHM6Ly9keXVtNTNocmU0M25qLmNsb3VkZnJvbnQubmV0LyIsIndlYlRpdGxlIjoiOTHnn63liafmtYvor5XvvZzllK/kuIDlrpjmlrnnq5kg5pyA5paw5aSn56We6KeG6aKR5ZCI6ZuG5YWN6LS555yLIiwid2ViS2V5d29ybGQiOlsi5Y+w5YyX5aic5aic5YWo6ZuGIiwi6bq76LGG5Lyg5aqS5a6Y5pa5Iiwi6bq76LGG5Y6f5YibQVYiLCLpurvosYblhY3otLnnnIsiLCLpurvosYbop4bpopHlnKjnur/op4LnnIsiLCLpurvosYbkvKDlqpIiLCLpurvosYbnsr7pgIlBVueJhyIsIjkx6KeG6aKRIiwi5aSp576O5Lyg5aqSIiwi55qH5a625Y2O5Lq6IiwiOTHliLbniYfljoIiLCLlj7DljJflqJzlqJzmnIDmlrDkvZzlk4EiLCLmtbfop5LnpL7ljLrkubHkvKbop4bpopEiLCLpurvosYbkvKDlqpLmmKDlg48iLCLlhY3otLnlm73kuqdBVuinhumikeWcqOe6v+eciyIsIuaXpeacrEFW6KeG6aKR5Zyo57q/5YWN6LS555yLIiwiOTHop4bpopEiLCI5MeWkp+elnuacgOaWsOS9nOWTgSIsIjkx5aSn56We6KeG6aKR6KeC55yL5Zyw5Z2AIl0sIndlYkRlc2NyaXB0aW9uIjoiOTHnn63liafmnIDmlrDlm73kuqdBVuWFjei0ueingueci++8geavj+aXpeabtOaWsOOAgeWkqee+juOAgeicnOahg+OAgem6u+ixhuS8oOWqkuOAgTkx5Yi254mH5Y6C5peg5bm/5ZGK5bmy5omw77yBIiwid2ViU2l0ZU5hbWUiOiI5MeefreWJpyIsIndlYkFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20iLCJkaE5ld1VybEFkZHIxIjoid3d3LmJhaWR1LmNvbSIsImRoTmV3VXJsQWRkcjIiOiJ3d3cuNDM5OS5jb20iLCJkaE5ld1VybEFkZHIzIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG03Ny5jb20iLCJmcmVlVlBOIjoiaHR0cHM6Ly9wcm90b252cG4uY29tIiwidXNlSW5nQWRkcmVzcyI6WyJodHRwczovL2QzN283anJuOXk2dnMyLmNsb3VkZnJvbnQubmV0LyIsImh0dHBzOi8vZDJuOGQwZHZnZjRqcm4uY2xvdWRmcm9udC5uZXQvIiwiaHR0cHM6Ly9kM292ZXlvNHBxbmV6Mi5jbG91ZGZyb250Lm5ldC8iLCJodHRwczovL21hZG91LmNvbSIsImh0dHBzOi8vZDFvZDlqdjB0YTVmcjEuY2xvdWRmcm9udC5uZXQvIiwiaHR0cHM6Ly9kMXZjNm9vYzBsdjM1NC5jbG91ZGZyb250Lm5ldC8iLCJodHRwczovL2QxaWppcmx0dGt4ejBnLmNsb3VkZnJvbnQubmV0LyJdLCJhZHZpdGllc1RvcGljTnVtIjoyLCJkaFRpdGxlIjoi6buE6LGG5rWL6K+VICDnn63liacgLSDlrpjmlrnllK/kuIDlr7zoiKrlhaXlj6MgXHUwMDI2IOWunuaXtuWcsOWdgOabtOaWsCIsImRoS2V5d29ybGQiOlsi6bq76LGGIiwi5Zu95LqnQVYiLCLml6XmnKxBViIsIum6u+ixhuinhumikSIsIue9kem7hOWkp+elnuinhumikeS9nOWTgSIsIum6u+ixhuS8oOWqkiIsIuaIkOS6uuWKqOa8qyIsIuaIkOS6ukFW6KeG6aKRIl0sImRoRGVzY3JpcHRpb24iOiLmrKLov47orr/pl67pu4TosYbmtYvor5XllK/kuIDlrpjmlrnlr7zoiKrpobXjgILmnKznq5nlrp7ml7bmm7TmlrDmnIDmlrDorr/pl67lhaXlj6PkuI7ot7PovazlnLDlnYDvvIznoa7kv53pk77mjqXlronlhajmnInmlYjjgILkuLrmgqjmj5Dkvpvpq5jmuIXjgIHml6DljaHpob/nmoTmtYHnlYXop4LlvbHkvZPpqozvvIzlkYrliKvlpLHmlYjpk77mjqXvvIzlrpjmlrnlk4HotKjkv53pmpzjgIIiLCJkaFNpdGVOYW1lIjoiOTHnn63liafmtYvor5Xlr7zoiKrnq5kgfCDlrpjmlrnmnIDmlrDlhaXlj6PngrnmraTov5vlhaUiLCJhY3RyZXNzQmFja0dyb3VuZCI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi92My9pbWFnZS9sZC9jNS85LyVFOCU4MyU4QyVFNiU5OSVBRiUyMCUyODElMjkuanBnIiwicmVwb3J0U2RrQ29uZmlnIjoieUlXc2w2RUlmZmFGcGVtSmRYNXIzeTFrN0hqdXBBWUlFNkNDaEZGY0J6cjZzWjIzL1YrRkQ5cEtuMDZMMVRtZGxKZnI4cTQ5cFl2VXNVWll6Rk9wTVI0K0ZkS3lVY3A2RW15V3RoS3F2R0tTWndXd0ZjaXc1S0xXcldUcGtYU1BsK01BOS9EVjRuU3ZqeGVtUStoSjkyT3RQVVZ3YWJXNnFsbmRISnBTdFJqMDZ5TTM5RjVaVlNsZTFqdFF1cmIvRElRWTB5MUROOGxTblFycllxcnAvV3BpYTFlREZ2QXpSWXI4UTVOTDJNd1hWTTJlQm51U1J5ODYvRXBzRlFoZUZOVGx1QXdCU3h0VWhreTJrRXdmcDB4czlyQjBnMjMycG5GdE5lQkZ0Z002U2d3VjczT1M5V1NoOWU4Y3JEeTYwejNRSGNwS0tMcFpjTVMxdVJGSkFUZ2U5eDNiQmROcTN2TGZtWHlVRjdlR25QL0JHWFRZVVI4N05xME0xZ2l2aFhkYURRaS9oSjlVRncxaDJMQzM4MEQ2UG51ZGtDNmpmdFlkZUNGNWxQVkNUVFRQaGRjalh4aXpPcE5UUXBBWW5vMUg2OXhsYmtkS2s2QUl1OURRUnFwVWl3R2VpaU9vL0NHZmh1MlU1bnRGMHhWWjU2YWp0R0ZTcE5kZEJhZ1RncGwweFNjQk1nZUZudXJLeUczcGZtbU8vYWw3RjJ4R1hXbFN2ZVRSajF0dXJnOU9KZHhnbFZZQW9EdDNoMlorZm5lc290a1B4Z0NvK0piSm5ldFlORnZ0VjlDbE9VL0tvOXptU3lockt6b3NxWVpxY29wOWwwUFB2Z2J1STgvUGs4NW1iMWd5QzNzU2hyU1NHYTVuYkx4Y2MvbktxZFRYZkR1WFFhbjFCY3VSdEdFbk9Id1NHRUE0dmdPVjlSVzk2QXpGcTdaOTd1VVJtOHdCN280MVVucUl6VmtMWGpwUjM1bTdjUHo0Qkd3UHlIR0NoTFozdHZVVm9CZXZPenIvZlZ1MnRVdXkyMEQzODh1V2F3SFRJV2Znd1R0L3VObXFyYlVyd3UrWVZhWkM3L1RTZHJFL1FqV3FsUEZRbmh3SG1iS09tT0xUZDBuek95MlorQ0ZxM244UFBrS1ZuOWZZTFJTQnVOT0FtUXBNVlRPdURjMERBMHAvOGpGMC9acFY1dm16ckcrdGk3TFVYMkdNcDl4VjZXUjRkU0tmYktsZVBMN2g4RjBwQWM0c1I2NnI3a2Fkb3lqNTZMUHVkWkl0MXN0MkdWbi9hd0xPWDBsTEJQZjdhWUFqdEh0Y0kvVVAreXdWS0FlZm11OW1VemZDdzBHM2JJZnVMSjhLUkhsYm5QNFdJb0NvOWxUd0dndzR3N2xPMVBLUS9tdFFpa1dKTXNZVy9MOVdoaXFTUWpLdjNYK2kzMU11YjdlMCtOYjhtNUhZMkxreDBYZzdITmRtNUF2UDhDa0pUNWZVZVkrcmhKTSs5VXk3ckxwNjdHSU40eU9IMXhCUEI1YXl1dXlHZ2hsNWJxZlBTZGZ5dnlVN0czUWJ6QUExOW5TM2JFczF2L1NiWGsxMGdQbjhDaXBud3p6eDNnTTAwMHlpVDRob1hYekVDRE94bzB4RlpwL3BkRlhhdmZacVlCSjY1Q29NT21kNk5DL3dUajNMbFFESWdCUUVFbUZJU0dLVlMyejVlUVE1NG1saC9yeFhEUEJnd0trMHA1ZjVUTytqWXE3ZHNyL3ZIdVQrOEdLbmdmTnhiSU51b1lCdHhqeHhxcnFQeDcyblRUV2U4aVRVMmxYMXJRUUQwRENlOW1wN1RyVURNR1ZBSnlsWDV2a21veElXdVZEQkJUWm9GK2Z2RkQ4UFdlVlFwcU84bHZJYzdHNkd4SEhuN2tXSm1reVhkSnBkdDd0M1BlM1VpL3REMUpzRmMrUDdydEI2a2pNNEI0RVRZY1cwZmdYNG1xZ1U0ZUVjSHhoVE9sNEtEaDVtS0V2Vm5velRWbXRYc29ndVdMYTliT21ZNExHWC9xQW14Rm9ESmZhaSs2VjNvcmczR2pWaUM4enNaZnNSNTJDS1NmUlZJKzgwdENZNVpFQlVDand3SkpDUVlhL1MzbmI5OENNbEhLbnV4UTZwQ1dvOU1CL0I3UGtJME81Zk1DdURuQUp2WGNTMUkxQ3lEWEZPRkY0SHMvRVNWYUhVSGsyOVhLMTl0NHhpWHh4UnZTbEQwYkJzWHFtaTJsYzNwVkRTK2h4VTVzbUF4TTNNQldjSjFqQXh0UGZ1TDZkWGo1aUl5UlRMRFd0RlZYVjlVcVdsT2ZqTnVYSnMvMTY1MEZVd2lReEo2eEZRYmFxYWR5N3M5UWp5RHVCdHZMMEN6Vi8yYklpakNaczJheXBHb3plQkE2NXRGTFJZaUpKWmlSWGpRRGEwR2JTVjF3c2Z4dzAyK3FURFpZZTRGcmhaNy9sdXVha2FIRXkxRTlGTnJDK1JzV3hCV3ZRRElEbEJaSlNLeVVDM1VpSVdPcm0ya1ZydGQ3UHlHM1JKK0NhMVI5SHdlK3NHSThKTkRmTk4iLCJ3YXRlcm1hcmtJbWFnZSI6InYzL2ltYWdlL3IwL2g4LzEwNDgv5pyA5paw5Z+f5ZCNLnBuZyIsImN1c3RvbWVyU2VydmljZUhvc3QiOiJodHRwczovL2tlZnVoNS42bGM1M2guY29tIiwiY2hhbm5lbENvZGUiOiIiLCJlbmFibGVIMjY1IjpmYWxzZX0sImFkdml0aXNlIjp7ImhvbWVMaXN0IjpudWxsLCJkZXRhaWxUb3BMaXN0IjpudWxsLCJuaW5lR3JpZExpc3QiOm51bGwsInBvc3RMaXN0IjpudWxsLCJkZXRhaWxiYW5uZXJMaXN0IjpudWxsLCJsYXVuY2hTY3JlZW5MaXN0IjpudWxsLCJmbG9hdGluZ0xpc3QiOm51bGwsIkFMaXN0IjpudWxsLCJCTGlzdCI6bnVsbCwiZGlhbG9nTGlzdCI6bnVsbCwiYm90dG9tQmFubmVyIjpudWxsLCJ2aWRlb0luZm9MaXN0IjpudWxsLCJkb3duTGlzdCI6bnVsbCwiZnJpZW5kTGlzdCI6bnVsbCwidGl0bGVMaXN0IjpudWxsLCJwbGF5TGlzdCI6bnVsbCwicGF1c2V5TGlzdCI6bnVsbH0sInNlb0luZm8iOnsidGl0bGUiOiI5MeefreWJp+a1i+ivle+9nOWUr+S4gOWumOaWueermSDmnIDmlrDlpKfnpZ7op4bpopHlkIjpm4blhY3otLnnnIsiLCJrZXl3b3JkcyI6WyLlj7DljJflqJzlqJzlhajpm4YiLCLpurvosYbkvKDlqpLlrpjmlrkiLCLpurvosYbljp/liJtBViIsIum6u+ixhuWFjei0ueeciyIsIum6u+ixhuinhumikeWcqOe6v+ingueciyIsIum6u+ixhuS8oOWqkiIsIum6u+ixhueyvumAiUFW54mHIiwiOTHop4bpopEiLCLlpKnnvo7kvKDlqpIiLCLnmoflrrbljY7kuroiLCI5MeWItueJh+WOgiIsIuWPsOWMl+WonOWonOacgOaWsOS9nOWTgSIsIua1t+inkuekvuWMuuS5seS8puinhumikSIsIum6u+ixhuS8oOWqkuaYoOWDjyIsIuWFjei0ueWbveS6p0FW6KeG6aKR5Zyo57q/55yLIiwi5pel5pysQVbop4bpopHlnKjnur/lhY3otLnnnIsiLCI5MeinhumikSIsIjkx5aSn56We5pyA5paw5L2c5ZOBIiwiOTHlpKfnpZ7op4bpopHop4LnnIvlnLDlnYAiXSwiZGVzY3JpcHRpb24iOiI5MeefreWJp+acgOaWsOWbveS6p0FW5YWN6LS56KeC55yL77yB5q+P5pel5pu05paw44CB5aSp576O44CB6Jyc5qGD44CB6bq76LGG5Lyg5aqS44CBOTHliLbniYfljoLml6Dlub/lkYrlubLmibDvvIEiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tIn0sInNlb05hdkluZm8iOnsiZGhUaXRsZSI6Ium7hOixhua1i+ivlSAg55+t5YmnIC0g5a6Y5pa55ZSv5LiA5a+86Iiq5YWl5Y+jIFx1MDAyNiDlrp7ml7blnLDlnYDmm7TmlrAiLCJkaEtleXdvcmxkIjpbIum6u+ixhiIsIuWbveS6p0FWIiwi5pel5pysQVYiLCLpurvosYbop4bpopEiLCLnvZHpu4TlpKfnpZ7op4bpopHkvZzlk4EiLCLpurvosYbkvKDlqpIiLCLmiJDkurrliqjmvKsiLCLmiJDkurpBVuinhumikSJdLCJkaERlc2NyaXB0aW9uIjoi5qyi6L+O6K6/6Zeu6buE6LGG5rWL6K+V5ZSv5LiA5a6Y5pa55a+86Iiq6aG144CC5pys56uZ5a6e5pe25pu05paw5pyA5paw6K6/6Zeu5YWl5Y+j5LiO6Lez6L2s5Zyw5Z2A77yM56Gu5L+d6ZO+5o6l5a6J5YWo5pyJ5pWI44CC5Li65oKo5o+Q5L6b6auY5riF44CB5peg5Y2h6aG/55qE5rWB55WF6KeC5b2x5L2T6aqM77yM5ZGK5Yir5aSx5pWI6ZO+5o6l77yM5a6Y5pa55ZOB6LSo5L+d6Zqc44CCIiwiZGhTaXRlTmFtZSI6Ijkx55+t5Ymn5rWL6K+V5a+86Iiq56uZIHwg5a6Y5pa55pyA5paw5YWl5Y+j54K55q2k6L+b5YWlIn0sIm5hdlBhZ2VMaXN0IjpbeyJsaW5lIjoxLCJ1cmwiOiJ3d3cuYmFpZHUuY29tIn0seyJsaW5lIjoyLCJ1cmwiOiJ3d3cuNDM5OS5jb20ifSx7ImxpbmUiOjMsInVybCI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtNzcuY29tIn1dLCJyZXBvcnRTZGtDb25maWciOiJ5SVdzbDZFSWZmYUZwZW1KZFg1cjN5MWs3SGp1cEFZSUU2Q0NoRkZjQnpyNnNaMjMvVitGRDlwS24wNkwxVG1kbEpmcjhxNDlwWXZVc1VaWXpGT3BNUjQrRmRLeVVjcDZFbXlXdGhLcXZHS1Nad1d3RmNpdzVLTFdyV1Rwa1hTUGwrTUE5L0RWNG5Tdmp4ZW1RK2hKOTJPdFBVVndhYlc2cWxuZEhKcFN0UmowNnlNMzlGNVpWU2xlMWp0UXVyYi9ESVFZMHkxRE44bFNuUXJyWXFycC9XcGlhMWVERnZBelJZcjhRNU5MMk13WFZNMmVCbnVTUnk4Ni9FcHNGUWhlRk5UbHVBd0JTeHRVaGt5MmtFd2ZwMHhzOXJCMGcyMzJwbkZ0TmVCRnRnTTZTZ3dWNzNPUzlXU2g5ZThjckR5NjB6M1FIY3BLS0xwWmNNUzF1UkZKQVRnZTl4M2JCZE5xM3ZMZm1YeVVGN2VHblAvQkdYVFlVUjg3TnEwTTFnaXZoWGRhRFFpL2hKOVVGdzFoMkxDMzgwRDZQbnVka0M2amZ0WWRlQ0Y1bFBWQ1RUVFBoZGNqWHhpek9wTlRRcEFZbm8xSDY5eGxia2RLazZBSXU5RFFScXBVaXdHZWlpT28vQ0dmaHUyVTVudEYweFZaNTZhanRHRlNwTmRkQmFnVGdwbDB4U2NCTWdlRm51ckt5RzNwZm1tTy9hbDdGMnhHWFdsU3ZlVFJqMXR1cmc5T0pkeGdsVllBb0R0M2gyWitmbmVzb3RrUHhnQ28rSmJKbmV0WU5GdnRWOUNsT1UvS285em1TeWhyS3pvc3FZWnFjb3A5bDBQUHZnYnVJOC9Qazg1bWIxZ3lDM3NTaHJTU0dhNW5iTHhjYy9uS3FkVFhmRHVYUWFuMUJjdVJ0R0VuT0h3U0dFQTR2Z09WOVJXOTZBekZxN1o5N3VVUm04d0I3bzQxVW5xSXpWa0xYanBSMzVtN2NQejRCR3dQeUhHQ2hMWjN0dlVWb0Jldk96ci9mVnUydFV1eTIwRDM4OHVXYXdIVElXZmd3VHQvdU5tcXJiVXJ3dStZVmFaQzcvVFNkckUvUWpXcWxQRlFuaHdIbWJLT21PTFRkMG56T3kyWitDRnEzbjhQUGtLVm45ZllMUlNCdU5PQW1RcE1WVE91RGMwREEwcC84akYwL1pwVjV2bXpyRyt0aTdMVVgyR01wOXhWNldSNGRTS2ZiS2xlUEw3aDhGMHBBYzRzUjY2cjdrYWRveWo1NkxQdWRaSXQxc3QyR1ZuL2F3TE9YMGxMQlBmN2FZQWp0SHRjSS9VUCt5d1ZLQWVmbXU5bVV6ZkN3MEczYklmdUxKOEtSSGxiblA0V0lvQ285bFR3R2d3NHc3bE8xUEtRL210UWlrV0pNc1lXL0w5V2hpcVNRakt2M1graTMxTXViN2UwK05iOG01SFkyTGt4MFhnN0hOZG01QXZQOENrSlQ1ZlVlWStyaEpNKzlVeTdyTHA2N0dJTjR5T0gxeEJQQjVheXV1eUdnaGw1YnFmUFNkZnl2eVU3RzNRYnpBQTE5blMzYkVzMXYvU2JYazEwZ1BuOENpcG53enp4M2dNMDAweWlUNGhvWFh6RUNET3hvMHhGWnAvcGRGWGF2ZlpxWUJKNjVDb01PbWQ2TkMvd1RqM0xsUURJZ0JRRUVtRklTR0tWUzJ6NWVRUTU0bWxoL3J4WERQQmd3S2swcDVmNVRPK2pZcTdkc3Ivdkh1VCs4R0tuZ2ZOeGJJTnVvWUJ0eGp4eHFycVB4NzJuVFRXZThpVFUybFgxclFRRDBEQ2U5bXA3VHJVRE1HVkFKeWxYNXZrbW94SVd1VkRCQlRab0YrZnZGRDhQV2VWUXBxTzhsdkljN0c2R3hISG43a1dKbWt5WGRKcGR0N3QzUGUzVWkvdEQxSnNGYytQN3J0QjZrak00QjRFVFljVzBmZ1g0bXFnVTRlRWNIeGhUT2w0S0RoNW1LRXZWbm96VFZtdFhzb2d1V0xhOWJPbVk0TEdYL3FBbXhGb0RKZmFpKzZWM29yZzNHalZpQzh6c1pmc1I1MkNLU2ZSVkkrODB0Q1k1WkVCVUNqd3dKSkNRWWEvUzNuYjk4Q01sSEtudXhRNnBDV285TUIvQjdQa0kwTzVmTUN1RG5BSnZYY1MxSTFDeURYRk9GRjRIcy9FU1ZhSFVIazI5WEsxOXQ0eGlYeHhSdlNsRDBiQnNYcW1pMmxjM3BWRFMraHhVNXNtQXhNM01CV2NKMWpBeHRQZnVMNmRYajVpSXlSVExEV3RGVlhWOVVxV2xPZmpOdVhKcy8xNjUwRlV3aVF4SjZ4RlFiYXFhZHk3czlRanlEdUJ0dkwwQ3pWLzJiSWlqQ1pzMmF5cEdvemVCQTY1dEZMUllpSkpaaVJYalFEYTBHYlNWMXdzZnh3MDIrcVREWlllNEZyaFo3L2x1dWFrYUhFeTFFOUZOckMrUnNXeEJXdlFESURsQlpKU0t5VUMzVWlJV09ybTJrVnJ0ZDdQeUczUkorQ2ExUjlId2Urc0dJOEpORGZOTiJ9LCJoYXNoIjpmYWxzZSwibXNnIjoic3VjY2VzcyIsInRpbWUiOiIyMDI2LTExLTA1VDE1OjIxOjM1LjY3NloiLCJ0aXAiOiLmiJDlip8ifQ==","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/config/info"},"revalidate":60,"tags":["app-config"]} \ No newline at end of file +{"kind":"FETCH","data":{"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"Content-Disposition,Refresh-Authorization","alt-svc":"h3=\":443\"; ma=86400","cf-cache-status":"DYNAMIC","cf-ray":"a55d70f68b57515c-HKG","connection":"keep-alive","content-encoding":"br","content-type":"application/json; charset=utf-8","date":"Thu, 05 Nov 2026 17:05:05 GMT","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=7dSWSuCCc98Yo14%2BVUHgmKJQSyvZKxkhu%2B8DT%2FMhorGyHq5lhkkcCDKQ3XWIXluCVqIT6sHYVwgAyA33LnqdyOhlPOKcZDRm5XKc2khTiHl%2FDErFQgspmG%2FewTc0N0wjOUCNjkw9\"}]}","server":"cloudflare","transfer-encoding":"chunked"},"body":"eyJjb2RlIjoyMDAsImRhdGEiOnsibmV3QWRkcmVzc0luZm8iOnsibmV3VXJsQWRkciI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMS5jb20iLCJuZXdVcmxBZGRyMSI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMy5jb20iLCJuZXdVcmxBZGRyMiI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtNC5jb20iLCJmb3JldmVyVXJsQWRkciI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtMC5jb20iLCJnbWFpbEFkZHIiOiI5MXNwZ2ZAZ21haWwuY29tIiwidGdHcm91cCI6Imh0dHBzOi8vdC5tZS9mdWxpcXVuXzkxc3AiLCJ0ZWxlZ3JhbSI6Imh0dHBzOi8vdDF0MS5jb20iLCJjdXN0b21lclNlcnZpY2VIb3N0IjoiaHR0cHM6Ly9rZWZ1aDUuNmxjNTNoLmNvbSIsInR3aXR0ZXJBZGRyIjoiaHR0cHM6Ly94LmNvbS8iLCJwZGZBZGRyIjoiaHR0cHM6Ly9tZGhqYi5jb20iLCJhcHBBZGRyIjoiaHR0cHM6Ly9kbHd1MXp3M2Vxd3gwLmNsb3VkZnJvbnQubmV0Lz9kYz05MXNwIiwib2ZmaWNpYWxBcHBBZGRyIjoiaHR0cHM6Ly9odWFuZ2d1by5jb20ifSwiY29uZmlnIjp7InBkZkFkZHIiOiJodHRwczovL21kaGpiLmNvbSIsIm5ld1VybEFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTEuY29tIiwibmV3VXJsQWRkcjEiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTMuY29tIiwibmV3VXJsQWRkcjIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTQuY29tIiwiZm9yZXZlclVybEFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bTAuY29tIiwiZ21haWxBZGRyIjoiOTFzcGdmQGdtYWlsLmNvbSIsImFwcEFkZHIiOiJodHRwczovL2Rsd3UxenczZXF3eDAuY2xvdWRmcm9udC5uZXQvP2RjPTkxc3AiLCJvZmZpY2lhbEFwcEFkZHIiOiJodHRwczovL2h1YW5nZ3VvLmNvbSIsIndlaUNoYXJ0IjoiaHR0cHM6Ly90MXQxLmNvbSIsInFxIjoiIiwidGdHcm91cCI6Imh0dHBzOi8vdC5tZS9mdWxpcXVuXzkxc3AiLCJwb3Rhb0dyb3VwIjoiaHR0cHM6Ly94enZmdW4uY29tL2FwcGxpY2F0aW9uLz9kYz1oZ2RqdyIsImdpdEFkZHIiOiJodHRwczovL2dpdGxhYi5jb20vbWFkb3VnZi85MXNwei5jb20vIiwidHdpdHRlckFkZHIiOiJodHRwczovL3guY29tLyIsInRlbGVncmFtIjoiaHR0cHM6Ly90MXQxLmNvbSIsInRlbGVncmFtQWRkIjoiaHR0cHM6Ly90Lm1lL2d1YW5mYW5nX0dNIiwidHJhbnNsYXRpb25BZGRyIjoiaHR0cHM6Ly9kZGhwMS5jYy8/ZGM9OTFzcCIsImltZ0NkbiI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi8iLCJ0c0NkbiI6Imh0dHBzOi8vZWIyOTBkYzM4MzViMmQ3Ny5jZG4uamlhc2h1bGUuY29tLyIsImltZ0FwcFVzQ2RuIjoiaHR0cHM6Ly9kM244cXg0cnZ5NHZvbC5jbG91ZGZyb250Lm5ldC8iLCJtZWRpYUFwcFVzQ2RuIjoiaHR0cHM6Ly9keXVtNTNocmU0M25qLmNsb3VkZnJvbnQubmV0LyIsIndlYlRpdGxlIjoiOTHnn63liafmtYvor5XvvZzllK/kuIDlrpjmlrnnq5kg5pyA5paw5aSn56We6KeG6aKR5ZCI6ZuG5YWN6LS555yLIiwid2ViS2V5d29ybGQiOlsi5Y+w5YyX5aic5aic5YWo6ZuGIiwi6bq76LGG5Lyg5aqS5a6Y5pa5Iiwi6bq76LGG5Y6f5YibQVYiLCLpurvosYblhY3otLnnnIsiLCLpurvosYbop4bpopHlnKjnur/op4LnnIsiLCLpurvosYbkvKDlqpIiLCLpurvosYbnsr7pgIlBVueJhyIsIjkx6KeG6aKRIiwi5aSp576O5Lyg5aqSIiwi55qH5a625Y2O5Lq6IiwiOTHliLbniYfljoIiLCLlj7DljJflqJzlqJzmnIDmlrDkvZzlk4EiLCLmtbfop5LnpL7ljLrkubHkvKbop4bpopEiLCLpurvosYbkvKDlqpLmmKDlg48iLCLlhY3otLnlm73kuqdBVuinhumikeWcqOe6v+eciyIsIuaXpeacrEFW6KeG6aKR5Zyo57q/5YWN6LS555yLIiwiOTHop4bpopEiLCI5MeWkp+elnuacgOaWsOS9nOWTgSIsIjkx5aSn56We6KeG6aKR6KeC55yL5Zyw5Z2AIl0sIndlYkRlc2NyaXB0aW9uIjoiOTHnn63liafmnIDmlrDlm73kuqdBVuWFjei0ueingueci++8geavj+aXpeabtOaWsOOAgeWkqee+juOAgeicnOahg+OAgem6u+ixhuS8oOWqkuOAgTkx5Yi254mH5Y6C5peg5bm/5ZGK5bmy5omw77yBIiwid2ViU2l0ZU5hbWUiOiI5MeefreWJpyIsIndlYkFkZHIiOiJodHRwczovLzkxZGotaDUuODBzeWd0bS5jb20iLCJkaE5ld1VybEFkZHIxIjoid3d3LmJhaWR1LmNvbSIsImRoTmV3VXJsQWRkcjIiOiJ3d3cuNDM5OS5jb20iLCJkaE5ld1VybEFkZHIzIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG03Ny5jb20iLCJmcmVlVlBOIjoiaHR0cHM6Ly9wcm90b252cG4uY29tIiwidXNlSW5nQWRkcmVzcyI6WyJodHRwczovL2QzN283anJuOXk2dnMyLmNsb3VkZnJvbnQubmV0LyIsImh0dHBzOi8vZDJuOGQwZHZnZjRqcm4uY2xvdWRmcm9udC5uZXQvIiwiaHR0cHM6Ly9kM292ZXlvNHBxbmV6Mi5jbG91ZGZyb250Lm5ldC8iLCJodHRwczovL21hZG91LmNvbSIsImh0dHBzOi8vZDFvZDlqdjB0YTVmcjEuY2xvdWRmcm9udC5uZXQvIiwiaHR0cHM6Ly9kMXZjNm9vYzBsdjM1NC5jbG91ZGZyb250Lm5ldC8iLCJodHRwczovL2QxaWppcmx0dGt4ejBnLmNsb3VkZnJvbnQubmV0LyJdLCJhZHZpdGllc1RvcGljTnVtIjoyLCJkaFRpdGxlIjoi6buE6LGG5rWL6K+VICDnn63liacgLSDlrpjmlrnllK/kuIDlr7zoiKrlhaXlj6MgXHUwMDI2IOWunuaXtuWcsOWdgOabtOaWsCIsImRoS2V5d29ybGQiOlsi6bq76LGGIiwi5Zu95LqnQVYiLCLml6XmnKxBViIsIum6u+ixhuinhumikSIsIue9kem7hOWkp+elnuinhumikeS9nOWTgSIsIum6u+ixhuS8oOWqkiIsIuaIkOS6uuWKqOa8qyIsIuaIkOS6ukFW6KeG6aKRIl0sImRoRGVzY3JpcHRpb24iOiLmrKLov47orr/pl67pu4TosYbmtYvor5XllK/kuIDlrpjmlrnlr7zoiKrpobXjgILmnKznq5nlrp7ml7bmm7TmlrDmnIDmlrDorr/pl67lhaXlj6PkuI7ot7PovazlnLDlnYDvvIznoa7kv53pk77mjqXlronlhajmnInmlYjjgILkuLrmgqjmj5Dkvpvpq5jmuIXjgIHml6DljaHpob/nmoTmtYHnlYXop4LlvbHkvZPpqozvvIzlkYrliKvlpLHmlYjpk77mjqXvvIzlrpjmlrnlk4HotKjkv53pmpzjgIIiLCJkaFNpdGVOYW1lIjoiOTHnn63liafmtYvor5Xlr7zoiKrnq5kgfCDlrpjmlrnmnIDmlrDlhaXlj6PngrnmraTov5vlhaUiLCJhY3RyZXNzQmFja0dyb3VuZCI6Imh0dHBzOi8vd2ViaW1nLnJsa2Z1cy5jbi92My9pbWFnZS9sZC9jNS85LyVFOCU4MyU4QyVFNiU5OSVBRiUyMCUyODElMjkuanBnIiwicmVwb3J0U2RrQ29uZmlnIjoiaDJUSjBYc2xDN2gySm5VamgyNHV1WEtCWjhDZGMvSlVkVjlUdHVFS2NseEFsR3cwTS9jczFFZUk1dHpRR2o3YTBCNEV4RUliYVlMTlExd2pyVkp3My9WNGd1VVNERXYrdzdLdzEySi83elA4eWQzZlYxUXd6Ky9yYkZxdVVXU2twb0FZa0UvL0VRZGhHWVZDeis1dk1RS0NPcXhvWWRBaVBQQjhtckc2MUU2MHh3bGYvZkhDWU9xYWFkdHA3Vy8xZmVDSWdHTXRPMkNUYnNmNzFuU2RNVlBwZEMwUVFPbnBxUnoxVDV1KzNVbnZCMTdNWDBXb0NMK3ZmZE5BV3EySHUwWFhITlhWeHNCbUdjK1RNZXF0REV5Y1NzdGxHd1Y2QWJmYUp5MFNmdHd1T3JEWFdKUEhFaEpha0MzVWdWdSt0b1VHejdXc3JpMFd2OEpoOVlOc1JsNmV1S0Rubk84allxNHBtZHJxVFNCVm9lMVN5OHp1NTUzZnlGQ1lIUUpzQUpjVnlIS0ZZOHM1eTdMQURpNEFMeWVNNGhVMGQvZndNYXdlelYwQk5VL25BSnNycmhmTzA1d0RmejFhZlJjMjRQWEkzdDRUT2NNZ09KNFVtcGc1SE5Nbjl5M3JxdHNva0hiRURxT1pRZzZkNTFFMTlmSWpJYmlta0tPTHZqRnd1TXdRK0dJN3VoYk50ZldnRXRTc05VRFM1Y1NaSFRkVXRYTE1DaEgxSDZIQzR1RUhTR2NseVRsc3IveWYrZUh4RXpZVDlUWUVCZWt1cHFvN0ZJMWlFWitUNmgrR1lrUnQreXB0SDduWXZ0TTJkaG9uZ3AyRkpIakdWYUJnbHJhRGh4MlR6czNLMFluVFVwNHlzNkZZWXNockJBVmlhNmpDRFgzZ1VBemRLakNBbVZ1eVFDT3cxcHVBZTVEQmlycUJHdlg4TldseEdOSmZ5NkFqczVGaXg1Qyt5eFphS2M1Um12NDMyUFo4MFdyS0UzcllrTTFPb1h3bHJWdmFyR3RVU3hSUnZiVWhkdDBLSWtuYUM2RG9MS3J0ZEVNbkgrVE8xblZ3SjRLNG9RQnE0TXUzYithMkZ1VGZVQWdldW9TYXhUL1BiUkdacmJCM214U1UrdXNYY2ZOQ0NPVUdLWmVrcnpEY1pacURhUHRLUHJSdXRMRmJDekRudGJhSHdhcUNUT0ZZNzlWWlJrclo3RzZOWkI3S2lkNVR0U0ttSmhyZ1MxRVB5R3BMY1V0Ly83OG9IK2xEaDFXU3lKMjhTYXRjN0JEZi9pd2pJMFZIT04rOUMvNnBSV0pFS1UxVzM5ZmxpWFNQbFRJaWE1OUhCR1pON21mU2tBMUZvNkdZU3ZvRXR5SnA4SENSekdSTjk0dG5tdlQwWWxpWmlGdlExcklYS1JNM2VDWWVjVjY4TUlmUDVGaG0yNHYrdE1laDh4VU02Wm5ZUHp0bCtEMmhwQTdKamRYVzVFLzY4RGZ3MC9IbWZFRmtXam5wZXplOE9RMkpTclh2MjhtQ1hKTk1XbFBScjN2bi9xOTNLTktld2lwM2wzNnBYUkJZUjFUS3B2bDFic21RcmxCOW5kWmZkaVM2U3J1TFNuZEI0Y3ZyVnZJY0Z6L3drTm9EbnEwTnptczZqUnJWRm9rSDB3YlRUOU5wNmNxcGk1dHNvcEtaVHV0ak1KNHFOOCtOWkRSRlZLM2xFTTd2TG1vdGVVVkNqK0o4Uk1JZm1wOUNHbFlCQzIyckhDRmNwVGt0bWZRUTg4WDdqekxXTFF3REd4Zk5DY1R3TXlzUEh0QUFmVDJRVkhuNzNqTER2WTZOQVJqQituREtkcWlSMXkyV0lrTHpacGd3c0VuK2xrMGhxYlFwUThYdDNoMXdmT0dEbG1xSG5LQVhiZHp5c2lVNVEyZEpoMUo3dzBTZjNOWHZDcE55Q1diR3ROUmlraXhGTU1GcEhJWkNJa2VoekNBT1NTdjlCWGlKelZqNVgvVitOeVQyQnp4NHQ2cG9Ub1RUVW4wcVZrNlNNSE9SQlpxeDlodUR1dTAzOGRodXhxYnRRQXNjY05VZjgvam9oTzgxL1IrNmhFNERNaEVDaEMwWWRrYUwwMHhrbnFFVkV1U2t3V0xXNjU1cDUvTEMrUklXcmJkU2FjV2pFMGh1TS9BY0Q1d2V0WEU3YVpFbmIxQjFwRERZckE1cUs5UmpnSWEyYVpkL0dtSCtvdUQxQWd5Lzh5MWt6WGdTbXNZRVlhTXFCS1FJNVFQNUZFRDQycnZ1MVN5aWtFZ0NwYWNmdW9IamJPd0N2SE5hcEpsL3pXQzFXTkdENG5USHlzK0oySzNlRkdvRnppYmNaM2JDTWlOTXhLK1BRVkRoZkt0VlpNek1GUU1lUlFrN0h4SlJhVWpCNTk4UUhDR2hqbTMzMi9WdWlKdzVsMWl2Vnk2bS9zanY4czJQSVpELzJNRlpMUTRmUndqRkdVRXp0YWtVSDNHelV0TTRUbFZ2c2NPN1dlSTNMVHUwbVVaMEJlanZxT0VJenk1QUZhVXBsaE5kM1k3ekI2dTRacmlaRHhCNDZjU0oiLCJ3YXRlcm1hcmtJbWFnZSI6InYzL2ltYWdlL3IwL2g4LzEwNDgv5pyA5paw5Z+f5ZCNLnBuZyIsImN1c3RvbWVyU2VydmljZUhvc3QiOiJodHRwczovL2tlZnVoNS42bGM1M2guY29tIiwiY2hhbm5lbENvZGUiOiIiLCJlbmFibGVIMjY1IjpmYWxzZX0sImFkdml0aXNlIjp7ImhvbWVMaXN0IjpudWxsLCJkZXRhaWxUb3BMaXN0IjpudWxsLCJuaW5lR3JpZExpc3QiOm51bGwsInBvc3RMaXN0IjpudWxsLCJkZXRhaWxiYW5uZXJMaXN0IjpudWxsLCJsYXVuY2hTY3JlZW5MaXN0IjpudWxsLCJmbG9hdGluZ0xpc3QiOm51bGwsIkFMaXN0IjpudWxsLCJCTGlzdCI6bnVsbCwiZGlhbG9nTGlzdCI6bnVsbCwiYm90dG9tQmFubmVyIjpudWxsLCJ2aWRlb0luZm9MaXN0IjpudWxsLCJkb3duTGlzdCI6bnVsbCwiZnJpZW5kTGlzdCI6bnVsbCwidGl0bGVMaXN0IjpudWxsLCJwbGF5TGlzdCI6bnVsbCwicGF1c2V5TGlzdCI6bnVsbH0sInNlb0luZm8iOnsidGl0bGUiOiI5MeefreWJp+a1i+ivle+9nOWUr+S4gOWumOaWueermSDmnIDmlrDlpKfnpZ7op4bpopHlkIjpm4blhY3otLnnnIsiLCJrZXl3b3JkcyI6WyLlj7DljJflqJzlqJzlhajpm4YiLCLpurvosYbkvKDlqpLlrpjmlrkiLCLpurvosYbljp/liJtBViIsIum6u+ixhuWFjei0ueeciyIsIum6u+ixhuinhumikeWcqOe6v+ingueciyIsIum6u+ixhuS8oOWqkiIsIum6u+ixhueyvumAiUFW54mHIiwiOTHop4bpopEiLCLlpKnnvo7kvKDlqpIiLCLnmoflrrbljY7kuroiLCI5MeWItueJh+WOgiIsIuWPsOWMl+WonOWonOacgOaWsOS9nOWTgSIsIua1t+inkuekvuWMuuS5seS8puinhumikSIsIum6u+ixhuS8oOWqkuaYoOWDjyIsIuWFjei0ueWbveS6p0FW6KeG6aKR5Zyo57q/55yLIiwi5pel5pysQVbop4bpopHlnKjnur/lhY3otLnnnIsiLCI5MeinhumikSIsIjkx5aSn56We5pyA5paw5L2c5ZOBIiwiOTHlpKfnpZ7op4bpopHop4LnnIvlnLDlnYAiXSwiZGVzY3JpcHRpb24iOiI5MeefreWJp+acgOaWsOWbveS6p0FW5YWN6LS56KeC55yL77yB5q+P5pel5pu05paw44CB5aSp576O44CB6Jyc5qGD44CB6bq76LGG5Lyg5aqS44CBOTHliLbniYfljoLml6Dlub/lkYrlubLmibDvvIEiLCJ3ZWJTaXRlTmFtZSI6Ijkx55+t5YmnIiwiY2Fub25pY2FsVXJsIjoiaHR0cHM6Ly85MWRqLWg1Ljgwc3lndG0uY29tIn0sInNlb05hdkluZm8iOnsiZGhUaXRsZSI6Ium7hOixhua1i+ivlSAg55+t5YmnIC0g5a6Y5pa55ZSv5LiA5a+86Iiq5YWl5Y+jIFx1MDAyNiDlrp7ml7blnLDlnYDmm7TmlrAiLCJkaEtleXdvcmxkIjpbIum6u+ixhiIsIuWbveS6p0FWIiwi5pel5pysQVYiLCLpurvosYbop4bpopEiLCLnvZHpu4TlpKfnpZ7op4bpopHkvZzlk4EiLCLpurvosYbkvKDlqpIiLCLmiJDkurrliqjmvKsiLCLmiJDkurpBVuinhumikSJdLCJkaERlc2NyaXB0aW9uIjoi5qyi6L+O6K6/6Zeu6buE6LGG5rWL6K+V5ZSv5LiA5a6Y5pa55a+86Iiq6aG144CC5pys56uZ5a6e5pe25pu05paw5pyA5paw6K6/6Zeu5YWl5Y+j5LiO6Lez6L2s5Zyw5Z2A77yM56Gu5L+d6ZO+5o6l5a6J5YWo5pyJ5pWI44CC5Li65oKo5o+Q5L6b6auY5riF44CB5peg5Y2h6aG/55qE5rWB55WF6KeC5b2x5L2T6aqM77yM5ZGK5Yir5aSx5pWI6ZO+5o6l77yM5a6Y5pa55ZOB6LSo5L+d6Zqc44CCIiwiZGhTaXRlTmFtZSI6Ijkx55+t5Ymn5rWL6K+V5a+86Iiq56uZIHwg5a6Y5pa55pyA5paw5YWl5Y+j54K55q2k6L+b5YWlIn0sIm5hdlBhZ2VMaXN0IjpbeyJsaW5lIjoxLCJ1cmwiOiJ3d3cuYmFpZHUuY29tIn0seyJsaW5lIjoyLCJ1cmwiOiJ3d3cuNDM5OS5jb20ifSx7ImxpbmUiOjMsInVybCI6Imh0dHBzOi8vOTFkai1oNS44MHN5Z3RtNzcuY29tIn1dLCJyZXBvcnRTZGtDb25maWciOiJoMlRKMFhzbEM3aDJKblVqaDI0dXVYS0JaOENkYy9KVWRWOVR0dUVLY2x4QWxHdzBNL2NzMUVlSTV0elFHajdhMEI0RXhFSWJhWUxOUTF3anJWSnczL1Y0Z3VVU0RFdit3N0t3MTJKLzd6UDh5ZDNmVjFRd3orL3JiRnF1VVdTa3BvQVlrRS8vRVFkaEdZVkN6KzV2TVFLQ09xeG9ZZEFpUFBCOG1yRzYxRTYweHdsZi9mSENZT3FhYWR0cDdXLzFmZUNJZ0dNdE8yQ1Ric2Y3MW5TZE1WUHBkQzBRUU9ucHFSejFUNXUrM1VudkIxN01YMFdvQ0wrdmZkTkFXcTJIdTBYWEhOWFZ4c0JtR2MrVE1lcXRERXljU3N0bEd3VjZBYmZhSnkwU2Z0d3VPckRYV0pQSEVoSmFrQzNVZ1Z1K3RvVUd6N1dzcmkwV3Y4Smg5WU5zUmw2ZXVLRG5uTzhqWXE0cG1kcnFUU0JWb2UxU3k4enU1NTNmeUZDWUhRSnNBSmNWeUhLRlk4czV5N0xBRGk0QUx5ZU00aFUwZC9md01hd2V6VjBCTlUvbkFKc3JyaGZPMDV3RGZ6MWFmUmMyNFBYSTN0NFRPY01nT0o0VW1wZzVITk1uOXkzcnF0c29rSGJFRHFPWlFnNmQ1MUUxOWZJakliaW1rS09MdmpGd3VNd1ErR0k3dWhiTnRmV2dFdFNzTlVEUzVjU1pIVGRVdFhMTUNoSDFINkhDNHVFSFNHY2x5VGxzci95ZitlSHhFellUOVRZRUJla3VwcW83RkkxaUVaK1Q2aCtHWWtSdCt5cHRIN25ZdnRNMmRob25ncDJGSkhqR1ZhQmdscmFEaHgyVHpzM0swWW5UVXA0eXM2RllZc2hyQkFWaWE2akNEWDNnVUF6ZEtqQ0FtVnV5UUNPdzFwdUFlNURCaXJxQkd2WDhOV2x4R05KZnk2QWpzNUZpeDVDK3l4WmFLYzVSbXY0MzJQWjgwV3JLRTNyWWtNMU9vWHdsclZ2YXJHdFVTeFJSdmJVaGR0MEtJa25hQzZEb0xLcnRkRU1uSCtUTzFuVndKNEs0b1FCcTRNdTNiK2EyRnVUZlVBZ2V1b1NheFQvUGJSR1pyYkIzbXhTVSt1c1hjZk5DQ09VR0taZWtyekRjWlpxRGFQdEtQclJ1dExGYkN6RG50YmFId2FxQ1RPRlk3OVZaUmtyWjdHNk5aQjdLaWQ1VHRTS21KaHJnUzFFUHlHcExjVXQvLzc4b0grbERoMVdTeUoyOFNhdGM3QkRmL2l3akkwVkhPTis5Qy82cFJXSkVLVTFXMzlmbGlYU1BsVElpYTU5SEJHWk43bWZTa0ExRm82R1lTdm9FdHlKcDhIQ1J6R1JOOTR0bm12VDBZbGlaaUZ2UTFySVhLUk0zZUNZZWNWNjhNSWZQNUZobTI0dit0TWVoOHhVTTZabllQenRsK0QyaHBBN0pqZFhXNUUvNjhEZncwL0htZkVGa1dqbnBlemU4T1EySlNyWHYyOG1DWEpOTVdsUFJyM3ZuL3E5M0tOS2V3aXAzbDM2cFhSQllSMVRLcHZsMWJzbVFybEI5bmRaZmRpUzZTcnVMU25kQjRjdnJWdkljRnovd2tOb0RucTBOem1zNmpSclZGb2tIMHdiVFQ5TnA2Y3FwaTV0c29wS1pUdXRqTUo0cU44K05aRFJGVkszbEVNN3ZMbW90ZVVWQ2orSjhSTUlmbXA5Q0dsWUJDMjJySENGY3BUa3RtZlFRODhYN2p6TFdMUXdER3hmTkNjVHdNeXNQSHRBQWZUMlFWSG43M2pMRHZZNk5BUmpCK25ES2RxaVIxeTJXSWtMelpwZ3dzRW4rbGswaHFiUXBROFh0M2gxd2ZPR0RsbXFIbktBWGJkenlzaVU1UTJkSmgxSjd3MFNmM05YdkNwTnlDV2JHdE5SaWtpeEZNTUZwSElaQ0lrZWh6Q0FPU1N2OUJYaUp6Vmo1WC9WK055VDJCeng0dDZwb1RvVFRVbjBxVms2U01IT1JCWnF4OWh1RHV1MDM4ZGh1eHFidFFBc2NjTlVmOC9qb2hPODEvUis2aEU0RE1oRUNoQzBZZGthTDAweGtucUVWRXVTa3dXTFc2NTVwNS9MQytSSVdyYmRTYWNXakUwaHVNL0FjRDV3ZXRYRTdhWkVuYjFCMXBERFlyQTVxSzlSamdJYTJhWmQvR21IK291RDFBZ3kvOHkxa3pYZ1Ntc1lFWWFNcUJLUUk1UVA1RkVENDJydnUxU3lpa0VnQ3BhY2Z1b0hqYk93Q3ZITmFwSmwveldDMVdOR0Q0blRIeXMrSjJLM2VGR29GemliY1ozYkNNaU5NeEsrUFFWRGhmS3RWWk16TUZRTWVSUWs3SHhKUmFVakI1OThRSENHaGptMzMyL1Z1aUp3NWwxaXZWeTZtL3NqdjhzMlBJWkQvMk1GWkxRNGZSd2pGR1VFenRha1VIM0d6VXRNNFRsVnZzY083V2VJM0xUdTBtVVowQmVqdnFPRUl6eTVBRmFVcGxoTmQzWTd6QjZ1NFpyaVpEeEI0NmNTSiJ9LCJoYXNoIjpmYWxzZSwibXNnIjoic3VjY2VzcyIsInRpbWUiOiIyMDI2LTExLTA1VDE3OjA1OjA1LjA3OVoiLCJ0aXAiOiLmiJDlip8ifQ==","status":200,"url":"https://91dj-h5.80sygtm.com/api/app/config/info"},"revalidate":60,"tags":["app-config"]} \ No newline at end of file diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000024.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000024.del deleted file mode 100644 index 5256446..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000024.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000041.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000041.del deleted file mode 100644 index c9b68e3..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000041.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000061.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000061.del deleted file mode 100644 index b7f98be..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000061.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000075.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000075.del deleted file mode 100644 index 3aebbbc..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000075.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000091.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000091.del deleted file mode 100644 index 7728b7e..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000091.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000107.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000107.del deleted file mode 100644 index 10037b7..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000107.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000121.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000121.del deleted file mode 100644 index ad2e1fb..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000121.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000135.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000135.del deleted file mode 100644 index 7668222..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000135.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000155.del b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000155.del deleted file mode 100644 index 98acf48..0000000 Binary files a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000155.del and /dev/null differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000156.sst b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000156.sst new file mode 100644 index 0000000..8d88534 Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000156.sst differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000157.sst b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000157.sst new file mode 100644 index 0000000..486b9c0 Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000157.sst differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000158.sst b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000158.sst new file mode 100644 index 0000000..4f4115a Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000158.sst differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000159.sst b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000159.sst new file mode 100644 index 0000000..2e95c4b Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000159.sst differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000160.sst b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000160.sst new file mode 100644 index 0000000..16b96c5 Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000160.sst differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000161.meta b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000161.meta new file mode 100644 index 0000000..37d779f Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000161.meta differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000162.meta b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000162.meta new file mode 100644 index 0000000..ffd080a Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000162.meta differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000163.meta b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000163.meta new file mode 100644 index 0000000..eb76dff Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000163.meta differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000164.meta b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000164.meta new file mode 100644 index 0000000..1fa5d15 Binary files /dev/null and b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/00000164.meta differ diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/CURRENT b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/CURRENT index a2c3fa7..a08f9b4 100644 --- a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/CURRENT +++ b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/CURRENT @@ -1 +1 @@ -{"max_sequence_number":155,"commit_time":"2026-11-05T15:22:32.503351Z"} +{"max_sequence_number":164,"commit_time":"2026-11-05T17:05:09.076416Z"} diff --git a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/LOG b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/LOG index 944502b..0824fb3 100644 --- a/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/LOG +++ b/.next-dev/dev/cache/turbopack/v16.4.1-7217011a/LOG @@ -319,3 +319,11 @@ FAM | META SEQ | SST SEQ | RANGE 1 | 00000154 | 00000117 00000119 00000125 00000138 00000146 OBSOLETE SST | | 00000117 00000119 00000125 00000138 00000146 SST DELETED | | 00000120 00000130 00000143 00000151 META DELETED +Time 2026-11-05T17:05:08.930979Z +Commit 00000164 81007 keys in 157ms 396µs +FAM | META SEQ | SST SEQ | RANGE + 0 | 00000161 | 00000160 SST | O | c44bdff4074eecdb-c44bdff4074eecdb (0 MiB, fresh, 38 bytes, 1 entries, 0 tombstones) + 3 | 00000162 | 00000158 SST | [==================================================================================================] | 0000218e4a2a5ad0-ffff6bd4e11c6c06 (0 MiB, fresh, 198721 bytes, 16492 entries, 0 tombstones) + 2 | 00000163 | 00000156 SST | [==================================================================================================] | 0001eb513040f7eb-fff8ae2d1d0fe1b7 (14 MiB, fresh, 15367762 bytes, 15410 entries, 0 tombstones) + 2 | 00000163 | 00000157 SST | [==================================================================================================] | 0008c14b8a0c59e8-fffb48a4dc3d2165 (6 MiB, fresh, 7316124 bytes, 8430 entries, 0 tombstones) + 1 | 00000164 | 00000159 SST | [==================================================================================================] | 0001eb513040f7eb-fff6eacc326864ce (9 MiB, fresh, 10451867 bytes, 40674 entries, 0 tombstones) diff --git a/.next-dev/dev/fallback-build-manifest.json b/.next-dev/dev/fallback-build-manifest.json index 4326bfe..cc102f9 100644 --- a/.next-dev/dev/fallback-build-manifest.json +++ b/.next-dev/dev/fallback-build-manifest.json @@ -1,34 +1,6 @@ { "pages": { - "/_app": [ - "static/chunks/1cpi_next_dist_compiled_12ffzourts9s-._.js", - "static/chunks/1cpi_next_dist_shared_lib_1xry7g76avoay._.js", - "static/chunks/1cpi_next_dist_client_0heox_8u6hzq_._.js", - "static/chunks/1cpi_next_dist_11ks8blj8_523._.js", - "static/chunks/1cpi_next_app_1pj3rb0tuydhl.js", - "static/chunks/[next]_entry_page-loader_ts_0btqvd_85dcyl._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0egl44aedd7_2._.js", - "static/chunks/[root-of-the-server]__0l4r13lr2xywy._.js", - "static/chunks/pages__app_0du2_q-cjzmdk._.js", - "static/chunks/turbopack-pages__app_1-gu3yg9v7aao._.js" - ], - "/_error": [ - "static/chunks/1cpi_next_dist_shared_lib_0xs0-c6oakuxf._.js", - "static/chunks/1cpi_next_dist_client_1gnx2v75vaujc._.js", - "static/chunks/1cpi_next_dist_compiled_14ha2_lqkzgf0._.js", - "static/chunks/1cpi_next_dist_1ke6kfpq8w7bf._.js", - "static/chunks/[next]_entry_page-loader_ts_1yxf6xa3b75hv._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0apodh3colre9._.js", - "static/chunks/[root-of-the-server]__02sxxpho_3e87._.js", - "static/chunks/pages__error_0syo-i05b6bs9._.js", - "static/chunks/turbopack-pages__error_0uvy9rwo-qqd2._.js" - ] + "/_app": [] }, "devFiles": [], "polyfillFiles": [], @@ -39,6 +11,5 @@ ], "rootMainFiles": [], "rootMainFilesTree": {}, - "pagesChunkGroupBootstrapParams": {}, - "chunkLoadingGlobal": "TURBOPACK" + "pagesChunkGroupBootstrapParams": {} } \ No newline at end of file diff --git a/.next-dev/dev/lock b/.next-dev/dev/lock index 6c088ad..96992e0 100644 --- a/.next-dev/dev/lock +++ b/.next-dev/dev/lock @@ -1 +1 @@ -{"pid":11869,"port":26124,"hostname":"localhost","appUrl":"http://localhost:26124","startedAt":1793889183229} \ No newline at end of file +{"pid":77962,"port":26124,"hostname":"localhost","appUrl":"http://localhost:26124","startedAt":1793898302248} \ No newline at end of file diff --git a/.next-dev/dev/server/app-paths-manifest.json b/.next-dev/dev/server/app-paths-manifest.json index 5119d5b..e0640ea 100644 --- a/.next-dev/dev/server/app-paths-manifest.json +++ b/.next-dev/dev/server/app-paths-manifest.json @@ -1,15 +1,5 @@ { "/_not-found/page": "app/_not-found/page.js", - "/enkey/route": "app/enkey/route.js", - "/h5/m3u8/[...path]/route": "app/h5/m3u8/[...path]/route.js", - "/home-road/page": "app/home-road/page.js", - "/info/[slug]/page": "app/info/[slug]/page.js", - "/page": "app/page.js", - "/rank/[[...path]]/page": "app/rank/[[...path]]/page.js", - "/robots.txt/route": "app/robots.txt/route.js", - "/search/page": "app/search/page.js", - "/short-drama/[slug]/page": "app/short-drama/[slug]/page.js", - "/short-drama/[slug]/play/[episode]/page": "app/short-drama/[slug]/play/[episode]/page.js", - "/shorts/[[...path]]/page": "app/shorts/[[...path]]/page.js", - "/topics/[[...path]]/page": "app/topics/[[...path]]/page.js" + "/nav/page": "app/nav/page.js", + "/page": "app/page.js" } \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page.js b/.next-dev/dev/server/app/nav/page.js new file mode 100644 index 0000000..d6830fb --- /dev/null +++ b/.next-dev/dev/server/app/nav/page.js @@ -0,0 +1,20 @@ +var R=require("../../chunks/ssr/[turbopack]_runtime.js")("server/app/nav/page.js") +R.c("server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js") +R.c("server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js") +R.c("server/chunks/ssr/1cpi_next_dist_esm_server_1k00n8yge0t9l._.js") +R.c("server/chunks/ssr/1cpi_next_dist_esm_shared_lib_15m3zevaev543._.js") +R.c("server/chunks/ssr/1cpi_next_dist_esm_lib_037krdsel8pih._.js") +R.c("server/chunks/ssr/1cpi_next_dist_esm_0l98uspmo4g8v._.js") +R.c("server/chunks/ssr/1cpi_next_dist_compiled_0r32g5kxux546._.js") +R.c("server/chunks/ssr/1cpi_next_dist_server_route-modules_app-page_0q8ybpqjgs0ua._.js") +R.c("server/chunks/ssr/[externals]__1cacbhfx2nbuk._.js") +R.c("server/chunks/ssr/src_14a294iatto7m._.js") +R.c("server/chunks/ssr/node_modules__pnpm_1v9f0ljk8f61y._.js") +R.c("server/chunks/ssr/src_0hsbhz7n16r_g._.js") +R.c("server/chunks/ssr/src_01tuw5wbtj4u0._.js") +R.c("server/chunks/ssr/1cpi_next_dist_client_components_0f43r3xw4nj6b._.js") +R.c("server/chunks/ssr/1cpi_next_dist_client_components_builtin_unauthorized_1t8x12i06ccla.js") +R.c("server/chunks/ssr/1cpi_next_dist_client_components_builtin_global-error_0n2k_n4vk08_4.js") +R.c("server/chunks/ssr/_next-internal_server_app_nav_page_actions_195zfex_c-c60.js") +R.m("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page.js?page=/nav/page { MODULE_0 => \"[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_1 => \"[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_2 => \"[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_3 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_4 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_5 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_6 => \"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)\" } [app-rsc] (ecmascript)") +module.exports=R.m("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page.js?page=/nav/page { MODULE_0 => \"[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_1 => \"[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_2 => \"[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_3 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_4 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_5 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_6 => \"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)\" } [app-rsc] (ecmascript)").exports diff --git a/.next-dev/dev/server/app/nav/page.js.map b/.next-dev/dev/server/app/nav/page.js.map new file mode 100644 index 0000000..c15d7ec --- /dev/null +++ b/.next-dev/dev/server/app/nav/page.js.map @@ -0,0 +1,5 @@ +{ + "version": 3, + "sources": [], + "sections": [] +} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page/app-paths-manifest.json b/.next-dev/dev/server/app/nav/page/app-paths-manifest.json new file mode 100644 index 0000000..eaa7717 --- /dev/null +++ b/.next-dev/dev/server/app/nav/page/app-paths-manifest.json @@ -0,0 +1,3 @@ +{ + "/nav/page": "app/nav/page.js" +} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page/build-manifest.json b/.next-dev/dev/server/app/nav/page/build-manifest.json new file mode 100644 index 0000000..91b8300 --- /dev/null +++ b/.next-dev/dev/server/app/nav/page/build-manifest.json @@ -0,0 +1,43 @@ +{ + "devFiles": [], + "ampDevFiles": [], + "polyfillFiles": [ + "static/chunks/1cpi_next_dist_build_polyfills_polyfill-nomodule.js" + ], + "lowPriorityFiles": [], + "rootMainFiles": [ + "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", + "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", + "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", + "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", + "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", + "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", + "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", + "static/chunks/_1anvha4rlo79g._.js", + "static/chunks/turbopack-_1ajtdyja1k2v5._.js" + ], + "pages": {}, + "ampFirstPages": [], + "rootMainFilesTree": { + "/nav/page": [ + "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", + "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", + "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", + "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", + "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", + "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", + "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", + "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", + "static/chunks/_1anvha4rlo79g._.js", + "static/chunks/turbopack-_1ajtdyja1k2v5._.js", + "static/chunks/_0w2jlohhfhuy8._.js" + ] + }, + "pagesChunkGroupBootstrapParams": {}, + "chunkLoadingGlobal": "TURBOPACK" +} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page/client-components-ssr.js b/.next-dev/dev/server/app/nav/page/client-components-ssr.js new file mode 100644 index 0000000..e69de29 diff --git a/.next-dev/dev/server/app/nav/page/next-font-manifest.json b/.next-dev/dev/server/app/nav/page/next-font-manifest.json new file mode 100644 index 0000000..e0cc400 --- /dev/null +++ b/.next-dev/dev/server/app/nav/page/next-font-manifest.json @@ -0,0 +1,6 @@ +{ + "pages": {}, + "app": {}, + "appUsingSizeAdjust": false, + "pagesUsingSizeAdjust": false +} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page/react-loadable-manifest.json b/.next-dev/dev/server/app/nav/page/react-loadable-manifest.json new file mode 100644 index 0000000..9e26dfe --- /dev/null +++ b/.next-dev/dev/server/app/nav/page/react-loadable-manifest.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page/server-reference-manifest.json b/.next-dev/dev/server/app/nav/page/server-reference-manifest.json new file mode 100644 index 0000000..27a92af --- /dev/null +++ b/.next-dev/dev/server/app/nav/page/server-reference-manifest.json @@ -0,0 +1,4 @@ +{ + "node": {}, + "edge": {} +} \ No newline at end of file diff --git a/.next-dev/dev/server/app/nav/page_client-reference-manifest.js b/.next-dev/dev/server/app/nav/page_client-reference-manifest.js new file mode 100644 index 0000000..ec144f0 --- /dev/null +++ b/.next-dev/dev/server/app/nav/page_client-reference-manifest.js @@ -0,0 +1,3 @@ +globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {}; +globalThis.__RSC_MANIFEST["/nav/page"] = {"moduleLoading":{"prefix":""},"clientModules":{"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/layout-router.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/layout-router.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/render-from-template-context.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-page.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-page.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-segment.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-segment.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/framework/boundary-components.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/metadata/generate/icon-mark.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/instant-validation/boundary.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/instant-validation/boundary.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/next-devtools/userspace/app/segment-explorer-node.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/auth/GuestAuthBootstrap.tsx":{"id":"[project]/src/components/auth/GuestAuthBootstrap.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/app-download.tsx":{"id":"[project]/src/components/common/app-download.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/layout/HeaderNav.tsx":{"id":"[project]/src/components/layout/HeaderNav.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/MobileNavigationDrawer.tsx":{"id":"[project]/src/components/common/MobileNavigationDrawer.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/layout/SearchForm.tsx":{"id":"[project]/src/components/layout/SearchForm.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/PageTools.tsx":{"id":"[project]/src/components/common/PageTools.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/StartupAdSource.tsx":{"id":"[project]/src/components/common/StartupAdSource.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/StartupAdDialog.tsx":{"id":"[project]/src/components/common/StartupAdDialog.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/Toast.tsx":{"id":"[project]/src/components/common/Toast.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/toast-host.tsx":{"id":"[project]/src/components/common/toast-host.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/layout/AppConfigDebug.tsx":{"id":"[project]/src/components/layout/AppConfigDebug.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/layout/HomeSurface.tsx":{"id":"[project]/src/components/layout/HomeSurface.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/layout/SiteNav.tsx":{"id":"[project]/src/components/layout/SiteNav.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/ListLoading.tsx":{"id":"[project]/src/components/common/ListLoading.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false},"[project]/src/components/common/EmptyState.tsx":{"id":"[project]/src/components/common/EmptyState.tsx [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js","/_next/static/chunks/src_components_common_EmptyState_tsx_06zmq8sncx29c._.js"],"async":false},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-client] (ecmascript)","name":"*","chunks":["/_next/static/chunks/src_05zrynp5ca6j-._.js","/_next/static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","/_next/static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","/_next/static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","/_next/static/chunks/14sg_%40heroui_react_dist_12ffc8h67kl1w._.js","/_next/static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","/_next/static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","/_next/static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","/_next/static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"async":false}},"ssrModuleMapping":{"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/layout-router.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/layout-router.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/render-from-template-context.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/render-from-template-context.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-page.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-page.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-segment.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-segment.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/framework/boundary-components.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/framework/boundary-components.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/metadata/generate/icon-mark.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/instant-validation/boundary.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/instant-validation/boundary.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/next-devtools/userspace/app/segment-explorer-node.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/auth/GuestAuthBootstrap.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/auth/GuestAuthBootstrap.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/app-download.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/app-download.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/layout/HeaderNav.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/HeaderNav.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/MobileNavigationDrawer.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/MobileNavigationDrawer.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/layout/SearchForm.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/SearchForm.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/PageTools.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/PageTools.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/StartupAdSource.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/StartupAdSource.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/StartupAdDialog.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/StartupAdDialog.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/Toast.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/Toast.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/toast-host.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/toast-host.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/layout/AppConfigDebug.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/AppConfigDebug.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/layout/HomeSurface.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/HomeSurface.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/layout/SiteNav.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/SiteNav.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/ListLoading.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/ListLoading.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js"],"async":false}},"[project]/src/components/common/EmptyState.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/EmptyState.tsx [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js","server/chunks/ssr/src_components_common_EmptyState_tsx_00mu3x5kt3oc-._.js"],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-ssr] (ecmascript)","name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__18ywrkw79w38d._.js","server/chunks/ssr/1cpi_next_dist_server_04z1sjzupw9ds._.js","server/chunks/ssr/1cpi_next_dist_client_1kvny3c96v9ki._.js","server/chunks/ssr/1cpi_next_dist_esm_client_1x-igelys_xn9._.js","server/chunks/ssr/1cpi_next_dist_esm_server_10r_q2mrrl329._.js","server/chunks/ssr/1cpi_next_dist_esm_0ca4z3a9czkn6._.js","server/chunks/ssr/1cpi_next_dist_0cco268ug20s3._.js","server/chunks/ssr/1cpi_next_navigation_0qvr4_u_1mhwp.js","server/chunks/ssr/18nd_tailwind-variants_dist_0cd_hp-eradtt._.js","server/chunks/ssr/0i2c_react-aria_dist_private_19vy8954t-x7d._.js","server/chunks/ssr/14sg_@heroui_react_dist_1_rxzia237o06._.js","server/chunks/ssr/1-s6_react-aria-components_dist_private_1wmczac8uazt6._.js","server/chunks/ssr/node_modules__pnpm_0pbsssqrvio4r._.js","server/chunks/ssr/1cpi_next_dist_client_components_0gi46is7gyfh_._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/layout-router.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/layout-router.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/render-from-template-context.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/render-from-template-context.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-page.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-page.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/client-segment.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/client-segment.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/framework/boundary-components.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/framework/boundary-components.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/lib/metadata/generate/icon-mark.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/instant-validation/boundary.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/instant-validation/boundary.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/next-devtools/userspace/app/segment-explorer-node.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/script.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/auth/GuestAuthBootstrap.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/auth/GuestAuthBootstrap.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/app-download.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/app-download.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/layout/HeaderNav.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/HeaderNav.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/MobileNavigationDrawer.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/MobileNavigationDrawer.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/layout/SearchForm.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/SearchForm.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/PageTools.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/PageTools.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/StartupAdSource.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/StartupAdSource.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/StartupAdDialog.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/StartupAdDialog.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/Toast.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/Toast.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/toast-host.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/toast-host.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/layout/AppConfigDebug.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/AppConfigDebug.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/layout/HomeSurface.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/HomeSurface.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/layout/SiteNav.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/layout/SiteNav.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/ListLoading.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/ListLoading.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/src/components/common/EmptyState.tsx [app-client] (ecmascript)":{"*":{"id":"[project]/src/components/common/EmptyState.tsx [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}},"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-client] (ecmascript)":{"*":{"id":"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (client reference proxy)","name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/layout":[{"path":"static/chunks/_0potb313406qi._.css","inlined":false}],"[project]/src/app/loading":[{"path":"static/chunks/_0potb313406qi._.css","inlined":false}],"[project]/src/app/not-found":[{"path":"static/chunks/_0potb313406qi._.css","inlined":false}],"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error":[{"path":"static/chunks/_0potb313406qi._.css","inlined":false}],"[project]/src/app/nav/page":[{"path":"static/chunks/_0potb313406qi._.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/layout":["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"[project]/src/app/loading":["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"[project]/src/app/not-found":["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js","static/chunks/src_components_common_EmptyState_tsx_06zmq8sncx29c._.js"],"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error":["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js"],"[project]/src/app/nav/page":["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js"]}}; + diff --git a/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js b/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js new file mode 100644 index 0000000..42274ac --- /dev/null +++ b/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js @@ -0,0 +1,1993 @@ +module.exports = [ +(()=>{"use strict";return[ +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page-runtime.js [app-rsc] (ecmascript)", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "createAppPageEntrypoint", + ()=>createAppPageEntrypoint +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$module$2e$compiled$2e$js__$5b$app$2d$ssr$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js [app-ssr] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$dev$2d$render$2d$context$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/dev-render-context.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$kind$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-kind.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$instrumentation$2f$utils$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/instrumentation/utils.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$tracer$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/tracer.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request-meta.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/constants.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$strip$2d$flight$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/strip-flight-headers.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$parse$2d$request$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/parse-request-headers.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$base$2d$http$2f$node$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/base-http/node.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$is$2d$rsc$2d$request$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-rsc-request.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$is$2d$non$2d$html$2d$sec$2d$fetch$2d$dest$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-non-html-sec-fetch-dest.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$entry$2d$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/entry-constants.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request/fallback-params.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$manifests$2d$singleton$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/manifests-singleton.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$streaming$2d$metadata$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/streaming-metadata.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$app$2d$paths$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/app-paths.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$routes$2f$app$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/routes/app.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$server$2d$action$2d$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/server-action-request-meta.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/app-router-headers.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$is$2d$bot$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/is-bot.js [app-rsc] (ecmascript, Next.js server utility) "); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$index$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/index.js [app-rsc] (ecmascript, Next.js server utility) "); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/types.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/fallback.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/render-result.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/constants.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$stream$2d$utils$2f$encoded$2d$tags$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/stream-utils/encoded-tags.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/send-payload.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$externals$5d2f$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js__$5b$external$5d$__$28$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js$2c$__cjs$29$__ = __turbopack_context__.i("[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$route$2d$cache$2d$key$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/route-cache-key.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$size$2d$limit$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/size-limit.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/postponed-request-body.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$url$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/url.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility) "); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$redirect$2d$status$2d$code$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/redirect-status-code.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$invariant$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/invariant-error.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$scheduler$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/scheduler.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$get$2d$segment$2d$param$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/get-segment-param.js [app-rsc] (ecmascript, Next.js server utility)"); +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +; +/** + * Builds the cache key for the most complete prerenderable shell we can derive + * from the shell that matched this request. Only params that can still be + * filled by `generateStaticParams` are substituted; fully dynamic params stay + * as placeholders so a request like `/c/foo` can complete `/[one]/[two]` into + * `/c/[two]` rather than `/c/foo`. + */ function buildCompletedShellCacheKey(fallbackPathname, remainingPrerenderableParams, params) { + const prerenderableParamsByName = new Map(remainingPrerenderableParams.map((param)=>[ + param.paramName, + param + ])); + return fallbackPathname.split('/').map((segment)=>{ + const segmentParam = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$get$2d$segment$2d$param$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getSegmentParam"])(segment); + if (!segmentParam) { + return segment; + } + const remainingParam = prerenderableParamsByName.get(segmentParam.paramName); + if (!remainingParam) { + return segment; + } + const value = params == null ? void 0 : params[remainingParam.paramName]; + if (!value) { + return segment; + } + const encodedValue = Array.isArray(value) ? value.map((item)=>encodeURIComponent(item)).join('/') : encodeURIComponent(value); + return segment.replace((0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["buildDynamicSegmentPlaceholder"])(remainingParam), encodedValue); + }).join('/') || '/'; +} +function createAppPageEntrypoint({ tree, page, pathname, require: __next_app_require__, loadChunk: __next_app_load_chunk__, interopDefault }) { + const __next_app__ = { + require: __next_app_require__, + loadChunk: __next_app_load_chunk__ + }; + const routeModule = new __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$module$2e$compiled$2e$js__$5b$app$2d$ssr$5d$__$28$ecmascript$29$__["AppPageRouteModule"]({ + definition: { + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$kind$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RouteKind"].APP_PAGE, + page, + pathname, + // The following aren't used in production. + bundlePath: '', + filename: '', + appPaths: [] + }, + userland: { + loaderTree: tree + }, + distDir: ("TURBOPACK compile-time value", ".next-dev/dev") || '', + relativeProjectDir: ("TURBOPACK compile-time value", "") || '' + }); + let srcPage = page; + // turbopack doesn't normalize `/index` in the page name + // so we need to to process dynamic routes properly + // TODO: fix turbopack providing differing value from webpack + if ("TURBOPACK compile-time truthy", 1) { + srcPage = srcPage.replace(/\/index$/, '') || '/'; + } else if (srcPage === '/index') { + // we always normalize /index specifically + srcPage = '/'; + } + const normalizedSrcPage = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$app$2d$paths$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["normalizeAppPath"])(srcPage); + // The legacy prerender manifest says whether unmatched values return 404, + // but does not list all of the route's parameter names. Read them from the + // route pattern once, since the names do not depend on the request. + const routeParamNames = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$routes$2f$app$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["parseNormalizedAppRoute"])(normalizedSrcPage).dynamicSegments.map((segment)=>segment.param.paramName); + async function handler(req, res, ctx) { + var _this, _prerenderInfo_fallbackRouteParams, _prerenderInfo_fallbackRootParams, _prerenderInfo_fallbackRouteParams1, _prerenderInfo_fallbackRouteParams2; + if (ctx.requestMeta) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["setRequestMeta"])(req, ctx.requestMeta); + } + if (routeModule.isDev) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint()); + } + const isMinimalMode = Boolean((0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'minimalMode')); + // Capture the request target before `prepare()` runs, since route + // normalization (e.g. `normalizeCdnUrl`) rewrites `req.url` and would + // otherwise change the `http.target` span attribute. This mirrors + // `BaseServer.handleRequest`, which records the target before normalization. + const httpTarget = req.url; + const multiZoneDraftMode = ("TURBOPACK compile-time value", false); + const prepareResult = await routeModule.prepare(req, res, { + srcPage, + multiZoneDraftMode + }); + if (!prepareResult) { + res.statusCode = 400; + res.end('Bad Request'); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve()); + return null; + } + const { buildId, query, params, pageIsDynamic, buildManifest, nextFontManifest, reactLoadableManifest, serverActionsManifest, clientReferenceManifest, subresourceIntegrityManifest, prerenderManifest, prefetchHintsManifest, isDraftMode, resolvedPathname, revalidateOnlyGenerated, routerServerContext, nextConfig, parsedUrl, interceptionRoutePatterns, deploymentId, clientAssetToken, previewProps } = prepareResult; + let { isOnDemandRevalidate } = prepareResult; + // We use the resolvedPathname instead of the parsedUrl.pathname because it + // is not rewritten as resolvedPathname is. This will ensure that the correct + // prerender info is used instead of using the original pathname as the + // source. + const prerenderMatch = routeModule.match(resolvedPathname, prerenderManifest); + const prerenderInfo = (prerenderMatch == null ? void 0 : prerenderMatch.route) ?? null; + // A sibling's prerender must not change this route's rendering mode or + // supply prefetch metadata for its response. + const prerenderedRoute = routeModule.isDev || (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$route$2d$cache$2d$key$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["isRouteCacheOwner"])(resolvedPathname, routeModule.cacheOwner, prerenderManifest.routes[resolvedPathname]) ? prerenderManifest.routes[resolvedPathname] : undefined; + const isPrerendered = Boolean(prerenderedRoute); + const userAgent = req.headers['user-agent'] || ''; + const botType = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$router$2f$utils$2f$is$2d$bot$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__$3c$locals$3e$__["getBotType"])(userAgent); + /** + * If true, this indicates that the request being made is for an app + * prefetch request. + */ const isPrefetchRSCRequest = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'isPrefetchRSCRequest') ?? req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_ROUTER_PREFETCH_HEADER"]] === '1' // exclude runtime prefetches, which use '2' + ; + // NOTE: Don't delete headers[RSC] yet, it still needs to be used in renderToHTML later + const isRSCRequest = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'isRSCRequest') ?? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$is$2d$rsc$2d$request$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["isRSCRequestHeader"])(req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_HEADER"]]); + const isPossibleServerAction = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$server$2d$action$2d$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getIsPossibleServerAction"])(req); + // For subresource requests (e.g. images or fonts), return plain text 404 + // instead of rendering the not-found route. + if (normalizedSrcPage === __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$entry$2d$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["UNDERSCORE_NOT_FOUND_ROUTE"] && (req.method === 'GET' || req.method === 'HEAD') && !isRSCRequest && (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$is$2d$non$2d$html$2d$sec$2d$fetch$2d$dest$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["isNonHtmlSecFetchDest"])(req.headers['sec-fetch-dest'])) { + res.statusCode = 404; + res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate'); + res.setHeader('Content-Type', 'text/plain; charset=utf-8'); + res.end('Not Found'); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve()); + return null; + } + /** + * If the route being rendered is an app page, and the ppr feature has been + * enabled, then the given route _could_ support PPR. + */ const couldSupportPPR = Boolean(nextConfig.cacheComponents); + // Stash postponed state for server actions when in minimal mode. + // We extract it here so the RDC is available for the re-render after the action completes. + const resumeStateLengthHeader = req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_RESUME_STATE_LENGTH_HEADER"]]; + if (!(0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'postponed') && isMinimalMode && couldSupportPPR && isPossibleServerAction && resumeStateLengthHeader && typeof resumeStateLengthHeader === 'string') { + const stateLength = parseInt(resumeStateLengthHeader, 10); + const { maxPostponedStateSize, maxPostponedStateSizeBytes } = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getMaxPostponedStateSize"])(nextConfig.experimental.maxPostponedStateSize); + if (!isNaN(stateLength) && stateLength > 0) { + var _nextConfig_experimental_serverActions; + if (stateLength > maxPostponedStateSizeBytes) { + res.statusCode = 413; + res.end((0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getPostponedStateExceededErrorMessage"])(maxPostponedStateSize)); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve()); + return null; + } + // Calculate max total body size to prevent buffering excessively large + // payloads before the action handler checks. We use stateLength (not + // maxPostponedStateSizeBytes) so the postponed state doesn't eat into + // the action body budget - it's already validated above. + const defaultActionBodySizeLimit = '1 MB'; + const actionBodySizeLimit = ((_nextConfig_experimental_serverActions = nextConfig.experimental.serverActions) == null ? void 0 : _nextConfig_experimental_serverActions.bodySizeLimit) ?? defaultActionBodySizeLimit; + const actionBodySizeLimitBytes = actionBodySizeLimit !== defaultActionBodySizeLimit ? __turbopack_context__.r("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/compiled/bytes/index.js [app-rsc] (ecmascript)").parse(actionBodySizeLimit) : 1024 * 1024 // 1 MB + ; + const maxTotalBodySize = stateLength + actionBodySizeLimitBytes; + const fullBody = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["readBodyWithSizeLimit"])(req, maxTotalBodySize); + if (fullBody === null) { + res.statusCode = 413; + res.end(`Request body exceeded limit. ` + `To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit`); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve()); + return null; + } + if (fullBody.length >= stateLength) { + // Extract postponed state from the beginning + const postponedState = fullBody.subarray(0, stateLength).toString('utf8'); + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'postponed', postponedState); + // Store the remaining action body for the action handler + const actionBody = fullBody.subarray(stateLength); + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'actionBody', actionBody); + } else { + throw new Error(`invariant: expected ${stateLength} bytes of postponed state but only received ${fullBody.length} bytes`); + } + } + } + if (typeof (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'postponed') !== 'string' && couldSupportPPR && req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_RESUME_HEADER"]] === '1' && req.method === 'POST') { + const { maxPostponedStateSize, maxPostponedStateSizeBytes } = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getMaxPostponedStateSize"])(nextConfig.experimental.maxPostponedStateSize); + // Decode the postponed state from the request body, it will come as + // an array of buffers, so collect them and then concat them to form + // the string. + const body = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["readBodyWithSizeLimit"])(req, maxPostponedStateSizeBytes); + if (body === null) { + res.statusCode = 413; + res.end((0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$postponed$2d$request$2d$body$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getPostponedStateExceededErrorMessage"])(maxPostponedStateSize)); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve()); + return null; + } + const postponed = body.toString('utf8'); + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'postponed', postponed); + } + // When enabled, this will allow the use of the `?__nextppronly` query to + // enable debugging of the static shell. + const hasDebugStaticShellQuery = ("TURBOPACK compile-time value", false) === '1' && typeof query.__nextppronly !== 'undefined' && couldSupportPPR; + // When enabled, this will allow the use of the `?__nextppronly` query + // to enable debugging of the fallback shell. + const hasDebugFallbackShellQuery = hasDebugStaticShellQuery && query.__nextppronly === 'fallback'; + // Whether the testing API is exposed (dev mode or explicit flag) + const exposeTestingApi = nextConfig.cacheComponents === true && (routeModule.isDev === true || nextConfig.experimental.exposeTestingApiInProductionBuild === true); + // Enable the Instant Navigation Testing API. Renders only the prefetched + // portion of the page, excluding dynamic content. This allows tests to + // assert on the prefetched UI state deterministically. + // + // The instant test cookie is sent automatically with all requests while a + // navigation lock is held. We treat a request as a test render when the + // cookie is present and either: + // - it's a document request (no RSC header) — covers MPA navigations + // - it's a prefetch RSC request — covers client-side prefetches + // Regular RSC navigation requests proceed normally even during a locked + // scope; blocking happens on the client side. + const isInstantNavigationTest = exposeTestingApi && typeof req.headers.cookie === 'string' && req.headers.cookie.includes(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_INSTANT_TEST_COOKIE"] + '=') && (!(0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$is$2d$rsc$2d$request$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["isRSCRequestHeader"])(req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_HEADER"]]) || req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_ROUTER_PREFETCH_HEADER"]] === '1'); + // This page supports PPR if it is marked as being `PARTIALLY_STATIC` in the + // prerender manifest and this is an app page. + const isRoutePPREnabled = couldSupportPPR && (((_this = prerenderManifest.routes[normalizedSrcPage] ?? prerenderManifest.dynamicRoutes[normalizedSrcPage]) == null ? void 0 : _this.renderingMode) === 'PARTIALLY_STATIC' || // Ideally we'd want to check the appConfig to see if this page has PPR + // enabled or not, but that would require plumbing the appConfig through + // to the server during development. We assume that the page supports it + // but only during development or when the testing API is exposed. + (hasDebugStaticShellQuery || isInstantNavigationTest) && (exposeTestingApi || (routerServerContext == null ? void 0 : routerServerContext.experimentalTestProxy) === true)); + const isDebugStaticShell = (hasDebugStaticShellQuery || isInstantNavigationTest) && isRoutePPREnabled; + // We should enable debugging dynamic accesses when the static shell + // debugging has been enabled and we're also in development mode. + const isDebugDynamicAccesses = isDebugStaticShell && routeModule.isDev === true; + const isDebugFallbackShell = hasDebugFallbackShellQuery && isRoutePPREnabled; + const isDebugPrerender = isDebugStaticShell || isDebugDynamicAccesses || isDebugFallbackShell; + // If we're in minimal mode, then try to get the postponed information from + // the request metadata. If available, use it for resuming the postponed + // render. + const minimalPostponed = isRoutePPREnabled ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'postponed') : undefined; + const hasPostponedState = typeof minimalPostponed === 'string'; + // If PPR is enabled, and this is a RSC request (but not a prefetch), then + // we can use this fact to only generate the flight data for the request + // because we can't cache the HTML (as it's also dynamic). + const staticPrefetchDataRoute = prerenderedRoute == null ? void 0 : prerenderedRoute.prefetchDataRoute; + const isEnsureStaticPage = (prerenderInfo == null ? void 0 : prerenderInfo._isEnsureStaticPage) === true; + let isDynamicRSCRequest = isRoutePPREnabled && isRSCRequest && !isPrefetchRSCRequest && // If generated at build time, treat the RSC request as static + // so we can serve the prebuilt .rsc without a dynamic render. + // Only do this for routes that have a concrete prefetchDataRoute. + !staticPrefetchDataRoute && // Do not serve `ensureStatic = "navigation"` with a dynamic response, + // (we want to do a blocking prerender instead) + // TODO(ensure-static): express this in a cleaner way + !isEnsureStaticPage; + // During a PPR revalidation, the RSC request is not dynamic if postponed + // metadata is absent. An empty string represents a resume request without + // postponed state, which should perform a full dynamic render. + if (isMinimalMode) { + isDynamicRSCRequest = isDynamicRSCRequest && hasPostponedState; + } + // Need to read this before it's stripped by stripFlightHeaders. We don't + // need to transfer it to the request meta because it's only read + // within this function; the static segment data should have already been + // generated, so we will always either return a static response or a 404. + const rawSegmentPrefetchHeader = req.headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_ROUTER_SEGMENT_PREFETCH_HEADER"]]; + const segmentPrefetchHeader = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'segmentPrefetchRSCRequest') ?? (isPrefetchRSCRequest ? typeof rawSegmentPrefetchHeader === 'string' ? rawSegmentPrefetchHeader : Array.isArray(rawSegmentPrefetchHeader) ? rawSegmentPrefetchHeader[0] : undefined : undefined); + // TODO: investigate existing bug with shouldServeStreamingMetadata always + // being true for a revalidate due to modifying the base-server this.renderOpts + // when fixing this to correct logic it causes hydration issue since we set + // serveStreamingMetadata to true during export + const serveStreamingMetadata = !userAgent ? true : (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$streaming$2d$metadata$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["shouldServeStreamingMetadata"])(userAgent, nextConfig.htmlLimitedBots); + // A PPR shell has already closed its head before the dynamic render resumes. + // Blocking metadata resolved during the resume would therefore be emitted + // after the head, where HTML-limited bots cannot observe it. Bypass the + // shell so blocking metadata is included in the initial document head. + const shouldForceDynamicPPRRender = isRoutePPREnabled && !serveStreamingMetadata; + const isSSG = Boolean((prerenderInfo || isPrerendered || prerenderManifest.routes[normalizedSrcPage]) && !shouldForceDynamicPPRRender); + // When a page supports cacheComponents, we can support RDC for Navigations + const supportsRDCForNavigations = isRoutePPREnabled && nextConfig.cacheComponents === true; + // In development, we always want to generate dynamic HTML. + const supportsDynamicResponse = // a data request, in which case we only produce static HTML. + routeModule.isDev === true || // If this is a draft mode request, it supports dynamic HTML. + isDraftMode || // If this is not SSG or does not have static paths, then it supports + // dynamic HTML. + !isSSG || // If this request has provided postponed data, it supports dynamic + // HTML. + hasPostponedState || // If this handler supports onCacheEntryV2, then we can only support + // dynamic responses if it's a dynamic RSC request and not in minimal mode. If it + // doesn't support it we must fallback to the default behavior. + (supportsRDCForNavigations && (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'onCacheEntryV2') ? // RSC request, we'll pass the minimal postponed data to the render + // which will trigger the `supportsDynamicResponse` to be true. + isDynamicRSCRequest && !isMinimalMode : isDynamicRSCRequest); + const remainingPrerenderableParams = (prerenderInfo == null ? void 0 : prerenderInfo.remainingPrerenderableParams) ?? []; + const remainingFallbackRouteParams = nextConfig.cacheComponents ? (prerenderInfo == null ? void 0 : (_prerenderInfo_fallbackRouteParams = prerenderInfo.fallbackRouteParams) == null ? void 0 : _prerenderInfo_fallbackRouteParams.filter((param)=>!remainingPrerenderableParams.some((prerenderableParam)=>prerenderableParam.paramName === param.paramName))) ?? [] : []; + // Concrete optional routes like `/optional-catchall` can still match their + // generic shell entry (eg /optional-catchall/[[...slug]]) in the prerender manifest. + // If the omitted param already resolved to a real prerendered path, keep serving that concrete result. + const hasOmittedConcreteFallbackParam = isPrerendered && remainingPrerenderableParams.some((param)=>{ + const value = params == null ? void 0 : params[param.paramName]; + return value == null || Array.isArray(value) && value.length === 0; + }); + const hasUnresolvedRootFallbackParams = (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === null && (((_prerenderInfo_fallbackRootParams = prerenderInfo.fallbackRootParams) == null ? void 0 : _prerenderInfo_fallbackRootParams.length) ?? 0) > 0; + // SSG writes and navigation RDC reads use the same shell key. Completion + // uses the matched shell rather than the fully resolved pathname. A request + // for `/prefix/c/foo` can complete `/prefix/[one]/[two]` to + // `/prefix/c/[two]`. This avoids creating an entry for every value of + // `two`. + // + // The completed-shell key also applies when unresolved root params require + // a blocking render. A source shell cannot be shared across root branches. + // Completion resolves the params into the key as follows: + // - Root params and other prerenderable params use concrete values. + // - Never-prerenderable params remain placeholders. + // The values of those placeholder params must not partition the cache. + const fallbackPathname = prerenderMatch ? typeof (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === 'string' ? prerenderInfo.fallback : prerenderMatch.source : null; + let shellCacheKey = null; + if (nextConfig.cacheComponents && // A closed matcher has no fallback shell. Its generated outputs must + // retain their concrete cache keys. + (prerenderInfo == null ? void 0 : prerenderInfo.fallback) !== false && // Never-prerenderable params must stay out of the key even when Partial + // Prefetching is disabled. + (nextConfig.partialPrefetching || remainingFallbackRouteParams.length > 0) && fallbackPathname && (prerenderInfo == null ? void 0 : (_prerenderInfo_fallbackRouteParams1 = prerenderInfo.fallbackRouteParams) == null ? void 0 : _prerenderInfo_fallbackRouteParams1.length) && !hasOmittedConcreteFallbackParam) { + const cacheKey = buildCompletedShellCacheKey(fallbackPathname, remainingPrerenderableParams, params); + if (cacheKey !== fallbackPathname || remainingFallbackRouteParams.length > 0) { + shellCacheKey = cacheKey; + } + } + let ssgCacheKey = null; + let usesShellCacheKey = false; + if (!isDraftMode && isSSG && !supportsDynamicResponse && !isPossibleServerAction && !hasPostponedState && !isDynamicRSCRequest) { + if (shellCacheKey !== null) { + // Normal fallback serving uses the source shell's separate cache + // lookup. Explicit revalidation skips that path, so it must write the + // source key here even when no params can be completed. + if (shellCacheKey !== fallbackPathname || isOnDemandRevalidate) { + ssgCacheKey = shellCacheKey; + usesShellCacheKey = true; + } + } else { + ssgCacheKey = resolvedPathname; + } + } + // the staticPathKey differs from ssgCacheKey since + // ssgCacheKey is null in dev since we're always in "dynamic" + // mode in dev to bypass the cache. It can also be null for partial + // fallback shells that should remain shared and must not create a + // param-specific ISR entry, but we still need to honor fallback handling. + let staticPathKey = ssgCacheKey; + if (!staticPathKey && (routeModule.isDev || isSSG && pageIsDynamic && (prerenderInfo == null ? void 0 : (_prerenderInfo_fallbackRouteParams2 = prerenderInfo.fallbackRouteParams) == null ? void 0 : _prerenderInfo_fallbackRouteParams2.length) && // Server action requests must not get a staticPathKey, otherwise they + // enter the fallback rendering block below and return the cached HTML + // shell with the action result appended, instead of responding with + // just the RSC action result. + !isPossibleServerAction)) { + staticPathKey = resolvedPathname; + } + // If this is a request for an app path that should be statically generated + // and we aren't in the edge runtime, strip the flight headers so it will + // generate the static response. + if (!routeModule.isDev && !isDraftMode && isSSG && isRSCRequest && !isDynamicRSCRequest) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$strip$2d$flight$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["stripFlightHeaders"])(req.headers); + } + const ComponentMod = { + ...__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__, + tree, + handler, + routeModule, + __next_app__ + }; + // Before rendering (which initializes component tree modules), we have to + // set the reference manifests to our global store so Server Action's + // encryption util can access to them at the top level of the page module. + if (serverActionsManifest && clientReferenceManifest) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$manifests$2d$singleton$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["setManifestsSingleton"])({ + page: srcPage, + clientReferenceManifest, + serverActionsManifest + }); + } + const method = req.method || 'GET'; + const tracer = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$tracer$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getTracer"])(); + const activeSpan = tracer.getActiveScopeSpan(); + const isWrappedByNextServer = Boolean(routerServerContext == null ? void 0 : routerServerContext.isWrappedByNextServer); + const render404 = async ()=>{ + // TODO: should route-module itself handle rendering the 404 + if (routerServerContext == null ? void 0 : routerServerContext.render404) { + await routerServerContext.render404(req, res, parsedUrl, false); + } else { + res.statusCode = 404; + res.end('This page could not be found'); + } + return null; + }; + try { + const varyHeader = routeModule.getVaryHeader(resolvedPathname, interceptionRoutePatterns); + res.setHeader('Vary', varyHeader); + let parentSpan; + const invokeRouteModule = async (span, context, renderOperation)=>{ + const nextReq = new __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$base$2d$http$2f$node$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NodeNextRequest"](req); + const nextRes = new __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$base$2d$http$2f$node$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NodeNextResponse"](res); + const result = renderOperation === 'prerender' ? routeModule.prerender(nextReq, nextRes, context) : routeModule.render(nextReq, nextRes, context); + return result.finally(()=>{ + if (!span) return; + span.setAttributes({ + 'http.status_code': res.statusCode, + 'next.rsc': isRSCRequest + }); + if (res.statusCode && res.statusCode >= 500) { + // For 5xx status codes: SHOULD be set to 'Error' span status. + // x-ref: https://opentelemetry.io/docs/specs/semconv/http/http-spans/#status + span.setStatus({ + code: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$tracer$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["SpanStatusCode"].ERROR + }); + // For span status 'Error', SHOULD set 'error.type' attribute. + span.setAttribute('error.type', res.statusCode.toString()); + } + const rootSpanAttributes = tracer.getRootSpanAttributes(); + // We were unable to get attributes, probably OTEL is not enabled + if (!rootSpanAttributes) { + return; + } + if (rootSpanAttributes.get('next.span_type') !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["BaseServerSpan"].handleRequest) { + console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`); + return; + } + const route = rootSpanAttributes.get('next.route') || normalizedSrcPage; + const name = isRSCRequest ? `RSC ${method} ${route}` : `${method} ${route}`; + span.setAttributes({ + 'next.route': route, + 'http.route': route, + 'next.span_name': name + }); + span.updateName(name); + // Propagate http.route to the parent span if one exists (e.g. + // a platform-created HTTP span in adapter deployments). + if (parentSpan && parentSpan !== span) { + parentSpan.setAttribute('http.route', route); + parentSpan.updateName(name); + } + }); + }; + const incrementalCache = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'incrementalCache') || await routeModule.getIncrementalCache(req, nextConfig, previewProps, prerenderManifest, isMinimalMode); + incrementalCache == null ? void 0 : incrementalCache.resetRequestCache(); + globalThis.__incrementalCache = incrementalCache; + const doRender = async ({ span, postponed, fallbackRouteParams, renderOperation, allowEmptyStaticShell })=>{ + var _prerenderManifest_dynamicRoutes_normalizedSrcPage, _prerenderManifest_dynamicRoutes_normalizedSrcPage1; + // A static page may have stripped Flight headers before reaching this + // render. Parse only when the response cache invokes the render. + const parsedRequestHeaders = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$parse$2d$request$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["parseRequestHeaders"])(req.headers, { + isRoutePPREnabled, + previewModeId: previewProps == null ? void 0 : previewProps.previewModeId + }); + const routeMatch = { + resolvedPathname + }; + const dev = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$dev$2d$render$2d$context$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createDevRenderContext"])(req); + const context = { + query, + params, + page: normalizedSrcPage, + routeMatch, + parsedRequestHeaders, + sharedContext: { + buildId, + deploymentId, + clientAssetToken + }, + dev, + fallbackRouteParams, + renderOpts: { + App: ()=>null, + Document: ()=>null, + pageConfig: {}, + ComponentMod, + Component: interopDefault(ComponentMod), + params, + routeModule, + page: srcPage, + postponed, + allowEmptyStaticShell, + serveStreamingMetadata, + supportsDynamicResponse: renderOperation === 'render' && (typeof postponed === 'string' || supportsDynamicResponse), + buildManifest, + nextFontManifest, + reactLoadableManifest, + subresourceIntegrityManifest, + setCacheStatus: routerServerContext == null ? void 0 : routerServerContext.setCacheStatus, + setIsrStatus: routerServerContext == null ? void 0 : routerServerContext.setIsrStatus, + setReactDebugChannel: routerServerContext == null ? void 0 : routerServerContext.setReactDebugChannel, + sendErrorsToBrowser: routerServerContext == null ? void 0 : routerServerContext.sendErrorsToBrowser, + dir: ("TURBOPACK compile-time truthy", 1) ? require('path').join(/* turbopackIgnore: true */ process.cwd(), routeModule.relativeProjectDir) : "TURBOPACK unreachable", + isDraftMode, + botType, + isOnDemandRevalidate, + isPossibleServerAction, + assetPrefix: routeModule.getAssetPrefixForRender(routerServerContext, nextConfig.assetPrefix), + nextConfigOutput: nextConfig.output, + crossOrigin: nextConfig.crossOrigin, + trailingSlash: nextConfig.trailingSlash, + images: nextConfig.images, + previewProps, + enableTainting: nextConfig.experimental.taint, + reactMaxHeadersLength: nextConfig.reactMaxHeadersLength, + multiZoneDraftMode, + prefetchHints: prefetchHintsManifest, + // With dynamicParams = false, every parameter is restricted to the + // paths generated at build time. Advertise this even for allowed + // URLs. Read the current manifest here because dev updates it as + // routes compile. + notFoundParams: (routeModule.isDev ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'devNotFoundParams') : undefined) ?? ((_prerenderManifest_dynamicRoutes_normalizedSrcPage = prerenderManifest.dynamicRoutes[normalizedSrcPage]) == null ? void 0 : _prerenderManifest_dynamicRoutes_normalizedSrcPage.notFoundParams) ?? (((_prerenderManifest_dynamicRoutes_normalizedSrcPage1 = prerenderManifest.dynamicRoutes[normalizedSrcPage]) == null ? void 0 : _prerenderManifest_dynamicRoutes_normalizedSrcPage1.fallback) === false ? routeParamNames : undefined), + incrementalCache, + cacheLifeProfiles: nextConfig.cacheLife, + staticPageGenerationTimeout: nextConfig.staticPageGenerationTimeout, + basePath: nextConfig.basePath, + serverActions: nextConfig.experimental.serverActions, + logServerFunctions: typeof nextConfig.logging === 'object' && Boolean(nextConfig.logging.serverFunctions), + ...isDebugStaticShell || isDebugDynamicAccesses || isDebugFallbackShell ? { + isBuildTimePrerendering: true, + isDebugDynamicAccesses: isDebugDynamicAccesses + } : {}, + cacheComponents: Boolean(nextConfig.cacheComponents), + partialPrefetching: nextConfig.partialPrefetching, + // A fallback shell can only be upgraded to a concrete version if at + // least one of its fallback params is a `generateStaticParams` + // candidate (`remainingPrerenderableParams`), and only when Partial + // Prefetching is enabled (the upgrade itself is gated on it above). + // This gates whether the per-segment prefetch responses are flagged + // `isUpgradeableISRFallback`; without an upgrade to wait for, the + // client should not retry the prefetch. + isFallbackUpgradeable: Boolean(nextConfig.partialPrefetching) && remainingPrerenderableParams.length > 0, + validationLevel: nextConfig.experimental.instantInsights.validationLevel, + experimental: { + isRoutePPREnabled, + expireTime: nextConfig.expireTime, + staleTimes: nextConfig.experimental.staleTimes, + dynamicOnHover: Boolean(nextConfig.experimental.dynamicOnHover), + optimisticRouting: Boolean(nextConfig.experimental.optimisticRouting), + parallelRouteMetadata: Boolean(nextConfig.experimental.parallelRouteMetadata), + inlineCss: Boolean(nextConfig.experimental.inlineCss), + prefetchInlining: nextConfig.experimental.prefetchInlining ?? false, + authInterrupts: Boolean(nextConfig.experimental.authInterrupts), + reactBrowserBailout: Boolean(nextConfig.experimental.reactBrowserBailout), + serverComponentsHmrCancellation: Boolean(nextConfig.experimental.serverComponentsHmrCancellation), + useCacheTimeout: nextConfig.experimental.useCacheTimeout, + durableUseCacheEntries: Boolean(nextConfig.experimental.durableUseCacheEntries), + cachedNavigations: nextConfig.experimental.cachedNavigations ?? false, + clientTraceMetadata: nextConfig.experimental.clientTraceMetadata || [], + clientParamParsingOrigins: nextConfig.experimental.clientParamParsingOrigins, + maxPostponedStateSizeBytes: (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$size$2d$limit$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["parseMaxPostponedStateSize"])(nextConfig.experimental.maxPostponedStateSize), + disableResumeDataCacheCompression: nextConfig.experimental.disableResumeDataCacheCompression ?? false, + exposeTestingApi + }, + waitUntil: ctx.waitUntil, + onClose: (cb)=>{ + res.on('close', cb); + }, + onAfterTaskError: ()=>{}, + onInstrumentationRequestError: (error, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext), + err: (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'invokeError') + } + }; + const result = await invokeRouteModule(span, context, renderOperation); + // Keep recovery output separate from successful response cache entries. + if ('error' in result) { + ; + req.fetchMetrics = result.result.metadata.fetchMetrics; + return result; + } + const { metadata } = result; + const { cacheControl, headers = {}, fetchTags: cacheTags, fetchMetrics } = metadata; + // Apply the `expireTime` fallback as soon as we have the render's + // `cacheControl`, so every downstream consumer (the cache stored via + // `incrementalCache.set`, the response Cache-Control header, the outgoing + // entry returned to `handleResponse`) sees a finalized `cacheControl` + // with a populated `expire`. This mirrors the build-time fallback in + // `build/index.ts` so we don't apply an expire to routes that opt out of + // revalidation entirely (`revalidate: false`) or that are dynamic + // (`revalidate: 0`). + if (cacheControl && cacheControl.revalidate !== false && cacheControl.revalidate > 0 && cacheControl.expire === undefined) { + cacheControl.expire = nextConfig.expireTime; + } + if (cacheTags) { + headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"]] = cacheTags; + } + // Pull any fetch metrics from the render onto the request. + ; + req.fetchMetrics = fetchMetrics; + // we don't throw static to dynamic errors in dev as isSSG + // is a best guess in dev since we don't have the prerender pass + // to know whether the path is actually static or not + if (isSSG && (cacheControl == null ? void 0 : cacheControl.revalidate) === 0 && !routeModule.isDev && !isRoutePPREnabled) { + const staticBailoutInfo = metadata.staticBailoutInfo; + const err = new Error(`Page changed from static to dynamic at runtime ${resolvedPathname}${(staticBailoutInfo == null ? void 0 : staticBailoutInfo.description) ? `, reason: ${staticBailoutInfo.description}` : ``}` + `\nsee more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`); + if (staticBailoutInfo == null ? void 0 : staticBailoutInfo.stack) { + const stack = staticBailoutInfo.stack; + err.stack = err.message + stack.substring(stack.indexOf('\n')); + } + throw err; + } + return { + value: { + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE, + html: result, + headers, + rscData: metadata.flightData, + postponed: metadata.postponed, + status: metadata.statusCode, + segmentData: metadata.segmentData + }, + cacheControl + }; + }; + const responseGenerator = async ({ hasResolved, previousCacheEntry: previousIncrementalCacheEntry, isRevalidating, span, forceStaticRender = false })=>{ + const isProduction = routeModule.isDev === false; + const didRespond = hasResolved || res.writableEnded; + const reportRevalidationError = (error)=>routeModule.onRequestError(req, error, { + routerKind: 'App Router', + routePath: srcPage, + routeType: 'render', + revalidateReason: (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$instrumentation$2f$utils$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRevalidateReason"])({ + isStaticGeneration: isSSG, + isOnDemandRevalidate + }) + }, false, routerServerContext); + try { + var _prerenderInfo_fallbackRouteParams; + // skip on-demand revalidate if cache is not present and + // revalidate-if-generated is set + if (isOnDemandRevalidate && revalidateOnlyGenerated && !previousIncrementalCacheEntry && !isMinimalMode) { + if (routerServerContext == null ? void 0 : routerServerContext.render404) { + await routerServerContext.render404(req, res); + } else { + res.statusCode = 404; + res.end('This page could not be found'); + } + return null; + } + let fallbackMode; + if (prerenderInfo) { + fallbackMode = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["parseFallbackField"])(prerenderInfo.fallback); + } + // A closed matcher rejects new paths, not regeneration of paths that + // were produced by the build. Their cache entries can be invalidated + // or evicted without removing the path from the build manifest. + if (fallbackMode === __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].NOT_FOUND && isPrerendered) { + fallbackMode = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].BLOCKING_STATIC_RENDER; + } + if (nextConfig.partialPrefetching && (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === null && // TODO(ensure-static): express this in a cleaner way + !isEnsureStaticPage && !prerenderInfo.isExplicitlyBlocking && !hasOmittedConcreteFallbackParam && !hasUnresolvedRootFallbackParams && remainingPrerenderableParams.length > 0) { + // Generic source shells without unresolved root params don't have a + // concrete fallback file of their own, so they're marked as blocking. + // When we can complete the shell into a more specific + // prerendered shell for this request, treat it like a prerender + // fallback so we can serve that shell instead of blocking on the full + // route. Root-param shells stay blocking, since unknown root branches + // should not inherit a shell from another generated branch. + fallbackMode = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].PRERENDER; + } + // When serving a request that requires blocking metadata, we want to + // use a blocking render instead of the prerendered fallback. Without + // PPR, preserve the existing behavior for built-in bots. + if (fallbackMode === __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].PRERENDER && (isRoutePPREnabled ? !serveStreamingMetadata : Boolean(botType))) { + fallbackMode = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].BLOCKING_STATIC_RENDER; + } + if ((previousIncrementalCacheEntry == null ? void 0 : previousIncrementalCacheEntry.isStale) === -1) { + isOnDemandRevalidate = true; + } + // On-demand revalidation blocks for admitted paths. Cache contents + // must not make an otherwise closed path eligible for generation. + if (isOnDemandRevalidate && fallbackMode !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].NOT_FOUND) { + fallbackMode = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].BLOCKING_STATIC_RENDER; + } + if (// below. Only production, forced background work, and explicit + // shell debugging may enter fallback prerender handling. + (isProduction || forceStaticRender || isDebugPrerender) && !isMinimalMode && fallbackMode !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$fallback$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["FallbackMode"].BLOCKING_STATIC_RENDER && staticPathKey && !didRespond && !isDraftMode && pageIsDynamic && (isProduction || !isPrerendered)) { + // When cacheComponents is enabled, we can use the fallback + // response if the request is not a dynamic RSC request because the + // RSC data when this feature flag is enabled does not contain any + // param references. Without this feature flag enabled, the RSC data + // contains param references, and therefore we can't use the fallback. + if (isRoutePPREnabled && (nextConfig.cacheComponents ? !isDynamicRSCRequest : !isRSCRequest)) { + const cacheKey = isProduction && typeof (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === 'string' ? prerenderInfo.fallback : normalizedSrcPage; + let fallbackRouteParams; + if (isProduction) { + // In production, rely on the prerender manifest's fallback + // entry — the authoritative set computed at build time by + // `buildAppStaticPaths`. + if (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams) { + fallbackRouteParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(prerenderInfo.fallbackRouteParams); + } else if (isDebugFallbackShell) { + fallbackRouteParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getFallbackRouteParams"])(normalizedSrcPage, routeModule); + } else { + fallbackRouteParams = null; + } + } else { + // Dev selects the source for static-shell debug renders from + // the per-URL `getStaticPaths` result. The dev prerender + // manifest does not contain these ad-hoc paths. `base-server` + // passes the source's fallback params in request metadata. + // These renders need the source set, not the completed target's + // potentially smaller `stagedFallbackParams`. + if (isDebugFallbackShell) { + fallbackRouteParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getFallbackRouteParams"])(normalizedSrcPage, routeModule); + } else if (isDebugStaticShell) { + fallbackRouteParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'fallbackRouteParams') ?? null; + } else { + fallbackRouteParams = null; + } + } + // Debug rendering stages the params of the selected source shell. + if (isDebugStaticShell) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'stagedFallbackParams', fallbackRouteParams); + } + // We use the response cache here to handle the revalidation and + // management of the fallback shell. + const fallbackResponse = await routeModule.handleResponse({ + cacheKey, + req, + nextConfig, + routeKind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$kind$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RouteKind"].APP_PAGE, + isFallback: true, + previewProps, + prerenderManifest, + isRoutePPREnabled, + responseGenerator: async ()=>doRender({ + span, + // We pass `undefined` as rendering a fallback isn't resumed + // here. + postponed: undefined, + // Always serve the shell that matched this request + // immediately. If there are still prerenderable params left, + // the background path below will complete the shell into a + // more specific cache entry for later requests. + fallbackRouteParams, + renderOperation: 'prerender', + allowEmptyStaticShell: isInstantNavigationTest || undefined + }), + waitUntil: ctx.waitUntil, + isMinimalMode + }); + if (fallbackResponse === null || 'error' in fallbackResponse) { + return fallbackResponse; + } + // Otherwise, if we did get a fallback response, we should return it. + if (fallbackResponse) { + if (!isMinimalMode && isRoutePPREnabled && // Upgrading a fallback shell into a more specific ISR entry is + // only done when Partial Prefetching is enabled, mirroring the + // `partialFallback` flag the adapter emits for deployments. + nextConfig.partialPrefetching && // Match the build-time contract: only fallback shells that can + // still be completed with prerenderable params should upgrade. + remainingPrerenderableParams.length > 0 && ssgCacheKey && incrementalCache && !isOnDemandRevalidate && !isDebugFallbackShell && // The testing API relies on deterministic shell behavior, so + // don't upgrade fallback shells in the background when it's + // exposed. + !exposeTestingApi && // Instant Navigation Testing API requests intentionally keep + // the route in shell mode; don't upgrade these in background. + !isInstantNavigationTest) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$scheduler$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["scheduleOnNextTick"])(async ()=>{ + const responseCache = routeModule.getResponseCache(req); + try { + // Only the params that were just specialized should be + // removed from the fallback render. Any remaining fallback + // params stay deferred so the revalidated result is a more + // specific shell (e.g. `/prefix/c/[two]`), not a fully + // concrete route (`/prefix/c/foo`). + const result = await responseCache.revalidate(ssgCacheKey, incrementalCache, isRoutePPREnabled, false, (c)=>{ + return doRender({ + span: c.span, + postponed: undefined, + fallbackRouteParams: remainingFallbackRouteParams.length > 0 ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(remainingFallbackRouteParams) : null, + renderOperation: 'prerender' + }); + }, null, hasResolved, ctx.waitUntil); + if (result !== null && 'error' in result) { + throw result.error; + } + } catch (err) { + console.error('Error revalidating the page in the background', err); + } + }); + } + // Remove the cache control from the response to prevent it from being + // used in the surrounding cache. + delete fallbackResponse.cacheControl; + return fallbackResponse; + } + } + } + // Only requests that aren't revalidating can be resumed. If we have the + // minimal postponed data, then we should resume the render with it. + let postponed = !isOnDemandRevalidate && !isRevalidating && minimalPostponed ? minimalPostponed : undefined; + let hasFullyStaticCacheEntry = false; + if (// use the postponed data from the static render (if available). This + // ensures that we can utilize the resume data cache (RDC) from the static + // render to ensure that the data is consistent between the static and + // dynamic renders (for navigations) or when re-rendering after a server + // action. + // Only enable RDC for Navigations if the feature is enabled. + supportsRDCForNavigations && ("TURBOPACK compile-time value", "nodejs") !== 'edge' && !isMinimalMode && incrementalCache && // Include both dynamic RSC requests (navigations) and server actions + (isDynamicRSCRequest || isPossibleServerAction) && // We don't typically trigger an on-demand revalidation for dynamic RSC + // requests, as we're typically revalidating the page in the background + // instead. However, if the cache entry is stale, we should trigger a + // background revalidation on dynamic RSC requests. This prevents us + // from entering an infinite loop of revalidations. + !forceStaticRender) { + const incrementalCacheKey = shellCacheKey ?? resolvedPathname; + const incrementalCacheEntry = await incrementalCache.get(incrementalCacheKey, { + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["IncrementalCacheKind"].APP_PAGE, + route: routeModule.cacheOwner, + isRoutePPREnabled: true, + isFallback: false + }); + // If the cache entry is found, we should use the postponed data from + // the cache. + if (incrementalCacheEntry && incrementalCacheEntry.value && incrementalCacheEntry.value.kind === __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE) { + // CRITICAL: we're assigning the postponed data from the cache entry + // here as we're using the RDC to resume the render. + postponed = incrementalCacheEntry.value.postponed; + hasFullyStaticCacheEntry = postponed === undefined; + // If the cache entry is stale, we should trigger a background + // revalidation so that subsequent requests will get a fresh response. + if (incrementalCacheEntry && // We want to trigger this flow if the cache entry is stale and if + // the requested revalidation flow is either foreground or + // background. + (incrementalCacheEntry.isStale === -1 || incrementalCacheEntry.isStale === true)) { + // We want to schedule this on the next tick to ensure that the + // render is not blocked on it. + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$scheduler$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["scheduleOnNextTick"])(async ()=>{ + const responseCache = routeModule.getResponseCache(req); + try { + const result = await responseCache.revalidate(incrementalCacheKey, incrementalCache, isRoutePPREnabled, false, (c)=>responseGenerator({ + ...c, + // CRITICAL: we need to set this to true as we're + // revalidating in the background and typically this dynamic + // RSC request is not treated as static. + forceStaticRender: true + }), // previous cache entry here (which is stale) will switch on + // isOnDemandRevalidate and break the prerendering. + null, hasResolved, ctx.waitUntil); + if (result !== null && 'error' in result) { + throw result.error; + } + } catch (err) { + console.error('Error revalidating the page in the background', err); + } + }); + } + } + } + // When we're in minimal mode, if we're trying to debug the static shell, + // return an empty App Page response instead of resuming the dynamic + // render. The static shell has already been streamed by the platform. + if ((isDebugStaticShell || isDebugDynamicAccesses) && typeof postponed !== 'undefined') { + return { + cacheControl: { + revalidate: 1, + expire: undefined + }, + value: { + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE, + html: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic('', isRSCRequest ? __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_CONTENT_TYPE_HEADER"] : __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["HTML_CONTENT_TYPE_HEADER"]), + rscData: undefined, + postponed, + segmentData: undefined, + headers: undefined, + status: undefined + } + }; + } + const placeholderFallbackRouteParams = // defer only the unresolved subset instead of forcing all fallback + // params to suspend. + !routeModule.isDev && pageIsDynamic && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams) ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getPlaceholderFallbackRouteParams"])(params, prerenderInfo.fallbackRouteParams) : null; + const fallbackRouteParamsForRender = placeholderFallbackRouteParams && placeholderFallbackRouteParams.length > 0 ? placeholderFallbackRouteParams : prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams; + const hasPlaceholderFallbackRouteParams = placeholderFallbackRouteParams != null && placeholderFallbackRouteParams.length > 0; + // When route-module.ts resolved partial nxtP* params during + // background revalidation, filter fallbackRouteParams to only the + // params that are still unresolved. This lets doRender produce an + // intermediate PPR shell that suspends only for those params. + let effectiveFallbackRouteParams = null; + if (nextConfig.cacheComponents && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams)) { + const resolvedKeys = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'resolvedRouteParamKeys'); + if (resolvedKeys && resolvedKeys.size > 0) { + effectiveFallbackRouteParams = prerenderInfo.fallbackRouteParams.filter((param)=>!resolvedKeys.has(param.paramName)); + } + } + const fallbackRouteParams = // non-prerendered URL, use the prerender manifest's fallback route + // params which correctly identifies which params are unknown. + (isProduction && (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'renderFallbackShell') || hasPlaceholderFallbackRouteParams || isDebugStaticShell && !isPrerendered) && fallbackRouteParamsForRender ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(fallbackRouteParamsForRender) : // prerender suspends only for the unresolved params. + effectiveFallbackRouteParams && effectiveFallbackRouteParams.length > 0 && effectiveFallbackRouteParams.length < ((prerenderInfo == null ? void 0 : (_prerenderInfo_fallbackRouteParams = prerenderInfo.fallbackRouteParams) == null ? void 0 : _prerenderInfo_fallbackRouteParams.length) ?? 0) ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(effectiveFallbackRouteParams) : // shared entry. Per-request resumes resolve those params + // instead. Blocking renders and RSC-triggered revalidations + // both need this restriction. + // + // The serving modes obtain the unresolved params differently: + // - `next start` defers them in this branch. + // - Minimal mode uses the platform's placeholders above. + // The platform strips never-prerenderable param values before + // calling the origin. + !isMinimalMode && (usesShellCacheKey || forceStaticRender && shellCacheKey !== null) && remainingFallbackRouteParams.length > 0 ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(remainingFallbackRouteParams) : isDebugFallbackShell ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getFallbackRouteParams"])(normalizedSrcPage, routeModule) : null; + // Staging defers params without replacing their values with opaque + // placeholders. A resumed render reads the selected artifact's mask + // from its postponed state. + if ((isProduction || isDebugStaticShell) && nextConfig.cacheComponents) { + let stagedFallbackParams; + if (hasPlaceholderFallbackRouteParams) { + stagedFallbackParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(placeholderFallbackRouteParams); + } else if (isDebugStaticShell) { + stagedFallbackParams = fallbackRouteParams; + } else if (hasFullyStaticCacheEntry || isPrerendered) { + stagedFallbackParams = null; + } else if (postponed && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams)) { + // App-render uses this source-shell set only when the supplied + // state does not record its own fallback params. + stagedFallbackParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(prerenderInfo.fallbackRouteParams); + } else if (prerenderInfo) { + stagedFallbackParams = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getStagedFallbackParams"])(prerenderInfo); + } else { + stagedFallbackParams = null; + } + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'stagedFallbackParams', stagedFallbackParams); + } + // Forced static and debug renders are prerenders even when the + // surrounding request otherwise supports dynamic rendering. + const isRequestSpecificRender = !forceStaticRender && !isDebugPrerender && (supportsDynamicResponse || isPossibleServerAction); + // Perform the render. + const result = await doRender({ + span, + postponed, + fallbackRouteParams, + renderOperation: isRequestSpecificRender ? 'render' : 'prerender', + allowEmptyStaticShell: isInstantNavigationTest || undefined + }); + // The response cache already served the stale entry, so response + // delivery cannot report this background failure. + if ('error' in result && hasResolved) { + await reportRevalidationError(result.error); + } + return result; + } catch (err) { + // The foreground handler reports errors while it awaits a response. + // Report here only after the cache has resolved that response. + if (hasResolved) { + await reportRevalidationError(err); + } + throw err; + } + }; + const invokeOnCacheEntry = (cacheEntry)=>{ + var _parseUrl; + // If we support RDC for Navigations, prefer the callback that can + // deliver postponed state for both document and RSC requests. + const onCacheEntry = supportsRDCForNavigations ? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'onCacheEntryV2') ?? (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'onCacheEntry') : (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'onCacheEntry'); + if (!onCacheEntry) { + return false; + } + const rawCacheEntryUrl = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'initURL') ?? req.url; + const cacheEntryUrl = rawCacheEntryUrl ? ((_parseUrl = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$url$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["parseUrl"])(rawCacheEntryUrl)) == null ? void 0 : _parseUrl.pathname) ?? rawCacheEntryUrl : undefined; + return onCacheEntry(cacheEntry, { + url: cacheEntryUrl + }); + }; + const resumeRender = (body, postponed, span)=>{ + // Attach the continuation before rendering so the prelude can start + // streaming immediately. + const transformer = new TransformStream(); + body.push(transformer.readable); + // This metadata supplies fallback params when the saved state does not + // record them. App-render uses the saved state's own set when present. + if (nextConfig.cacheComponents && (prerenderInfo == null ? void 0 : prerenderInfo.fallbackRouteParams)) { + (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["addRequestMeta"])(req, 'stagedFallbackParams', (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2f$fallback$2d$params$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createOpaqueFallbackRouteParams"])(prerenderInfo.fallbackRouteParams)); + } + // Start the resume without awaiting it. The response consumes the + // continuation stream attached above. + doRender({ + span, + postponed, + // The resume retains concrete param values; staging only defers + // access. + fallbackRouteParams: null, + renderOperation: 'render' + }).then(async (result)=>{ + var _result_value; + if (!result) { + throw new Error('Invariant: expected a result to be returned'); + } + if ('error' in result) { + throw result.error; + } + if (((_result_value = result.value) == null ? void 0 : _result_value.kind) !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE) { + var _result_value1; + throw new Error(`Invariant: expected a page response, got ${(_result_value1 = result.value) == null ? void 0 : _result_value1.kind}`); + } + // Pipe the resume result to the transformer. + await result.value.html.pipeTo(transformer.writable); + }).catch((err)=>{ + // An error occurred during piping or preparing the render, abort + // the transformers writer so we can terminate the stream. + transformer.writable.abort(err).catch((e)=>{ + console.error("couldn't abort transformer", e); + }); + }); + }; + const handleResponse = async (span)=>{ + var _cacheEntry_value, _cachedData_headers; + // Development evaluates the configured policy without emitting its + // production matchers. Use that outcome at the same admission boundary. + const devParamMatchingRejected = routeModule.isDev && !isDebugPrerender && (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$request$2d$meta$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRequestMeta"])(req, 'devParamMatchingRejected'); + // Decide whether this URL is allowed before consulting ISR. An exact + // build path remains valid even when its cached result is missing, and + // the most specific matched route controls whether other paths may be + // generated. Neither a cache hit nor revalidation changes that decision. + // Server Actions may be forwarded to a worker's route pattern rather + // than a concrete URL. That invokes the action, not a page navigation. + if (!isMinimalMode && !isDraftMode && !isPossibleServerAction && pageIsDynamic && (devParamMatchingRejected || (prerenderInfo == null ? void 0 : prerenderInfo.fallback) === false && !isPrerendered)) { + if (nextConfig.adapterPath) { + return await render404(); + } + throw new __TURBOPACK__imported__module__$5b$externals$5d2f$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js__$5b$external$5d$__$28$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js$2c$__cjs$29$__["NoFallbackError"](); + } + const cacheEntry = await routeModule.handleResponse({ + cacheKey: ssgCacheKey, + responseGenerator: (c)=>responseGenerator({ + span, + ...c + }), + routeKind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$route$2d$kind$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RouteKind"].APP_PAGE, + isOnDemandRevalidate, + isRoutePPREnabled, + req, + nextConfig, + previewProps, + prerenderManifest, + waitUntil: ctx.waitUntil, + isMinimalMode + }); + if (cacheEntry !== null && 'error' in cacheEntry) { + if (res.headersSent || res.writableEnded) { + // The outer catch reports the error when we cannot send recovery. + throw cacheEntry.error; + } + // Returned failures bypass the outer catch's error reporting. Do not + // await async reporting before sending the error response. + const reportPrerenderError = ()=>{ + const errorReporting = routeModule.onRequestError(req, cacheEntry.error, { + routerKind: 'App Router', + routePath: srcPage, + routeType: 'render', + revalidateReason: (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$instrumentation$2f$utils$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRevalidateReason"])({ + isStaticGeneration: isSSG, + isOnDemandRevalidate + }) + }, false, routerServerContext).catch((err)=>{ + console.error(err); + }); + ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, errorReporting); + }; + const { result } = cacheEntry; + for (const [name, value] of Object.entries(result.metadata.headers ?? {})){ + if (value !== undefined) { + res.appendHeader(name, typeof value === 'number' ? value.toString() : value); + } + } + // Each request needs the failure status, including callers that + // reused another request's render through the response cache. + res.statusCode = 500; + span == null ? void 0 : span.setAttributes({ + 'http.status_code': 500, + 'next.rsc': isRSCRequest, + 'error.type': '500' + }); + span == null ? void 0 : span.setStatus({ + code: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$tracer$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["SpanStatusCode"].ERROR + }); + res.removeHeader('x-nextjs-cache'); + res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate'); + let response = result; + if (isRSCRequest) { + // The router discards failed prefetches and falls back to a + // document load when navigation receives a failed Flight response. + response = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic('', __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_CONTENT_TYPE_HEADER"]); + } else if (typeof result.metadata.postponed === 'string') { + // The platform needs the postponed state to resume with the actual + // request. This value is only for delivery; the response cache + // retains the failure and never persists it as ISR output. + // + // The callback writes to res without applying value.status. Its + // status and metadata headers must be set first. + if (await invokeOnCacheEntry({ + value: { + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE, + html: result, + rscData: result.metadata.flightData, + postponed: result.metadata.postponed, + status: 500, + headers: undefined, + segmentData: undefined + }, + cacheControl: { + revalidate: 0, + expire: undefined + } + })) { + reportPrerenderError(); + return null; + } + if (isMinimalMode) { + // A prerender invocation may have filtered request headers, so + // only the platform can resume with the original request. + // + // Let the outer catch report this error once. + throw cacheEntry.error; + } + // Each request owns its continuation. The buffered prelude and + // postponed state can be shared by the response cache. + response = __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic(result.toUnchunkedString(), __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["HTML_CONTENT_TYPE_HEADER"]); + resumeRender(response, result.metadata.postponed, span); + } + reportPrerenderError(); + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + result: response, + generateEtags: false, + poweredByHeader: nextConfig.poweredByHeader, + cacheControl: undefined + }); + } + if (isDraftMode) { + res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate'); + } + // Documents and RSC payloads must not be stored in development. + // Browsers reuse a stored response for a history navigation without + // revalidating it, so a back navigation would restore a page from + // before the latest edit. Static assets never reach this code. They + // keep a revalidatable `Cache-Control`, so the browser caches them + // between page loads. + if (routeModule.isDev) { + res.setHeader('Cache-Control', 'no-store'); + } + if (!cacheEntry) { + if (ssgCacheKey) { + // A cache entry might not be generated if a response is written + // in `getInitialProps` or `getServerSideProps`, but those shouldn't + // have a cache key. If we do have a cache key but we don't end up + // with a cache entry, then either Next.js or the application has a + // bug that needs fixing. + throw new Error('invariant: cache entry required but not generated'); + } + return null; + } + if (((_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE) { + var _cacheEntry_value1; + throw new Error(`Invariant app-page handler received invalid cache entry ${(_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`); + } + const didPostpone = typeof cacheEntry.value.postponed === 'string'; + // Set the build ID header for RSC navigation requests when deploymentId is configured. This + // corresponds with maybeAppendBuildIdToRSCPayload in app-render.tsx which omits the build ID + // from the RSC payload when deploymentId is set (relying on this header instead). Server + // actions are excluded here because action redirect responses get the deployment ID header + // from the pre-fetched redirect target (via createRedirectRenderResult in action-handler.ts + // which copies headers from the internal RSC fetch). + // For static prerenders served from CDN, routes-manifest.json adds a header. + if (isRSCRequest && !isPossibleServerAction && deploymentId) { + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_NAV_DEPLOYMENT_ID_HEADER"], deploymentId); + } + if (isSSG && // We don't want to send a cache header for requests that contain dynamic + // data. If this is a Dynamic RSC request or wasn't a Prefetch RSC + // request, then we should set the cache header. + !isDynamicRSCRequest && (!didPostpone || isPrefetchRSCRequest)) { + if (!isMinimalMode) { + // set x-nextjs-cache header to match the header + // we set for the image-optimizer + res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT'); + } + // Set a header used by the client router to signal the response is static + // and should respect the `static` cache staleTime value. + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_IS_PRERENDER_HEADER"], '1'); + } + const { value: cachedData } = cacheEntry; + // Coerce the cache control parameter from the render. + let cacheControl; + // If this is a resume request in minimal mode it is streamed with dynamic + // content and should not be cached. + if (hasPostponedState) { + cacheControl = { + revalidate: 0, + expire: undefined + }; + } else if (isDynamicRSCRequest) { + cacheControl = { + revalidate: 0, + expire: undefined + }; + } else if (!routeModule.isDev) { + // If this is a preview mode request, we shouldn't cache it + if (isDraftMode) { + cacheControl = { + revalidate: 0, + expire: undefined + }; + } else if (!isSSG) { + if (!res.getHeader('Cache-Control')) { + cacheControl = { + revalidate: 0, + expire: undefined + }; + } + } else if (cacheEntry.cacheControl) { + // If the cache entry has a cache control with a revalidate value that's + // a number, use it. + if (typeof cacheEntry.cacheControl.revalidate === 'number') { + if (cacheEntry.cacheControl.revalidate < 1) { + throw new Error(`Invalid revalidate configuration provided: ${cacheEntry.cacheControl.revalidate} < 1`); + } + cacheControl = { + revalidate: cacheEntry.cacheControl.revalidate, + expire: cacheEntry.cacheControl.expire + }; + } else { + cacheControl = { + revalidate: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CACHE_ONE_YEAR_SECONDS"], + expire: undefined + }; + } + } + } + cacheEntry.cacheControl = cacheControl; + if (typeof segmentPrefetchHeader === 'string' && (cachedData == null ? void 0 : cachedData.kind) === __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$response$2d$cache$2f$types$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["CachedRouteKind"].APP_PAGE && cachedData.segmentData) { + var _cachedData_headers1; + // This is a prefetch request issued by the client Segment Cache. These + // should never reach the application layer (lambda). We should either + // respond from the cache (HIT) or respond with 404 (MISS). + // Set a header to indicate that PPR is enabled for this route. This + // lets the client distinguish between a regular cache miss and a cache + // miss due to PPR being disabled. In other contexts this header is used + // to indicate that the response contains dynamic data, but here we're + // only using it to indicate that the feature is enabled — the segment + // response itself contains whether the data is dynamic. + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_DID_POSTPONE_HEADER"], '2'); + // Add the cache tags header to the response if it exists and we're in + // minimal mode while rendering a static page. + const tags = (_cachedData_headers1 = cachedData.headers) == null ? void 0 : _cachedData_headers1[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"]]; + if (isMinimalMode && isSSG && tags && typeof tags === 'string') { + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"], tags); + } + const matchedSegment = cachedData.segmentData.get(segmentPrefetchHeader); + if (matchedSegment !== undefined) { + // Cache hit + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic(matchedSegment, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_CONTENT_TYPE_HEADER"]), + cacheControl: cacheEntry.cacheControl + }); + } + // Cache miss. Either a cache entry for this route has not been generated + // (which technically should not be possible when PPR is enabled, because + // at a minimum there should always be a fallback entry) or there's no + // match for the requested segment. Respond with a 404. + res.statusCode = 404; + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].EMPTY, + cacheControl: cacheEntry.cacheControl + }); + } + // `onCacheEntry` lets the platform capture a freshly prerendered result + // so the proxy can write it to the ISR cache; on deploy it returns true + // and the function returns below. In debug-shell mode the render was + // skipped and we only serve the already-cached shell, so there is nothing + // to capture, and we need to reach the serve path below to close the + // document. `onCacheEntry` is absent in `next start`/dev, so this guard + // only affects the deploy (minimalMode) path. + if (!isDebugStaticShell && await invokeOnCacheEntry(cacheEntry)) { + return null; + } + if (cachedData.headers) { + const headers = { + ...cachedData.headers + }; + if (!isMinimalMode || !isSSG) { + delete headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"]]; + } + for (let [key, value] of Object.entries(headers)){ + if (typeof value === 'undefined') continue; + if (Array.isArray(value)) { + for (const v of value){ + res.appendHeader(key, v); + } + } else if (typeof value === 'number') { + value = value.toString(); + res.appendHeader(key, value); + } else { + res.appendHeader(key, value); + } + } + } + // Add the cache tags header to the response if it exists and we're in + // minimal mode while rendering a static page. + const tags = (_cachedData_headers = cachedData.headers) == null ? void 0 : _cachedData_headers[__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"]]; + if (isMinimalMode && isSSG && tags && typeof tags === 'string') { + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_CACHE_TAGS_HEADER"], tags); + } + // If the request is a data request, then we shouldn't set the status code + // from the response because it should always be 200. This should be gated + // behind the experimental PPR flag. + if (cachedData.status && (!isRSCRequest || !isRoutePPREnabled)) { + res.statusCode = cachedData.status; + } + // Redirect information is encoded in RSC payload, so we don't need to use redirect status codes + if (!isMinimalMode && cachedData.status && __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$redirect$2d$status$2d$code$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RedirectStatusCode"][cachedData.status] && isRSCRequest) { + res.statusCode = 200; + } + // Mark that the request did postpone. + if (didPostpone && !isDynamicRSCRequest) { + res.setHeader(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_DID_POSTPONE_HEADER"], '1'); + } + // we don't go through this block when preview mode is true + // as preview mode is a dynamic request (bypasses cache) and doesn't + // generate both HTML and payloads in the same request so continue to just + // return the generated payload + if (isRSCRequest && !isDraftMode) { + // If this is a dynamic RSC request, then stream the response. + if (typeof cachedData.rscData === 'undefined') { + // If the response is not an RSC response, then we can't serve it. + if (cachedData.html.contentType !== __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_CONTENT_TYPE_HEADER"]) { + if (nextConfig.cacheComponents) { + res.statusCode = 404; + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].EMPTY, + cacheControl: cacheEntry.cacheControl + }); + } else { + // Otherwise this case is not expected. + throw new __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$shared$2f$lib$2f$invariant$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["InvariantError"](`Expected RSC response, got ${cachedData.html.contentType}`); + } + } + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: cachedData.html, + cacheControl: cacheEntry.cacheControl + }); + } + // As this isn't a prefetch request, we should serve the static flight + // data. + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic(cachedData.rscData, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RSC_CONTENT_TYPE_HEADER"]), + cacheControl: cacheEntry.cacheControl + }); + } + // This is a request for HTML data. + const body = cachedData.html; + // Instant Navigation Testing API: under the instant lock we serve the + // static shell as a complete document without resuming the dynamic + // render, either recovering from an empty (blocking) shell or appending + // the closing tags to a non-empty one. + if (isInstantNavigationTest && isDebugStaticShell) { + const isEmptyPrelude = typeof cachedData.postponed === 'string' && __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__.isEmptyHTMLPrelude(cachedData.postponed); + if (isEmptyPrelude) { + // A blocking route (a Suspense boundary above , or `export + // const instant = false`) has an empty static shell. Serving it under + // the lock would be a blank document with no way to release the lock, + // so every reload would render the same blank shell and leave the + // user stuck. We surface the reason instead: in development we throw + // so it shows as an error overlay (the catch below clears the instant + // cookie via Set-Cookie); in production we serve a minimal document + // whose script clears the cookie client-side, since on deploy the + // edge has already served the cached shell and committed the response + // headers and this function only resumes by appending to the body, so + // a Set-Cookie could not take effect. `next start` reuses the same + // document, where throwing would render only a generic "Internal + // Server Error" page. + if (routeModule.isDev === true) { + throw new Error(`The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.\n\n` + `To identify why this route is blocking, refer to the Instant Navigation docs: https://preview.nextjs.org/docs/app/guides/instant-navigation`); + } + const recoveryHtml = `` + `` + `

The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.

` + `

To identify why this route is blocking, refer to the ` + `Instant Navigation docs.

` + ``; + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$render$2d$result$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["default"].fromStatic(recoveryHtml, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$lib$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["HTML_CONTENT_TYPE_HEADER"]), + cacheControl: { + revalidate: 0, + expire: undefined + } + }); + } + // Non-empty shell: the cookie-guarded bootstrap that sets + // self.__next_instant_test is embedded in the prerendered shell via + // `bootstrapScriptContent`, so it is already present (in the served + // shell for a fresh render, or in the cached prelude on deploy). Append + // the closing tags so the browser can parse a complete document. + body.push(new ReadableStream({ + start (controller) { + controller.enqueue(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$stream$2d$utils$2f$encoded$2d$tags$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["ENCODED_TAGS"].CLOSED.BODY_AND_HTML); + controller.close(); + } + })); + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: body, + cacheControl: { + revalidate: 0, + expire: undefined + } + }); + } + // If there's no postponed state, we should just serve the HTML. This + // should also be the case for a resume request because it's completed + // as a server render (rather than a static render). + if (!didPostpone || isMinimalMode || isRSCRequest) { + // If we're in test mode, we should add a sentinel chunk to the response + // that's between the static and dynamic parts so we can compare the + // chunks and add assertions. + if ("TURBOPACK compile-time falsy", 0) //TURBOPACK unreachable + ; + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: body, + cacheControl: cacheEntry.cacheControl + }); + } + // If we're debugging the static shell or the dynamic API accesses, we + // should just serve the HTML without resuming the render. The returned + // HTML will be the static shell so all the Dynamic API's will be used + // during static generation. + if (isDebugStaticShell || isDebugDynamicAccesses) { + // Since we're not resuming the render, we need to at least add the + // closing body and html tags to create valid HTML. + body.push(new ReadableStream({ + start (controller) { + controller.enqueue(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$stream$2d$utils$2f$encoded$2d$tags$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["ENCODED_TAGS"].CLOSED.BODY_AND_HTML); + controller.close(); + } + })); + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: body, + cacheControl: { + revalidate: 0, + expire: undefined + } + }); + } + // If we're in test mode, we should add a sentinel chunk to the response + // that's between the static and dynamic parts so we can compare the + // chunks and add assertions. + if ("TURBOPACK compile-time falsy", 0) //TURBOPACK unreachable + ; + resumeRender(body, cachedData.postponed, span); + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$send$2d$payload$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["sendRenderResult"])({ + req, + res, + generateEtags: nextConfig.generateEtags, + poweredByHeader: nextConfig.poweredByHeader, + result: body, + // We don't want to cache the response if it has postponed data because + // the response being sent to the client it's dynamic parts are streamed + // to the client on the same request. + cacheControl: { + revalidate: 0, + expire: undefined + } + }); + }; + // TODO: activeSpan code path is for when wrapped by + // next-server can be removed when this is no longer used + if (isWrappedByNextServer && activeSpan) { + await handleResponse(activeSpan); + } else { + parentSpan = tracer.getActiveScopeSpan(); + return await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$constants$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["BaseServerSpan"].handleRequest, { + spanName: `${method} ${srcPage}`, + kind: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$lib$2f$trace$2f$tracer$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["SpanKind"].SERVER, + attributes: { + 'http.method': method, + 'http.target': httpTarget + } + }, handleResponse), undefined, !isWrappedByNextServer); + } + } catch (err) { + // If an Instant Navigation Testing document render fails (e.g. the page + // blocks at the root with no Suspense boundary above it, producing an empty + // or bailed-out static shell), clear the instant navigation cookie before + // serving the error page. Otherwise the cookie would persist and every + // reload would re-render the same broken shell, leaving the user stuck + // without a way to release the lock. + if (isInstantNavigationTest && !res.headersSent) { + res.setHeader('Set-Cookie', `${__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$client$2f$components$2f$app$2d$router$2d$headers$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["NEXT_INSTANT_TEST_COOKIE"]}=; Path=/; Max-Age=0`); + } + if (!(err instanceof __TURBOPACK__imported__module__$5b$externals$5d2f$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js__$5b$external$5d$__$28$next$2f$dist$2f$shared$2f$lib$2f$no$2d$fallback$2d$error$2e$external$2e$js$2c$__cjs$29$__["NoFallbackError"])) { + const silenceLog = false; + await routeModule.onRequestError(req, err, { + routerKind: 'App Router', + routePath: srcPage, + routeType: 'render', + revalidateReason: (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$instrumentation$2f$utils$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["getRevalidateReason"])({ + isStaticGeneration: isSSG, + isOnDemandRevalidate + }) + }, silenceLog, routerServerContext); + } + // rethrow so that we can handle serving error page + throw err; + } + } + return { + __next_app__, + routeModule, + handler + }; +} +// TODO: omit this from production builds, only test builds should include it +/** + * Creates a readable stream that emits a PPR boundary sentinel. + * + * @returns A readable stream that emits a PPR boundary sentinel. + */ function createPPRBoundarySentinel() { + return new ReadableStream({ + start (controller) { + controller.enqueue(new TextEncoder().encode('')); + controller.close(); + } + }); +} +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page.js?page=/nav/page { MODULE_0 => \"[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_1 => \"[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_2 => \"[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_3 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_4 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_5 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_6 => \"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)\" } [app-rsc] (ecmascript)", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "ClientPageRoot", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["ClientPageRoot"], + "ClientSegmentRoot", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["ClientSegmentRoot"], + "Fragment", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["Fragment"], + "HTTPAccessFallbackBoundary", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["HTTPAccessFallbackBoundary"], + "InstantValidation", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["InstantValidation"], + "LayoutRouter", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["LayoutRouter"], + "LoadingBoundaryProvider", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["LoadingBoundaryProvider"], + "RenderFromTemplateContext", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RenderFromTemplateContext"], + "RootLayoutBoundary", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["RootLayoutBoundary"], + "SegmentViewNode", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["SegmentViewNode"], + "SegmentViewStateNode", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["SegmentViewStateNode"], + "__next_app__", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2e$js$3f$page$3d2f$nav$2f$page__$7b$__MODULE_0__$3d3e$__$225b$project$5d2f$src$2f$app$2f$layout$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_1__$3d3e$__$225b$project$5d2f$src$2f$app$2f$loading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_2__$3d3e$__$225b$project$5d2f$src$2f$app$2f$not$2d$found$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_3__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$forbidden$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_4__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$unauthorized$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_5__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$global$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_6__$3d3e$__$225b$project$5d2f$src$2f$app$2f$nav$2f$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$2922$__$7d$__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__["__next_app__"], + "captureOwnerStack", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["captureOwnerStack"], + "collectPrefetchHints", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["collectPrefetchHints"], + "collectSegmentData", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["collectSegmentData"], + "createElement", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createElement"], + "createMetadataComponents", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createMetadataComponents"], + "createPrerenderParamsForClientSegment", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createPrerenderParamsForClientSegment"], + "createPrerenderSearchParamsForClientPage", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createPrerenderSearchParamsForClientPage"], + "createServerParamsForServerSegment", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createServerParamsForServerSegment"], + "createServerSearchParamsForServerPage", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createServerSearchParamsForServerPage"], + "createTemporaryReferenceSet", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["createTemporaryReferenceSet"], + "decodeAction", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["decodeAction"], + "decodeFormState", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["decodeFormState"], + "decodeReply", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["decodeReply"], + "handler", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2e$js$3f$page$3d2f$nav$2f$page__$7b$__MODULE_0__$3d3e$__$225b$project$5d2f$src$2f$app$2f$layout$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_1__$3d3e$__$225b$project$5d2f$src$2f$app$2f$loading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_2__$3d3e$__$225b$project$5d2f$src$2f$app$2f$not$2d$found$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_3__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$forbidden$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_4__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$unauthorized$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_5__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$global$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_6__$3d3e$__$225b$project$5d2f$src$2f$app$2f$nav$2f$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$2922$__$7d$__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__["handler"], + "isEmptyHTMLPrelude", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["isEmptyHTMLPrelude"], + "patchFetch", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["patchFetch"], + "preconnect", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["preconnect"], + "preloadFont", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["preloadFont"], + "preloadStyle", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["preloadStyle"], + "prerender", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["prerender"], + "prerenderToNodeStream", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["prerenderToNodeStream"], + "renderToPipeableStream", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["renderToPipeableStream"], + "renderToReadableStream", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["renderToReadableStream"], + "routeModule", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2e$js$3f$page$3d2f$nav$2f$page__$7b$__MODULE_0__$3d3e$__$225b$project$5d2f$src$2f$app$2f$layout$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_1__$3d3e$__$225b$project$5d2f$src$2f$app$2f$loading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_2__$3d3e$__$225b$project$5d2f$src$2f$app$2f$not$2d$found$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_3__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$forbidden$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_4__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$unauthorized$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_5__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$global$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_6__$3d3e$__$225b$project$5d2f$src$2f$app$2f$nav$2f$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$2922$__$7d$__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__["routeModule"], + "serverHooks", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["serverHooks"], + "taintObjectReference", + ()=>__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["taintObjectReference"] +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2e$js$3f$page$3d2f$nav$2f$page__$7b$__MODULE_0__$3d3e$__$225b$project$5d2f$src$2f$app$2f$layout$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_1__$3d3e$__$225b$project$5d2f$src$2f$app$2f$loading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_2__$3d3e$__$225b$project$5d2f$src$2f$app$2f$not$2d$found$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_3__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$forbidden$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_4__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$unauthorized$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_5__$3d3e$__$225b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$components$2f$builtin$2f$global$2d$error$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$29222c$__MODULE_6__$3d3e$__$225b$project$5d2f$src$2f$app$2f$nav$2f$page$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__Server__Component$2922$__$7d$__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i('[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page.js?page=/nav/page { MODULE_0 => "[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)", MODULE_1 => "[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)", MODULE_2 => "[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)", MODULE_3 => "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)", MODULE_4 => "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)", MODULE_5 => "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)", MODULE_6 => "[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)" } [app-rsc] (ecmascript) '); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility)"); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page.js?page=/nav/page { MODULE_0 => \"[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_1 => \"[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_2 => \"[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_3 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_4 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_5 => \"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)\", MODULE_6 => \"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)\" } [app-rsc] (ecmascript) ", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "__next_app__", + ()=>__next_app__, + "handler", + ()=>handler, + "routeModule", + ()=>routeModule +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/app-render/module-loading/instrument-module-getter.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/build/templates/app-page-runtime.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$interop$2d$default$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/interop-default.js [app-rsc] (ecmascript, Next.js server utility)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$entry$2d$base$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility) "); +; +const __TURBOPACK__layout__$23$0__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/src/app/layout.tsx [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__loading__$23$1__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/src/app/loading.tsx [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__not$2d$found__$23$2__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/src/app/not-found.tsx [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__forbidden__$23$3__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__unauthorized__$23$4__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__global$2d$error__$23$5__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js [app-rsc] (ecmascript, Next.js Server Component)")); +const __TURBOPACK__page__$23$6__ = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$app$2d$render$2f$module$2d$loading$2f$instrument$2d$module$2d$getter$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["instrumentModuleGetter"])(()=>__turbopack_context__.r("[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)")); +; +; +const tree = [ + "", + { + "children": [ + "nav", + { + "children": [ + "__PAGE__", + {}, + { + metadata: {}, + "page": [ + __TURBOPACK__page__$23$6__, + "[project]/src/app/nav/page.tsx" + ] + }, + [] + ] + }, + { + metadata: {} + }, + [] + ] + }, + { + metadata: {}, + "layout": [ + __TURBOPACK__layout__$23$0__, + "[project]/src/app/layout.tsx" + ], + "loading": [ + __TURBOPACK__loading__$23$1__, + "[project]/src/app/loading.tsx" + ], + "not-found": [ + __TURBOPACK__not$2d$found__$23$2__, + "[project]/src/app/not-found.tsx" + ], + "forbidden": [ + __TURBOPACK__forbidden__$23$3__, + "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/forbidden.js" + ], + "unauthorized": [ + __TURBOPACK__unauthorized__$23$4__, + "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/unauthorized.js" + ], + "global-error": [ + __TURBOPACK__global$2d$error__$23$5__, + "[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/components/builtin/global-error.js" + ] + }, + [] +]; +const __next_app_require__ = __turbopack_context__.r.bind(__turbopack_context__); +const __next_app_load_chunk__ = __turbopack_context__.l.bind(__turbopack_context__); +const entrypoint = (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$build$2f$templates$2f$app$2d$page$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["createAppPageEntrypoint"])({ + tree, + page: "/nav/page", + pathname: "/nav", + require: __next_app_require__, + loadChunk: __next_app_load_chunk__, + interopDefault: __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$esm$2f$server$2f$app$2d$render$2f$interop$2d$default$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$2c$__Next$2e$js__server__utility$29$__["interopDefault"] +}); +const __next_app__ = entrypoint.__next_app__; +const routeModule = entrypoint.routeModule; +const handler = entrypoint.handler; +; +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/app-render/module-loading/instrument-module-getter.js [app-rsc] (ecmascript)", ((__turbopack_context__, module, exports) => { +"use strict"; + +/** + * Wraps a module getter from the generated loader tree code so that the + * result of an async module (e.g. due to a top-level await) is tracked as a + * pending import, which the cache warming phase of a prerender waits for. + * Both bundlers emit this around every module getter in the loader tree. + */ Object.defineProperty(exports, "__esModule", { + value: true +}); +Object.defineProperty(exports, "instrumentModuleGetter", { + enumerable: true, + get: function() { + return instrumentModuleGetter; + } +}); +function instrumentModuleGetter(getter) { + if ("TURBOPACK compile-time falsy", 0) //TURBOPACK unreachable + ; + else { + return ()=>{ + const { trackPendingImport } = __turbopack_context__.r("[externals]/next/dist/server/app-render/module-loading/track-module-loading.external.js [external] (next/dist/server/app-render/module-loading/track-module-loading.external.js, cjs)"); + const exportsOrPromise = getter(); + trackPendingImport(exportsOrPromise); + return exportsOrPromise; + }; + } +} +}), +]})(), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/app-router-headers.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/app-router-headers.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/redirect-status-code.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/client/components/redirect-status-code.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/constants.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/constants.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/fallback.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/fallback.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/scheduler.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/scheduler.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/url.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/lib/url.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript, Next.js server utility) ", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/entry-base.js [app-rsc] (ecmascript) ")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/interop-default.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/interop-default.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/manifests-singleton.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/manifests-singleton.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/strip-flight-headers.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/app-render/strip-flight-headers.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/base-http/node.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/base-http/node.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/instrumentation/utils.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/instrumentation/utils.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-non-html-sec-fetch-dest.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-non-html-sec-fetch-dest.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-rsc-request.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/is-rsc-request.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/postponed-request-body.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/postponed-request-body.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/route-cache-key.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/route-cache-key.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/server-action-request-meta.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/server-action-request-meta.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/streaming-metadata.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/streaming-metadata.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/constants.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/constants.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/tracer.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/lib/trace/tracer.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/render-result.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/render-result.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request-meta.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request-meta.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request/fallback-params.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/request/fallback-params.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/index.js [app-rsc] (ecmascript, Next.js server utility) ", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/index.js [app-rsc] (ecmascript) ")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/types.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/response-cache/types.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-kind.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-kind.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/dev-render-context.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/dev-render-context.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/module.compiled.js [app-ssr] (ecmascript)", ((__turbopack_context__, module, exports) => { + +if ("TURBOPACK compile-time falsy", 0) //TURBOPACK unreachable +; +else { + if ("TURBOPACK compile-time falsy", 0) //TURBOPACK unreachable + ; + else { + if ("TURBOPACK compile-time truthy", 1) { + if ("TURBOPACK compile-time truthy", 1) { + module.exports = __turbopack_context__.r("[externals]/next/dist/compiled/next-server/app-page-turbo.runtime.dev.js [external] (next/dist/compiled/next-server/app-page-turbo.runtime.dev.js, cjs)"); + } else //TURBOPACK unreachable + ; + } else //TURBOPACK unreachable + ; + } +} +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/parse-request-headers.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/route-modules/app-page/parse-request-headers.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/send-payload.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/send-payload.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/stream-utils/encoded-tags.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/server/stream-utils/encoded-tags.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/entry-constants.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/entry-constants.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/invariant-error.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/invariant-error.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/routes/app.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/routes/app.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/app-paths.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/app-paths.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/get-segment-param.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/get-segment-param.js [app-rsc] (ecmascript)")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/is-bot.js [app-rsc] (ecmascript, Next.js server utility) ", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/router/utils/is-bot.js [app-rsc] (ecmascript) ")); +}), +"[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/size-limit.js [app-rsc] (ecmascript, Next.js server utility)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/esm/shared/lib/size-limit.js [app-rsc] (ecmascript)")); +}), +]; + +//# sourceMappingURL=1cpi_next_dist_0w7rma4aysivc._.js.map \ No newline at end of file diff --git a/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js.map b/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js.map new file mode 100644 index 0000000..b0e2977 --- /dev/null +++ b/.next-dev/dev/server/chunks/ssr/1cpi_next_dist_0w7rma4aysivc._.js.map @@ -0,0 +1,9 @@ +{ + "version": 3, + "sources": [], + "sections": [ + {"offset": {"line": 5, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/src/build/templates/app-page-runtime.ts"],"sourcesContent":["import type { LoaderTree } from '../../server/lib/app-dir-module'\nimport type { IncomingMessage, ServerResponse } from 'node:http'\nimport type { FallbackRouteParam } from '../static-paths/types'\n\nimport {\n AppPageRouteModule,\n type AppPageRouteHandlerContext,\n type DevRenderContext,\n type RouteMatch,\n} from '../../server/route-modules/app-page/module.compiled' with { 'turbopack-transition': 'next-ssr' }\nimport { createDevRenderContext } from '../../server/route-modules/app-page/dev-render-context' with { 'turbopack-transition': 'next-server-utility' }\n\nimport { RouteKind } from '../../server/route-kind' with { 'turbopack-transition': 'next-server-utility' }\n\nimport { getRevalidateReason } from '../../server/instrumentation/utils' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n getTracer,\n SpanKind,\n SpanStatusCode,\n type Span,\n} from '../../server/lib/trace/tracer' with { 'turbopack-transition': 'next-server-utility' }\nimport type { RequestMeta } from '../../server/request-meta'\nimport {\n addRequestMeta,\n getRequestMeta,\n setRequestMeta,\n} from '../../server/request-meta' with { 'turbopack-transition': 'next-server-utility' }\nimport { BaseServerSpan } from '../../server/lib/trace/constants' with { 'turbopack-transition': 'next-server-utility' }\nimport { stripFlightHeaders } from '../../server/app-render/strip-flight-headers' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n parseRequestHeaders,\n type ParsedRequestHeaders,\n} from '../../server/route-modules/app-page/parse-request-headers' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n NodeNextRequest,\n NodeNextResponse,\n} from '../../server/base-http/node' with { 'turbopack-transition': 'next-server-utility' }\nimport { isRSCRequestHeader } from '../../server/lib/is-rsc-request' with { 'turbopack-transition': 'next-server-utility' }\nimport { isNonHtmlSecFetchDest } from '../../server/lib/is-non-html-sec-fetch-dest' with { 'turbopack-transition': 'next-server-utility' }\nimport { UNDERSCORE_NOT_FOUND_ROUTE } from '../../shared/lib/entry-constants' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n getFallbackRouteParams,\n getPlaceholderFallbackRouteParams,\n getStagedFallbackParams,\n buildDynamicSegmentPlaceholder,\n createOpaqueFallbackRouteParams,\n type OpaqueFallbackRouteParams,\n} from '../../server/request/fallback-params' with { 'turbopack-transition': 'next-server-utility' }\nimport { setManifestsSingleton } from '../../server/app-render/manifests-singleton' with { 'turbopack-transition': 'next-server-utility' }\nimport { shouldServeStreamingMetadata } from '../../server/lib/streaming-metadata' with { 'turbopack-transition': 'next-server-utility' }\nimport { normalizeAppPath } from '../../shared/lib/router/utils/app-paths' with { 'turbopack-transition': 'next-server-utility' }\nimport { parseNormalizedAppRoute } from '../../shared/lib/router/routes/app' with { 'turbopack-transition': 'next-server-utility' }\nimport { getIsPossibleServerAction } from '../../server/lib/server-action-request-meta' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n RSC_HEADER,\n NEXT_ROUTER_PREFETCH_HEADER,\n NEXT_ROUTER_SEGMENT_PREFETCH_HEADER,\n NEXT_INSTANT_TEST_COOKIE,\n NEXT_IS_PRERENDER_HEADER,\n NEXT_DID_POSTPONE_HEADER,\n RSC_CONTENT_TYPE_HEADER,\n} from '../../client/components/app-router-headers' with { 'turbopack-transition': 'next-server-utility' }\nimport { getBotType } from '../../shared/lib/router/utils/is-bot' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n CachedRouteKind,\n IncrementalCacheKind,\n type CachedAppPageValue,\n type ResponseCacheEntry,\n type ResponseGenerator,\n} from '../../server/response-cache' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n FallbackMode,\n parseFallbackField,\n} from '../../lib/fallback' with { 'turbopack-transition': 'next-server-utility' }\nimport RenderResult, {\n type PrerenderFailure,\n} from '../../server/render-result' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n CACHE_ONE_YEAR_SECONDS,\n HTML_CONTENT_TYPE_HEADER,\n NEXT_CACHE_TAGS_HEADER,\n NEXT_NAV_DEPLOYMENT_ID_HEADER,\n NEXT_RESUME_HEADER,\n NEXT_RESUME_STATE_LENGTH_HEADER,\n} from '../../lib/constants' with { 'turbopack-transition': 'next-server-utility' }\nimport type { CacheControl } from '../../server/lib/cache-control'\nimport { ENCODED_TAGS } from '../../server/stream-utils/encoded-tags' with { 'turbopack-transition': 'next-server-utility' }\nimport { sendRenderResult } from '../../server/send-payload' with { 'turbopack-transition': 'next-server-utility' }\nimport { NoFallbackError } from '../../shared/lib/no-fallback-error.external' with { 'turbopack-transition': 'next-server-utility' }\nimport { isRouteCacheOwner } from '../../server/lib/route-cache-key' with { 'turbopack-transition': 'next-server-utility' }\nimport { parseMaxPostponedStateSize } from '../../shared/lib/size-limit' with { 'turbopack-transition': 'next-server-utility' }\nimport {\n getMaxPostponedStateSize,\n getPostponedStateExceededErrorMessage,\n readBodyWithSizeLimit,\n} from '../../server/lib/postponed-request-body' with { 'turbopack-transition': 'next-server-utility' }\nimport { parseUrl } from '../../lib/url' with { 'turbopack-transition': 'next-server-utility' }\n\nimport * as entryBase from '../../server/app-render/entry-base' with { 'turbopack-transition': 'next-server-utility' }\nimport { RedirectStatusCode } from '../../client/components/redirect-status-code' with { 'turbopack-transition': 'next-server-utility' }\nimport { InvariantError } from '../../shared/lib/invariant-error' with { 'turbopack-transition': 'next-server-utility' }\nimport { scheduleOnNextTick } from '../../lib/scheduler' with { 'turbopack-transition': 'next-server-utility' }\nimport { getSegmentParam } from '../../shared/lib/router/utils/get-segment-param' with { 'turbopack-transition': 'next-server-utility' }\n\ntype AppPageRenderOperation = 'render' | 'prerender'\n\n/**\n * Builds the cache key for the most complete prerenderable shell we can derive\n * from the shell that matched this request. Only params that can still be\n * filled by `generateStaticParams` are substituted; fully dynamic params stay\n * as placeholders so a request like `/c/foo` can complete `/[one]/[two]` into\n * `/c/[two]` rather than `/c/foo`.\n */\nfunction buildCompletedShellCacheKey(\n fallbackPathname: string,\n remainingPrerenderableParams: readonly FallbackRouteParam[],\n params: Record | undefined\n): string {\n const prerenderableParamsByName = new Map(\n remainingPrerenderableParams.map((param) => [param.paramName, param])\n )\n\n return (\n fallbackPathname\n .split('/')\n .map((segment) => {\n const segmentParam = getSegmentParam(segment)\n if (!segmentParam) {\n return segment\n }\n\n const remainingParam = prerenderableParamsByName.get(\n segmentParam.paramName\n )\n if (!remainingParam) {\n return segment\n }\n\n const value = params?.[remainingParam.paramName]\n if (!value) {\n return segment\n }\n\n const encodedValue = Array.isArray(value)\n ? value.map((item) => encodeURIComponent(item)).join('/')\n : encodeURIComponent(value)\n\n return segment.replace(\n buildDynamicSegmentPlaceholder(remainingParam),\n encodedValue\n )\n })\n .join('/') || '/'\n )\n}\n\n// This implementation is imported by every route-specific app-page wrapper.\nexport function createAppPageEntrypoint({\n tree,\n page,\n pathname,\n require: __next_app_require__,\n loadChunk: __next_app_load_chunk__,\n interopDefault,\n}: {\n tree: LoaderTree\n page: string\n pathname: string\n require: (id: string | number) => unknown\n loadChunk: (id: string | number) => Promise\n interopDefault: typeof import('../../server/app-render/interop-default').interopDefault\n}) {\n const __next_app__ = {\n require: __next_app_require__,\n loadChunk: __next_app_load_chunk__,\n }\n\n const routeModule = new AppPageRouteModule({\n definition: {\n kind: RouteKind.APP_PAGE,\n page,\n pathname,\n // The following aren't used in production.\n bundlePath: '',\n filename: '',\n appPaths: [],\n },\n userland: {\n loaderTree: tree,\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n })\n\n let srcPage = page\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/'\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/'\n }\n\n const normalizedSrcPage = normalizeAppPath(srcPage)\n\n // The legacy prerender manifest says whether unmatched values return 404,\n // but does not list all of the route's parameter names. Read them from the\n // route pattern once, since the names do not depend on the request.\n const routeParamNames = parseNormalizedAppRoute(\n normalizedSrcPage\n ).dynamicSegments.map((segment) => segment.param.paramName)\n\n async function handler(\n req: IncomingMessage,\n res: ServerResponse,\n ctx: {\n waitUntil?: (prom: Promise) => void\n requestMeta?: RequestMeta\n }\n ) {\n if (ctx.requestMeta) {\n setRequestMeta(req, ctx.requestMeta)\n }\n\n if (routeModule.isDev) {\n addRequestMeta(\n req,\n 'devRequestTimingInternalsEnd',\n process.hrtime.bigint()\n )\n }\n const isMinimalMode = Boolean(getRequestMeta(req, 'minimalMode'))\n\n // Capture the request target before `prepare()` runs, since route\n // normalization (e.g. `normalizeCdnUrl`) rewrites `req.url` and would\n // otherwise change the `http.target` span attribute. This mirrors\n // `BaseServer.handleRequest`, which records the target before normalization.\n const httpTarget = req.url\n\n const multiZoneDraftMode = process.env\n .__NEXT_MULTI_ZONE_DRAFT_MODE as any as boolean\n\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode,\n })\n\n if (!prepareResult) {\n res.statusCode = 400\n res.end('Bad Request')\n ctx.waitUntil?.(Promise.resolve())\n return null\n }\n\n const {\n buildId,\n query,\n params,\n pageIsDynamic,\n buildManifest,\n nextFontManifest,\n reactLoadableManifest,\n serverActionsManifest,\n clientReferenceManifest,\n subresourceIntegrityManifest,\n prerenderManifest,\n prefetchHintsManifest,\n isDraftMode,\n resolvedPathname,\n revalidateOnlyGenerated,\n routerServerContext,\n nextConfig,\n parsedUrl,\n interceptionRoutePatterns,\n deploymentId,\n clientAssetToken,\n previewProps,\n } = prepareResult\n\n let { isOnDemandRevalidate } = prepareResult\n\n // We use the resolvedPathname instead of the parsedUrl.pathname because it\n // is not rewritten as resolvedPathname is. This will ensure that the correct\n // prerender info is used instead of using the original pathname as the\n // source.\n const prerenderMatch = routeModule.match(\n resolvedPathname,\n prerenderManifest\n )\n const prerenderInfo = prerenderMatch?.route ?? null\n\n // A sibling's prerender must not change this route's rendering mode or\n // supply prefetch metadata for its response.\n const prerenderedRoute =\n routeModule.isDev ||\n isRouteCacheOwner(\n resolvedPathname,\n routeModule.cacheOwner,\n prerenderManifest.routes[resolvedPathname]\n )\n ? prerenderManifest.routes[resolvedPathname]\n : undefined\n const isPrerendered = Boolean(prerenderedRoute)\n\n const userAgent = req.headers['user-agent'] || ''\n const botType = getBotType(userAgent)\n\n /**\n * If true, this indicates that the request being made is for an app\n * prefetch request.\n */\n const isPrefetchRSCRequest =\n getRequestMeta(req, 'isPrefetchRSCRequest') ??\n req.headers[NEXT_ROUTER_PREFETCH_HEADER] === '1' // exclude runtime prefetches, which use '2'\n\n // NOTE: Don't delete headers[RSC] yet, it still needs to be used in renderToHTML later\n\n const isRSCRequest =\n getRequestMeta(req, 'isRSCRequest') ??\n isRSCRequestHeader(req.headers[RSC_HEADER])\n\n const isPossibleServerAction = getIsPossibleServerAction(req)\n\n // For subresource requests (e.g. images or fonts), return plain text 404\n // instead of rendering the not-found route.\n if (\n normalizedSrcPage === UNDERSCORE_NOT_FOUND_ROUTE &&\n (req.method === 'GET' || req.method === 'HEAD') &&\n !isRSCRequest &&\n isNonHtmlSecFetchDest(req.headers['sec-fetch-dest'])\n ) {\n res.statusCode = 404\n res.setHeader(\n 'Cache-Control',\n 'private, no-cache, no-store, max-age=0, must-revalidate'\n )\n res.setHeader('Content-Type', 'text/plain; charset=utf-8')\n res.end('Not Found')\n ctx.waitUntil?.(Promise.resolve())\n return null\n }\n\n /**\n * If the route being rendered is an app page, and the ppr feature has been\n * enabled, then the given route _could_ support PPR.\n */\n const couldSupportPPR: boolean = Boolean(nextConfig.cacheComponents)\n\n // Stash postponed state for server actions when in minimal mode.\n // We extract it here so the RDC is available for the re-render after the action completes.\n const resumeStateLengthHeader = req.headers[NEXT_RESUME_STATE_LENGTH_HEADER]\n if (\n !getRequestMeta(req, 'postponed') &&\n isMinimalMode &&\n couldSupportPPR &&\n isPossibleServerAction &&\n resumeStateLengthHeader &&\n typeof resumeStateLengthHeader === 'string'\n ) {\n const stateLength = parseInt(resumeStateLengthHeader, 10)\n const { maxPostponedStateSize, maxPostponedStateSizeBytes } =\n getMaxPostponedStateSize(nextConfig.experimental.maxPostponedStateSize)\n\n if (!isNaN(stateLength) && stateLength > 0) {\n if (stateLength > maxPostponedStateSizeBytes) {\n res.statusCode = 413\n res.end(getPostponedStateExceededErrorMessage(maxPostponedStateSize))\n ctx.waitUntil?.(Promise.resolve())\n return null\n }\n\n // Calculate max total body size to prevent buffering excessively large\n // payloads before the action handler checks. We use stateLength (not\n // maxPostponedStateSizeBytes) so the postponed state doesn't eat into\n // the action body budget - it's already validated above.\n const defaultActionBodySizeLimit = '1 MB'\n const actionBodySizeLimit =\n nextConfig.experimental.serverActions?.bodySizeLimit ??\n defaultActionBodySizeLimit\n const actionBodySizeLimitBytes =\n actionBodySizeLimit !== defaultActionBodySizeLimit\n ? (\n require('next/dist/compiled/bytes') as typeof import('next/dist/compiled/bytes')\n ).parse(actionBodySizeLimit)\n : 1024 * 1024 // 1 MB\n const maxTotalBodySize = stateLength + actionBodySizeLimitBytes\n\n const fullBody = await readBodyWithSizeLimit(req, maxTotalBodySize)\n if (fullBody === null) {\n res.statusCode = 413\n res.end(\n `Request body exceeded limit. ` +\n `To configure the body size limit for Server Actions, see: https://nextjs.org/docs/app/api-reference/next-config-js/serverActions#bodysizelimit`\n )\n ctx.waitUntil?.(Promise.resolve())\n return null\n }\n\n if (fullBody.length >= stateLength) {\n // Extract postponed state from the beginning\n const postponedState = fullBody\n .subarray(0, stateLength)\n .toString('utf8')\n addRequestMeta(req, 'postponed', postponedState)\n\n // Store the remaining action body for the action handler\n const actionBody = fullBody.subarray(stateLength)\n addRequestMeta(req, 'actionBody', actionBody)\n } else {\n throw new Error(\n `invariant: expected ${stateLength} bytes of postponed state but only received ${fullBody.length} bytes`\n )\n }\n }\n }\n\n if (\n typeof getRequestMeta(req, 'postponed') !== 'string' &&\n couldSupportPPR &&\n req.headers[NEXT_RESUME_HEADER] === '1' &&\n req.method === 'POST'\n ) {\n const { maxPostponedStateSize, maxPostponedStateSizeBytes } =\n getMaxPostponedStateSize(nextConfig.experimental.maxPostponedStateSize)\n\n // Decode the postponed state from the request body, it will come as\n // an array of buffers, so collect them and then concat them to form\n // the string.\n const body = await readBodyWithSizeLimit(req, maxPostponedStateSizeBytes)\n if (body === null) {\n res.statusCode = 413\n res.end(getPostponedStateExceededErrorMessage(maxPostponedStateSize))\n ctx.waitUntil?.(Promise.resolve())\n return null\n }\n const postponed = body.toString('utf8')\n\n addRequestMeta(req, 'postponed', postponed)\n }\n\n // When enabled, this will allow the use of the `?__nextppronly` query to\n // enable debugging of the static shell.\n const hasDebugStaticShellQuery =\n process.env.__NEXT_EXPERIMENTAL_STATIC_SHELL_DEBUGGING === '1' &&\n typeof query.__nextppronly !== 'undefined' &&\n couldSupportPPR\n\n // When enabled, this will allow the use of the `?__nextppronly` query\n // to enable debugging of the fallback shell.\n const hasDebugFallbackShellQuery =\n hasDebugStaticShellQuery && query.__nextppronly === 'fallback'\n\n // Whether the testing API is exposed (dev mode or explicit flag)\n const exposeTestingApi =\n nextConfig.cacheComponents === true &&\n (routeModule.isDev === true ||\n nextConfig.experimental.exposeTestingApiInProductionBuild === true)\n\n // Enable the Instant Navigation Testing API. Renders only the prefetched\n // portion of the page, excluding dynamic content. This allows tests to\n // assert on the prefetched UI state deterministically.\n //\n // The instant test cookie is sent automatically with all requests while a\n // navigation lock is held. We treat a request as a test render when the\n // cookie is present and either:\n // - it's a document request (no RSC header) — covers MPA navigations\n // - it's a prefetch RSC request — covers client-side prefetches\n // Regular RSC navigation requests proceed normally even during a locked\n // scope; blocking happens on the client side.\n const isInstantNavigationTest =\n exposeTestingApi &&\n typeof req.headers.cookie === 'string' &&\n req.headers.cookie.includes(NEXT_INSTANT_TEST_COOKIE + '=') &&\n (!isRSCRequestHeader(req.headers[RSC_HEADER]) ||\n req.headers[NEXT_ROUTER_PREFETCH_HEADER] === '1')\n\n // This page supports PPR if it is marked as being `PARTIALLY_STATIC` in the\n // prerender manifest and this is an app page.\n const isRoutePPREnabled: boolean =\n couldSupportPPR &&\n ((\n prerenderManifest.routes[normalizedSrcPage] ??\n prerenderManifest.dynamicRoutes[normalizedSrcPage]\n )?.renderingMode === 'PARTIALLY_STATIC' ||\n // Ideally we'd want to check the appConfig to see if this page has PPR\n // enabled or not, but that would require plumbing the appConfig through\n // to the server during development. We assume that the page supports it\n // but only during development or when the testing API is exposed.\n ((hasDebugStaticShellQuery || isInstantNavigationTest) &&\n (exposeTestingApi ||\n routerServerContext?.experimentalTestProxy === true)))\n\n const isDebugStaticShell: boolean =\n (hasDebugStaticShellQuery || isInstantNavigationTest) && isRoutePPREnabled\n\n // We should enable debugging dynamic accesses when the static shell\n // debugging has been enabled and we're also in development mode.\n const isDebugDynamicAccesses =\n isDebugStaticShell && routeModule.isDev === true\n\n const isDebugFallbackShell = hasDebugFallbackShellQuery && isRoutePPREnabled\n const isDebugPrerender =\n isDebugStaticShell || isDebugDynamicAccesses || isDebugFallbackShell\n\n // If we're in minimal mode, then try to get the postponed information from\n // the request metadata. If available, use it for resuming the postponed\n // render.\n const minimalPostponed = isRoutePPREnabled\n ? getRequestMeta(req, 'postponed')\n : undefined\n const hasPostponedState = typeof minimalPostponed === 'string'\n\n // If PPR is enabled, and this is a RSC request (but not a prefetch), then\n // we can use this fact to only generate the flight data for the request\n // because we can't cache the HTML (as it's also dynamic).\n const staticPrefetchDataRoute = prerenderedRoute?.prefetchDataRoute\n const isEnsureStaticPage = prerenderInfo?._isEnsureStaticPage === true\n\n let isDynamicRSCRequest =\n isRoutePPREnabled &&\n isRSCRequest &&\n !isPrefetchRSCRequest &&\n // If generated at build time, treat the RSC request as static\n // so we can serve the prebuilt .rsc without a dynamic render.\n // Only do this for routes that have a concrete prefetchDataRoute.\n !staticPrefetchDataRoute &&\n // Do not serve `ensureStatic = \"navigation\"` with a dynamic response,\n // (we want to do a blocking prerender instead)\n // TODO(ensure-static): express this in a cleaner way\n !isEnsureStaticPage\n\n // During a PPR revalidation, the RSC request is not dynamic if postponed\n // metadata is absent. An empty string represents a resume request without\n // postponed state, which should perform a full dynamic render.\n if (isMinimalMode) {\n isDynamicRSCRequest = isDynamicRSCRequest && hasPostponedState\n }\n\n // Need to read this before it's stripped by stripFlightHeaders. We don't\n // need to transfer it to the request meta because it's only read\n // within this function; the static segment data should have already been\n // generated, so we will always either return a static response or a 404.\n const rawSegmentPrefetchHeader =\n req.headers[NEXT_ROUTER_SEGMENT_PREFETCH_HEADER]\n const segmentPrefetchHeader =\n getRequestMeta(req, 'segmentPrefetchRSCRequest') ??\n (isPrefetchRSCRequest\n ? typeof rawSegmentPrefetchHeader === 'string'\n ? rawSegmentPrefetchHeader\n : Array.isArray(rawSegmentPrefetchHeader)\n ? rawSegmentPrefetchHeader[0]\n : undefined\n : undefined)\n\n // TODO: investigate existing bug with shouldServeStreamingMetadata always\n // being true for a revalidate due to modifying the base-server this.renderOpts\n // when fixing this to correct logic it causes hydration issue since we set\n // serveStreamingMetadata to true during export\n const serveStreamingMetadata = !userAgent\n ? true\n : shouldServeStreamingMetadata(userAgent, nextConfig.htmlLimitedBots)\n\n // A PPR shell has already closed its head before the dynamic render resumes.\n // Blocking metadata resolved during the resume would therefore be emitted\n // after the head, where HTML-limited bots cannot observe it. Bypass the\n // shell so blocking metadata is included in the initial document head.\n const shouldForceDynamicPPRRender =\n isRoutePPREnabled && !serveStreamingMetadata\n\n const isSSG = Boolean(\n (prerenderInfo ||\n isPrerendered ||\n prerenderManifest.routes[normalizedSrcPage]) &&\n !shouldForceDynamicPPRRender\n )\n\n // When a page supports cacheComponents, we can support RDC for Navigations\n const supportsRDCForNavigations =\n isRoutePPREnabled && nextConfig.cacheComponents === true\n\n // In development, we always want to generate dynamic HTML.\n const supportsDynamicResponse: boolean =\n // If we're in development, we always support dynamic HTML, unless it's\n // a data request, in which case we only produce static HTML.\n routeModule.isDev === true ||\n // If this is a draft mode request, it supports dynamic HTML.\n isDraftMode ||\n // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isSSG ||\n // If this request has provided postponed data, it supports dynamic\n // HTML.\n hasPostponedState ||\n // If this handler supports onCacheEntryV2, then we can only support\n // dynamic responses if it's a dynamic RSC request and not in minimal mode. If it\n // doesn't support it we must fallback to the default behavior.\n (supportsRDCForNavigations && getRequestMeta(req, 'onCacheEntryV2')\n ? // In minimal mode, we'll always want to generate a static response\n // which will generate the RDC for the route. When resuming a Dynamic\n // RSC request, we'll pass the minimal postponed data to the render\n // which will trigger the `supportsDynamicResponse` to be true.\n isDynamicRSCRequest && !isMinimalMode\n : // Otherwise, we can support dynamic responses if it's a dynamic RSC request.\n isDynamicRSCRequest)\n\n const remainingPrerenderableParams =\n prerenderInfo?.remainingPrerenderableParams ?? []\n const remainingFallbackRouteParams = nextConfig.cacheComponents\n ? (prerenderInfo?.fallbackRouteParams?.filter(\n (param) =>\n !remainingPrerenderableParams.some(\n (prerenderableParam) =>\n prerenderableParam.paramName === param.paramName\n )\n ) ?? [])\n : []\n // Concrete optional routes like `/optional-catchall` can still match their\n // generic shell entry (eg /optional-catchall/[[...slug]]) in the prerender manifest.\n // If the omitted param already resolved to a real prerendered path, keep serving that concrete result.\n const hasOmittedConcreteFallbackParam =\n isPrerendered &&\n remainingPrerenderableParams.some((param) => {\n const value = params?.[param.paramName]\n return value == null || (Array.isArray(value) && value.length === 0)\n })\n const hasUnresolvedRootFallbackParams =\n prerenderInfo?.fallback === null &&\n (prerenderInfo.fallbackRootParams?.length ?? 0) > 0\n\n // SSG writes and navigation RDC reads use the same shell key. Completion\n // uses the matched shell rather than the fully resolved pathname. A request\n // for `/prefix/c/foo` can complete `/prefix/[one]/[two]` to\n // `/prefix/c/[two]`. This avoids creating an entry for every value of\n // `two`.\n //\n // The completed-shell key also applies when unresolved root params require\n // a blocking render. A source shell cannot be shared across root branches.\n // Completion resolves the params into the key as follows:\n // - Root params and other prerenderable params use concrete values.\n // - Never-prerenderable params remain placeholders.\n // The values of those placeholder params must not partition the cache.\n const fallbackPathname = prerenderMatch\n ? typeof prerenderInfo?.fallback === 'string'\n ? prerenderInfo.fallback\n : prerenderMatch.source\n : null\n let shellCacheKey: string | null = null\n if (\n nextConfig.cacheComponents &&\n // A closed matcher has no fallback shell. Its generated outputs must\n // retain their concrete cache keys.\n prerenderInfo?.fallback !== false &&\n // Never-prerenderable params must stay out of the key even when Partial\n // Prefetching is disabled.\n (nextConfig.partialPrefetching ||\n remainingFallbackRouteParams.length > 0) &&\n fallbackPathname &&\n prerenderInfo?.fallbackRouteParams?.length &&\n !hasOmittedConcreteFallbackParam\n ) {\n const cacheKey = buildCompletedShellCacheKey(\n fallbackPathname,\n remainingPrerenderableParams,\n params\n )\n\n if (\n cacheKey !== fallbackPathname ||\n remainingFallbackRouteParams.length > 0\n ) {\n shellCacheKey = cacheKey\n }\n }\n\n let ssgCacheKey: string | null = null\n let usesShellCacheKey = false\n if (\n !isDraftMode &&\n isSSG &&\n !supportsDynamicResponse &&\n !isPossibleServerAction &&\n !hasPostponedState &&\n !isDynamicRSCRequest\n ) {\n if (shellCacheKey !== null) {\n // Normal fallback serving uses the source shell's separate cache\n // lookup. Explicit revalidation skips that path, so it must write the\n // source key here even when no params can be completed.\n if (shellCacheKey !== fallbackPathname || isOnDemandRevalidate) {\n ssgCacheKey = shellCacheKey\n usesShellCacheKey = true\n }\n } else {\n ssgCacheKey = resolvedPathname\n }\n }\n\n // the staticPathKey differs from ssgCacheKey since\n // ssgCacheKey is null in dev since we're always in \"dynamic\"\n // mode in dev to bypass the cache. It can also be null for partial\n // fallback shells that should remain shared and must not create a\n // param-specific ISR entry, but we still need to honor fallback handling.\n let staticPathKey = ssgCacheKey\n if (\n !staticPathKey &&\n (routeModule.isDev ||\n (isSSG &&\n pageIsDynamic &&\n prerenderInfo?.fallbackRouteParams?.length &&\n // Server action requests must not get a staticPathKey, otherwise they\n // enter the fallback rendering block below and return the cached HTML\n // shell with the action result appended, instead of responding with\n // just the RSC action result.\n !isPossibleServerAction))\n ) {\n staticPathKey = resolvedPathname\n }\n\n // If this is a request for an app path that should be statically generated\n // and we aren't in the edge runtime, strip the flight headers so it will\n // generate the static response.\n if (\n !routeModule.isDev &&\n !isDraftMode &&\n isSSG &&\n isRSCRequest &&\n !isDynamicRSCRequest\n ) {\n stripFlightHeaders(req.headers)\n }\n\n const ComponentMod = {\n ...entryBase,\n tree,\n handler,\n routeModule,\n __next_app__,\n }\n\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest,\n })\n }\n\n const method = req.method || 'GET'\n const tracer = getTracer()\n const activeSpan = tracer.getActiveScopeSpan()\n const isWrappedByNextServer = Boolean(\n routerServerContext?.isWrappedByNextServer\n )\n const render404 = async () => {\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext?.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false)\n } else {\n res.statusCode = 404\n res.end('This page could not be found')\n }\n return null\n }\n\n try {\n const varyHeader = routeModule.getVaryHeader(\n resolvedPathname,\n interceptionRoutePatterns\n )\n res.setHeader('Vary', varyHeader)\n let parentSpan: Span | undefined\n const invokeRouteModule = async (\n span: Span | undefined,\n context: AppPageRouteHandlerContext,\n renderOperation: AppPageRenderOperation\n ) => {\n const nextReq = new NodeNextRequest(req)\n const nextRes = new NodeNextResponse(res)\n\n const result =\n renderOperation === 'prerender'\n ? routeModule.prerender(nextReq, nextRes, context)\n : routeModule.render(nextReq, nextRes, context)\n\n return result.finally(() => {\n if (!span) return\n\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': isRSCRequest,\n })\n\n if (res.statusCode && res.statusCode >= 500) {\n // For 5xx status codes: SHOULD be set to 'Error' span status.\n // x-ref: https://opentelemetry.io/docs/specs/semconv/http/http-spans/#status\n span.setStatus({\n code: SpanStatusCode.ERROR,\n })\n // For span status 'Error', SHOULD set 'error.type' attribute.\n span.setAttribute('error.type', res.statusCode.toString())\n }\n\n const rootSpanAttributes = tracer.getRootSpanAttributes()\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return\n }\n\n if (\n rootSpanAttributes.get('next.span_type') !==\n BaseServerSpan.handleRequest\n ) {\n console.warn(\n `Unexpected root span type '${rootSpanAttributes.get(\n 'next.span_type'\n )}'. Please report this Next.js issue https://github.com/vercel/next.js`\n )\n return\n }\n\n const route =\n rootSpanAttributes.get('next.route') || normalizedSrcPage\n const name = isRSCRequest\n ? `RSC ${method} ${route}`\n : `${method} ${route}`\n\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name,\n })\n span.updateName(name)\n\n // Propagate http.route to the parent span if one exists (e.g.\n // a platform-created HTTP span in adapter deployments).\n if (parentSpan && parentSpan !== span) {\n parentSpan.setAttribute('http.route', route)\n parentSpan.updateName(name)\n }\n })\n }\n\n const incrementalCache =\n getRequestMeta(req, 'incrementalCache') ||\n (await routeModule.getIncrementalCache(\n req,\n nextConfig,\n previewProps,\n prerenderManifest,\n isMinimalMode\n ))\n\n incrementalCache?.resetRequestCache()\n ;(globalThis as any).__incrementalCache = incrementalCache\n\n const doRender = async ({\n span,\n postponed,\n fallbackRouteParams,\n renderOperation,\n allowEmptyStaticShell,\n }: {\n span?: Span\n allowEmptyStaticShell?: boolean\n\n /**\n * The postponed data for this render. This is only provided when resuming\n * a render that has been postponed.\n */\n postponed: string | undefined\n\n /**\n * The unknown route params for this render.\n */\n fallbackRouteParams: OpaqueFallbackRouteParams | null\n\n renderOperation: AppPageRenderOperation\n }): Promise => {\n // A static page may have stripped Flight headers before reaching this\n // render. Parse only when the response cache invokes the render.\n const parsedRequestHeaders: ParsedRequestHeaders = parseRequestHeaders(\n req.headers,\n {\n isRoutePPREnabled,\n previewModeId: previewProps?.previewModeId,\n }\n )\n const routeMatch: RouteMatch = { resolvedPathname }\n const dev: DevRenderContext | undefined = createDevRenderContext(req)\n const context: AppPageRouteHandlerContext = {\n query,\n params,\n page: normalizedSrcPage,\n routeMatch,\n parsedRequestHeaders,\n sharedContext: {\n buildId,\n deploymentId,\n clientAssetToken,\n },\n dev,\n fallbackRouteParams,\n renderOpts: {\n App: () => null,\n Document: () => null,\n pageConfig: {},\n ComponentMod,\n Component: interopDefault(ComponentMod),\n\n params,\n routeModule,\n page: srcPage,\n postponed,\n allowEmptyStaticShell,\n serveStreamingMetadata,\n supportsDynamicResponse:\n renderOperation === 'render' &&\n (typeof postponed === 'string' || supportsDynamicResponse),\n buildManifest,\n nextFontManifest,\n reactLoadableManifest,\n subresourceIntegrityManifest,\n setCacheStatus: routerServerContext?.setCacheStatus,\n setIsrStatus: routerServerContext?.setIsrStatus,\n setReactDebugChannel: routerServerContext?.setReactDebugChannel,\n sendErrorsToBrowser: routerServerContext?.sendErrorsToBrowser,\n\n dir:\n process.env.NEXT_RUNTIME === 'nodejs'\n ? (require('path') as typeof import('path')).join(\n /* turbopackIgnore: true */\n process.cwd(),\n routeModule.relativeProjectDir\n )\n : `${process.cwd()}/${routeModule.relativeProjectDir}`,\n isDraftMode,\n botType,\n isOnDemandRevalidate,\n isPossibleServerAction,\n assetPrefix: routeModule.getAssetPrefixForRender(\n routerServerContext,\n nextConfig.assetPrefix\n ),\n nextConfigOutput: nextConfig.output,\n crossOrigin: nextConfig.crossOrigin,\n trailingSlash: nextConfig.trailingSlash,\n images: nextConfig.images,\n previewProps,\n enableTainting: nextConfig.experimental.taint,\n reactMaxHeadersLength: nextConfig.reactMaxHeadersLength,\n\n multiZoneDraftMode,\n prefetchHints: prefetchHintsManifest,\n // With dynamicParams = false, every parameter is restricted to the\n // paths generated at build time. Advertise this even for allowed\n // URLs. Read the current manifest here because dev updates it as\n // routes compile.\n notFoundParams:\n (routeModule.isDev\n ? getRequestMeta(req, 'devNotFoundParams')\n : undefined) ??\n prerenderManifest.dynamicRoutes[normalizedSrcPage]\n ?.notFoundParams ??\n (prerenderManifest.dynamicRoutes[normalizedSrcPage]?.fallback ===\n false\n ? routeParamNames\n : undefined),\n incrementalCache,\n cacheLifeProfiles: nextConfig.cacheLife,\n staticPageGenerationTimeout: nextConfig.staticPageGenerationTimeout,\n basePath: nextConfig.basePath,\n serverActions: nextConfig.experimental.serverActions,\n logServerFunctions:\n typeof nextConfig.logging === 'object' &&\n Boolean(nextConfig.logging.serverFunctions),\n\n ...(isDebugStaticShell ||\n isDebugDynamicAccesses ||\n isDebugFallbackShell\n ? {\n isBuildTimePrerendering: true,\n isDebugDynamicAccesses: isDebugDynamicAccesses,\n }\n : {}),\n cacheComponents: Boolean(nextConfig.cacheComponents),\n partialPrefetching: nextConfig.partialPrefetching,\n // A fallback shell can only be upgraded to a concrete version if at\n // least one of its fallback params is a `generateStaticParams`\n // candidate (`remainingPrerenderableParams`), and only when Partial\n // Prefetching is enabled (the upgrade itself is gated on it above).\n // This gates whether the per-segment prefetch responses are flagged\n // `isUpgradeableISRFallback`; without an upgrade to wait for, the\n // client should not retry the prefetch.\n isFallbackUpgradeable:\n Boolean(nextConfig.partialPrefetching) &&\n remainingPrerenderableParams.length > 0,\n validationLevel:\n nextConfig.experimental.instantInsights.validationLevel,\n experimental: {\n isRoutePPREnabled,\n expireTime: nextConfig.expireTime,\n staleTimes: nextConfig.experimental.staleTimes,\n dynamicOnHover: Boolean(nextConfig.experimental.dynamicOnHover),\n optimisticRouting: Boolean(\n nextConfig.experimental.optimisticRouting\n ),\n parallelRouteMetadata: Boolean(\n nextConfig.experimental.parallelRouteMetadata\n ),\n inlineCss: Boolean(nextConfig.experimental.inlineCss),\n prefetchInlining:\n nextConfig.experimental.prefetchInlining ?? false,\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts),\n reactBrowserBailout: Boolean(\n nextConfig.experimental.reactBrowserBailout\n ),\n serverComponentsHmrCancellation: Boolean(\n nextConfig.experimental.serverComponentsHmrCancellation\n ),\n useCacheTimeout: nextConfig.experimental.useCacheTimeout,\n durableUseCacheEntries: Boolean(\n nextConfig.experimental.durableUseCacheEntries\n ),\n cachedNavigations:\n nextConfig.experimental.cachedNavigations ?? false,\n clientTraceMetadata:\n nextConfig.experimental.clientTraceMetadata || ([] as any),\n clientParamParsingOrigins:\n nextConfig.experimental.clientParamParsingOrigins,\n maxPostponedStateSizeBytes: parseMaxPostponedStateSize(\n nextConfig.experimental.maxPostponedStateSize\n ),\n disableResumeDataCacheCompression:\n nextConfig.experimental.disableResumeDataCacheCompression ??\n false,\n exposeTestingApi,\n },\n\n waitUntil: ctx.waitUntil,\n onClose: (cb) => {\n res.on('close', cb)\n },\n onAfterTaskError: () => {},\n\n onInstrumentationRequestError: (error, errorContext, silenceLog) =>\n routeModule.onRequestError(\n req,\n error,\n errorContext,\n silenceLog,\n routerServerContext\n ),\n err: getRequestMeta(req, 'invokeError'),\n },\n }\n\n const result = await invokeRouteModule(span, context, renderOperation)\n\n // Keep recovery output separate from successful response cache entries.\n if ('error' in result) {\n ;(req as any).fetchMetrics = result.result.metadata.fetchMetrics\n return result\n }\n\n const { metadata } = result\n\n const {\n cacheControl,\n headers = {},\n // Add any fetch tags that were on the page to the response headers.\n fetchTags: cacheTags,\n fetchMetrics,\n } = metadata\n\n // Apply the `expireTime` fallback as soon as we have the render's\n // `cacheControl`, so every downstream consumer (the cache stored via\n // `incrementalCache.set`, the response Cache-Control header, the outgoing\n // entry returned to `handleResponse`) sees a finalized `cacheControl`\n // with a populated `expire`. This mirrors the build-time fallback in\n // `build/index.ts` so we don't apply an expire to routes that opt out of\n // revalidation entirely (`revalidate: false`) or that are dynamic\n // (`revalidate: 0`).\n if (\n cacheControl &&\n cacheControl.revalidate !== false &&\n cacheControl.revalidate > 0 &&\n cacheControl.expire === undefined\n ) {\n cacheControl.expire = nextConfig.expireTime\n }\n\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags\n }\n\n // Pull any fetch metrics from the render onto the request.\n ;(req as any).fetchMetrics = fetchMetrics\n\n // we don't throw static to dynamic errors in dev as isSSG\n // is a best guess in dev since we don't have the prerender pass\n // to know whether the path is actually static or not\n if (\n isSSG &&\n cacheControl?.revalidate === 0 &&\n !routeModule.isDev &&\n !isRoutePPREnabled\n ) {\n const staticBailoutInfo = metadata.staticBailoutInfo\n\n const err = new Error(\n `Page changed from static to dynamic at runtime ${resolvedPathname}${\n staticBailoutInfo?.description\n ? `, reason: ${staticBailoutInfo.description}`\n : ``\n }` +\n `\\nsee more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`\n )\n\n if (staticBailoutInfo?.stack) {\n const stack = staticBailoutInfo.stack\n err.stack = err.message + stack.substring(stack.indexOf('\\n'))\n }\n\n throw err\n }\n\n return {\n value: {\n kind: CachedRouteKind.APP_PAGE,\n html: result,\n headers,\n rscData: metadata.flightData,\n postponed: metadata.postponed,\n status: metadata.statusCode,\n segmentData: metadata.segmentData,\n } satisfies CachedAppPageValue,\n cacheControl,\n } satisfies ResponseCacheEntry\n }\n\n const responseGenerator: ResponseGenerator = async ({\n hasResolved,\n previousCacheEntry: previousIncrementalCacheEntry,\n isRevalidating,\n span,\n forceStaticRender = false,\n }) => {\n const isProduction = routeModule.isDev === false\n const didRespond = hasResolved || res.writableEnded\n\n const reportRevalidationError = (error: unknown) =>\n routeModule.onRequestError(\n req,\n error,\n {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isStaticGeneration: isSSG,\n isOnDemandRevalidate,\n }),\n },\n false,\n routerServerContext\n )\n\n try {\n // skip on-demand revalidate if cache is not present and\n // revalidate-if-generated is set\n if (\n isOnDemandRevalidate &&\n revalidateOnlyGenerated &&\n !previousIncrementalCacheEntry &&\n !isMinimalMode\n ) {\n if (routerServerContext?.render404) {\n await routerServerContext.render404(req, res)\n } else {\n res.statusCode = 404\n res.end('This page could not be found')\n }\n return null\n }\n\n let fallbackMode: FallbackMode | undefined\n\n if (prerenderInfo) {\n fallbackMode = parseFallbackField(prerenderInfo.fallback)\n }\n\n // A closed matcher rejects new paths, not regeneration of paths that\n // were produced by the build. Their cache entries can be invalidated\n // or evicted without removing the path from the build manifest.\n if (fallbackMode === FallbackMode.NOT_FOUND && isPrerendered) {\n fallbackMode = FallbackMode.BLOCKING_STATIC_RENDER\n }\n\n if (\n nextConfig.partialPrefetching &&\n prerenderInfo?.fallback === null &&\n // TODO(ensure-static): express this in a cleaner way\n !isEnsureStaticPage &&\n !prerenderInfo.isExplicitlyBlocking &&\n !hasOmittedConcreteFallbackParam &&\n !hasUnresolvedRootFallbackParams &&\n remainingPrerenderableParams.length > 0\n ) {\n // Generic source shells without unresolved root params don't have a\n // concrete fallback file of their own, so they're marked as blocking.\n // When we can complete the shell into a more specific\n // prerendered shell for this request, treat it like a prerender\n // fallback so we can serve that shell instead of blocking on the full\n // route. Root-param shells stay blocking, since unknown root branches\n // should not inherit a shell from another generated branch.\n fallbackMode = FallbackMode.PRERENDER\n }\n\n // When serving a request that requires blocking metadata, we want to\n // use a blocking render instead of the prerendered fallback. Without\n // PPR, preserve the existing behavior for built-in bots.\n if (\n fallbackMode === FallbackMode.PRERENDER &&\n (isRoutePPREnabled ? !serveStreamingMetadata : Boolean(botType))\n ) {\n fallbackMode = FallbackMode.BLOCKING_STATIC_RENDER\n }\n\n if (previousIncrementalCacheEntry?.isStale === -1) {\n isOnDemandRevalidate = true\n }\n\n // On-demand revalidation blocks for admitted paths. Cache contents\n // must not make an otherwise closed path eligible for generation.\n if (isOnDemandRevalidate && fallbackMode !== FallbackMode.NOT_FOUND) {\n fallbackMode = FallbackMode.BLOCKING_STATIC_RENDER\n }\n\n if (\n // Ordinary dev requests always use the request-specific render\n // below. Only production, forced background work, and explicit\n // shell debugging may enter fallback prerender handling.\n (isProduction || forceStaticRender || isDebugPrerender) &&\n !isMinimalMode &&\n fallbackMode !== FallbackMode.BLOCKING_STATIC_RENDER &&\n staticPathKey &&\n !didRespond &&\n !isDraftMode &&\n pageIsDynamic &&\n (isProduction || !isPrerendered)\n ) {\n // When cacheComponents is enabled, we can use the fallback\n // response if the request is not a dynamic RSC request because the\n // RSC data when this feature flag is enabled does not contain any\n // param references. Without this feature flag enabled, the RSC data\n // contains param references, and therefore we can't use the fallback.\n if (\n isRoutePPREnabled &&\n (nextConfig.cacheComponents\n ? !isDynamicRSCRequest\n : !isRSCRequest)\n ) {\n const cacheKey =\n isProduction && typeof prerenderInfo?.fallback === 'string'\n ? prerenderInfo.fallback\n : normalizedSrcPage\n\n let fallbackRouteParams: OpaqueFallbackRouteParams | null\n if (isProduction) {\n // In production, rely on the prerender manifest's fallback\n // entry — the authoritative set computed at build time by\n // `buildAppStaticPaths`.\n if (prerenderInfo?.fallbackRouteParams) {\n fallbackRouteParams = createOpaqueFallbackRouteParams(\n prerenderInfo.fallbackRouteParams\n )\n } else if (isDebugFallbackShell) {\n fallbackRouteParams = getFallbackRouteParams(\n normalizedSrcPage,\n routeModule\n )\n } else {\n fallbackRouteParams = null\n }\n } else {\n // Dev selects the source for static-shell debug renders from\n // the per-URL `getStaticPaths` result. The dev prerender\n // manifest does not contain these ad-hoc paths. `base-server`\n // passes the source's fallback params in request metadata.\n // These renders need the source set, not the completed target's\n // potentially smaller `stagedFallbackParams`.\n if (isDebugFallbackShell) {\n fallbackRouteParams = getFallbackRouteParams(\n normalizedSrcPage,\n routeModule\n )\n } else if (isDebugStaticShell) {\n fallbackRouteParams =\n getRequestMeta(req, 'fallbackRouteParams') ?? null\n } else {\n fallbackRouteParams = null\n }\n }\n\n // Debug rendering stages the params of the selected source shell.\n if (isDebugStaticShell) {\n addRequestMeta(req, 'stagedFallbackParams', fallbackRouteParams)\n }\n\n // We use the response cache here to handle the revalidation and\n // management of the fallback shell.\n const fallbackResponse = await routeModule.handleResponse({\n cacheKey,\n req,\n nextConfig,\n routeKind: RouteKind.APP_PAGE,\n isFallback: true,\n previewProps,\n prerenderManifest,\n isRoutePPREnabled,\n responseGenerator: async () =>\n doRender({\n span,\n // We pass `undefined` as rendering a fallback isn't resumed\n // here.\n postponed: undefined,\n // Always serve the shell that matched this request\n // immediately. If there are still prerenderable params left,\n // the background path below will complete the shell into a\n // more specific cache entry for later requests.\n fallbackRouteParams,\n renderOperation: 'prerender',\n allowEmptyStaticShell: isInstantNavigationTest || undefined,\n }),\n waitUntil: ctx.waitUntil,\n isMinimalMode,\n })\n\n if (fallbackResponse === null || 'error' in fallbackResponse) {\n return fallbackResponse\n }\n\n // Otherwise, if we did get a fallback response, we should return it.\n if (fallbackResponse) {\n if (\n !isMinimalMode &&\n isRoutePPREnabled &&\n // Upgrading a fallback shell into a more specific ISR entry is\n // only done when Partial Prefetching is enabled, mirroring the\n // `partialFallback` flag the adapter emits for deployments.\n nextConfig.partialPrefetching &&\n // Match the build-time contract: only fallback shells that can\n // still be completed with prerenderable params should upgrade.\n remainingPrerenderableParams.length > 0 &&\n ssgCacheKey &&\n incrementalCache &&\n !isOnDemandRevalidate &&\n !isDebugFallbackShell &&\n // The testing API relies on deterministic shell behavior, so\n // don't upgrade fallback shells in the background when it's\n // exposed.\n !exposeTestingApi &&\n // Instant Navigation Testing API requests intentionally keep\n // the route in shell mode; don't upgrade these in background.\n !isInstantNavigationTest\n ) {\n scheduleOnNextTick(async () => {\n const responseCache = routeModule.getResponseCache(req)\n\n try {\n // Only the params that were just specialized should be\n // removed from the fallback render. Any remaining fallback\n // params stay deferred so the revalidated result is a more\n // specific shell (e.g. `/prefix/c/[two]`), not a fully\n // concrete route (`/prefix/c/foo`).\n const result = await responseCache.revalidate(\n ssgCacheKey,\n incrementalCache,\n isRoutePPREnabled,\n false,\n (c) => {\n return doRender({\n span: c.span,\n postponed: undefined,\n fallbackRouteParams:\n remainingFallbackRouteParams.length > 0\n ? createOpaqueFallbackRouteParams(\n remainingFallbackRouteParams\n )\n : null,\n renderOperation: 'prerender',\n })\n },\n // We don't have a prior entry for this param-specific shell.\n null,\n hasResolved,\n ctx.waitUntil\n )\n if (result !== null && 'error' in result) {\n throw result.error\n }\n } catch (err) {\n console.error(\n 'Error revalidating the page in the background',\n err\n )\n }\n })\n }\n\n // Remove the cache control from the response to prevent it from being\n // used in the surrounding cache.\n delete fallbackResponse.cacheControl\n\n return fallbackResponse\n }\n }\n }\n\n // Only requests that aren't revalidating can be resumed. If we have the\n // minimal postponed data, then we should resume the render with it.\n let postponed =\n !isOnDemandRevalidate && !isRevalidating && minimalPostponed\n ? minimalPostponed\n : undefined\n let hasFullyStaticCacheEntry = false\n\n if (\n // If this is a dynamic RSC request or a server action request, we should\n // use the postponed data from the static render (if available). This\n // ensures that we can utilize the resume data cache (RDC) from the static\n // render to ensure that the data is consistent between the static and\n // dynamic renders (for navigations) or when re-rendering after a server\n // action.\n // Only enable RDC for Navigations if the feature is enabled.\n supportsRDCForNavigations &&\n process.env.NEXT_RUNTIME !== 'edge' &&\n !isMinimalMode &&\n incrementalCache &&\n // Include both dynamic RSC requests (navigations) and server actions\n (isDynamicRSCRequest || isPossibleServerAction) &&\n // We don't typically trigger an on-demand revalidation for dynamic RSC\n // requests, as we're typically revalidating the page in the background\n // instead. However, if the cache entry is stale, we should trigger a\n // background revalidation on dynamic RSC requests. This prevents us\n // from entering an infinite loop of revalidations.\n !forceStaticRender\n ) {\n const incrementalCacheKey = shellCacheKey ?? resolvedPathname\n const incrementalCacheEntry = await incrementalCache.get(\n incrementalCacheKey,\n {\n kind: IncrementalCacheKind.APP_PAGE,\n route: routeModule.cacheOwner,\n isRoutePPREnabled: true,\n isFallback: false,\n }\n )\n\n // If the cache entry is found, we should use the postponed data from\n // the cache.\n if (\n incrementalCacheEntry &&\n incrementalCacheEntry.value &&\n incrementalCacheEntry.value.kind === CachedRouteKind.APP_PAGE\n ) {\n // CRITICAL: we're assigning the postponed data from the cache entry\n // here as we're using the RDC to resume the render.\n postponed = incrementalCacheEntry.value.postponed\n hasFullyStaticCacheEntry = postponed === undefined\n\n // If the cache entry is stale, we should trigger a background\n // revalidation so that subsequent requests will get a fresh response.\n if (\n incrementalCacheEntry &&\n // We want to trigger this flow if the cache entry is stale and if\n // the requested revalidation flow is either foreground or\n // background.\n (incrementalCacheEntry.isStale === -1 ||\n incrementalCacheEntry.isStale === true)\n ) {\n // We want to schedule this on the next tick to ensure that the\n // render is not blocked on it.\n scheduleOnNextTick(async () => {\n const responseCache = routeModule.getResponseCache(req)\n\n try {\n const result = await responseCache.revalidate(\n incrementalCacheKey,\n incrementalCache,\n isRoutePPREnabled,\n false,\n (c) =>\n responseGenerator({\n ...c,\n // CRITICAL: we need to set this to true as we're\n // revalidating in the background and typically this dynamic\n // RSC request is not treated as static.\n forceStaticRender: true,\n }),\n // CRITICAL: we need to pass null here because passing the\n // previous cache entry here (which is stale) will switch on\n // isOnDemandRevalidate and break the prerendering.\n null,\n hasResolved,\n ctx.waitUntil\n )\n if (result !== null && 'error' in result) {\n throw result.error\n }\n } catch (err) {\n console.error(\n 'Error revalidating the page in the background',\n err\n )\n }\n })\n }\n }\n }\n\n // When we're in minimal mode, if we're trying to debug the static shell,\n // return an empty App Page response instead of resuming the dynamic\n // render. The static shell has already been streamed by the platform.\n if (\n (isDebugStaticShell || isDebugDynamicAccesses) &&\n typeof postponed !== 'undefined'\n ) {\n return {\n cacheControl: { revalidate: 1, expire: undefined },\n value: {\n kind: CachedRouteKind.APP_PAGE,\n html: RenderResult.fromStatic(\n '',\n isRSCRequest\n ? RSC_CONTENT_TYPE_HEADER\n : HTML_CONTENT_TYPE_HEADER\n ),\n rscData: undefined,\n postponed,\n segmentData: undefined,\n headers: undefined,\n status: undefined,\n } satisfies CachedAppPageValue,\n }\n }\n\n const placeholderFallbackRouteParams =\n // When a request carries dynamic placeholder values (e.g. \"[slug]\"),\n // defer only the unresolved subset instead of forcing all fallback\n // params to suspend.\n !routeModule.isDev &&\n pageIsDynamic &&\n prerenderInfo?.fallbackRouteParams\n ? getPlaceholderFallbackRouteParams(\n params as\n | Record\n | undefined,\n prerenderInfo.fallbackRouteParams\n )\n : null\n\n const fallbackRouteParamsForRender =\n placeholderFallbackRouteParams &&\n placeholderFallbackRouteParams.length > 0\n ? placeholderFallbackRouteParams\n : prerenderInfo?.fallbackRouteParams\n\n const hasPlaceholderFallbackRouteParams =\n placeholderFallbackRouteParams != null &&\n placeholderFallbackRouteParams.length > 0\n\n // When route-module.ts resolved partial nxtP* params during\n // background revalidation, filter fallbackRouteParams to only the\n // params that are still unresolved. This lets doRender produce an\n // intermediate PPR shell that suspends only for those params.\n let effectiveFallbackRouteParams: FallbackRouteParam[] | null = null\n if (\n nextConfig.cacheComponents &&\n prerenderInfo?.fallbackRouteParams\n ) {\n const resolvedKeys = getRequestMeta(req, 'resolvedRouteParamKeys')\n if (resolvedKeys && resolvedKeys.size > 0) {\n effectiveFallbackRouteParams =\n prerenderInfo.fallbackRouteParams.filter(\n (param) => !resolvedKeys.has(param.paramName)\n )\n }\n }\n\n const fallbackRouteParams =\n // In production or when debugging the static shell for a\n // non-prerendered URL, use the prerender manifest's fallback route\n // params which correctly identifies which params are unknown.\n ((isProduction && getRequestMeta(req, 'renderFallbackShell')) ||\n hasPlaceholderFallbackRouteParams ||\n (isDebugStaticShell && !isPrerendered)) &&\n fallbackRouteParamsForRender\n ? createOpaqueFallbackRouteParams(fallbackRouteParamsForRender)\n : // For intermediate shells where some params are resolved and\n // others still have placeholders, use the filtered subset so the\n // prerender suspends only for the unresolved params.\n effectiveFallbackRouteParams &&\n effectiveFallbackRouteParams.length > 0 &&\n effectiveFallbackRouteParams.length <\n (prerenderInfo?.fallbackRouteParams?.length ?? 0)\n ? createOpaqueFallbackRouteParams(effectiveFallbackRouteParams)\n : // This render defers the params left unresolved in its key.\n // The render must not store their concrete values in the\n // shared entry. Per-request resumes resolve those params\n // instead. Blocking renders and RSC-triggered revalidations\n // both need this restriction.\n //\n // The serving modes obtain the unresolved params differently:\n // - `next start` defers them in this branch.\n // - Minimal mode uses the platform's placeholders above.\n // The platform strips never-prerenderable param values before\n // calling the origin.\n !isMinimalMode &&\n (usesShellCacheKey ||\n (forceStaticRender && shellCacheKey !== null)) &&\n remainingFallbackRouteParams.length > 0\n ? createOpaqueFallbackRouteParams(\n remainingFallbackRouteParams\n )\n : isDebugFallbackShell\n ? getFallbackRouteParams(normalizedSrcPage, routeModule)\n : null\n\n // Staging defers params without replacing their values with opaque\n // placeholders. A resumed render reads the selected artifact's mask\n // from its postponed state.\n if (\n (isProduction || isDebugStaticShell) &&\n nextConfig.cacheComponents\n ) {\n let stagedFallbackParams: OpaqueFallbackRouteParams | null\n if (hasPlaceholderFallbackRouteParams) {\n stagedFallbackParams = createOpaqueFallbackRouteParams(\n placeholderFallbackRouteParams\n )\n } else if (isDebugStaticShell) {\n stagedFallbackParams = fallbackRouteParams\n } else if (hasFullyStaticCacheEntry || isPrerendered) {\n stagedFallbackParams = null\n } else if (postponed && prerenderInfo?.fallbackRouteParams) {\n // App-render uses this source-shell set only when the supplied\n // state does not record its own fallback params.\n stagedFallbackParams = createOpaqueFallbackRouteParams(\n prerenderInfo.fallbackRouteParams\n )\n } else if (prerenderInfo) {\n stagedFallbackParams = getStagedFallbackParams(prerenderInfo)\n } else {\n stagedFallbackParams = null\n }\n\n addRequestMeta(req, 'stagedFallbackParams', stagedFallbackParams)\n }\n\n // Forced static and debug renders are prerenders even when the\n // surrounding request otherwise supports dynamic rendering.\n const isRequestSpecificRender =\n !forceStaticRender &&\n !isDebugPrerender &&\n (supportsDynamicResponse || isPossibleServerAction)\n\n // Perform the render.\n const result = await doRender({\n span,\n postponed,\n fallbackRouteParams,\n renderOperation: isRequestSpecificRender ? 'render' : 'prerender',\n allowEmptyStaticShell: isInstantNavigationTest || undefined,\n })\n\n // The response cache already served the stale entry, so response\n // delivery cannot report this background failure.\n if ('error' in result && hasResolved) {\n await reportRevalidationError(result.error)\n }\n return result\n } catch (err) {\n // The foreground handler reports errors while it awaits a response.\n // Report here only after the cache has resolved that response.\n if (hasResolved) {\n await reportRevalidationError(err)\n }\n throw err\n }\n }\n\n const invokeOnCacheEntry = (cacheEntry: ResponseCacheEntry) => {\n // If we support RDC for Navigations, prefer the callback that can\n // deliver postponed state for both document and RSC requests.\n const onCacheEntry = supportsRDCForNavigations\n ? (getRequestMeta(req, 'onCacheEntryV2') ??\n getRequestMeta(req, 'onCacheEntry'))\n : getRequestMeta(req, 'onCacheEntry')\n if (!onCacheEntry) {\n return false\n }\n\n const rawCacheEntryUrl = getRequestMeta(req, 'initURL') ?? req.url\n const cacheEntryUrl = rawCacheEntryUrl\n ? (parseUrl(rawCacheEntryUrl)?.pathname ?? rawCacheEntryUrl)\n : undefined\n\n return onCacheEntry(cacheEntry, { url: cacheEntryUrl })\n }\n\n const resumeRender = (\n body: RenderResult,\n postponed: string | undefined,\n span?: Span\n ) => {\n // Attach the continuation before rendering so the prelude can start\n // streaming immediately.\n const transformer = new TransformStream()\n body.push(transformer.readable)\n\n // This metadata supplies fallback params when the saved state does not\n // record them. App-render uses the saved state's own set when present.\n if (nextConfig.cacheComponents && prerenderInfo?.fallbackRouteParams) {\n addRequestMeta(\n req,\n 'stagedFallbackParams',\n createOpaqueFallbackRouteParams(prerenderInfo.fallbackRouteParams)\n )\n }\n\n // Start the resume without awaiting it. The response consumes the\n // continuation stream attached above.\n doRender({\n span,\n postponed,\n // The resume retains concrete param values; staging only defers\n // access.\n fallbackRouteParams: null,\n renderOperation: 'render',\n })\n .then(async (result) => {\n if (!result) {\n throw new Error('Invariant: expected a result to be returned')\n }\n\n if ('error' in result) {\n throw result.error\n }\n\n if (result.value?.kind !== CachedRouteKind.APP_PAGE) {\n throw new Error(\n `Invariant: expected a page response, got ${result.value?.kind}`\n )\n }\n\n // Pipe the resume result to the transformer.\n await result.value.html.pipeTo(transformer.writable)\n })\n .catch((err) => {\n // An error occurred during piping or preparing the render, abort\n // the transformers writer so we can terminate the stream.\n transformer.writable.abort(err).catch((e) => {\n console.error(\"couldn't abort transformer\", e)\n })\n })\n }\n\n const handleResponse = async (span?: Span): Promise => {\n // Development evaluates the configured policy without emitting its\n // production matchers. Use that outcome at the same admission boundary.\n const devParamMatchingRejected =\n routeModule.isDev &&\n !isDebugPrerender &&\n getRequestMeta(req, 'devParamMatchingRejected')\n\n // Decide whether this URL is allowed before consulting ISR. An exact\n // build path remains valid even when its cached result is missing, and\n // the most specific matched route controls whether other paths may be\n // generated. Neither a cache hit nor revalidation changes that decision.\n // Server Actions may be forwarded to a worker's route pattern rather\n // than a concrete URL. That invokes the action, not a page navigation.\n if (\n !isMinimalMode &&\n !isDraftMode &&\n !isPossibleServerAction &&\n pageIsDynamic &&\n (devParamMatchingRejected ||\n (prerenderInfo?.fallback === false && !isPrerendered))\n ) {\n if (nextConfig.adapterPath) {\n return await render404()\n }\n throw new NoFallbackError()\n }\n\n const cacheEntry = await routeModule.handleResponse({\n cacheKey: ssgCacheKey,\n responseGenerator: (c) =>\n responseGenerator({\n span,\n ...c,\n }),\n routeKind: RouteKind.APP_PAGE,\n isOnDemandRevalidate,\n isRoutePPREnabled,\n req,\n nextConfig,\n previewProps,\n prerenderManifest,\n waitUntil: ctx.waitUntil,\n isMinimalMode,\n })\n\n if (cacheEntry !== null && 'error' in cacheEntry) {\n if (res.headersSent || res.writableEnded) {\n // The outer catch reports the error when we cannot send recovery.\n throw cacheEntry.error\n }\n\n // Returned failures bypass the outer catch's error reporting. Do not\n // await async reporting before sending the error response.\n const reportPrerenderError = () => {\n const errorReporting = routeModule\n .onRequestError(\n req,\n cacheEntry.error,\n {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isStaticGeneration: isSSG,\n isOnDemandRevalidate,\n }),\n },\n false,\n routerServerContext\n )\n .catch((err) => {\n console.error(err)\n })\n ctx.waitUntil?.(errorReporting)\n }\n\n const { result } = cacheEntry\n for (const [name, value] of Object.entries(\n result.metadata.headers ?? {}\n )) {\n if (value !== undefined) {\n res.appendHeader(\n name,\n typeof value === 'number' ? value.toString() : value\n )\n }\n }\n\n // Each request needs the failure status, including callers that\n // reused another request's render through the response cache.\n res.statusCode = 500\n span?.setAttributes({\n 'http.status_code': 500,\n 'next.rsc': isRSCRequest,\n 'error.type': '500',\n })\n span?.setStatus({ code: SpanStatusCode.ERROR })\n res.removeHeader('x-nextjs-cache')\n res.setHeader(\n 'Cache-Control',\n 'private, no-cache, no-store, max-age=0, must-revalidate'\n )\n\n let response = result\n if (isRSCRequest) {\n // The router discards failed prefetches and falls back to a\n // document load when navigation receives a failed Flight response.\n response = RenderResult.fromStatic('', RSC_CONTENT_TYPE_HEADER)\n } else if (typeof result.metadata.postponed === 'string') {\n // The platform needs the postponed state to resume with the actual\n // request. This value is only for delivery; the response cache\n // retains the failure and never persists it as ISR output.\n //\n // The callback writes to res without applying value.status. Its\n // status and metadata headers must be set first.\n if (\n await invokeOnCacheEntry({\n value: {\n kind: CachedRouteKind.APP_PAGE,\n html: result,\n rscData: result.metadata.flightData,\n postponed: result.metadata.postponed,\n status: 500,\n headers: undefined,\n segmentData: undefined,\n },\n cacheControl: { revalidate: 0, expire: undefined },\n })\n ) {\n reportPrerenderError()\n return null\n }\n\n if (isMinimalMode) {\n // A prerender invocation may have filtered request headers, so\n // only the platform can resume with the original request.\n //\n // Let the outer catch report this error once.\n throw cacheEntry.error\n }\n\n // Each request owns its continuation. The buffered prelude and\n // postponed state can be shared by the response cache.\n response = RenderResult.fromStatic(\n result.toUnchunkedString(),\n HTML_CONTENT_TYPE_HEADER\n )\n resumeRender(response, result.metadata.postponed, span)\n }\n\n reportPrerenderError()\n return sendRenderResult({\n req,\n res,\n result: response,\n generateEtags: false,\n poweredByHeader: nextConfig.poweredByHeader,\n cacheControl: undefined,\n })\n }\n\n if (isDraftMode) {\n res.setHeader(\n 'Cache-Control',\n 'private, no-cache, no-store, max-age=0, must-revalidate'\n )\n }\n\n // Documents and RSC payloads must not be stored in development.\n // Browsers reuse a stored response for a history navigation without\n // revalidating it, so a back navigation would restore a page from\n // before the latest edit. Static assets never reach this code. They\n // keep a revalidatable `Cache-Control`, so the browser caches them\n // between page loads.\n if (routeModule.isDev) {\n res.setHeader('Cache-Control', 'no-store')\n }\n\n if (!cacheEntry) {\n if (ssgCacheKey) {\n // A cache entry might not be generated if a response is written\n // in `getInitialProps` or `getServerSideProps`, but those shouldn't\n // have a cache key. If we do have a cache key but we don't end up\n // with a cache entry, then either Next.js or the application has a\n // bug that needs fixing.\n throw new Error('invariant: cache entry required but not generated')\n }\n return null\n }\n\n if (cacheEntry.value?.kind !== CachedRouteKind.APP_PAGE) {\n throw new Error(\n `Invariant app-page handler received invalid cache entry ${cacheEntry.value?.kind}`\n )\n }\n\n const didPostpone = typeof cacheEntry.value.postponed === 'string'\n\n // Set the build ID header for RSC navigation requests when deploymentId is configured. This\n // corresponds with maybeAppendBuildIdToRSCPayload in app-render.tsx which omits the build ID\n // from the RSC payload when deploymentId is set (relying on this header instead). Server\n // actions are excluded here because action redirect responses get the deployment ID header\n // from the pre-fetched redirect target (via createRedirectRenderResult in action-handler.ts\n // which copies headers from the internal RSC fetch).\n // For static prerenders served from CDN, routes-manifest.json adds a header.\n if (isRSCRequest && !isPossibleServerAction && deploymentId) {\n res.setHeader(NEXT_NAV_DEPLOYMENT_ID_HEADER, deploymentId)\n }\n\n if (\n isSSG &&\n // We don't want to send a cache header for requests that contain dynamic\n // data. If this is a Dynamic RSC request or wasn't a Prefetch RSC\n // request, then we should set the cache header.\n !isDynamicRSCRequest &&\n (!didPostpone || isPrefetchRSCRequest)\n ) {\n if (!isMinimalMode) {\n // set x-nextjs-cache header to match the header\n // we set for the image-optimizer\n res.setHeader(\n 'x-nextjs-cache',\n isOnDemandRevalidate\n ? 'REVALIDATED'\n : cacheEntry.isMiss\n ? 'MISS'\n : cacheEntry.isStale\n ? 'STALE'\n : 'HIT'\n )\n }\n // Set a header used by the client router to signal the response is static\n // and should respect the `static` cache staleTime value.\n res.setHeader(NEXT_IS_PRERENDER_HEADER, '1')\n }\n const { value: cachedData } = cacheEntry\n\n // Coerce the cache control parameter from the render.\n let cacheControl: CacheControl | undefined\n\n // If this is a resume request in minimal mode it is streamed with dynamic\n // content and should not be cached.\n if (hasPostponedState) {\n cacheControl = { revalidate: 0, expire: undefined }\n }\n\n // If this is in minimal mode and this is a flight request that isn't a\n // prefetch request while PPR is enabled, it cannot be cached as it contains\n // dynamic content.\n else if (isDynamicRSCRequest) {\n cacheControl = { revalidate: 0, expire: undefined }\n } else if (!routeModule.isDev) {\n // If this is a preview mode request, we shouldn't cache it\n if (isDraftMode) {\n cacheControl = { revalidate: 0, expire: undefined }\n }\n\n // If this isn't SSG, then we should set change the header only if it is\n // not set already.\n else if (!isSSG) {\n if (!res.getHeader('Cache-Control')) {\n cacheControl = { revalidate: 0, expire: undefined }\n }\n } else if (cacheEntry.cacheControl) {\n // If the cache entry has a cache control with a revalidate value that's\n // a number, use it.\n if (typeof cacheEntry.cacheControl.revalidate === 'number') {\n if (cacheEntry.cacheControl.revalidate < 1) {\n throw new Error(\n `Invalid revalidate configuration provided: ${cacheEntry.cacheControl.revalidate} < 1`\n )\n }\n\n cacheControl = {\n revalidate: cacheEntry.cacheControl.revalidate,\n expire: cacheEntry.cacheControl.expire,\n }\n }\n // Otherwise if the revalidate value is false, then we should use the\n // cache time of one year.\n else {\n cacheControl = {\n revalidate: CACHE_ONE_YEAR_SECONDS,\n expire: undefined,\n }\n }\n }\n }\n\n cacheEntry.cacheControl = cacheControl\n\n if (\n typeof segmentPrefetchHeader === 'string' &&\n cachedData?.kind === CachedRouteKind.APP_PAGE &&\n cachedData.segmentData\n ) {\n // This is a prefetch request issued by the client Segment Cache. These\n // should never reach the application layer (lambda). We should either\n // respond from the cache (HIT) or respond with 404 (MISS).\n\n // Set a header to indicate that PPR is enabled for this route. This\n // lets the client distinguish between a regular cache miss and a cache\n // miss due to PPR being disabled. In other contexts this header is used\n // to indicate that the response contains dynamic data, but here we're\n // only using it to indicate that the feature is enabled — the segment\n // response itself contains whether the data is dynamic.\n res.setHeader(NEXT_DID_POSTPONE_HEADER, '2')\n\n // Add the cache tags header to the response if it exists and we're in\n // minimal mode while rendering a static page.\n const tags = cachedData.headers?.[NEXT_CACHE_TAGS_HEADER]\n if (isMinimalMode && isSSG && tags && typeof tags === 'string') {\n res.setHeader(NEXT_CACHE_TAGS_HEADER, tags)\n }\n\n const matchedSegment = cachedData.segmentData.get(\n segmentPrefetchHeader\n )\n if (matchedSegment !== undefined) {\n // Cache hit\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: RenderResult.fromStatic(\n matchedSegment,\n RSC_CONTENT_TYPE_HEADER\n ),\n cacheControl: cacheEntry.cacheControl,\n })\n }\n\n // Cache miss. Either a cache entry for this route has not been generated\n // (which technically should not be possible when PPR is enabled, because\n // at a minimum there should always be a fallback entry) or there's no\n // match for the requested segment. Respond with a 404.\n res.statusCode = 404\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: RenderResult.EMPTY,\n cacheControl: cacheEntry.cacheControl,\n })\n }\n\n // `onCacheEntry` lets the platform capture a freshly prerendered result\n // so the proxy can write it to the ISR cache; on deploy it returns true\n // and the function returns below. In debug-shell mode the render was\n // skipped and we only serve the already-cached shell, so there is nothing\n // to capture, and we need to reach the serve path below to close the\n // document. `onCacheEntry` is absent in `next start`/dev, so this guard\n // only affects the deploy (minimalMode) path.\n if (!isDebugStaticShell && (await invokeOnCacheEntry(cacheEntry))) {\n return null\n }\n\n if (cachedData.headers) {\n const headers = { ...cachedData.headers }\n\n if (!isMinimalMode || !isSSG) {\n delete headers[NEXT_CACHE_TAGS_HEADER]\n }\n\n for (let [key, value] of Object.entries(headers)) {\n if (typeof value === 'undefined') continue\n\n if (Array.isArray(value)) {\n for (const v of value) {\n res.appendHeader(key, v)\n }\n } else if (typeof value === 'number') {\n value = value.toString()\n res.appendHeader(key, value)\n } else {\n res.appendHeader(key, value)\n }\n }\n }\n\n // Add the cache tags header to the response if it exists and we're in\n // minimal mode while rendering a static page.\n const tags = cachedData.headers?.[NEXT_CACHE_TAGS_HEADER]\n if (isMinimalMode && isSSG && tags && typeof tags === 'string') {\n res.setHeader(NEXT_CACHE_TAGS_HEADER, tags)\n }\n\n // If the request is a data request, then we shouldn't set the status code\n // from the response because it should always be 200. This should be gated\n // behind the experimental PPR flag.\n if (cachedData.status && (!isRSCRequest || !isRoutePPREnabled)) {\n res.statusCode = cachedData.status\n }\n\n // Redirect information is encoded in RSC payload, so we don't need to use redirect status codes\n if (\n !isMinimalMode &&\n cachedData.status &&\n RedirectStatusCode[cachedData.status] &&\n isRSCRequest\n ) {\n res.statusCode = 200\n }\n\n // Mark that the request did postpone.\n if (didPostpone && !isDynamicRSCRequest) {\n res.setHeader(NEXT_DID_POSTPONE_HEADER, '1')\n }\n\n // we don't go through this block when preview mode is true\n // as preview mode is a dynamic request (bypasses cache) and doesn't\n // generate both HTML and payloads in the same request so continue to just\n // return the generated payload\n if (isRSCRequest && !isDraftMode) {\n // If this is a dynamic RSC request, then stream the response.\n if (typeof cachedData.rscData === 'undefined') {\n // If the response is not an RSC response, then we can't serve it.\n if (cachedData.html.contentType !== RSC_CONTENT_TYPE_HEADER) {\n if (nextConfig.cacheComponents) {\n res.statusCode = 404\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: RenderResult.EMPTY,\n cacheControl: cacheEntry.cacheControl,\n })\n } else {\n // Otherwise this case is not expected.\n throw new InvariantError(\n `Expected RSC response, got ${cachedData.html.contentType}`\n )\n }\n }\n\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: cachedData.html,\n cacheControl: cacheEntry.cacheControl,\n })\n }\n\n // As this isn't a prefetch request, we should serve the static flight\n // data.\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: RenderResult.fromStatic(\n cachedData.rscData,\n RSC_CONTENT_TYPE_HEADER\n ),\n cacheControl: cacheEntry.cacheControl,\n })\n }\n\n // This is a request for HTML data.\n const body = cachedData.html\n\n // Instant Navigation Testing API: under the instant lock we serve the\n // static shell as a complete document without resuming the dynamic\n // render, either recovering from an empty (blocking) shell or appending\n // the closing tags to a non-empty one.\n if (isInstantNavigationTest && isDebugStaticShell) {\n const isEmptyPrelude =\n typeof cachedData.postponed === 'string' &&\n entryBase.isEmptyHTMLPrelude(cachedData.postponed)\n\n if (isEmptyPrelude) {\n // A blocking route (a Suspense boundary above , or `export\n // const instant = false`) has an empty static shell. Serving it under\n // the lock would be a blank document with no way to release the lock,\n // so every reload would render the same blank shell and leave the\n // user stuck. We surface the reason instead: in development we throw\n // so it shows as an error overlay (the catch below clears the instant\n // cookie via Set-Cookie); in production we serve a minimal document\n // whose script clears the cookie client-side, since on deploy the\n // edge has already served the cached shell and committed the response\n // headers and this function only resumes by appending to the body, so\n // a Set-Cookie could not take effect. `next start` reuses the same\n // document, where throwing would render only a generic \"Internal\n // Server Error\" page.\n if (routeModule.isDev === true) {\n throw new Error(\n `The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.\\n\\n` +\n `To identify why this route is blocking, refer to the Instant Navigation docs: https://preview.nextjs.org/docs/app/guides/instant-navigation`\n )\n }\n\n const recoveryHtml =\n `` +\n `` +\n `

The Navigation Inspector was active, but you attempted to load a blocking route. Reload the page to reset the inspector.

` +\n `

To identify why this route is blocking, refer to the ` +\n `Instant Navigation docs.

` +\n ``\n\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: RenderResult.fromStatic(\n recoveryHtml,\n HTML_CONTENT_TYPE_HEADER\n ),\n cacheControl: { revalidate: 0, expire: undefined },\n })\n }\n\n // Non-empty shell: the cookie-guarded bootstrap that sets\n // self.__next_instant_test is embedded in the prerendered shell via\n // `bootstrapScriptContent`, so it is already present (in the served\n // shell for a fresh render, or in the cached prelude on deploy). Append\n // the closing tags so the browser can parse a complete document.\n body.push(\n new ReadableStream({\n start(controller) {\n controller.enqueue(ENCODED_TAGS.CLOSED.BODY_AND_HTML)\n controller.close()\n },\n })\n )\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: body,\n cacheControl: { revalidate: 0, expire: undefined },\n })\n }\n\n // If there's no postponed state, we should just serve the HTML. This\n // should also be the case for a resume request because it's completed\n // as a server render (rather than a static render).\n if (!didPostpone || isMinimalMode || isRSCRequest) {\n // If we're in test mode, we should add a sentinel chunk to the response\n // that's between the static and dynamic parts so we can compare the\n // chunks and add assertions.\n if (\n process.env.__NEXT_TEST_MODE &&\n isMinimalMode &&\n isRoutePPREnabled &&\n body.contentType === HTML_CONTENT_TYPE_HEADER\n ) {\n // As we're in minimal mode, the static part would have already been\n // streamed first. The only part that this streams is the dynamic part\n // so we should FIRST stream the sentinel and THEN the dynamic part.\n body.unshift(createPPRBoundarySentinel())\n }\n\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: body,\n cacheControl: cacheEntry.cacheControl,\n })\n }\n\n // If we're debugging the static shell or the dynamic API accesses, we\n // should just serve the HTML without resuming the render. The returned\n // HTML will be the static shell so all the Dynamic API's will be used\n // during static generation.\n if (isDebugStaticShell || isDebugDynamicAccesses) {\n // Since we're not resuming the render, we need to at least add the\n // closing body and html tags to create valid HTML.\n body.push(\n new ReadableStream({\n start(controller) {\n controller.enqueue(ENCODED_TAGS.CLOSED.BODY_AND_HTML)\n controller.close()\n },\n })\n )\n\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: body,\n cacheControl: { revalidate: 0, expire: undefined },\n })\n }\n\n // If we're in test mode, we should add a sentinel chunk to the response\n // that's between the static and dynamic parts so we can compare the\n // chunks and add assertions.\n if (process.env.__NEXT_TEST_MODE) {\n body.push(createPPRBoundarySentinel())\n }\n\n resumeRender(body, cachedData.postponed, span)\n\n return sendRenderResult({\n req,\n res,\n generateEtags: nextConfig.generateEtags,\n poweredByHeader: nextConfig.poweredByHeader,\n result: body,\n // We don't want to cache the response if it has postponed data because\n // the response being sent to the client it's dynamic parts are streamed\n // to the client on the same request.\n cacheControl: { revalidate: 0, expire: undefined },\n })\n }\n\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (isWrappedByNextServer && activeSpan) {\n await handleResponse(activeSpan)\n } else {\n parentSpan = tracer.getActiveScopeSpan()\n return await tracer.withPropagatedContext(\n req.headers,\n () =>\n tracer.trace(\n BaseServerSpan.handleRequest,\n {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': httpTarget,\n },\n },\n handleResponse\n ),\n undefined,\n !isWrappedByNextServer\n )\n }\n } catch (err) {\n // If an Instant Navigation Testing document render fails (e.g. the page\n // blocks at the root with no Suspense boundary above it, producing an empty\n // or bailed-out static shell), clear the instant navigation cookie before\n // serving the error page. Otherwise the cookie would persist and every\n // reload would re-render the same broken shell, leaving the user stuck\n // without a way to release the lock.\n if (isInstantNavigationTest && !res.headersSent) {\n res.setHeader(\n 'Set-Cookie',\n `${NEXT_INSTANT_TEST_COOKIE}=; Path=/; Max-Age=0`\n )\n }\n\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false\n await routeModule.onRequestError(\n req,\n err,\n {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'render',\n revalidateReason: getRevalidateReason({\n isStaticGeneration: isSSG,\n isOnDemandRevalidate,\n }),\n },\n silenceLog,\n routerServerContext\n )\n }\n\n // rethrow so that we can handle serving error page\n throw err\n }\n }\n\n return {\n __next_app__,\n routeModule,\n handler,\n }\n}\n\n// TODO: omit this from production builds, only test builds should include it\n/**\n * Creates a readable stream that emits a PPR boundary sentinel.\n *\n * @returns A readable stream that emits a PPR boundary sentinel.\n */\nfunction createPPRBoundarySentinel() {\n return new ReadableStream({\n start(controller) {\n controller.enqueue(\n new TextEncoder().encode('')\n )\n controller.close()\n },\n })\n}\n"],"names":["AppPageRouteModule","createDevRenderContext","RouteKind","getRevalidateReason","getTracer","SpanKind","SpanStatusCode","addRequestMeta","getRequestMeta","setRequestMeta","BaseServerSpan","stripFlightHeaders","parseRequestHeaders","NodeNextRequest","NodeNextResponse","isRSCRequestHeader","isNonHtmlSecFetchDest","UNDERSCORE_NOT_FOUND_ROUTE","getFallbackRouteParams","getPlaceholderFallbackRouteParams","getStagedFallbackParams","buildDynamicSegmentPlaceholder","createOpaqueFallbackRouteParams","setManifestsSingleton","shouldServeStreamingMetadata","normalizeAppPath","parseNormalizedAppRoute","getIsPossibleServerAction","RSC_HEADER","NEXT_ROUTER_PREFETCH_HEADER","NEXT_ROUTER_SEGMENT_PREFETCH_HEADER","NEXT_INSTANT_TEST_COOKIE","NEXT_IS_PRERENDER_HEADER","NEXT_DID_POSTPONE_HEADER","RSC_CONTENT_TYPE_HEADER","getBotType","CachedRouteKind","IncrementalCacheKind","FallbackMode","parseFallbackField","RenderResult","CACHE_ONE_YEAR_SECONDS","HTML_CONTENT_TYPE_HEADER","NEXT_CACHE_TAGS_HEADER","NEXT_NAV_DEPLOYMENT_ID_HEADER","NEXT_RESUME_HEADER","NEXT_RESUME_STATE_LENGTH_HEADER","ENCODED_TAGS","sendRenderResult","NoFallbackError","isRouteCacheOwner","parseMaxPostponedStateSize","getMaxPostponedStateSize","getPostponedStateExceededErrorMessage","readBodyWithSizeLimit","parseUrl","entryBase","RedirectStatusCode","InvariantError","scheduleOnNextTick","getSegmentParam","buildCompletedShellCacheKey","fallbackPathname","remainingPrerenderableParams","params","prerenderableParamsByName","Map","map","param","paramName","split","segment","segmentParam","remainingParam","get","value","encodedValue","Array","isArray","item","encodeURIComponent","join","replace","createAppPageEntrypoint","tree","page","pathname","require","__next_app_require__","loadChunk","__next_app_load_chunk__","interopDefault","__next_app__","routeModule","definition","kind","APP_PAGE","bundlePath","filename","appPaths","userland","loaderTree","distDir","process","env","__NEXT_RELATIVE_DIST_DIR","relativeProjectDir","__NEXT_RELATIVE_PROJECT_DIR","srcPage","TURBOPACK","normalizedSrcPage","routeParamNames","dynamicSegments","handler","req","res","ctx","prerenderManifest","prerenderInfo","requestMeta","isDev","hrtime","bigint","isMinimalMode","Boolean","httpTarget","url","multiZoneDraftMode","__NEXT_MULTI_ZONE_DRAFT_MODE","prepareResult","prepare","statusCode","end","waitUntil","Promise","resolve","buildId","query","pageIsDynamic","buildManifest","nextFontManifest","reactLoadableManifest","serverActionsManifest","clientReferenceManifest","subresourceIntegrityManifest","prefetchHintsManifest","isDraftMode","resolvedPathname","revalidateOnlyGenerated","routerServerContext","nextConfig","parsedUrl","interceptionRoutePatterns","deploymentId","clientAssetToken","previewProps","isOnDemandRevalidate","prerenderMatch","match","route","prerenderedRoute","cacheOwner","routes","undefined","isPrerendered","userAgent","headers","botType","isPrefetchRSCRequest","isRSCRequest","isPossibleServerAction","method","setHeader","couldSupportPPR","cacheComponents","resumeStateLengthHeader","stateLength","parseInt","maxPostponedStateSize","maxPostponedStateSizeBytes","experimental","isNaN","defaultActionBodySizeLimit","actionBodySizeLimit","serverActions","bodySizeLimit","actionBodySizeLimitBytes","parse","maxTotalBodySize","fullBody","length","postponedState","subarray","toString","actionBody","Error","body","postponed","hasDebugStaticShellQuery","__NEXT_EXPERIMENTAL_STATIC_SHELL_DEBUGGING","__nextppronly","hasDebugFallbackShellQuery","exposeTestingApi","exposeTestingApiInProductionBuild","isInstantNavigationTest","cookie","includes","isRoutePPREnabled","dynamicRoutes","renderingMode","experimentalTestProxy","isDebugStaticShell","isDebugDynamicAccesses","isDebugFallbackShell","isDebugPrerender","minimalPostponed","hasPostponedState","staticPrefetchDataRoute","prefetchDataRoute","isEnsureStaticPage","_isEnsureStaticPage","isDynamicRSCRequest","rawSegmentPrefetchHeader","segmentPrefetchHeader","serveStreamingMetadata","htmlLimitedBots","shouldForceDynamicPPRRender","isSSG","supportsRDCForNavigations","supportsDynamicResponse","remainingFallbackRouteParams","fallbackRouteParams","filter","some","prerenderableParam","hasOmittedConcreteFallbackParam","hasUnresolvedRootFallbackParams","fallback","fallbackRootParams","source","shellCacheKey","partialPrefetching","cacheKey","ssgCacheKey","usesShellCacheKey","staticPathKey","ComponentMod","tracer","activeSpan","getActiveScopeSpan","isWrappedByNextServer","render404","varyHeader","getVaryHeader","parentSpan","invokeRouteModule","span","context","renderOperation","nextReq","nextRes","result","prerender","render","finally","setAttributes","setStatus","code","ERROR","setAttribute","rootSpanAttributes","getRootSpanAttributes","handleRequest","console","warn","name","updateName","incrementalCache","getIncrementalCache","resetRequestCache","globalThis","__incrementalCache","doRender","allowEmptyStaticShell","parsedRequestHeaders","previewModeId","routeMatch","dev","sharedContext","renderOpts","App","Document","pageConfig","Component","setCacheStatus","setIsrStatus","setReactDebugChannel","sendErrorsToBrowser","dir","NEXT_RUNTIME","cwd","assetPrefix","getAssetPrefixForRender","nextConfigOutput","output","crossOrigin","trailingSlash","images","enableTainting","taint","reactMaxHeadersLength","prefetchHints","notFoundParams","cacheLifeProfiles","cacheLife","staticPageGenerationTimeout","basePath","logServerFunctions","logging","serverFunctions","isBuildTimePrerendering","isFallbackUpgradeable","validationLevel","instantInsights","expireTime","staleTimes","dynamicOnHover","optimisticRouting","parallelRouteMetadata","inlineCss","prefetchInlining","authInterrupts","reactBrowserBailout","serverComponentsHmrCancellation","useCacheTimeout","durableUseCacheEntries","cachedNavigations","clientTraceMetadata","clientParamParsingOrigins","disableResumeDataCacheCompression","onClose","cb","on","onAfterTaskError","onInstrumentationRequestError","error","errorContext","silenceLog","onRequestError","err","fetchMetrics","metadata","cacheControl","fetchTags","cacheTags","revalidate","expire","staticBailoutInfo","description","stack","message","substring","indexOf","html","rscData","flightData","status","segmentData","responseGenerator","hasResolved","previousCacheEntry","previousIncrementalCacheEntry","isRevalidating","forceStaticRender","isProduction","didRespond","writableEnded","reportRevalidationError","routerKind","routePath","routeType","revalidateReason","isStaticGeneration","fallbackMode","NOT_FOUND","BLOCKING_STATIC_RENDER","isExplicitlyBlocking","PRERENDER","isStale","fallbackResponse","handleResponse","routeKind","isFallback","responseCache","getResponseCache","c","hasFullyStaticCacheEntry","incrementalCacheKey","incrementalCacheEntry","fromStatic","placeholderFallbackRouteParams","fallbackRouteParamsForRender","hasPlaceholderFallbackRouteParams","effectiveFallbackRouteParams","resolvedKeys","size","has","stagedFallbackParams","isRequestSpecificRender","invokeOnCacheEntry","cacheEntry","onCacheEntry","rawCacheEntryUrl","cacheEntryUrl","resumeRender","transformer","TransformStream","push","readable","then","pipeTo","writable","catch","abort","e","cachedData","devParamMatchingRejected","adapterPath","headersSent","reportPrerenderError","errorReporting","Object","entries","appendHeader","removeHeader","response","toUnchunkedString","generateEtags","poweredByHeader","didPostpone","isMiss","getHeader","tags","matchedSegment","EMPTY","key","v","contentType","isEmptyPrelude","isEmptyHTMLPrelude","recoveryHtml","ReadableStream","start","controller","enqueue","CLOSED","BODY_AND_HTML","close","__NEXT_TEST_MODE","unshift","createPPRBoundarySentinel","withPropagatedContext","trace","spanName","SERVER","attributes","TextEncoder","encode"],"mappings":"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","ignoreList":[0]}}, + {"offset": {"line": 1698, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/src/build/templates/app-page.ts"],"sourcesContent":["import type { LoaderTree } from '../../server/lib/app-dir-module'\nimport { createAppPageEntrypoint } from './app-page-runtime'\nimport { interopDefault } from '../../server/app-render/interop-default' with { 'turbopack-transition': 'next-server-utility' }\n\n// Keep this route-specific template small. Turbopack gives every route a\n// distinct module identity, while app-page-runtime is shared across routes.\n// The injected loader tree references interopDefault when loading metadata, so\n// that binding must remain in this module.\n\n/**\n * The tree created in next-app-loader that holds component segments and modules.\n */\ndeclare const tree: LoaderTree\n\ndeclare const __next_app_require__: (id: string | number) => unknown\ndeclare const __next_app_load_chunk__: (id: string | number) => Promise\n\n// INJECT:tree\n// INJECT:__next_app_require__\n// INJECT:__next_app_load_chunk__\n\nconst entrypoint = createAppPageEntrypoint({\n tree,\n page: 'VAR_DEFINITION_PAGE',\n pathname: 'VAR_DEFINITION_PATHNAME',\n require: __next_app_require__,\n loadChunk: __next_app_load_chunk__,\n interopDefault,\n})\n\nexport const __next_app__ = entrypoint.__next_app__\nexport const routeModule = entrypoint.routeModule\nexport const handler = entrypoint.handler\n\nexport * from '../../server/app-render/entry-base' with { 'turbopack-transition': 'next-server-utility' }\n"],"names":["createAppPageEntrypoint","interopDefault","entrypoint","tree","page","pathname","require","__next_app_require__","loadChunk","__next_app_load_chunk__","__next_app__","routeModule","handler"],"mappings":";;;;;;;;AACA,SAASA,uBAAuB,QAAQ,qBAAoB;IAqB1DG;IACAC,MAAM;;;AArBR,MAAA,GAASH,cAAc,QAAQ,MAAA,IAAA,6aAAA,EAAA,kBAA+C;IAAE,EAAA,sBAAwB,UAAA,IAAA,6aAAA,EAAA;AAAsB,EAAC,IAAA,qCAAA,IAAA,6aAAA,EAAA;AAe/H,MAAA,QAAc,0BAAA,IAAA,6aAAA,EAAA;AACd,MAAA,wBAA8B,aAAA,IAAA,6aAAA,EAAA;AAC9B,MAAA,2BAAiC,aAAA,IAAA,6aAAA,EAAA;AAEjC,MAAMC,aAAaF,gBAAAA,IAAAA,QAAwB,qaAAA,EAAA;;;IAKzCQ,EAAAA,OAAAA;IAAAA,CAAWC;IAAAA;YACXR,QAAAA;YAAAA;YAAAA;gBACF,YAAA;oBAAA;oBAAA,CAEA;oBAAA,IAAO,MAAMS,eAAeR,WAAWQ,YAAY,CAAA;wBACnD,KAAO,KAAA,CAAMC;wBAAAA,QAAcT;4BAAAA,UAAWS,WAAW,CAAA;4BAAA;yBAAA;oBACjD;oBAAA,EAAA;iBAAA,CAAO,MAAMC,UAAUV,WAAWU,OAAO,CAAA;YAEzC;YAAA,WAAc,0CAA0C;kBAAE,QAAA,CAAA;YAAA;YAAA,EAAA;SAAA,KAAwB;IAAsB,EAAC;IAAA","ignoreList":[0]}}, + {"offset": {"line": 1792, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/src/server/app-render/module-loading/instrument-module-getter.ts"],"sourcesContent":["/**\n * Wraps a module getter from the generated loader tree code so that the\n * result of an async module (e.g. due to a top-level await) is tracked as a\n * pending import, which the cache warming phase of a prerender waits for.\n * Both bundlers emit this around every module getter in the loader tree.\n */\nexport function instrumentModuleGetter(\n getter: () => TModule\n): () => TModule {\n if (\n process.env.NEXT_RUNTIME === 'edge' ||\n !process.env.__NEXT_CACHE_COMPONENTS\n ) {\n // The tracking is only consumed when prerendering with Cache Components,\n // which is not supported in the edge runtime (and the tracking relies on\n // Node.js APIs).\n return getter\n } else {\n return () => {\n const { trackPendingImport } =\n require('./track-module-loading.external') as typeof import('./track-module-loading.external')\n\n const exportsOrPromise = getter()\n trackPendingImport(exportsOrPromise)\n return exportsOrPromise\n }\n }\n}\n"],"names":["instrumentModuleGetter","getter","process","env","NEXT_RUNTIME","__NEXT_CACHE_COMPONENTS","trackPendingImport","require","exportsOrPromise"],"mappings":"AAAA;;;;;CAKC;;;+BACeA,0BAAAA;;;eAAAA;;;AAAT,SAASA,uBACdC,MAAqB;IAErB,IACEC,QAAQC,GAAG,CAACC,YAAY,KAAK,UAC7B,CAACF,QAAQC,GAAG,CAACE,uBAAuB,EACpC;;SAKK;QACL,OAAO;YACL,MAAM,EAAEC,kBAAkB,EAAE,GAC1BC,QAAQ;YAEV,MAAMC,mBAAmBP;YACzBK,mBAAmBE;YACnB,OAAOA;QACT;IACF;AACF","ignoreList":[0]}}, + {"offset": {"line": 1934, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/src/server/route-modules/app-page/module.compiled.js"],"sourcesContent":["if (process.env.NEXT_RUNTIME === 'edge') {\n module.exports = require('next/dist/server/route-modules/app-page/module.js')\n} else {\n if (process.env.__NEXT_EXPERIMENTAL_REACT) {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page-experimental.runtime.prod.js')\n }\n }\n } else {\n if (process.env.NODE_ENV === 'development') {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.dev.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.dev.js')\n }\n } else {\n if (process.env.TURBOPACK) {\n module.exports = require('next/dist/compiled/next-server/app-page-turbo.runtime.prod.js')\n } else {\n module.exports = require('next/dist/compiled/next-server/app-page.runtime.prod.js')\n }\n }\n }\n}\n"],"names":["process","env","NEXT_RUNTIME","module","exports","require","__NEXT_EXPERIMENTAL_REACT","NODE_ENV","TURBOPACK"],"mappings":"AAAA,IAAIA,QAAQC,GAAG,CAACC,YAAY,KAAK,QAAQ;;KAElC;IACL,IAAIF,QAAQC,GAAG,CAACK,yBAAyB,EAAE;;SAcpC;QACL,IAAIN,QAAQC,GAAG,CAACM,QAAQ,KAAK,WAAe;YAC1C,IAAIP,QAAQC,GAAG,CAACO,SAAS,eAAE;gBACzBL,OAAOC,OAAO,GAAGC,QAAQ;YAC3B,OAAO;;QAGT,OAAO;;IAOT;AACF","ignoreList":[0]}}] +} \ No newline at end of file diff --git a/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js b/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js new file mode 100644 index 0000000..82d98d4 --- /dev/null +++ b/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js @@ -0,0 +1,677 @@ +module.exports = [ +(()=>{"use strict";return[ +"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "default", + ()=>Page, + "generateMetadata", + ()=>generateMetadata +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/common/ListLoading.tsx [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$nav$2f$NavPage$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/nav/NavPage.tsx [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$seo$2f$json$2d$ld$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/seo/json-ld.tsx [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/api/app-config-server.ts [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$index$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/lib/seo/index.ts [app-rsc] (ecmascript) "); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/jsonld.ts [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/resolve.ts [app-rsc] (ecmascript)"); +; +; +; +; +; +; +; +async function navMetadata() { + const { data } = await (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getAppConfigInfo"])(); + const seoNavInfo = data?.seoNavInfo; + return (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$resolve$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["resolvePageMetadata"])({ + seoInfo: { + title: seoNavInfo?.dhTitle, + description: seoNavInfo?.dhDescription, + keyworld: seoNavInfo?.dhKeyworld + }, + fallbackTitle: seoNavInfo?.dhSiteName?.trim() || "黄果短剧 · 官方发布页", + canonical: "/nav" + }); +} +async function generateMetadata() { + return navMetadata(); +} +function Page() { + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Suspense"], { + fallback: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$ListLoading$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["ListLoading"], { + label: "正在加载导航" + }, void 0, false, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 29, + columnNumber: 25 + }, this), + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(NavContent, {}, void 0, false, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 30, + columnNumber: 7 + }, this) + }, void 0, false, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 29, + columnNumber: 5 + }, this); +} +async function NavContent() { + const [{ data }, metadata] = await Promise.all([ + (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$api$2f$app$2d$config$2d$server$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getAppConfigInfo"])(), + navMetadata() + ]); + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["Fragment"], { + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$seo$2f$json$2d$ld$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["JsonLd"], { + data: (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["buildWebPageJSONLD"])({ + path: "/nav", + title: typeof metadata.title === "string" ? metadata.title : "官方发布页", + description: typeof metadata.description === "string" ? metadata.description : undefined, + siteName: data?.seoNavInfo?.dhSiteName + }) + }, void 0, false, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 39, + columnNumber: 7 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$nav$2f$NavPage$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["NavPage"], { + config: data + }, void 0, false, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 47, + columnNumber: 7 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/app/nav/page.tsx", + lineNumber: 38, + columnNumber: 5 + }, this); +} +}), +"[project]/src/components/nav/NavPage.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "NavPage", + ()=>NavPage +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/client/app-dir/link.react-server.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$CopyrightYear$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/components/common/CopyrightYear.tsx [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/catalog.ts [app-rsc] (ecmascript)"); +; +; +; +; +const LINE_LABELS = [ + "一", + "二", + "三", + "四", + "五", + "六", + "七", + "八", + "九", + "十" +]; +function isExternalHref(href) { + return /^https?:\/\//i.test(href) || href.startsWith("mailto:"); +} +function address(config, key) { + return config?.newAddressInfo?.[key]?.trim() || config?.config?.[key]?.trim() || ""; +} +function lineLabel(line) { + return LINE_LABELS[line - 1] || String(line || ""); +} +function routeItems(config) { + const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || "线路"; + const listed = (config?.navPageList || []).filter((item)=>Boolean(item.url?.trim())); + if (listed.length) { + return listed.map((item)=>{ + const href = item.url.trim(); + return { + key: `${item.line}-${href}`, + title: `${siteName} · 线路${lineLabel(item.line || 0)}`, + href + }; + }); + } + const backups = [ + config?.config?.dhNewUrlAddr1, + config?.config?.dhNewUrlAddr2, + config?.config?.dhNewUrlAddr3 + ]; + const fromConfig = backups.flatMap((url, index)=>{ + const href = url?.trim(); + if (!href) return []; + const line = index + 1; + return [ + { + key: `${line}-${href}`, + title: `${siteName} · 线路${lineLabel(line)}`, + href + } + ]; + }); + return fromConfig; +} +function EntryAnchor({ href, className, children }) { + if (isExternalHref(href)) { + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("a", { + className: className, + href: href, + target: "_blank", + rel: "noopener noreferrer", + children: children + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 47, + columnNumber: 7 + }, this); + } + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$client$2f$app$2d$dir$2f$link$2e$react$2d$server$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["default"], { + className: className, + href: href, + children: children + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 53, + columnNumber: 5 + }, this); +} +function NavPage({ config = null }) { + const { brand } = (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$catalog$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["getCatalog"])(); + const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || ""; + const description = config?.seoNavInfo?.dhDescription?.trim() || ""; + const siteLine = config?.seoNavInfo?.dhSiteName?.trim() || ""; + const visibleRoutes = routeItems(config); + const foreverUrlAddr = address(config, "foreverUrlAddr"); + const appAddr = address(config, "appAddr"); + const officialAppAddr = address(config, "officialAppAddr") || config?.config?.webAddr?.trim() || ""; + const twitterAddr = address(config, "twitterAddr"); + const pdfAddr = address(config, "pdfAddr"); + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", { + id: "entry-navigation", + "aria-label": siteName ? `${siteName}官方入口` : "官方入口", + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", { + className: "entry-background", + src: "/images/nav/background.webp", + alt: "" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 73, + columnNumber: 7 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("div", { + className: "entry-stage", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("main", { + className: "entry-content", + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("header", { + className: "entry-brand", + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", { + className: "entry-brand-logo hg-complete-logo", + src: brand.logo, + alt: siteName || "官方入口", + width: 125, + height: 36 + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 77, + columnNumber: 13 + }, this), + description ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", { + children: description + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 78, + columnNumber: 28 + }, this) : null, + siteLine ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("strong", { + children: siteLine + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 79, + columnNumber: 25 + }, this) : null + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 76, + columnNumber: 11 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", { + className: "entry-routes", + "aria-label": "访问线路", + children: [ + visibleRoutes.map((route)=>/*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-route", + href: route.href, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-route-copy", + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("b", { + children: route.title + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 85, + columnNumber: 19 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("small", { + children: route.href + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 86, + columnNumber: 19 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 84, + columnNumber: 17 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-route-cta", + children: "立即进入" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 88, + columnNumber: 17 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", { + className: "entry-route-glow", + src: "/images/nav/glow.svg", + width: 292, + height: 263, + alt: "" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 89, + columnNumber: 17 + }, this) + ] + }, route.key, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 83, + columnNumber: 15 + }, this)), + foreverUrlAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-permanent", + href: foreverUrlAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "永久入口" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 94, + columnNumber: 17 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: foreverUrlAddr + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 95, + columnNumber: 17 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "(VPN访问)" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 96, + columnNumber: 17 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 93, + columnNumber: 15 + }, this) : null + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 81, + columnNumber: 11 + }, this), + appAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-download", + href: appAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("img", { + src: "/images/nav/download.png", + alt: "" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 102, + columnNumber: 15 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: siteName ? `${siteName} · APP 下载` : "APP 下载" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 103, + columnNumber: 15 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 101, + columnNumber: 13 + }, this) : null, + officialAppAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("a", { + className: "entry-contact", + href: officialAppAddr, + target: "_blank", + rel: "noopener noreferrer", + children: [ + "官方网站:", + officialAppAddr + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 107, + columnNumber: 13 + }, this) : null, + officialAppAddr || twitterAddr || pdfAddr || appAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("nav", { + className: "entry-channels", + "aria-label": "官方渠道", + children: [ + officialAppAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-channel", + href: officialAppAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-channel-icon", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, { + width: 16, + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", { + d: "M14.2291 1.84364C13.9819 1.64734 13.6874 1.51976 13.3752 1.47379C13.0629 1.42781 12.7441 1.46508 12.4509 1.58182L2.09451 5.68364C1.71253 5.83484 1.38148 6.09166 1.14009 6.42409C0.898696 6.75651 0.756934 7.15079 0.731378 7.56082C0.705823 7.97084 0.797532 8.37967 0.99578 8.7395C1.19403 9.09932 1.49062 9.39527 1.85088 9.59273L3.38179 10.44L3.41088 12.9855C3.41562 13.2326 3.48748 13.4739 3.61877 13.6834C3.75005 13.8929 3.93582 14.0627 4.1562 14.1748C4.37658 14.2869 4.62328 14.3369 4.8699 14.3196C5.11653 14.3022 5.3538 14.2182 5.55633 14.0764L7.53451 12.7273L10.3527 14.28C10.6588 14.4488 11.0013 14.5409 11.3508 14.5484C11.7003 14.5559 12.0465 14.4786 12.3596 14.3231C12.6727 14.1676 12.9434 13.9386 13.1487 13.6556C13.354 13.3726 13.4876 13.0441 13.5382 12.6982L14.9091 3.51273C14.9547 3.19916 14.9157 2.8791 14.7962 2.58565C14.6766 2.2922 14.4808 2.03603 14.2291 1.84364Z", + fill: "currentColor" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 117, + columnNumber: 19 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 116, + columnNumber: 17 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 115, + columnNumber: 15 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "官方网站" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 120, + columnNumber: 15 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 114, + columnNumber: 13 + }, this) : null, + twitterAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-channel", + href: twitterAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-channel-icon", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, { + width: 16, + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", { + d: "M11.9025 1.90609H13.97L9.45311 7.06859L14.7669 14.0936H10.6062L7.34748 9.83296L3.61872 14.0936H1.54998L6.38123 8.57171L1.28373 1.90609H5.54999L8.49561 5.80046L11.9025 1.90609ZM11.1769 12.8561H12.3225L4.92747 3.07859H3.69809L11.1769 12.8561Z", + fill: "currentColor" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 127, + columnNumber: 19 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 126, + columnNumber: 17 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 125, + columnNumber: 15 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "品牌主页" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 130, + columnNumber: 15 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 124, + columnNumber: 13 + }, this) : null, + pdfAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-channel", + href: pdfAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-channel-icon", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, { + width: 16, + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", { + d: "M13.5164 4.22909L9.11636 1.74909C8.77667 1.5559 8.3926 1.45433 8.00182 1.45433C7.61104 1.45433 7.22696 1.5559 6.88727 1.74909L2.48364 4.22909C2.17124 4.40646 1.91143 4.66345 1.73066 4.97389C1.54989 5.28433 1.45462 5.63713 1.45455 5.99636L2.01455 12.5745C2.0267 13.0959 2.24022 13.5924 2.61037 13.9598C2.98051 14.3273 3.47852 14.5371 4 14.5455H12C12.5241 14.54 13.0256 14.3316 13.3993 13.9641C13.7729 13.5965 13.9896 13.0985 14.0036 12.5745L14.5455 6.07636V5.99636C14.5461 5.63698 14.4512 5.28388 14.2703 4.97331C14.0895 4.66274 13.8293 4.40588 13.5164 4.22909ZM9.15273 11.7636H6.86909C6.72443 11.7636 6.58569 11.7062 6.4834 11.6039C6.3811 11.5016 6.32364 11.3628 6.32364 11.2182C6.32364 11.0735 6.3811 10.9348 6.4834 10.8325C6.58569 10.7302 6.72443 10.6727 6.86909 10.6727H9.14545C9.29012 10.6727 9.42886 10.7302 9.53115 10.8325C9.63344 10.9348 9.69091 11.0735 9.69091 11.2182C9.69091 11.3628 9.63344 11.5016 9.53115 11.6039C9.42886 11.7062 9.29012 11.7636 9.14545 11.7636H9.15273Z", + fill: "currentColor" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 137, + columnNumber: 19 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 136, + columnNumber: 17 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 135, + columnNumber: 15 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "回家的路" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 140, + columnNumber: 15 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 134, + columnNumber: 13 + }, this) : null, + appAddr ? /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(EntryAnchor, { + className: "entry-channel", + href: appAddr, + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + className: "entry-channel-icon", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(ChannelIcon, { + width: 18, + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("path", { + d: "M13.2955 1.22727H4.70455C4.10814 1.22835 3.53647 1.46575 3.11475 1.88748C2.69303 2.3092 2.45563 2.88087 2.45455 3.47727V14.5227C2.45563 15.1191 2.69303 15.6908 3.11475 16.1125C3.53647 16.5342 4.10814 16.7716 4.70455 16.7727H13.2955C13.8922 16.7727 14.4645 16.5357 14.8864 16.1137C15.3084 15.6918 15.5455 15.1195 15.5455 14.5227V3.47727C15.5455 2.88053 15.3084 2.30824 14.8864 1.88628C14.4645 1.46432 13.8922 1.22727 13.2955 1.22727ZM10.8409 13.5H7.15909C6.99634 13.5 6.84026 13.4353 6.72518 13.3203C6.61011 13.2052 6.54546 13.0491 6.54546 12.8864C6.54546 12.7236 6.61011 12.5675 6.72518 12.4525C6.84026 12.3374 6.99634 12.2727 7.15909 12.2727H10.8409C11.0037 12.2727 11.1597 12.3374 11.2748 12.4525C11.3899 12.5675 11.4545 12.7236 11.4545 12.8864C11.4545 13.0491 11.3899 13.2052 11.2748 13.3203C11.1597 13.4353 11.0037 13.5 10.8409 13.5Z", + fill: "currentColor" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 147, + columnNumber: 19 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 146, + columnNumber: 17 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 145, + columnNumber: 15 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("span", { + children: "APP" + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 150, + columnNumber: 15 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 144, + columnNumber: 13 + }, this) : null + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 112, + columnNumber: 11 + }, this) : null, + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("footer", { + className: "entry-footer", + children: [ + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", { + children: [ + "本站仅提供视频内容与产品服务", + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("br", {}, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 158, + columnNumber: 15 + }, this), + "请遵守当地法律法规,仅限成年人访问" + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 156, + columnNumber: 13 + }, this), + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("p", { + children: [ + "© ", + /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])(__TURBOPACK__imported__module__$5b$project$5d2f$src$2f$components$2f$common$2f$CopyrightYear$2e$tsx__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["CopyrightYear"], {}, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 162, + columnNumber: 17 + }, this), + " ", + siteName ? `${siteName} · ` : "", + "官方发布页" + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 161, + columnNumber: 13 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 155, + columnNumber: 11 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 75, + columnNumber: 9 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 74, + columnNumber: 7 + }, this) + ] + }, void 0, true, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 72, + columnNumber: 5 + }, this); +} +function ChannelIcon({ width, children }) { + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("svg", { + className: "entry-channel-svg", + "aria-hidden": "true", + focusable: "false", + width: width, + height: width, + viewBox: `0 0 ${width} ${width}`, + fill: "none", + children: /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("g", { + children: children + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 174, + columnNumber: 7 + }, this) + }, void 0, false, { + fileName: "[project]/src/components/nav/NavPage.tsx", + lineNumber: 173, + columnNumber: 5 + }, this); +} +}), +"[project]/src/components/seo/json-ld.tsx [app-rsc] (ecmascript)", ((__turbopack_context__) => { +"use strict"; + +__turbopack_context__.s([ + "JsonLd", + ()=>JsonLd +]); +var __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/node_modules/.pnpm/next@16.4.1_@babel+core@7.29.7_@types+node@20.19.43_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js [app-rsc] (ecmascript)"); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$index$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__$3c$locals$3e$__ = __turbopack_context__.i("[project]/src/lib/seo/index.ts [app-rsc] (ecmascript) "); +var __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__ = __turbopack_context__.i("[project]/src/lib/seo/jsonld.ts [app-rsc] (ecmascript)"); +; +; +function JsonLd({ data }) { + return /*#__PURE__*/ (0, __TURBOPACK__imported__module__$5b$project$5d2f$node_modules$2f2e$pnpm$2f$next$40$16$2e$4$2e$1_$40$babel$2b$core$40$7$2e$29$2e$7_$40$types$2b$node$40$20$2e$19$2e$43_react$2d$dom$40$19$2e$3$2e$0_react$40$19$2e$3$2e$0_$5f$react$40$19$2e$3$2e$0$2f$node_modules$2f$next$2f$dist$2f$server$2f$route$2d$modules$2f$app$2d$page$2f$vendored$2f$rsc$2f$react$2d$jsx$2d$dev$2d$runtime$2e$js__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["jsxDEV"])("script", { + type: "application/ld+json", + dangerouslySetInnerHTML: { + __html: (0, __TURBOPACK__imported__module__$5b$project$5d2f$src$2f$lib$2f$seo$2f$jsonld$2e$ts__$5b$app$2d$rsc$5d$__$28$ecmascript$29$__["serializeJSONLD"])(data) + } + }, void 0, false, { + fileName: "[project]/src/components/seo/json-ld.tsx", + lineNumber: 4, + columnNumber: 10 + }, this); +} +}), +]})(), +"[externals]/next/dist/server/app-render/module-loading/track-module-loading.external.js [external] (next/dist/server/app-render/module-loading/track-module-loading.external.js, cjs)", ((__turbopack_context__, module, exports) => { + +var mod = __turbopack_context__.x("next/dist/server/app-render/module-loading/track-module-loading.external.js", () => require("next/dist/server/app-render/module-loading/track-module-loading.external.js")); + +module.exports = mod; +}), +"[externals]/next/dist/shared/lib/no-fallback-error.external.js [external] (next/dist/shared/lib/no-fallback-error.external.js, cjs)", ((__turbopack_context__, module, exports) => { + +var mod = __turbopack_context__.x("next/dist/shared/lib/no-fallback-error.external.js", () => require("next/dist/shared/lib/no-fallback-error.external.js")); + +module.exports = mod; +}), +"[project]/src/app/nav/page.tsx [app-rsc] (ecmascript, Next.js Server Component)", (function(__turbopack_context__){ + +__turbopack_context__.n(__turbopack_context__.i("[project]/src/app/nav/page.tsx [app-rsc] (ecmascript)")); +}), +]; + +//# sourceMappingURL=%5Broot-of-the-server%5D__0xwcy6__vooi0._.js.map \ No newline at end of file diff --git a/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js.map b/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js.map new file mode 100644 index 0000000..0a7d952 --- /dev/null +++ b/.next-dev/dev/server/chunks/ssr/[root-of-the-server]__0xwcy6__vooi0._.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "sources": [], + "sections": [ + {"offset": {"line": 5, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/app/nav/page.tsx"],"sourcesContent":["import type { Metadata } from \"next\";\nimport { Suspense } from \"react\";\nimport { ListLoading } from \"@/components/common/ListLoading\";\nimport { NavPage } from \"@/components/nav/NavPage\";\nimport { JsonLd } from \"@/components/seo/json-ld\";\nimport { getAppConfigInfo } from \"@/lib/api/app-config-server\";\nimport { buildWebPageJSONLD, resolvePageMetadata } from \"@/lib/seo\";\n\nasync function navMetadata() {\n const { data } = await getAppConfigInfo();\n const seoNavInfo = data?.seoNavInfo;\n return resolvePageMetadata({\n seoInfo: {\n title: seoNavInfo?.dhTitle,\n description: seoNavInfo?.dhDescription,\n keyworld: seoNavInfo?.dhKeyworld,\n },\n fallbackTitle: seoNavInfo?.dhSiteName?.trim() || \"黄果短剧 · 官方发布页\",\n canonical: \"/nav\",\n });\n}\n\nexport async function generateMetadata(): Promise {\n return navMetadata();\n}\n\nexport default function Page() {\n return (\n }>\n \n \n );\n}\n\nasync function NavContent() {\n const [{ data }, metadata] = await Promise.all([getAppConfigInfo(), navMetadata()]);\n return (\n <>\n \n \n \n );\n}\n"],"names":["navMetadata","data","seoNavInfo","seoInfo","title","dhTitle","description","dhDescription","keyworld","dhKeyworld","fallbackTitle","dhSiteName","trim","canonical","generateMetadata","Page","fallback","label","NavContent","metadata","Promise","all","path","undefined","siteName","config"],"mappings":";;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;;;;;;;;AAEA,eAAeA;IACb,MAAM,EAAEC,IAAI,EAAE,GAAG,MAAM,IAAA,gKAAgB;IACvC,MAAMC,aAAaD,MAAMC;IACzB,OAAO,IAAA,mJAAmB,EAAC;QACzBC,SAAS;YACPC,OAAOF,YAAYG;YACnBC,aAAaJ,YAAYK;YACzBC,UAAUN,YAAYO;QACxB;QACAC,eAAeR,YAAYS,YAAYC,UAAU;QACjDC,WAAW;IACb;AACF;AAEO,eAAeC;IACpB,OAAOd;AACT;AAEe,SAASe;IACtB,qBACE,mbAAC,sZAAQ;QAACC,wBAAU,mbAAC,0JAAW;YAACC,OAAM;;;;;;kBACrC,cAAA,mbAACC;;;;;;;;;;AAGP;AAEA,eAAeA;IACb,MAAM,CAAC,EAAEjB,IAAI,EAAE,EAAEkB,SAAS,GAAG,MAAMC,QAAQC,GAAG,CAAC;QAAC,IAAA,gKAAgB;QAAIrB;KAAc;IAClF,qBACE;;0BACE,mbAAC,iJAAM;gBACLC,MAAM,IAAA,iJAAkB,EAAC;oBACvBqB,MAAM;oBACNlB,OAAO,OAAOe,SAASf,KAAK,KAAK,WAAWe,SAASf,KAAK,GAAG;oBAC7DE,aAAa,OAAOa,SAASb,WAAW,KAAK,WAAWa,SAASb,WAAW,GAAGiB;oBAC/EC,UAAUvB,MAAMC,YAAYS;gBAC9B;;;;;;0BAEF,mbAAC,+IAAO;gBAACc,QAAQxB;;;;;;;;;;;;AAGvB"}}, + {"offset": {"line": 100, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/nav/NavPage.tsx"],"sourcesContent":["import Link from \"next/link\";\nimport type { ReactNode } from \"react\";\nimport { CopyrightYear } from \"@/components/common/CopyrightYear\";\nimport { getCatalog } from \"@/lib/catalog\";\nimport type { ConfigInfoResp, NavPageItem, NewAddressInfo } from \"@/lib/api/types\";\n\nconst LINE_LABELS = [\"一\", \"二\", \"三\", \"四\", \"五\", \"六\", \"七\", \"八\", \"九\", \"十\"];\n\nfunction isExternalHref(href: string) {\n return /^https?:\\/\\//i.test(href) || href.startsWith(\"mailto:\");\n}\n\nfunction address(config: ConfigInfoResp | null | undefined, key: keyof NewAddressInfo) {\n return config?.newAddressInfo?.[key]?.trim() || config?.config?.[key]?.trim() || \"\";\n}\n\nfunction lineLabel(line: number) {\n return LINE_LABELS[line - 1] || String(line || \"\");\n}\n\nfunction routeItems(config: ConfigInfoResp | null | undefined) {\n const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || \"线路\";\n const listed = (config?.navPageList || []).filter((item): item is NavPageItem & { url: string } => Boolean(item.url?.trim()));\n if (listed.length) {\n return listed.map((item) => {\n const href = item.url.trim();\n return {\n key: `${item.line}-${href}`,\n title: `${siteName} · 线路${lineLabel(item.line || 0)}`,\n href,\n };\n });\n }\n const backups = [config?.config?.dhNewUrlAddr1, config?.config?.dhNewUrlAddr2, config?.config?.dhNewUrlAddr3];\n const fromConfig = backups.flatMap((url, index) => {\n const href = url?.trim();\n if (!href) return [];\n const line = index + 1;\n return [{ key: `${line}-${href}`, title: `${siteName} · 线路${lineLabel(line)}`, href }];\n });\n return fromConfig;\n}\n\nfunction EntryAnchor({ href, className, children }: { href: string; className: string; children: ReactNode }) {\n if (isExternalHref(href)) {\n return (\n \n {children}\n \n );\n }\n return (\n \n {children}\n \n );\n}\n\nexport function NavPage({ config = null }: { config?: ConfigInfoResp | null }) {\n const { brand } = getCatalog();\n const siteName = config?.config?.webSiteName?.trim() || config?.seoInfo?.webSiteName?.trim() || \"\";\n const description = config?.seoNavInfo?.dhDescription?.trim() || \"\";\n const siteLine = config?.seoNavInfo?.dhSiteName?.trim() || \"\";\n const visibleRoutes = routeItems(config);\n const foreverUrlAddr = address(config, \"foreverUrlAddr\");\n const appAddr = address(config, \"appAddr\");\n const officialAppAddr = address(config, \"officialAppAddr\") || config?.config?.webAddr?.trim() || \"\";\n const twitterAddr = address(config, \"twitterAddr\");\n const pdfAddr = address(config, \"pdfAddr\");\n\n return (\n
\n \"\"\n
\n
\n
\n {siteName\n {description ?

{description}

: null}\n {siteLine ? {siteLine} : null}\n
\n \n {appAddr ? (\n \n \"\"\n {siteName ? `${siteName} · APP 下载` : \"APP 下载\"}\n \n ) : null}\n {officialAppAddr ? (\n \n 官方网站:{officialAppAddr}\n \n ) : null}\n {officialAppAddr || twitterAddr || pdfAddr || appAddr ? (\n \n ) : null}\n
\n

\n 本站仅提供视频内容与产品服务\n
\n 请遵守当地法律法规,仅限成年人访问\n

\n

\n © {siteName ? `${siteName} · ` : \"\"}官方发布页\n

\n
\n
\n
\n
\n );\n}\n\nfunction ChannelIcon({ width, children }: { width: 16 | 18; children: ReactNode }) {\n return (\n \n {children}\n \n );\n}\n"],"names":["LINE_LABELS","isExternalHref","href","test","startsWith","address","config","key","newAddressInfo","trim","lineLabel","line","String","routeItems","siteName","webSiteName","seoInfo","listed","navPageList","filter","item","Boolean","url","length","map","title","backups","dhNewUrlAddr1","dhNewUrlAddr2","dhNewUrlAddr3","fromConfig","flatMap","index","EntryAnchor","className","children","target","rel","NavPage","brand","description","seoNavInfo","dhDescription","siteLine","dhSiteName","visibleRoutes","foreverUrlAddr","appAddr","officialAppAddr","webAddr","twitterAddr","pdfAddr","id","src","alt","logo","width","height","route","ChannelIcon","d","fill","focusable","viewBox"],"mappings":"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"}}, + {"offset": {"line": 635, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/seo/json-ld.tsx"],"sourcesContent":["import { serializeJSONLD } from \"@/lib/seo\";\n\nexport function JsonLd({ data }: { data: unknown }) {\n return ` 打断脚本。 */\nexport function serializeJSONLD(value: unknown) {\n return JSON.stringify(value)\n .replace(//g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\")\n .replace(/\\u2028/g, \"\\\\u2028\")\n .replace(/\\u2029/g, \"\\\\u2029\");\n}\n\nfunction organizationAndWebsite(siteName: string): JsonLdNode[] {\n const site = getSiteOrigin();\n const logo = absoluteUrl(\"/logo.png\");\n return [\n {\n \"@type\": \"Organization\",\n \"@id\": `${site}/#organization`,\n name: siteName,\n url: absoluteUrl(\"/\"),\n logo: {\n \"@type\": \"ImageObject\",\n \"@id\": `${site}/#logo`,\n url: logo,\n contentUrl: logo,\n },\n },\n {\n \"@type\": \"WebSite\",\n \"@id\": `${site}/#website`,\n name: siteName,\n url: absoluteUrl(\"/\"),\n description: `${siteName}汇集热门短剧与精选推荐,支持高清在线观看。`,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n potentialAction: {\n \"@type\": \"SearchAction\",\n target: {\n \"@type\": \"EntryPoint\",\n urlTemplate: `${site}/search?q={search_term_string}`,\n },\n \"query-input\": \"required name=search_term_string\",\n },\n },\n ];\n}\n\nfunction webpage(url: string, name: string, description: string, type = \"WebPage\"): JsonLdNode {\n const site = getSiteOrigin();\n return {\n \"@type\": type,\n \"@id\": `${url}#webpage`,\n name,\n description,\n url,\n inLanguage: \"zh-CN\",\n isPartOf: ref(`${site}/#website`),\n publisher: ref(`${site}/#organization`),\n };\n}\n\nfunction breadcrumb(items: Array<[string, string]>): JsonLdNode {\n const last = items.at(-1)?.[1] || \"\";\n return {\n \"@type\": \"BreadcrumbList\",\n \"@id\": `${last}#breadcrumb`,\n itemListElement: items\n .filter(([name, item]) => name && item)\n .map(([name, item], index) => ({\n \"@type\": \"ListItem\",\n position: index + 1,\n name,\n item,\n })),\n };\n}\n\nfunction wrapGraph(nodes: JsonLdNode[], siteName?: string) {\n return {\n \"@context\": \"https://schema.org\",\n \"@graph\": [...organizationAndWebsite(getSiteName(siteName)), ...nodes],\n };\n}\n\nexport type WebPageJsonLdInput = {\n path: string;\n title: string;\n description?: string;\n type?: \"WebPage\" | \"CollectionPage\" | \"AboutPage\" | \"FAQPage\";\n breadcrumbs?: Array<[string, string]>;\n itemListUrls?: string[];\n siteName?: string;\n};\n\nexport function buildWebPageJSONLD(input: WebPageJsonLdInput) {\n const url = absoluteUrl(input.path);\n const page = webpage(url, input.title, input.description || input.title, input.type || \"WebPage\");\n const nodes: JsonLdNode[] = [page];\n\n if (input.breadcrumbs?.length) {\n page.breadcrumb = ref(`${url}#breadcrumb`);\n nodes.push(breadcrumb(input.breadcrumbs.map(([name, path]) => [name, absoluteUrl(path)])));\n }\n\n const listUrls = unique((input.itemListUrls ?? []).map((item) => absoluteUrl(item)).filter(Boolean));\n if (listUrls.length >= 2) {\n page.mainEntity = ref(`${url}#itemlist`);\n nodes.push({\n \"@type\": \"ItemList\",\n \"@id\": `${url}#itemlist`,\n numberOfItems: listUrls.length,\n itemListElement: listUrls.map((item, index) => ({\n \"@type\": \"ListItem\",\n position: index + 1,\n url: item,\n })),\n });\n }\n\n return wrapGraph(nodes, input.siteName);\n}\n\nexport type PlayletDetailJsonLdInput = {\n path: string;\n title?: string;\n description?: string;\n cover?: string | null;\n totalEpisode?: number | null;\n onlineAt?: string | null;\n tagNames?: string[] | null;\n themeNames?: string[] | null;\n anchor?: string | null;\n seoInfo?: SeoSource;\n siteName?: string;\n};\n\nexport function buildPlayletDetailJSONLD(input: PlayletDetailJsonLdInput) {\n const url = absoluteUrl(input.path);\n const seo = normalizeSEO(input.seoInfo);\n const name = first(input.title, seo.title, \"短剧详情\");\n const description = first(seo.description, input.description, `在线观看《${name}》,高清短剧全集免费看。`);\n const cover = input.cover?.trim() || \"\";\n const site = getSiteOrigin();\n\n const series: JsonLdNode = {\n \"@type\": \"TVSeries\",\n \"@id\": `${url}#tvseries`,\n name,\n description,\n url,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n potentialAction: {\n \"@type\": \"WatchAction\",\n target: { \"@type\": \"EntryPoint\", urlTemplate: url },\n },\n };\n if (cover) {\n series.image = [cover];\n series.thumbnailUrl = [cover];\n }\n const episodes = Number(input.totalEpisode) || 0;\n if (episodes > 0) series.numberOfEpisodes = episodes;\n const published = isoDate(input.onlineAt);\n if (published) series.datePublished = published;\n const genre = unique([...(input.tagNames ?? []), ...(input.themeNames ?? []), ...seo.keywords]);\n if (genre.length) series.genre = genre;\n if (input.anchor?.trim()) series.actor = { \"@type\": \"Person\", name: input.anchor.trim() };\n\n const page = webpage(url, name, description);\n page.mainEntity = ref(series[\"@id\"] as string);\n page.breadcrumb = ref(`${url}#breadcrumb`);\n\n return wrapGraph(\n [\n page,\n breadcrumb([\n [\"首页\", absoluteUrl(\"/\")],\n [\"短剧\", absoluteUrl(\"/shorts\")],\n [name, url],\n ]),\n series,\n ],\n input.siteName,\n );\n}\n\nexport type PlayletPlayJsonLdInput = PlayletDetailJsonLdInput & {\n episode: number;\n playPath: string;\n videoUrl?: string | null;\n};\n\nexport function buildPlayletPlayJSONLD(input: PlayletPlayJsonLdInput) {\n const detailPath = absoluteUrl(input.path);\n const url = absoluteUrl(input.playPath);\n const seo = normalizeSEO(input.seoInfo);\n const title = first(input.title, seo.title, \"短剧\");\n const description = first(seo.description, input.description, `正在播放《${title}》第${input.episode}集`);\n const cover = input.cover?.trim() || \"\";\n const published = isoDateTime(input.onlineAt);\n const videoName = `${title} - 第${input.episode}集`;\n const site = getSiteOrigin();\n\n const page = webpage(url, videoName, description);\n page.breadcrumb = ref(`${url}#breadcrumb`);\n const nodes: JsonLdNode[] = [\n page,\n breadcrumb([\n [\"首页\", absoluteUrl(\"/\")],\n [title, detailPath],\n [videoName, url],\n ]),\n ];\n\n const series: JsonLdNode = {\n \"@type\": \"TVSeries\",\n \"@id\": `${detailPath}#tvseries`,\n name: title,\n description: first(seo.description, input.description, description),\n url: detailPath,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n };\n if (cover) {\n series.image = [cover];\n series.thumbnailUrl = [cover];\n }\n nodes.push(series);\n\n if (cover && published) {\n const video: JsonLdNode = {\n \"@type\": \"VideoObject\",\n \"@id\": `${url}#video`,\n name: videoName,\n description,\n url,\n mainEntityOfPage: ref(`${url}#webpage`),\n inLanguage: \"zh-CN\",\n isFamilyFriendly: false,\n isPartOf: ref(`${site}/#website`),\n publisher: ref(`${site}/#organization`),\n thumbnailUrl: [cover],\n image: [cover],\n uploadDate: published,\n potentialAction: {\n \"@type\": \"WatchAction\",\n target: { \"@type\": \"EntryPoint\", urlTemplate: url },\n },\n };\n if (input.videoUrl?.trim()) video.contentUrl = input.videoUrl.trim();\n page.mainEntity = ref(video[\"@id\"] as string);\n nodes.push(video);\n nodes.push({\n \"@type\": \"TVEpisode\",\n \"@id\": `${url}#episode`,\n name: videoName,\n description,\n episodeNumber: input.episode,\n url,\n associatedMedia: ref(video[\"@id\"] as string),\n partOfSeries: ref(series[\"@id\"] as string),\n image: [cover],\n datePublished: published,\n });\n }\n\n return wrapGraph(nodes, input.siteName);\n}\n"],"names":["ref","id","first","values","value","text","trim","unique","items","seen","Set","out","item","key","toLowerCase","has","add","push","isoDateTime","raw","test","Number","isNaN","Date","parse","replace","match","result","isoDate","full","slice","serializeJSONLD","JSON","stringify","organizationAndWebsite","siteName","site","logo","name","url","contentUrl","description","inLanguage","publisher","potentialAction","target","urlTemplate","webpage","type","isPartOf","breadcrumb","last","at","itemListElement","filter","map","index","position","wrapGraph","nodes","buildWebPageJSONLD","input","path","page","title","breadcrumbs","length","listUrls","itemListUrls","Boolean","mainEntity","numberOfItems","buildPlayletDetailJSONLD","seo","seoInfo","cover","series","image","thumbnailUrl","episodes","totalEpisode","numberOfEpisodes","published","onlineAt","datePublished","genre","tagNames","themeNames","keywords","anchor","actor","buildPlayletPlayJSONLD","detailPath","playPath","episode","videoName","video","mainEntityOfPage","isFamilyFriendly","uploadDate","videoUrl","episodeNumber","associatedMedia","partOfSeries"],"mappings":"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"}}, - {"offset": {"line": 2905, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/metadata.ts"],"sourcesContent":["import type { Metadata } from \"next\";\n\nexport const SITE_NAME = \"黄果短剧\";\n\n/** 后台文案里残留的旧站名统一换成 SITE_NAME。 */\nconst LEGACY_SITE_NAMES = /91短剧|黄豆魔改短剧|黄豆短剧/g;\n\nexport function brandText(value?: string | null) {\n return (value || \"\").trim().replace(LEGACY_SITE_NAMES, SITE_NAME);\n}\nexport const OG_DEFAULT_IMAGE = \"/og-default.png\";\n\nconst PLACEHOLDER_SEO = /^(网站标题|网站描述|网站名称|导航标题)$/;\n\nexport type SeoSource = {\n title?: string | null;\n webTitle?: string | null;\n description?: string | null;\n desc?: string | null;\n webDescription?: string | null;\n keywords?: string[] | string | null;\n keyword?: string[] | string | null;\n keyworld?: string[] | string | null;\n webKeyworld?: string[] | string | null;\n} | null | undefined;\n\nexport type NormalizedSEO = {\n title: string;\n description: string;\n keywords: string[];\n};\n\nfunction cleanText(value?: string | null) {\n const text = value?.replace(/\\s+/g, \" \").trim() || \"\";\n if (!text || PLACEHOLDER_SEO.test(text)) return \"\";\n return text;\n}\n\nfunction cleanKeywords(value?: string[] | string | null) {\n const source = Array.isArray(value) ? value : value?.split(/[,,]/) || [];\n const seen = new Set();\n const keywords: string[] = [];\n for (const item of source) {\n const text = cleanText(item);\n const key = text.toLowerCase();\n if (!text || seen.has(key)) continue;\n seen.add(key);\n keywords.push(text);\n }\n return keywords;\n}\n\nexport function isPlaceholderSeoText(value?: string | null) {\n return !cleanText(value);\n}\n\n/** 接口字段名不统一:SeoInfo.keywords,SeoValue.keyworld,配置里是 webKeyworld。 */\nexport function normalizeSEO(source: SeoSource, fallback: Partial = {}): NormalizedSEO {\n return {\n title: cleanText(source?.title) || cleanText(source?.webTitle) || cleanText(fallback.title) || SITE_NAME,\n description:\n cleanText(source?.description) ||\n cleanText(source?.desc) ||\n cleanText(source?.webDescription) ||\n cleanText(fallback.description) ||\n \"\",\n keywords:\n cleanKeywords(source?.keywords).length\n ? cleanKeywords(source?.keywords)\n : cleanKeywords(source?.keyword).length\n ? cleanKeywords(source?.keyword)\n : cleanKeywords(source?.keyworld).length\n ? cleanKeywords(source?.keyworld)\n : cleanKeywords(source?.webKeyworld).length\n ? cleanKeywords(source?.webKeyworld)\n : cleanKeywords(fallback.keywords),\n };\n}\n\nexport function withSiteSuffix(title: string, siteName = SITE_NAME) {\n const name = siteName.trim() || SITE_NAME;\n if (!title || title === name || title.includes(name)) return title || name;\n return `${title} - ${name}`;\n}\n\nexport function paginateSEO(seo: NormalizedSEO, page = 1, siteName = SITE_NAME): NormalizedSEO {\n if (!Number.isFinite(page) || page <= 1) return seo;\n const marker = `第${page}页`;\n return {\n title: seo.title.includes(marker) ? seo.title : `${seo.title} ${marker}`,\n description: seo.description ? `${seo.description} ${marker}` : seo.description,\n keywords: seo.keywords.includes(marker) ? seo.keywords : [...seo.keywords, marker],\n };\n}\n\nexport function resolveShareImage(image?: string | null) {\n const value = image?.trim();\n if (value && /^https?:\\/\\//i.test(value)) return value;\n return OG_DEFAULT_IMAGE;\n}\n\nexport function siteSEOFromConfig(config?: {\n webTitle?: string | null;\n webDescription?: string | null;\n webKeyworld?: string[] | null;\n} | null) {\n return normalizeSEO({\n title: config?.webTitle,\n description: config?.webDescription,\n keywords: config?.webKeyworld,\n });\n}\n\nexport type BuildMetadataOptions = {\n title: string;\n description?: string;\n keywords?: string[];\n canonical: string;\n image?: string | null;\n robots?: Metadata[\"robots\"];\n siteName?: string;\n ogType?: \"website\" | \"video.episode\" | \"video.other\";\n};\n\nexport function buildPageMetadata(options: BuildMetadataOptions): Metadata {\n const siteName = options.siteName?.trim() || SITE_NAME;\n const title = withSiteSuffix(options.title, siteName);\n const description = options.description?.trim() || undefined;\n const keywords = options.keywords?.filter(Boolean);\n const image = resolveShareImage(options.image);\n return {\n title,\n description,\n keywords: keywords?.length ? keywords.join(\",\") : undefined,\n robots: options.robots,\n alternates: { canonical: options.canonical },\n openGraph: {\n type: options.ogType === \"website\" || !options.ogType ? \"website\" : options.ogType,\n locale: \"zh_CN\",\n siteName,\n title,\n description,\n url: options.canonical,\n images: [{ url: image, alt: title }],\n },\n twitter: {\n card: \"summary_large_image\",\n title,\n description,\n images: [image],\n },\n };\n}\n"],"names":["SITE_NAME","LEGACY_SITE_NAMES","brandText","value","trim","replace","OG_DEFAULT_IMAGE","PLACEHOLDER_SEO","cleanText","text","test","cleanKeywords","source","Array","isArray","split","seen","Set","keywords","item","key","toLowerCase","has","add","push","isPlaceholderSeoText","normalizeSEO","fallback","title","webTitle","description","desc","webDescription","length","keyword","keyworld","webKeyworld","withSiteSuffix","siteName","name","includes","paginateSEO","seo","page","Number","isFinite","marker","resolveShareImage","image","siteSEOFromConfig","config","buildPageMetadata","options","undefined","filter","Boolean","join","robots","alternates","canonical","openGraph","type","ogType","locale","url","images","alt","twitter","card"],"mappings":"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"}}, - {"offset": {"line": 3033, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/resolve.ts"],"sourcesContent":["import { cache } from \"react\";\nimport { getAppConfigInfo } from \"@/lib/api/app-config-server\";\nimport type { SeoInfo, SeoValue } from \"@/lib/api/types\";\nimport { buildPageMetadata, normalizeSEO, paginateSEO, SITE_NAME, type BuildMetadataOptions, type NormalizedSEO, type SeoSource } from \"./metadata\";\nimport { absoluteRequestUrl, getSiteName } from \"./site\";\n\nexport function mergeSEO(primary: SeoSource, fallback: Partial = {}): NormalizedSEO {\n const main = normalizeSEO(primary);\n const extra = normalizeSEO(null, fallback);\n return {\n title: main.title && main.title !== SITE_NAME ? main.title : extra.title || main.title,\n description: main.description || extra.description,\n keywords: main.keywords.length ? main.keywords : extra.keywords,\n };\n}\n\nexport function configToSiteSEO(config?: {\n webTitle?: string | null;\n webDescription?: string | null;\n webKeyworld?: string[] | null;\n} | null) {\n return normalizeSEO(\n {\n title: config?.webTitle,\n description: config?.webDescription,\n keywords: config?.webKeyworld,\n },\n { title: \"\" },\n );\n}\n\nexport function configSiteName(name?: string | null) {\n return getSiteName(name);\n}\n\n/** 站点级 TDK:页面 seo 为空时回退 /api/app/config/info。同一请求内只拉一次。 */\nexport const getSiteSEOCached = cache(async () => {\n const { data } = await getAppConfigInfo();\n const config = data?.config;\n return {\n seo: mergeSEO(data?.seoInfo, configToSiteSEO(config)),\n siteName: configSiteName(config?.webSiteName || data?.seoInfo?.webSiteName),\n foreverUrlAddr: config?.foreverUrlAddr?.trim() || \"\",\n };\n});\n\nexport type ResolvePageMetadataOptions = {\n seoInfo?: SeoInfo | SeoValue | null;\n fallbackTitle: string;\n fallbackDescription?: string;\n fallbackKeywords?: string[];\n canonical: string;\n page?: number;\n robots?: BuildMetadataOptions[\"robots\"];\n ogType?: BuildMetadataOptions[\"ogType\"];\n /** 详情页只用本页 seoInfo,不用全站关键词顶上内容标题。 */\n siteFallback?: boolean;\n};\n\nexport async function resolvePageMetadata(options: ResolvePageMetadataOptions) {\n const site = await getSiteSEOCached();\n const pageSEO = options.siteFallback === false\n ? normalizeSEO(options.seoInfo, {\n title: options.fallbackTitle,\n description: options.fallbackDescription,\n keywords: options.fallbackKeywords,\n })\n : mergeSEO(options.seoInfo, mergeSEO(\n {\n title: options.fallbackTitle,\n description: options.fallbackDescription,\n keywords: options.fallbackKeywords,\n },\n site.seo,\n ));\n const seo = paginateSEO(pageSEO, options.page, site.siteName);\n return buildPageMetadata({\n title: seo.title,\n description: seo.description,\n keywords: seo.keywords,\n canonical: await absoluteRequestUrl(options.canonical),\n robots: options.robots,\n siteName: site.siteName,\n ogType: options.ogType,\n });\n}\n\n/** 短剧详情 / 播放:标题和描述以本页为准,站点名仍取配置。 */\nexport function resolveContentMetadata(options: Omit) {\n return resolvePageMetadata({ ...options, siteFallback: false });\n}\n"],"names":["mergeSEO","primary","fallback","main","extra","title","description","keywords","length","configToSiteSEO","config","webTitle","webDescription","webKeyworld","configSiteName","name","getSiteSEOCached","data","seo","seoInfo","siteName","webSiteName","foreverUrlAddr","trim","resolvePageMetadata","options","site","pageSEO","siteFallback","fallbackTitle","fallbackDescription","fallbackKeywords","page","canonical","robots","ogType","resolveContentMetadata"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AAEA;AACA;;;;;AAEO,SAASA,SAASC,OAAkB,EAAEC,WAAmC,CAAC,CAAC;IAChF,MAAMC,OAAO,IAAA,6IAAY,EAACF;IAC1B,MAAMG,QAAQ,IAAA,6IAAY,EAAC,MAAMF;IACjC,OAAO;QACLG,OAAOF,KAAKE,KAAK,IAAIF,KAAKE,KAAK,KAAK,0IAAS,GAAGF,KAAKE,KAAK,GAAGD,MAAMC,KAAK,IAAIF,KAAKE,KAAK;QACtFC,aAAaH,KAAKG,WAAW,IAAIF,MAAME,WAAW;QAClDC,UAAUJ,KAAKI,QAAQ,CAACC,MAAM,GAAGL,KAAKI,QAAQ,GAAGH,MAAMG,QAAQ;IACjE;AACF;AAEO,SAASE,gBAAgBC,MAIxB;IACN,OAAO,IAAA,6IAAY,EACjB;QACEL,OAAOK,QAAQC;QACfL,aAAaI,QAAQE;QACrBL,UAAUG,QAAQG;IACpB,GACA;QAAER,OAAO;IAAG;AAEhB;AAEO,SAASS,eAAeC,IAAoB;IACjD,OAAO,IAAA,wIAAW,EAACA;AACrB;AAGO,MAAMC,mBAAmB,IAAA,mZAAK,EAAC;IACpC,MAAM,EAAEC,IAAI,EAAE,GAAG,MAAM,IAAA,gKAAgB;IACvC,MAAMP,SAASO,MAAMP;IACrB,OAAO;QACLQ,KAAKlB,SAASiB,MAAME,SAASV,gBAAgBC;QAC7CU,UAAUN,eAAeJ,QAAQW,eAAeJ,MAAME,SAASE;QAC/DC,gBAAgBZ,QAAQY,gBAAgBC,UAAU;IACpD;AACF;AAeO,eAAeC,oBAAoBC,OAAmC;IAC3E,MAAMC,OAAO,MAAMV;IACnB,MAAMW,UAAUF,QAAQG,YAAY,KAAK,QACrC,IAAA,6IAAY,EAACH,QAAQN,OAAO,EAAE;QAC5Bd,OAAOoB,QAAQI,aAAa;QAC5BvB,aAAamB,QAAQK,mBAAmB;QACxCvB,UAAUkB,QAAQM,gBAAgB;IACpC,KACA/B,SAASyB,QAAQN,OAAO,EAAEnB,SACxB;QACEK,OAAOoB,QAAQI,aAAa;QAC5BvB,aAAamB,QAAQK,mBAAmB;QACxCvB,UAAUkB,QAAQM,gBAAgB;IACpC,GACAL,KAAKR,GAAG;IAEd,MAAMA,MAAM,IAAA,4IAAW,EAACS,SAASF,QAAQO,IAAI,EAAEN,KAAKN,QAAQ;IAC5D,OAAO,IAAA,kJAAiB,EAAC;QACvBf,OAAOa,IAAIb,KAAK;QAChBC,aAAaY,IAAIZ,WAAW;QAC5BC,UAAUW,IAAIX,QAAQ;QACtB0B,WAAW,MAAM,IAAA,+IAAkB,EAACR,QAAQQ,SAAS;QACrDC,QAAQT,QAAQS,MAAM;QACtBd,UAAUM,KAAKN,QAAQ;QACvBe,QAAQV,QAAQU,MAAM;IACxB;AACF;AAGO,SAASC,uBAAuBX,OAAyD;IAC9F,OAAOD,oBAAoB;QAAE,GAAGC,OAAO;QAAEG,cAAc;IAAM;AAC/D"}}, - {"offset": {"line": 3117, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/site.ts"],"sourcesContent":["import { headers } from \"next/headers\";\nimport { SITE_NAME } from \"./metadata\";\n\n/** 站点对外 origin,用于 canonical、OG、sitemap。 */\nexport function getSiteOrigin() {\n const configured = process.env.NEXT_PUBLIC_SITE_URL?.trim().replace(/\\/$/, \"\");\n if (configured) return configured;\n return \"https://hdmgdj.com\";\n}\n\nexport function getSiteName(name?: string | null) {\n const value = name?.trim();\n return value || SITE_NAME;\n}\n\n/**\n * 当前请求的 origin。优先反代头,其次 Host。\n * `next build` 预渲染没有请求,回退 NEXT_PUBLIC_SITE_URL。\n */\nexport async function getRequestOrigin() {\n if (process.env.NEXT_PHASE === \"phase-production-build\") return getSiteOrigin();\n try {\n const headerList = await headers();\n const host = headerList.get(\"x-forwarded-host\") || headerList.get(\"host\");\n if (!host) return getSiteOrigin();\n const forwarded = headerList.get(\"x-forwarded-proto\");\n const proto = forwarded || (host.startsWith(\"localhost\") || host.startsWith(\"127.0.0.1\") ? \"http\" : \"https\");\n return `${proto}://${host.split(\",\")[0].trim()}`;\n } catch {\n return getSiteOrigin();\n }\n}\n\nexport function absoluteUrl(path = \"/\", origin = getSiteOrigin()) {\n if (/^https?:\\/\\//i.test(path)) return path;\n const base = origin.replace(/\\/$/, \"\");\n if (!path || path === \"/\") return `${base}/`;\n return `${base}${path.startsWith(\"/\") ? path : `/${path}`}`;\n}\n\nexport async function absoluteRequestUrl(path = \"/\") {\n return absoluteUrl(path, await getRequestOrigin());\n}\n"],"names":["getSiteOrigin","configured","trim","replace","getSiteName","name","value","getRequestOrigin","process","env","NEXT_PHASE","headerList","host","get","forwarded","proto","startsWith","split","absoluteUrl","path","origin","test","base","absoluteRequestUrl"],"mappings":";;;;;;;;;;;;AAAA;AACA;;;AAGO,SAASA;IACd,MAAMC,yEAA+CC,OAAOC,QAAQ,OAAO;IAC3E,IAAIF,YAAY,OAAOA;IACvB,OAAO;AACT;AAEO,SAASG,YAAYC,IAAoB;IAC9C,MAAMC,QAAQD,MAAMH;IACpB,OAAOI,SAAS,0IAAS;AAC3B;AAMO,eAAeC;IACpB,IAAIC,QAAQC,GAAG,CAACC,UAAU,KAAK,0BAA0B,OAAOV;IAChE,IAAI;QACF,MAAMW,aAAa,MAAM,IAAA,+UAAO;QAChC,MAAMC,OAAOD,WAAWE,GAAG,CAAC,uBAAuBF,WAAWE,GAAG,CAAC;QAClE,IAAI,CAACD,MAAM,OAAOZ;QAClB,MAAMc,YAAYH,WAAWE,GAAG,CAAC;QACjC,MAAME,QAAQD,aAAa,CAACF,KAAKI,UAAU,CAAC,gBAAgBJ,KAAKI,UAAU,CAAC,eAAe,SAAS,OAAO;QAC3G,OAAO,GAAGD,MAAM,GAAG,EAAEH,KAAKK,KAAK,CAAC,IAAI,CAAC,EAAE,CAACf,IAAI,IAAI;IAClD,EAAE,OAAM;QACN,OAAOF;IACT;AACF;AAEO,SAASkB,YAAYC,OAAO,GAAG,EAAEC,SAASpB,eAAe;IAC9D,IAAI,gBAAgBqB,IAAI,CAACF,OAAO,OAAOA;IACvC,MAAMG,OAAOF,OAAOjB,OAAO,CAAC,OAAO;IACnC,IAAI,CAACgB,QAAQA,SAAS,KAAK,OAAO,GAAGG,KAAK,CAAC,CAAC;IAC5C,OAAO,GAAGA,OAAOH,KAAKH,UAAU,CAAC,OAAOG,OAAO,CAAC,CAAC,EAAEA,MAAM,EAAE;AAC7D;AAEO,eAAeI,mBAAmBJ,OAAO,GAAG;IACjD,OAAOD,YAAYC,MAAM,MAAMZ;AACjC"}}, - {"offset": {"line": 3168, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/translation-nav.ts"],"sourcesContent":["import type { TranslationCategory } from \"@/lib/api/types\";\n\n/** 空 urlValue 表示首页。外链原样保留。 */\nexport function translationHref(urlValue: string | undefined) {\n const raw = (urlValue || \"\").trim();\n if (!raw || raw === \"/\") return \"/\";\n return raw;\n}\n\nexport function isExternalHref(href: string) {\n return /^https?:\\/\\//i.test(href);\n}\n\n/** 顶栏当前项。详情、播放、更多列表和搜索页不点亮频道。 */\nexport function isTranslationCurrent(pathname: string, urlValue: string | undefined) {\n const href = translationHref(urlValue);\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return false;\n }\n if (href === \"/\") return pathname === \"/\";\n return pathname === href || pathname.startsWith(`${href}/`);\n}\n\nexport function usableTranslationCategories(list: TranslationCategory[] | undefined) {\n return (list || []).filter((item) => item?.name?.trim());\n}\n"],"names":["translationHref","urlValue","raw","trim","isExternalHref","href","test","isTranslationCurrent","pathname","startsWith","usableTranslationCategories","list","filter","item","name"],"mappings":";;;;;;;;;;AAGO,SAASA,gBAAgBC,QAA4B;IAC1D,MAAMC,MAAM,CAACD,YAAY,EAAE,EAAEE,IAAI;IACjC,IAAI,CAACD,OAAOA,QAAQ,KAAK,OAAO;IAChC,OAAOA;AACT;AAEO,SAASE,eAAeC,IAAY;IACzC,OAAO,gBAAgBC,IAAI,CAACD;AAC9B;AAGO,SAASE,qBAAqBC,QAAgB,EAAEP,QAA4B;IACjF,MAAMI,OAAOL,gBAAgBC;IAC7B,IACEO,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,kBACpBD,SAASC,UAAU,CAAC,aACpBD,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,YACpBD,SAASC,UAAU,CAAC,YACpB;QACA,OAAO;IACT;IACA,IAAIJ,SAAS,KAAK,OAAOG,aAAa;IACtC,OAAOA,aAAaH,QAAQG,SAASC,UAAU,CAAC,GAAGJ,KAAK,CAAC,CAAC;AAC5D;AAEO,SAASK,4BAA4BC,IAAuC;IACjF,OAAO,CAACA,QAAQ,EAAE,EAAEC,MAAM,CAAC,CAACC,OAASA,MAAMC,MAAMX;AACnD"}}, - {"offset": {"line": 3205, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/data/catalog.json.[json].cjs/turbopack:/src/data/catalog.json"],"sourcesContent":["{\"cardStats\":[{\"badge\":\"爆剧\",\"likes\":23,\"tags\":[\"年代\",\"读心\",\"先婚后爱\"],\"favorites\":12.6},{\"badge\":\"新剧\",\"likes\":16,\"tags\":[\"都市\",\"女性成长\",\"逆袭\"],\"favorites\":8.9},{\"badge\":\"新剧\",\"likes\":12,\"tags\":[\"都市\",\"职场\",\"逆袭\"],\"favorites\":6.8},{\"badge\":\"爆剧\",\"likes\":28,\"tags\":[\"仙侠\",\"团宠\",\"漫剧\"],\"favorites\":15.4},{\"badge\":\"原创\",\"likes\":9,\"tags\":[\"都市\",\"甜宠\",\"双向治愈\"],\"favorites\":5.2},{\"badge\":\"原创\",\"likes\":7,\"tags\":[\"玄幻\",\"异能\",\"逆袭\"],\"favorites\":4.1}],\"coverHeights\":[914,914,915,914,914,914],\"covers\":[\"/images/covers/0.jpg\",\"/images/covers/1.jpg\",\"/images/covers/2.jpg\",\"/images/covers/3.jpg\",\"/images/covers/4.jpg\",\"/images/covers/5.jpg\"],\"heroes\":[{\"title\":\"一个部门的诞生\",\"wide\":\"/images/hero/0-wide.webp\",\"portrait\":\"/images/hero/0-portrait.jpg\"},{\"title\":\"特立独行\",\"wide\":\"/images/hero/1-wide.webp\",\"portrait\":\"/images/hero/1-portrait.jpg\"},{\"title\":\"给阿嬷的情书\",\"wide\":\"/images/hero/2-wide.webp\",\"portrait\":\"/images/hero/2-portrait.jpg\"},{\"title\":\"法医秦明之龙番往事\",\"wide\":\"/images/hero/3-wide.webp\",\"portrait\":\"/images/hero/3-portrait.jpg\"},{\"title\":\"一瓯春\",\"wide\":\"/images/hero/4-wide.webp\",\"portrait\":\"/images/hero/4-portrait.jpg\"},{\"title\":\"兰香如故\",\"wide\":\"/images/hero/5-wide.webp\",\"portrait\":\"/images/hero/5-portrait.jpg\"}],\"topics\":{\"dream\":\"/images/topics/dream.webp\",\"city\":\"/images/topics/city.webp\",\"love\":\"/images/topics/love.webp\",\"twists\":\"/images/topics/twists.webp\",\"growth\":\"/images/topics/growth.webp\",\"worth\":\"/images/topics/worth.webp\",\"hot\":\"/images/topics/hot.webp\",\"free\":\"/images/topics/free.webp\"},\"promoApps\":[{\"title\":\"星愿\",\"src\":\"/icons/apps/promo/0.png\"},{\"title\":\"Conso\",\"src\":\"/icons/apps/promo/1.png\"},{\"title\":\"Weela\",\"src\":\"/icons/apps/promo/2.png\"},{\"title\":\"JisQ\",\"src\":\"/icons/apps/promo/3.png\"},{\"title\":\"Soyo\",\"src\":\"/icons/apps/promo/4.png\"},{\"title\":\"Hi\",\"src\":\"/icons/apps/promo/5.png\"},{\"title\":\"Wakoo\",\"src\":\"/icons/apps/promo/6.png\"},{\"title\":\"Lumeet\",\"src\":\"/icons/apps/promo/7.png\"},{\"title\":\"Niki\",\"src\":\"/icons/apps/promo/8.png\"},{\"title\":\"星环\",\"src\":\"/icons/apps/promo/9.png\"},{\"title\":\"Meoo\",\"src\":\"/icons/apps/promo/10.png\"},{\"title\":\"Muaa\",\"src\":\"/icons/apps/promo/11.png\"},{\"title\":\"Xiu\",\"src\":\"/icons/apps/promo/12.png\"},{\"title\":\"Luna\",\"src\":\"/icons/apps/promo/13.png\"},{\"title\":\"Reisly\",\"src\":\"/icons/apps/promo/14.png\"},{\"title\":\"Live\",\"src\":\"/icons/apps/promo/15.png\"}],\"benefitApps\":[{\"title\":\"Siya\",\"src\":\"/icons/apps/benefit/0.png\"},{\"title\":\"Hi聊\",\"src\":\"/icons/apps/benefit/1.png\"},{\"title\":\"Vaga\",\"src\":\"/icons/apps/benefit/2.png\"},{\"title\":\"柠檬\",\"src\":\"/icons/apps/benefit/3.png\"},{\"title\":\"YES\",\"src\":\"/icons/apps/benefit/4.png\"},{\"title\":\"微笑\",\"src\":\"/icons/apps/benefit/5.png\"},{\"title\":\"星语\",\"src\":\"/icons/apps/benefit/6.png\"},{\"title\":\"Anyhoo\",\"src\":\"/icons/apps/benefit/7.png\"},{\"title\":\"蜜果\",\"src\":\"/icons/apps/benefit/8.png\"},{\"title\":\"蜜桃\",\"src\":\"/icons/apps/benefit/9.png\"},{\"title\":\"Live轻语\",\"src\":\"/icons/apps/benefit/10.png\"},{\"title\":\"Live霓虹\",\"src\":\"/icons/apps/benefit/11.png\"},{\"title\":\"Wanna\",\"src\":\"/icons/apps/benefit/12.png\"}],\"brand\":{\"logo\":\"/logo.png\",\"wordmark\":\"/logo.png\",\"coin\":\"/coin.png\",\"downloadLogo\":\"/logo.png\",\"avatar\":\"/images/avatar.png\",\"qr\":\"/images/qr.png\",\"footerLogo\":\"/logo.png\",\"favicon\":\"/favicon.png\",\"search\":\"/icons/search.svg\",\"qq\":\"/icons/qq.png\",\"seriesHeat\":\"/icons/series-heat.svg\"},\"navIcons\":[\"M778.85 226.8H639.62v58.49l65.87 54.05-17.61 5.61-183.52-107.69-318.02 186.62V815H404.6V601.86h199.53V815H822.4V423.88l-43.55-25.55V226.8z\",\"M765 558l-22.93-14.02L725 366h1.44l-1.17-12.3c-24.41-22.2-39.3-35.74-63.71-57.95H265.44c-24.41 22.2-39.3 35.74-63.71 57.95l-37.72 397c25.39 27.92 38.32 42.14 63.71 70.05h471.55c25.39-27.92 38.32-42.14 63.71-70.05l-9.03-95.04 132.04 55.6v-306l-116.13 48.9-4.87 103.85z\",\"M431.19 203.28L151.64 435.26l469.81 231.99 121.03-100.43-3.54 32.54-110.35 112.26-401.95-184.49-75 62.25 469.81 231.98L901 589.38l-116.43-57.5L901 435.26 431.19 203.28z\",\"M473.6 307.44L373.88 234H190.45c-13.24 14.55-19.99 21.97-33.24 36.52l44.5 470.8 52.39 47.67h536.5l52.31-46.92 28.26-259.47-523.33-12.55 20.98-25.18 508.58-19.49 8.82-80.95c-13.27-14.79-19.92-22.21-33.19-37H473.58z\",\"M710.83 236.25c-109.55-109.55-287.18-109.55-396.73 0-109.55 109.55-109.55 287.18 0 396.73 41.51 41.51 92.8 67.28 146.46 77.33l-14.22 28.06c-42.51 2.32-87.82-4.48-131.06-38.02l-18.72 181.57 215.04-83.69 215.04 83.69-24.78-240.38c3.03-2.78 6.03-5.62 8.97-8.56 109.55-109.55 109.55-287.18 0-396.73z\",\"M534.27 168v0.36h-46.45l-13.39 461.39h-0.19l-0.99 40.53-1.78 61.34h0.28l-0.17 6.93-24.29-15.19-6.63-91.65c-146.16 11.32-255.42 56.61-255.42 110.77 0 62.68 146.35 113.5 326.88 113.5S839 805.16 839 742.48c0-58.26-126.42-106.25-289.19-112.74l-4.84-166.76h346.86l-80.71-147.5 80.71-147.5H534.27z\",\"M178.74 474.5h46.77v0.28l33.03-0.28h305.41l-25.85 16.77-312.59 22.53V812h570.47V474.5h46.76v-102h-664v102zM662 243l-119 61-204.78-75.63L287 340l195.97 23 261.77-25L662 243z\"],\"collections\":{\"dream\":{\"title\":\"江湖好梦\",\"ids\":[3,5]},\"city\":{\"title\":\"都市新生\",\"ids\":[1,4]},\"twists\":{\"title\":\"高能反转\",\"ids\":[0,1,2,5]},\"love\":{\"title\":\"怦然心动\",\"ids\":[4,1,0,3,2,5]},\"growth\":{\"title\":\"重新爱自己\",\"ids\":[1,4,2,5,0,3]}},\"roadIcons\":{\"rocket\":\"/icons/road/rocket.svg\",\"link\":\"/icons/road/link.svg\",\"shield\":\"/icons/road/shield.svg\",\"troubleshoot\":\"/icons/road/troubleshoot.svg\",\"devices\":\"/icons/road/devices.svg\",\"iphone\":\"/icons/road/iphone.svg\",\"android\":\"/icons/road/android.svg\",\"desktop\":\"/icons/road/desktop.svg\",\"email\":\"/icons/road/email.svg\",\"tg\":\"/icons/road/tg.svg\",\"biz\":\"/icons/road/biz.svg\",\"twitter\":\"/icons/road/twitter.svg\"},\"returnIcons\":[\"/icons/return/0.svg\",\"/icons/return/1.svg\",\"/icons/return/2.svg\",\"/icons/return/3.svg\",\"/icons/return/4.svg\"]}"],"names":[],"mappings":""}}] + {"offset": {"line": 2077, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/catalog.ts"],"sourcesContent":["import catalogJson from \"@/data/catalog.json\";\nimport sourceDramas from \"@/data/dramas.js\";\nimport type { AppIcon, CardStat, CoverBadge, Drama, TopicCollection } from \"@/lib/types\";\n\nconst STEMS = [\"星河\", \"晚风\", \"春日\", \"月光\", \"山海\", \"归途\", \"长街\", \"云端\", \"微光\", \"朝暮\"];\nconst ENDINGS = [\"落在你肩上\", \"与君再相逢\", \"藏不住心动\", \"照亮回家的路\", \"等一场花开\", \"写给未来的信\", \"在雨季重逢\", \"奔向有光处\", \"听见你的心声\", \"越过人海见你\"];\nconst GENRES = [\"都市\", \"甜宠\", \"仙侠\", \"悬疑\", \"古装\", \"年代\", \"职场\", \"家庭\", \"青春\", \"逆袭\"];\nconst BADGE_CYCLE: CoverBadge[] = [\"hot\", \"new\", \"free\", \"\"];\nconst BADGE_LABEL = { hot: \"爆剧\", new: \"新剧\", free: \"原创\" } as const;\n\nexport const NAV_ITEMS = [\n { href: \"/\", label: \"首页\", page: \"home\", exact: true },\n { href: \"/shorts\", label: \"短剧\", page: \"shorts\", exact: false },\n { href: \"/series\", label: \"剧集\", page: \"series\", exact: false },\n { href: \"/topics\", label: \"专题\", page: \"topics\", exact: false },\n { href: \"/rank\", label: \"热榜\", page: \"rank\", exact: false },\n { href: \"/home-road\", label: \"回家的路\", page: \"home-road\", exact: false },\n] as const;\n\nexport function activeNavKey(pathname: string) {\n // 详情/播放页、更多专题、搜索页不点亮主导航\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return \"\";\n }\n const match = NAV_ITEMS.find((item) => (item.exact ? pathname === item.href : pathname === item.href || pathname.startsWith(`${item.href}/`)));\n return match?.page ?? \"\";\n}\n\nexport const INFO_LINKS = [\n { href: \"/info/about-us\", label: \"关于我们\" },\n { href: \"/info/user-agreement\", label: \"用户协议\" },\n { href: \"/info/privacy-policy\", label: \"隐私政策\" },\n { href: \"/info/help-center\", label: \"常见问题\" },\n { href: \"/info/2257\", label: \"2257\" },\n { href: \"/info/dmca\", label: \"DMCA\" },\n] as const;\n\nexport const CHANNELS = {\n shorts: { title: \"短剧\", kicker: \"SHORT FILMS\", subtitle: \"发现最新故事,挑选人气好剧。\" },\n series: { title: \"剧集\", kicker: \"SERIES\", subtitle: \"浏览完整剧集,选择下一部想追的故事。\" },\n topics: { title: \"短剧专题\", kicker: \"COLLECTIONS\", subtitle: \"围绕一个主题,发现一组好故事。\" },\n rank: { title: \"排行榜\", kicker: \"RANKINGS\", subtitle: \"从热度、上新和你的收藏中发现好剧。\" },\n \"home-road\": { title: \"回家的路\", kicker: \"STAY CONNECTED\", subtitle: \"收藏访问入口,下次回来更方便。\" },\n} as const;\n\nexport const SORTS = [\"最新更新\", \"当前热播\", \"独家原创\", \"随机推荐\"] as const;\nexport const RANK_BOARDS = [\"热播榜\", \"新剧榜\", \"追剧榜\"] as const;\n\nexport const FRIEND_LINKS = [\n \"4399小游戏\",\n \"4399游戏盒\",\n \"4399游戏吧\",\n \"4399手机游戏网\",\n \"4399网页游戏\",\n \"4399游戏资讯\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手机开放平台\",\n \"4399游戏盒推荐\",\n \"4399在线玩\",\n];\n\nexport const ANNOUNCEMENT =\n \"欢迎来到黄果短剧,发现值得一看的好故事!都市甜宠、古装仙侠、悬疑逆袭、热血成长,多种题材随心挑选;浏览精选专题与热门榜单,找到适合此刻心情的精彩短剧。遇到喜欢的作品,记得加入收藏,方便下次继续观看;打开观看历史,轻松找回看过的故事。想看更多内容,可前往短剧、剧集与专题页面探索,也欢迎通过意见反馈告诉我们你的想法。收藏「回家的路」,随时找到黄果短剧,愿每一次相遇,都有好故事陪伴你! · \";\n\ntype CatalogFile = {\n cardStats: CardStat[];\n coverHeights: number[];\n covers: string[];\n heroes: { title: string; wide: string; portrait: string }[];\n topics: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nconst file = catalogJson as CatalogFile;\n\nexport type Catalog = {\n base: Drama[];\n all: Drama[];\n stats: CardStat[];\n badges: CoverBadge[];\n covers: string[];\n coverHeights: number[];\n heroes: CatalogFile[\"heroes\"];\n topicCovers: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nlet cached: Catalog | null = null;\n\nexport function getCatalog(): Catalog {\n if (cached) return cached;\n const base = sourceDramas.map((drama) => ({ ...drama }));\n const stats = file.cardStats.map((item) => ({ ...item, tags: [...item.tags] }));\n const badges: CoverBadge[] = base.map((_, index) => BADGE_CYCLE[index % BADGE_CYCLE.length]);\n const all = [...base];\n\n while (all.length < 100) {\n const sampleCount = all.length - base.length;\n const baseDrama = base[sampleCount % base.length] ?? base[0];\n const title = `${STEMS[Math.floor(sampleCount / ENDINGS.length) % STEMS.length]}${ENDINGS[sampleCount % ENDINGS.length]}`;\n const genre = GENRES[sampleCount % GENRES.length];\n const badgeName = ([\"爆剧\", \"新剧\", \"原创\"] as const)[sampleCount % 3];\n all.push({\n ...baseDrama,\n id: all.length,\n title,\n genre,\n heat: (99.8 - ((sampleCount * 1.37) % 61)).toFixed(1),\n eps: 60 + ((sampleCount * 17) % 420),\n mode: \"免费\",\n desc: `${title},一段关于选择、成长与重逢的故事正在展开。`,\n listSample: true,\n });\n stats.push({\n badge: badgeName,\n likes: 18 + ((sampleCount * 7) % 80),\n tags: [genre, \"精选短剧\"],\n favorites: Number((38 + ((sampleCount * 13) % 70) + sampleCount / 10).toFixed(1)),\n });\n badges.push(badgeName === \"爆剧\" ? \"hot\" : badgeName === \"新剧\" ? \"new\" : \"free\");\n }\n\n cached = {\n base,\n all,\n stats,\n badges,\n covers: file.covers,\n coverHeights: file.coverHeights,\n heroes: file.heroes,\n topicCovers: file.topics,\n promoApps: file.promoApps,\n benefitApps: file.benefitApps,\n brand: file.brand,\n navIcons: file.navIcons,\n roadIcons: file.roadIcons,\n returnIcons: file.returnIcons,\n collections: file.collections,\n };\n return cached;\n}\n\nexport function badgeLabel(type: CoverBadge) {\n return type ? BADGE_LABEL[type] : \"\";\n}\n\nexport function findDrama(id: number) {\n return getCatalog().all.find((drama) => drama.id === id) ?? null;\n}\n\nexport function coverSrc(drama: Drama) {\n const { covers } = getCatalog();\n return covers[drama.img % covers.length];\n}\n\nexport function coverHeight(drama: Drama) {\n const { coverHeights } = getCatalog();\n return coverHeights[drama.img % coverHeights.length] ?? 914;\n}\n\nexport function romanceIds(dramas: Drama[]) {\n const lead = [4, 1, 0, 3];\n return [...lead, ...dramas.map((drama) => drama.id).filter((id) => !lead.includes(id))].slice(0, 10);\n}\n\nexport function homeCollections() {\n const { base, collections } = getCatalog();\n const dynamic: Record = {\n worth: { title: \"值得一追\", ids: base.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...base].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: base.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n return { ...collections, ...dynamic };\n}\n\nexport function topicList(slug: string) {\n const catalog = getCatalog();\n if (slug.startsWith(\"tag-\")) {\n const tag = decodeURIComponent(slug.slice(4));\n const ids = catalog.all.filter((drama) => catalog.stats[drama.id]?.tags.includes(tag)).map((drama) => drama.id);\n return { title: tag ? `#${tag}` : \"专题\", dramas: ids.map((id) => catalog.all[id]).filter(Boolean), isTag: true };\n }\n const collections = slug === \"worth\" || slug === \"hot\" || slug === \"free\" ? fullCollections() : catalog.collections;\n const collection = collections[slug];\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return { title: collection.title, dramas: [...picked, ...rest].slice(0, 100), isTag: false };\n}\n\nfunction fullCollections(): Record {\n const { all } = getCatalog();\n return {\n worth: { title: \"值得一追\", ids: all.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...all].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: all.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n}\n\nexport function dramasBySort(sort: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (sort === \"当前热播\" || sort === \"人气优先\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n else if (sort === \"独家原创\") return list.filter((drama) => stats[drama.id]?.badge === \"原创\");\n else if (sort === \"最新更新\") list.reverse();\n else if (sort === \"随机推荐\") return seededShuffle(list);\n return list;\n}\n\nexport function dramasByRank(board: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (board === \"热播榜\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n if (board === \"新剧榜\") list.sort((a, b) => b.id - a.id);\n if (board === \"追剧榜\") {\n list.sort(\n (a, b) =>\n (stats[b.id]?.favorites ?? 0) - (stats[a.id]?.favorites ?? 0) || Number(b.heat) - Number(a.heat),\n );\n }\n return list;\n}\n\nexport function morePage(slug: string) {\n const catalog = getCatalog();\n const names: Record = {\n mustwatch: \"必看好剧\",\n hot: \"热门好剧\",\n topics: \"专题推荐\",\n dream: \"今日推荐\",\n worth: \"最近更新\",\n };\n if (slug === \"topics\") return { kind: \"topics\" as const, name: names.topics };\n if (slug === \"hot\") {\n return {\n kind: \"dramas\" as const,\n name: names.hot,\n dramas: [...catalog.all].sort((a, b) => Number(b.heat) - Number(a.heat)),\n };\n }\n const collection =\n slug === \"mustwatch\"\n ? { title: names.mustwatch, ids: romanceIds(catalog.base) }\n : (catalog.collections[slug] ?? fullCollections()[slug]);\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return {\n kind: \"dramas\" as const,\n name: names[slug] ?? collection.title,\n dramas: [...picked, ...rest].slice(0, 100),\n };\n}\n\nexport function searchDramas(query: string) {\n const term = query.trim();\n if (!term) return [];\n return getCatalog().all.filter((drama) => `${drama.title}${drama.genre}`.includes(term));\n}\n\nfunction seededShuffle(list: T[]) {\n const items = [...list];\n let state = 1048;\n const next = () => {\n state = (Math.imul(state, 1664525) + 1013904223) >>> 0;\n return state / 4294967296;\n };\n for (let index = items.length - 1; index > 0; index -= 1) {\n const swap = Math.floor(next() * (index + 1));\n [items[index], items[swap]] = [items[swap], items[index]];\n }\n return items;\n}\n"],"names":["STEMS","ENDINGS","GENRES","BADGE_CYCLE","BADGE_LABEL","hot","new","free","NAV_ITEMS","href","label","page","exact","activeNavKey","pathname","startsWith","match","find","item","INFO_LINKS","CHANNELS","shorts","title","kicker","subtitle","series","topics","rank","SORTS","RANK_BOARDS","FRIEND_LINKS","ANNOUNCEMENT","file","cached","getCatalog","base","map","drama","stats","cardStats","tags","badges","_","index","length","all","sampleCount","baseDrama","Math","floor","genre","badgeName","push","id","heat","toFixed","eps","mode","desc","listSample","badge","likes","favorites","Number","covers","coverHeights","heroes","topicCovers","promoApps","benefitApps","brand","navIcons","roadIcons","returnIcons","collections","badgeLabel","type","findDrama","coverSrc","img","coverHeight","romanceIds","dramas","lead","filter","includes","slice","homeCollections","dynamic","worth","ids","sort","a","b","topicList","slug","catalog","tag","decodeURIComponent","Boolean","isTag","fullCollections","collection","picked","rest","dramasBySort","list","reverse","seededShuffle","dramasByRank","board","morePage","names","mustwatch","dream","kind","name","searchDramas","query","term","trim","items","state","next","imul","swap"],"mappings":"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"}}, + {"offset": {"line": 2544, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/contact.ts"],"sourcesContent":["/** 全站唯一对外联系方式:商务合作(Telegram @jbd125)。不再读取后台的邮箱 / QQ / X / 交流群配置。 */\nexport const BUSINESS_CONTACT = {\n label: \"商务合作\",\n handle: \"@jbd125\",\n href: \"https://t.me/jbd125\",\n} as const;\n"],"names":["BUSINESS_CONTACT","label","handle","href"],"mappings":"AAAA,kEAAkE;;;;AAC3D,MAAMA,mBAAmB;IAC9BC,OAAO;IACPC,QAAQ;IACRC,MAAM;AACR"}}, + {"offset": {"line": 2557, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/index.ts"],"sourcesContent":["export {\n OG_DEFAULT_IMAGE,\n SITE_NAME,\n buildPageMetadata,\n isPlaceholderSeoText,\n normalizeSEO,\n paginateSEO,\n resolveShareImage,\n siteSEOFromConfig,\n withSiteSuffix,\n type BuildMetadataOptions,\n type NormalizedSEO,\n type SeoSource,\n} from \"./metadata\";\n\nexport {\n absoluteRequestUrl,\n absoluteUrl,\n getRequestOrigin,\n getSiteName,\n getSiteOrigin,\n} from \"./site\";\n\nexport {\n buildPlayletDetailJSONLD,\n buildPlayletPlayJSONLD,\n buildWebPageJSONLD,\n isoDate,\n isoDateTime,\n serializeJSONLD,\n} from \"./jsonld\";\n\nexport {\n configSiteName,\n configToSiteSEO,\n getSiteSEOCached,\n mergeSEO,\n resolveContentMetadata,\n resolvePageMetadata,\n type ResolvePageMetadataOptions,\n} from \"./resolve\";\n"],"names":[],"mappings":";AAeA;AAQA;AASA"}}, + {"offset": {"line": 2569, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/jsonld.ts"],"sourcesContent":["import { normalizeSEO, type SeoSource } from \"./metadata\";\nimport { absoluteUrl, getSiteName, getSiteOrigin } from \"./site\";\n\ntype JsonLdNode = Record;\n\nfunction ref(id: string): JsonLdNode {\n return { \"@id\": id };\n}\n\nfunction first(...values: Array) {\n for (const value of values) {\n const text = value?.trim();\n if (text) return text;\n }\n return \"\";\n}\n\nfunction unique(items: string[]) {\n const seen = new Set();\n const out: string[] = [];\n for (const item of items) {\n const value = item.trim();\n if (!value) continue;\n const key = value.toLowerCase();\n if (seen.has(key)) continue;\n seen.add(key);\n out.push(value);\n }\n return out;\n}\n\n/** 后端无时区时间戳按 UTC+8 理解。 */\nexport function isoDateTime(value?: string | null) {\n const raw = value?.trim() || \"\";\n if (!raw || /^(0001|1970-01-01)/.test(raw)) return \"\";\n if (/^\\d{4}-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d(?:\\.\\d+)?(?:Z|[+-]\\d\\d:\\d\\d)$/.test(raw) && !Number.isNaN(Date.parse(raw))) {\n return raw.replace(/\\.\\d+(?=Z|[+-]\\d\\d:\\d\\d$)/, \"\").replace(/[+-]00:00$/, \"Z\");\n }\n const match = raw.match(/^(\\d{4})[-/](\\d{2})[-/](\\d{2})(?:[ T](\\d{2}):(\\d{2}):(\\d{2}))?$/);\n if (!match) return \"\";\n const result = `${match[1]}-${match[2]}-${match[3]}T${match[4] || \"00\"}:${match[5] || \"00\"}:${match[6] || \"00\"}+08:00`;\n return Number.isNaN(Date.parse(result)) ? \"\" : result;\n}\n\nexport function isoDate(value?: string | null) {\n const full = isoDateTime(value);\n return full ? full.slice(0, 10) : \"\";\n}\n\n/** HTML 安全序列化,避免 `` 打断脚本。 */\nexport function serializeJSONLD(value: unknown) {\n return JSON.stringify(value)\n .replace(//g, \"\\\\u003e\")\n .replace(/&/g, \"\\\\u0026\")\n .replace(/\\u2028/g, \"\\\\u2028\")\n .replace(/\\u2029/g, \"\\\\u2029\");\n}\n\nfunction organizationAndWebsite(siteName: string): JsonLdNode[] {\n const site = getSiteOrigin();\n const logo = absoluteUrl(\"/logo.png\");\n return [\n {\n \"@type\": \"Organization\",\n \"@id\": `${site}/#organization`,\n name: siteName,\n url: absoluteUrl(\"/\"),\n logo: {\n \"@type\": \"ImageObject\",\n \"@id\": `${site}/#logo`,\n url: logo,\n contentUrl: logo,\n },\n },\n {\n \"@type\": \"WebSite\",\n \"@id\": `${site}/#website`,\n name: siteName,\n url: absoluteUrl(\"/\"),\n description: `${siteName}汇集热门短剧与精选推荐,支持高清在线观看。`,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n potentialAction: {\n \"@type\": \"SearchAction\",\n target: {\n \"@type\": \"EntryPoint\",\n urlTemplate: `${site}/search?q={search_term_string}`,\n },\n \"query-input\": \"required name=search_term_string\",\n },\n },\n ];\n}\n\nfunction webpage(url: string, name: string, description: string, type = \"WebPage\"): JsonLdNode {\n const site = getSiteOrigin();\n return {\n \"@type\": type,\n \"@id\": `${url}#webpage`,\n name,\n description,\n url,\n inLanguage: \"zh-CN\",\n isPartOf: ref(`${site}/#website`),\n publisher: ref(`${site}/#organization`),\n };\n}\n\nfunction breadcrumb(items: Array<[string, string]>): JsonLdNode {\n const last = items.at(-1)?.[1] || \"\";\n return {\n \"@type\": \"BreadcrumbList\",\n \"@id\": `${last}#breadcrumb`,\n itemListElement: items\n .filter(([name, item]) => name && item)\n .map(([name, item], index) => ({\n \"@type\": \"ListItem\",\n position: index + 1,\n name,\n item,\n })),\n };\n}\n\nfunction wrapGraph(nodes: JsonLdNode[], siteName?: string) {\n return {\n \"@context\": \"https://schema.org\",\n \"@graph\": [...organizationAndWebsite(getSiteName(siteName)), ...nodes],\n };\n}\n\nexport type WebPageJsonLdInput = {\n path: string;\n title: string;\n description?: string;\n type?: \"WebPage\" | \"CollectionPage\" | \"AboutPage\" | \"FAQPage\";\n breadcrumbs?: Array<[string, string]>;\n itemListUrls?: string[];\n siteName?: string;\n};\n\nexport function buildWebPageJSONLD(input: WebPageJsonLdInput) {\n const url = absoluteUrl(input.path);\n const page = webpage(url, input.title, input.description || input.title, input.type || \"WebPage\");\n const nodes: JsonLdNode[] = [page];\n\n if (input.breadcrumbs?.length) {\n page.breadcrumb = ref(`${url}#breadcrumb`);\n nodes.push(breadcrumb(input.breadcrumbs.map(([name, path]) => [name, absoluteUrl(path)])));\n }\n\n const listUrls = unique((input.itemListUrls ?? []).map((item) => absoluteUrl(item)).filter(Boolean));\n if (listUrls.length >= 2) {\n page.mainEntity = ref(`${url}#itemlist`);\n nodes.push({\n \"@type\": \"ItemList\",\n \"@id\": `${url}#itemlist`,\n numberOfItems: listUrls.length,\n itemListElement: listUrls.map((item, index) => ({\n \"@type\": \"ListItem\",\n position: index + 1,\n url: item,\n })),\n });\n }\n\n return wrapGraph(nodes, input.siteName);\n}\n\nexport type PlayletDetailJsonLdInput = {\n path: string;\n title?: string;\n description?: string;\n cover?: string | null;\n totalEpisode?: number | null;\n onlineAt?: string | null;\n tagNames?: string[] | null;\n themeNames?: string[] | null;\n anchor?: string | null;\n seoInfo?: SeoSource;\n siteName?: string;\n};\n\nexport function buildPlayletDetailJSONLD(input: PlayletDetailJsonLdInput) {\n const url = absoluteUrl(input.path);\n const seo = normalizeSEO(input.seoInfo);\n const name = first(input.title, seo.title, \"短剧详情\");\n const description = first(seo.description, input.description, `在线观看《${name}》,高清短剧全集免费看。`);\n const cover = input.cover?.trim() || \"\";\n const site = getSiteOrigin();\n\n const series: JsonLdNode = {\n \"@type\": \"TVSeries\",\n \"@id\": `${url}#tvseries`,\n name,\n description,\n url,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n potentialAction: {\n \"@type\": \"WatchAction\",\n target: { \"@type\": \"EntryPoint\", urlTemplate: url },\n },\n };\n if (cover) {\n series.image = [cover];\n series.thumbnailUrl = [cover];\n }\n const episodes = Number(input.totalEpisode) || 0;\n if (episodes > 0) series.numberOfEpisodes = episodes;\n const published = isoDate(input.onlineAt);\n if (published) series.datePublished = published;\n const genre = unique([...(input.tagNames ?? []), ...(input.themeNames ?? []), ...seo.keywords]);\n if (genre.length) series.genre = genre;\n if (input.anchor?.trim()) series.actor = { \"@type\": \"Person\", name: input.anchor.trim() };\n\n const page = webpage(url, name, description);\n page.mainEntity = ref(series[\"@id\"] as string);\n page.breadcrumb = ref(`${url}#breadcrumb`);\n\n return wrapGraph(\n [\n page,\n breadcrumb([\n [\"首页\", absoluteUrl(\"/\")],\n [\"短剧\", absoluteUrl(\"/shorts\")],\n [name, url],\n ]),\n series,\n ],\n input.siteName,\n );\n}\n\nexport type PlayletPlayJsonLdInput = PlayletDetailJsonLdInput & {\n episode: number;\n playPath: string;\n videoUrl?: string | null;\n};\n\nexport function buildPlayletPlayJSONLD(input: PlayletPlayJsonLdInput) {\n const detailPath = absoluteUrl(input.path);\n const url = absoluteUrl(input.playPath);\n const seo = normalizeSEO(input.seoInfo);\n const title = first(input.title, seo.title, \"短剧\");\n const description = first(seo.description, input.description, `正在播放《${title}》第${input.episode}集`);\n const cover = input.cover?.trim() || \"\";\n const published = isoDateTime(input.onlineAt);\n const videoName = `${title} - 第${input.episode}集`;\n const site = getSiteOrigin();\n\n const page = webpage(url, videoName, description);\n page.breadcrumb = ref(`${url}#breadcrumb`);\n const nodes: JsonLdNode[] = [\n page,\n breadcrumb([\n [\"首页\", absoluteUrl(\"/\")],\n [title, detailPath],\n [videoName, url],\n ]),\n ];\n\n const series: JsonLdNode = {\n \"@type\": \"TVSeries\",\n \"@id\": `${detailPath}#tvseries`,\n name: title,\n description: first(seo.description, input.description, description),\n url: detailPath,\n inLanguage: \"zh-CN\",\n publisher: ref(`${site}/#organization`),\n };\n if (cover) {\n series.image = [cover];\n series.thumbnailUrl = [cover];\n }\n nodes.push(series);\n\n if (cover && published) {\n const video: JsonLdNode = {\n \"@type\": \"VideoObject\",\n \"@id\": `${url}#video`,\n name: videoName,\n description,\n url,\n mainEntityOfPage: ref(`${url}#webpage`),\n inLanguage: \"zh-CN\",\n isFamilyFriendly: false,\n isPartOf: ref(`${site}/#website`),\n publisher: ref(`${site}/#organization`),\n thumbnailUrl: [cover],\n image: [cover],\n uploadDate: published,\n potentialAction: {\n \"@type\": \"WatchAction\",\n target: { \"@type\": \"EntryPoint\", urlTemplate: url },\n },\n };\n if (input.videoUrl?.trim()) video.contentUrl = input.videoUrl.trim();\n page.mainEntity = ref(video[\"@id\"] as string);\n nodes.push(video);\n nodes.push({\n \"@type\": \"TVEpisode\",\n \"@id\": `${url}#episode`,\n name: videoName,\n description,\n episodeNumber: input.episode,\n url,\n associatedMedia: ref(video[\"@id\"] as string),\n partOfSeries: ref(series[\"@id\"] as string),\n image: [cover],\n datePublished: published,\n });\n }\n\n return wrapGraph(nodes, input.siteName);\n}\n"],"names":["ref","id","first","values","value","text","trim","unique","items","seen","Set","out","item","key","toLowerCase","has","add","push","isoDateTime","raw","test","Number","isNaN","Date","parse","replace","match","result","isoDate","full","slice","serializeJSONLD","JSON","stringify","organizationAndWebsite","siteName","site","logo","name","url","contentUrl","description","inLanguage","publisher","potentialAction","target","urlTemplate","webpage","type","isPartOf","breadcrumb","last","at","itemListElement","filter","map","index","position","wrapGraph","nodes","buildWebPageJSONLD","input","path","page","title","breadcrumbs","length","listUrls","itemListUrls","Boolean","mainEntity","numberOfItems","buildPlayletDetailJSONLD","seo","seoInfo","cover","series","image","thumbnailUrl","episodes","totalEpisode","numberOfEpisodes","published","onlineAt","datePublished","genre","tagNames","themeNames","keywords","anchor","actor","buildPlayletPlayJSONLD","detailPath","playPath","episode","videoName","video","mainEntityOfPage","isFamilyFriendly","uploadDate","videoUrl","episodeNumber","associatedMedia","partOfSeries"],"mappings":"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"}}, + {"offset": {"line": 2894, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/metadata.ts"],"sourcesContent":["import type { Metadata } from \"next\";\n\nexport const SITE_NAME = \"黄果短剧\";\n\n/** 后台文案里残留的旧站名统一换成 SITE_NAME。 */\nconst LEGACY_SITE_NAMES = /91短剧|黄豆魔改短剧|黄豆短剧/g;\n\nexport function brandText(value?: string | null) {\n return (value || \"\").trim().replace(LEGACY_SITE_NAMES, SITE_NAME);\n}\nexport const OG_DEFAULT_IMAGE = \"/og-default.png\";\n\nconst PLACEHOLDER_SEO = /^(网站标题|网站描述|网站名称|导航标题)$/;\n\nexport type SeoSource = {\n title?: string | null;\n webTitle?: string | null;\n description?: string | null;\n desc?: string | null;\n webDescription?: string | null;\n keywords?: string[] | string | null;\n keyword?: string[] | string | null;\n keyworld?: string[] | string | null;\n webKeyworld?: string[] | string | null;\n} | null | undefined;\n\nexport type NormalizedSEO = {\n title: string;\n description: string;\n keywords: string[];\n};\n\nfunction cleanText(value?: string | null) {\n const text = value?.replace(/\\s+/g, \" \").trim() || \"\";\n if (!text || PLACEHOLDER_SEO.test(text)) return \"\";\n return text;\n}\n\nfunction cleanKeywords(value?: string[] | string | null) {\n const source = Array.isArray(value) ? value : value?.split(/[,,]/) || [];\n const seen = new Set();\n const keywords: string[] = [];\n for (const item of source) {\n const text = cleanText(item);\n const key = text.toLowerCase();\n if (!text || seen.has(key)) continue;\n seen.add(key);\n keywords.push(text);\n }\n return keywords;\n}\n\nexport function isPlaceholderSeoText(value?: string | null) {\n return !cleanText(value);\n}\n\n/** 接口字段名不统一:SeoInfo.keywords,SeoValue.keyworld,配置里是 webKeyworld。 */\nexport function normalizeSEO(source: SeoSource, fallback: Partial = {}): NormalizedSEO {\n return {\n title: cleanText(source?.title) || cleanText(source?.webTitle) || cleanText(fallback.title) || SITE_NAME,\n description:\n cleanText(source?.description) ||\n cleanText(source?.desc) ||\n cleanText(source?.webDescription) ||\n cleanText(fallback.description) ||\n \"\",\n keywords:\n cleanKeywords(source?.keywords).length\n ? cleanKeywords(source?.keywords)\n : cleanKeywords(source?.keyword).length\n ? cleanKeywords(source?.keyword)\n : cleanKeywords(source?.keyworld).length\n ? cleanKeywords(source?.keyworld)\n : cleanKeywords(source?.webKeyworld).length\n ? cleanKeywords(source?.webKeyworld)\n : cleanKeywords(fallback.keywords),\n };\n}\n\nexport function withSiteSuffix(title: string, siteName = SITE_NAME) {\n const name = siteName.trim() || SITE_NAME;\n if (!title || title === name || title.includes(name)) return title || name;\n return `${title} - ${name}`;\n}\n\nexport function paginateSEO(seo: NormalizedSEO, page = 1, siteName = SITE_NAME): NormalizedSEO {\n if (!Number.isFinite(page) || page <= 1) return seo;\n const marker = `第${page}页`;\n return {\n title: seo.title.includes(marker) ? seo.title : `${seo.title} ${marker}`,\n description: seo.description ? `${seo.description} ${marker}` : seo.description,\n keywords: seo.keywords.includes(marker) ? seo.keywords : [...seo.keywords, marker],\n };\n}\n\nexport function resolveShareImage(image?: string | null) {\n const value = image?.trim();\n if (value && /^https?:\\/\\//i.test(value)) return value;\n return OG_DEFAULT_IMAGE;\n}\n\nexport function siteSEOFromConfig(config?: {\n webTitle?: string | null;\n webDescription?: string | null;\n webKeyworld?: string[] | null;\n} | null) {\n return normalizeSEO({\n title: config?.webTitle,\n description: config?.webDescription,\n keywords: config?.webKeyworld,\n });\n}\n\nexport type BuildMetadataOptions = {\n title: string;\n description?: string;\n keywords?: string[];\n canonical: string;\n image?: string | null;\n robots?: Metadata[\"robots\"];\n siteName?: string;\n ogType?: \"website\" | \"video.episode\" | \"video.other\";\n};\n\nexport function buildPageMetadata(options: BuildMetadataOptions): Metadata {\n const siteName = options.siteName?.trim() || SITE_NAME;\n const title = withSiteSuffix(options.title, siteName);\n const description = options.description?.trim() || undefined;\n const keywords = options.keywords?.filter(Boolean);\n const image = resolveShareImage(options.image);\n return {\n title,\n description,\n keywords: keywords?.length ? keywords.join(\",\") : undefined,\n robots: options.robots,\n alternates: { canonical: options.canonical },\n openGraph: {\n type: options.ogType === \"website\" || !options.ogType ? \"website\" : options.ogType,\n locale: \"zh_CN\",\n siteName,\n title,\n description,\n url: options.canonical,\n images: [{ url: image, alt: title }],\n },\n twitter: {\n card: \"summary_large_image\",\n title,\n description,\n images: [image],\n },\n };\n}\n"],"names":["SITE_NAME","LEGACY_SITE_NAMES","brandText","value","trim","replace","OG_DEFAULT_IMAGE","PLACEHOLDER_SEO","cleanText","text","test","cleanKeywords","source","Array","isArray","split","seen","Set","keywords","item","key","toLowerCase","has","add","push","isPlaceholderSeoText","normalizeSEO","fallback","title","webTitle","description","desc","webDescription","length","keyword","keyworld","webKeyworld","withSiteSuffix","siteName","name","includes","paginateSEO","seo","page","Number","isFinite","marker","resolveShareImage","image","siteSEOFromConfig","config","buildPageMetadata","options","undefined","filter","Boolean","join","robots","alternates","canonical","openGraph","type","ogType","locale","url","images","alt","twitter","card"],"mappings":"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"}}, + {"offset": {"line": 3022, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/resolve.ts"],"sourcesContent":["import { cache } from \"react\";\nimport { getAppConfigInfo } from \"@/lib/api/app-config-server\";\nimport type { SeoInfo, SeoValue } from \"@/lib/api/types\";\nimport { buildPageMetadata, normalizeSEO, paginateSEO, SITE_NAME, type BuildMetadataOptions, type NormalizedSEO, type SeoSource } from \"./metadata\";\nimport { absoluteRequestUrl, getSiteName } from \"./site\";\n\nexport function mergeSEO(primary: SeoSource, fallback: Partial = {}): NormalizedSEO {\n const main = normalizeSEO(primary);\n const extra = normalizeSEO(null, fallback);\n return {\n title: main.title && main.title !== SITE_NAME ? main.title : extra.title || main.title,\n description: main.description || extra.description,\n keywords: main.keywords.length ? main.keywords : extra.keywords,\n };\n}\n\nexport function configToSiteSEO(config?: {\n webTitle?: string | null;\n webDescription?: string | null;\n webKeyworld?: string[] | null;\n} | null) {\n return normalizeSEO(\n {\n title: config?.webTitle,\n description: config?.webDescription,\n keywords: config?.webKeyworld,\n },\n { title: \"\" },\n );\n}\n\nexport function configSiteName(name?: string | null) {\n return getSiteName(name);\n}\n\n/** 站点级 TDK:页面 seo 为空时回退 /api/app/config/info。同一请求内只拉一次。 */\nexport const getSiteSEOCached = cache(async () => {\n const { data } = await getAppConfigInfo();\n const config = data?.config;\n return {\n seo: mergeSEO(data?.seoInfo, configToSiteSEO(config)),\n siteName: configSiteName(config?.webSiteName || data?.seoInfo?.webSiteName),\n foreverUrlAddr: config?.foreverUrlAddr?.trim() || \"\",\n };\n});\n\nexport type ResolvePageMetadataOptions = {\n seoInfo?: SeoInfo | SeoValue | null;\n fallbackTitle: string;\n fallbackDescription?: string;\n fallbackKeywords?: string[];\n canonical: string;\n page?: number;\n robots?: BuildMetadataOptions[\"robots\"];\n ogType?: BuildMetadataOptions[\"ogType\"];\n /** 详情页只用本页 seoInfo,不用全站关键词顶上内容标题。 */\n siteFallback?: boolean;\n};\n\nexport async function resolvePageMetadata(options: ResolvePageMetadataOptions) {\n const site = await getSiteSEOCached();\n const pageSEO = options.siteFallback === false\n ? normalizeSEO(options.seoInfo, {\n title: options.fallbackTitle,\n description: options.fallbackDescription,\n keywords: options.fallbackKeywords,\n })\n : mergeSEO(options.seoInfo, mergeSEO(\n {\n title: options.fallbackTitle,\n description: options.fallbackDescription,\n keywords: options.fallbackKeywords,\n },\n site.seo,\n ));\n const seo = paginateSEO(pageSEO, options.page, site.siteName);\n return buildPageMetadata({\n title: seo.title,\n description: seo.description,\n keywords: seo.keywords,\n canonical: await absoluteRequestUrl(options.canonical),\n robots: options.robots,\n siteName: site.siteName,\n ogType: options.ogType,\n });\n}\n\n/** 短剧详情 / 播放:标题和描述以本页为准,站点名仍取配置。 */\nexport function resolveContentMetadata(options: Omit) {\n return resolvePageMetadata({ ...options, siteFallback: false });\n}\n"],"names":["mergeSEO","primary","fallback","main","extra","title","description","keywords","length","configToSiteSEO","config","webTitle","webDescription","webKeyworld","configSiteName","name","getSiteSEOCached","data","seo","seoInfo","siteName","webSiteName","foreverUrlAddr","trim","resolvePageMetadata","options","site","pageSEO","siteFallback","fallbackTitle","fallbackDescription","fallbackKeywords","page","canonical","robots","ogType","resolveContentMetadata"],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AAEA;AACA;;;;;AAEO,SAASA,SAASC,OAAkB,EAAEC,WAAmC,CAAC,CAAC;IAChF,MAAMC,OAAO,IAAA,6IAAY,EAACF;IAC1B,MAAMG,QAAQ,IAAA,6IAAY,EAAC,MAAMF;IACjC,OAAO;QACLG,OAAOF,KAAKE,KAAK,IAAIF,KAAKE,KAAK,KAAK,0IAAS,GAAGF,KAAKE,KAAK,GAAGD,MAAMC,KAAK,IAAIF,KAAKE,KAAK;QACtFC,aAAaH,KAAKG,WAAW,IAAIF,MAAME,WAAW;QAClDC,UAAUJ,KAAKI,QAAQ,CAACC,MAAM,GAAGL,KAAKI,QAAQ,GAAGH,MAAMG,QAAQ;IACjE;AACF;AAEO,SAASE,gBAAgBC,MAIxB;IACN,OAAO,IAAA,6IAAY,EACjB;QACEL,OAAOK,QAAQC;QACfL,aAAaI,QAAQE;QACrBL,UAAUG,QAAQG;IACpB,GACA;QAAER,OAAO;IAAG;AAEhB;AAEO,SAASS,eAAeC,IAAoB;IACjD,OAAO,IAAA,wIAAW,EAACA;AACrB;AAGO,MAAMC,mBAAmB,IAAA,mZAAK,EAAC;IACpC,MAAM,EAAEC,IAAI,EAAE,GAAG,MAAM,IAAA,gKAAgB;IACvC,MAAMP,SAASO,MAAMP;IACrB,OAAO;QACLQ,KAAKlB,SAASiB,MAAME,SAASV,gBAAgBC;QAC7CU,UAAUN,eAAeJ,QAAQW,eAAeJ,MAAME,SAASE;QAC/DC,gBAAgBZ,QAAQY,gBAAgBC,UAAU;IACpD;AACF;AAeO,eAAeC,oBAAoBC,OAAmC;IAC3E,MAAMC,OAAO,MAAMV;IACnB,MAAMW,UAAUF,QAAQG,YAAY,KAAK,QACrC,IAAA,6IAAY,EAACH,QAAQN,OAAO,EAAE;QAC5Bd,OAAOoB,QAAQI,aAAa;QAC5BvB,aAAamB,QAAQK,mBAAmB;QACxCvB,UAAUkB,QAAQM,gBAAgB;IACpC,KACA/B,SAASyB,QAAQN,OAAO,EAAEnB,SACxB;QACEK,OAAOoB,QAAQI,aAAa;QAC5BvB,aAAamB,QAAQK,mBAAmB;QACxCvB,UAAUkB,QAAQM,gBAAgB;IACpC,GACAL,KAAKR,GAAG;IAEd,MAAMA,MAAM,IAAA,4IAAW,EAACS,SAASF,QAAQO,IAAI,EAAEN,KAAKN,QAAQ;IAC5D,OAAO,IAAA,kJAAiB,EAAC;QACvBf,OAAOa,IAAIb,KAAK;QAChBC,aAAaY,IAAIZ,WAAW;QAC5BC,UAAUW,IAAIX,QAAQ;QACtB0B,WAAW,MAAM,IAAA,+IAAkB,EAACR,QAAQQ,SAAS;QACrDC,QAAQT,QAAQS,MAAM;QACtBd,UAAUM,KAAKN,QAAQ;QACvBe,QAAQV,QAAQU,MAAM;IACxB;AACF;AAGO,SAASC,uBAAuBX,OAAyD;IAC9F,OAAOD,oBAAoB;QAAE,GAAGC,OAAO;QAAEG,cAAc;IAAM;AAC/D"}}, + {"offset": {"line": 3106, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/seo/site.ts"],"sourcesContent":["import { headers } from \"next/headers\";\nimport { SITE_NAME } from \"./metadata\";\n\n/** 站点对外 origin,用于 canonical、OG、sitemap。 */\nexport function getSiteOrigin() {\n const configured = process.env.NEXT_PUBLIC_SITE_URL?.trim().replace(/\\/$/, \"\");\n if (configured) return configured;\n return \"https://hdmgdj.com\";\n}\n\nexport function getSiteName(name?: string | null) {\n const value = name?.trim();\n return value || SITE_NAME;\n}\n\n/**\n * 当前请求的 origin。优先反代头,其次 Host。\n * `next build` 预渲染没有请求,回退 NEXT_PUBLIC_SITE_URL。\n */\nexport async function getRequestOrigin() {\n if (process.env.NEXT_PHASE === \"phase-production-build\") return getSiteOrigin();\n try {\n const headerList = await headers();\n const host = headerList.get(\"x-forwarded-host\") || headerList.get(\"host\");\n if (!host) return getSiteOrigin();\n const forwarded = headerList.get(\"x-forwarded-proto\");\n const proto = forwarded || (host.startsWith(\"localhost\") || host.startsWith(\"127.0.0.1\") ? \"http\" : \"https\");\n return `${proto}://${host.split(\",\")[0].trim()}`;\n } catch {\n return getSiteOrigin();\n }\n}\n\nexport function absoluteUrl(path = \"/\", origin = getSiteOrigin()) {\n if (/^https?:\\/\\//i.test(path)) return path;\n const base = origin.replace(/\\/$/, \"\");\n if (!path || path === \"/\") return `${base}/`;\n return `${base}${path.startsWith(\"/\") ? path : `/${path}`}`;\n}\n\nexport async function absoluteRequestUrl(path = \"/\") {\n return absoluteUrl(path, await getRequestOrigin());\n}\n"],"names":["getSiteOrigin","configured","trim","replace","getSiteName","name","value","getRequestOrigin","process","env","NEXT_PHASE","headerList","host","get","forwarded","proto","startsWith","split","absoluteUrl","path","origin","test","base","absoluteRequestUrl"],"mappings":";;;;;;;;;;;;AAAA;AACA;;;AAGO,SAASA;IACd,MAAMC,yEAA+CC,OAAOC,QAAQ,OAAO;IAC3E,IAAIF,YAAY,OAAOA;IACvB,OAAO;AACT;AAEO,SAASG,YAAYC,IAAoB;IAC9C,MAAMC,QAAQD,MAAMH;IACpB,OAAOI,SAAS,0IAAS;AAC3B;AAMO,eAAeC;IACpB,IAAIC,QAAQC,GAAG,CAACC,UAAU,KAAK,0BAA0B,OAAOV;IAChE,IAAI;QACF,MAAMW,aAAa,MAAM,IAAA,+UAAO;QAChC,MAAMC,OAAOD,WAAWE,GAAG,CAAC,uBAAuBF,WAAWE,GAAG,CAAC;QAClE,IAAI,CAACD,MAAM,OAAOZ;QAClB,MAAMc,YAAYH,WAAWE,GAAG,CAAC;QACjC,MAAME,QAAQD,aAAa,CAACF,KAAKI,UAAU,CAAC,gBAAgBJ,KAAKI,UAAU,CAAC,eAAe,SAAS,OAAO;QAC3G,OAAO,GAAGD,MAAM,GAAG,EAAEH,KAAKK,KAAK,CAAC,IAAI,CAAC,EAAE,CAACf,IAAI,IAAI;IAClD,EAAE,OAAM;QACN,OAAOF;IACT;AACF;AAEO,SAASkB,YAAYC,OAAO,GAAG,EAAEC,SAASpB,eAAe;IAC9D,IAAI,gBAAgBqB,IAAI,CAACF,OAAO,OAAOA;IACvC,MAAMG,OAAOF,OAAOjB,OAAO,CAAC,OAAO;IACnC,IAAI,CAACgB,QAAQA,SAAS,KAAK,OAAO,GAAGG,KAAK,CAAC,CAAC;IAC5C,OAAO,GAAGA,OAAOH,KAAKH,UAAU,CAAC,OAAOG,OAAO,CAAC,CAAC,EAAEA,MAAM,EAAE;AAC7D;AAEO,eAAeI,mBAAmBJ,OAAO,GAAG;IACjD,OAAOD,YAAYC,MAAM,MAAMZ;AACjC"}}, + {"offset": {"line": 3157, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/translation-nav.ts"],"sourcesContent":["import type { TranslationCategory } from \"@/lib/api/types\";\n\n/** 空 urlValue 表示首页。外链原样保留。 */\nexport function translationHref(urlValue: string | undefined) {\n const raw = (urlValue || \"\").trim();\n if (!raw || raw === \"/\") return \"/\";\n return raw;\n}\n\nexport function isExternalHref(href: string) {\n return /^https?:\\/\\//i.test(href);\n}\n\n/** 顶栏当前项。详情、播放、更多列表和搜索页不点亮频道。 */\nexport function isTranslationCurrent(pathname: string, urlValue: string | undefined) {\n const href = translationHref(urlValue);\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return false;\n }\n if (href === \"/\") return pathname === \"/\";\n return pathname === href || pathname.startsWith(`${href}/`);\n}\n\n/** 已下线的福利应用页,后台导航配置了也不展示。 */\nconst REMOVED_NAV_HREF = /^\\/apps(?:[/?#]|$)/;\n\nexport function usableTranslationCategories(list: TranslationCategory[] | undefined) {\n return (list || [])\n .filter((item) => item?.name?.trim() && !REMOVED_NAV_HREF.test(translationHref(item.urlValue)))\n .map((item) =>\n item.translationList?.length\n ? { ...item, translationList: item.translationList.filter((child) => !REMOVED_NAV_HREF.test(translationHref(child.urlValue))) }\n : item,\n );\n}\n"],"names":["translationHref","urlValue","raw","trim","isExternalHref","href","test","isTranslationCurrent","pathname","startsWith","REMOVED_NAV_HREF","usableTranslationCategories","list","filter","item","name","map","translationList","length","child"],"mappings":";;;;;;;;;;AAGO,SAASA,gBAAgBC,QAA4B;IAC1D,MAAMC,MAAM,CAACD,YAAY,EAAE,EAAEE,IAAI;IACjC,IAAI,CAACD,OAAOA,QAAQ,KAAK,OAAO;IAChC,OAAOA;AACT;AAEO,SAASE,eAAeC,IAAY;IACzC,OAAO,gBAAgBC,IAAI,CAACD;AAC9B;AAGO,SAASE,qBAAqBC,QAAgB,EAAEP,QAA4B;IACjF,MAAMI,OAAOL,gBAAgBC;IAC7B,IACEO,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,kBACpBD,SAASC,UAAU,CAAC,aACpBD,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,YACpBD,SAASC,UAAU,CAAC,YACpB;QACA,OAAO;IACT;IACA,IAAIJ,SAAS,KAAK,OAAOG,aAAa;IACtC,OAAOA,aAAaH,QAAQG,SAASC,UAAU,CAAC,GAAGJ,KAAK,CAAC,CAAC;AAC5D;AAEA,2BAA2B,GAC3B,MAAMK,mBAAmB;AAElB,SAASC,4BAA4BC,IAAuC;IACjF,OAAO,CAACA,QAAQ,EAAE,EACfC,MAAM,CAAC,CAACC,OAASA,MAAMC,MAAMZ,UAAU,CAACO,iBAAiBJ,IAAI,CAACN,gBAAgBc,KAAKb,QAAQ,IAC3Fe,GAAG,CAAC,CAACF,OACJA,KAAKG,eAAe,EAAEC,SAClB;YAAE,GAAGJ,IAAI;YAAEG,iBAAiBH,KAAKG,eAAe,CAACJ,MAAM,CAAC,CAACM,QAAU,CAACT,iBAAiBJ,IAAI,CAACN,gBAAgBmB,MAAMlB,QAAQ;QAAI,IAC5Ha;AAEV"}}, + {"offset": {"line": 3198, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/data/catalog.json.[json].cjs/turbopack:/src/data/catalog.json"],"sourcesContent":["{\"cardStats\":[{\"badge\":\"爆剧\",\"likes\":23,\"tags\":[\"年代\",\"读心\",\"先婚后爱\"],\"favorites\":12.6},{\"badge\":\"新剧\",\"likes\":16,\"tags\":[\"都市\",\"女性成长\",\"逆袭\"],\"favorites\":8.9},{\"badge\":\"新剧\",\"likes\":12,\"tags\":[\"都市\",\"职场\",\"逆袭\"],\"favorites\":6.8},{\"badge\":\"爆剧\",\"likes\":28,\"tags\":[\"仙侠\",\"团宠\",\"漫剧\"],\"favorites\":15.4},{\"badge\":\"原创\",\"likes\":9,\"tags\":[\"都市\",\"甜宠\",\"双向治愈\"],\"favorites\":5.2},{\"badge\":\"原创\",\"likes\":7,\"tags\":[\"玄幻\",\"异能\",\"逆袭\"],\"favorites\":4.1}],\"coverHeights\":[914,914,915,914,914,914],\"covers\":[\"/images/covers/0.jpg\",\"/images/covers/1.jpg\",\"/images/covers/2.jpg\",\"/images/covers/3.jpg\",\"/images/covers/4.jpg\",\"/images/covers/5.jpg\"],\"heroes\":[{\"title\":\"一个部门的诞生\",\"wide\":\"/images/hero/0-wide.webp\",\"portrait\":\"/images/hero/0-portrait.jpg\"},{\"title\":\"特立独行\",\"wide\":\"/images/hero/1-wide.webp\",\"portrait\":\"/images/hero/1-portrait.jpg\"},{\"title\":\"给阿嬷的情书\",\"wide\":\"/images/hero/2-wide.webp\",\"portrait\":\"/images/hero/2-portrait.jpg\"},{\"title\":\"法医秦明之龙番往事\",\"wide\":\"/images/hero/3-wide.webp\",\"portrait\":\"/images/hero/3-portrait.jpg\"},{\"title\":\"一瓯春\",\"wide\":\"/images/hero/4-wide.webp\",\"portrait\":\"/images/hero/4-portrait.jpg\"},{\"title\":\"兰香如故\",\"wide\":\"/images/hero/5-wide.webp\",\"portrait\":\"/images/hero/5-portrait.jpg\"}],\"topics\":{\"dream\":\"/images/topics/dream.webp\",\"city\":\"/images/topics/city.webp\",\"love\":\"/images/topics/love.webp\",\"twists\":\"/images/topics/twists.webp\",\"growth\":\"/images/topics/growth.webp\",\"worth\":\"/images/topics/worth.webp\",\"hot\":\"/images/topics/hot.webp\",\"free\":\"/images/topics/free.webp\"},\"promoApps\":[{\"title\":\"星愿\",\"src\":\"/icons/apps/promo/0.png\"},{\"title\":\"Conso\",\"src\":\"/icons/apps/promo/1.png\"},{\"title\":\"Weela\",\"src\":\"/icons/apps/promo/2.png\"},{\"title\":\"JisQ\",\"src\":\"/icons/apps/promo/3.png\"},{\"title\":\"Soyo\",\"src\":\"/icons/apps/promo/4.png\"},{\"title\":\"Hi\",\"src\":\"/icons/apps/promo/5.png\"},{\"title\":\"Wakoo\",\"src\":\"/icons/apps/promo/6.png\"},{\"title\":\"Lumeet\",\"src\":\"/icons/apps/promo/7.png\"},{\"title\":\"Niki\",\"src\":\"/icons/apps/promo/8.png\"},{\"title\":\"星环\",\"src\":\"/icons/apps/promo/9.png\"},{\"title\":\"Meoo\",\"src\":\"/icons/apps/promo/10.png\"},{\"title\":\"Muaa\",\"src\":\"/icons/apps/promo/11.png\"},{\"title\":\"Xiu\",\"src\":\"/icons/apps/promo/12.png\"},{\"title\":\"Luna\",\"src\":\"/icons/apps/promo/13.png\"},{\"title\":\"Reisly\",\"src\":\"/icons/apps/promo/14.png\"},{\"title\":\"Live\",\"src\":\"/icons/apps/promo/15.png\"}],\"benefitApps\":[{\"title\":\"Siya\",\"src\":\"/icons/apps/benefit/0.png\"},{\"title\":\"Hi聊\",\"src\":\"/icons/apps/benefit/1.png\"},{\"title\":\"Vaga\",\"src\":\"/icons/apps/benefit/2.png\"},{\"title\":\"柠檬\",\"src\":\"/icons/apps/benefit/3.png\"},{\"title\":\"YES\",\"src\":\"/icons/apps/benefit/4.png\"},{\"title\":\"微笑\",\"src\":\"/icons/apps/benefit/5.png\"},{\"title\":\"星语\",\"src\":\"/icons/apps/benefit/6.png\"},{\"title\":\"Anyhoo\",\"src\":\"/icons/apps/benefit/7.png\"},{\"title\":\"蜜果\",\"src\":\"/icons/apps/benefit/8.png\"},{\"title\":\"蜜桃\",\"src\":\"/icons/apps/benefit/9.png\"},{\"title\":\"Live轻语\",\"src\":\"/icons/apps/benefit/10.png\"},{\"title\":\"Live霓虹\",\"src\":\"/icons/apps/benefit/11.png\"},{\"title\":\"Wanna\",\"src\":\"/icons/apps/benefit/12.png\"}],\"brand\":{\"logo\":\"/logo.png\",\"wordmark\":\"/logo.png\",\"coin\":\"/coin.png\",\"downloadLogo\":\"/logo.png\",\"avatar\":\"/images/avatar.png\",\"qr\":\"/images/qr.png\",\"footerLogo\":\"/logo.png\",\"favicon\":\"/favicon.png\",\"search\":\"/icons/search.svg\",\"qq\":\"/icons/qq.png\",\"seriesHeat\":\"/icons/series-heat.svg\"},\"navIcons\":[\"M778.85 226.8H639.62v58.49l65.87 54.05-17.61 5.61-183.52-107.69-318.02 186.62V815H404.6V601.86h199.53V815H822.4V423.88l-43.55-25.55V226.8z\",\"M765 558l-22.93-14.02L725 366h1.44l-1.17-12.3c-24.41-22.2-39.3-35.74-63.71-57.95H265.44c-24.41 22.2-39.3 35.74-63.71 57.95l-37.72 397c25.39 27.92 38.32 42.14 63.71 70.05h471.55c25.39-27.92 38.32-42.14 63.71-70.05l-9.03-95.04 132.04 55.6v-306l-116.13 48.9-4.87 103.85z\",\"M431.19 203.28L151.64 435.26l469.81 231.99 121.03-100.43-3.54 32.54-110.35 112.26-401.95-184.49-75 62.25 469.81 231.98L901 589.38l-116.43-57.5L901 435.26 431.19 203.28z\",\"M473.6 307.44L373.88 234H190.45c-13.24 14.55-19.99 21.97-33.24 36.52l44.5 470.8 52.39 47.67h536.5l52.31-46.92 28.26-259.47-523.33-12.55 20.98-25.18 508.58-19.49 8.82-80.95c-13.27-14.79-19.92-22.21-33.19-37H473.58z\",\"M710.83 236.25c-109.55-109.55-287.18-109.55-396.73 0-109.55 109.55-109.55 287.18 0 396.73 41.51 41.51 92.8 67.28 146.46 77.33l-14.22 28.06c-42.51 2.32-87.82-4.48-131.06-38.02l-18.72 181.57 215.04-83.69 215.04 83.69-24.78-240.38c3.03-2.78 6.03-5.62 8.97-8.56 109.55-109.55 109.55-287.18 0-396.73z\",\"M534.27 168v0.36h-46.45l-13.39 461.39h-0.19l-0.99 40.53-1.78 61.34h0.28l-0.17 6.93-24.29-15.19-6.63-91.65c-146.16 11.32-255.42 56.61-255.42 110.77 0 62.68 146.35 113.5 326.88 113.5S839 805.16 839 742.48c0-58.26-126.42-106.25-289.19-112.74l-4.84-166.76h346.86l-80.71-147.5 80.71-147.5H534.27z\",\"M178.74 474.5h46.77v0.28l33.03-0.28h305.41l-25.85 16.77-312.59 22.53V812h570.47V474.5h46.76v-102h-664v102zM662 243l-119 61-204.78-75.63L287 340l195.97 23 261.77-25L662 243z\"],\"collections\":{\"dream\":{\"title\":\"江湖好梦\",\"ids\":[3,5]},\"city\":{\"title\":\"都市新生\",\"ids\":[1,4]},\"twists\":{\"title\":\"高能反转\",\"ids\":[0,1,2,5]},\"love\":{\"title\":\"怦然心动\",\"ids\":[4,1,0,3,2,5]},\"growth\":{\"title\":\"重新爱自己\",\"ids\":[1,4,2,5,0,3]}},\"roadIcons\":{\"rocket\":\"/icons/road/rocket.svg\",\"link\":\"/icons/road/link.svg\",\"shield\":\"/icons/road/shield.svg\",\"troubleshoot\":\"/icons/road/troubleshoot.svg\",\"devices\":\"/icons/road/devices.svg\",\"iphone\":\"/icons/road/iphone.svg\",\"android\":\"/icons/road/android.svg\",\"desktop\":\"/icons/road/desktop.svg\",\"email\":\"/icons/road/email.svg\",\"tg\":\"/icons/road/tg.svg\",\"biz\":\"/icons/road/biz.svg\",\"twitter\":\"/icons/road/twitter.svg\"},\"returnIcons\":[\"/icons/return/0.svg\",\"/icons/return/1.svg\",\"/icons/return/2.svg\",\"/icons/return/3.svg\",\"/icons/return/4.svg\"]}"],"names":[],"mappings":""}}] } \ No newline at end of file diff --git a/.next-dev/dev/server/middleware-build-manifest.js b/.next-dev/dev/server/middleware-build-manifest.js index a9f8aaf..126eeff 100644 --- a/.next-dev/dev/server/middleware-build-manifest.js +++ b/.next-dev/dev/server/middleware-build-manifest.js @@ -1,34 +1,6 @@ globalThis.__BUILD_MANIFEST = { "pages": { - "/_app": [ - "static/chunks/1cpi_next_dist_compiled_12ffzourts9s-._.js", - "static/chunks/1cpi_next_dist_shared_lib_1xry7g76avoay._.js", - "static/chunks/1cpi_next_dist_client_0heox_8u6hzq_._.js", - "static/chunks/1cpi_next_dist_11ks8blj8_523._.js", - "static/chunks/1cpi_next_app_1pj3rb0tuydhl.js", - "static/chunks/[next]_entry_page-loader_ts_0btqvd_85dcyl._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0egl44aedd7_2._.js", - "static/chunks/[root-of-the-server]__0l4r13lr2xywy._.js", - "static/chunks/pages__app_0du2_q-cjzmdk._.js", - "static/chunks/turbopack-pages__app_1-gu3yg9v7aao._.js" - ], - "/_error": [ - "static/chunks/1cpi_next_dist_shared_lib_0xs0-c6oakuxf._.js", - "static/chunks/1cpi_next_dist_client_1gnx2v75vaujc._.js", - "static/chunks/1cpi_next_dist_compiled_14ha2_lqkzgf0._.js", - "static/chunks/1cpi_next_dist_1ke6kfpq8w7bf._.js", - "static/chunks/[next]_entry_page-loader_ts_1yxf6xa3b75hv._.js", - "static/chunks/1jsy_react-dom_cjs_react-dom-client_development_1wmu5trhy98lb.js", - "static/chunks/1jsy_react-dom_cjs_react-dom_development_01nn6pn27d5d9.js", - "static/chunks/1jsy_react-dom_1cftuo7r8p2l0._.js", - "static/chunks/node_modules__pnpm_0apodh3colre9._.js", - "static/chunks/[root-of-the-server]__02sxxpho_3e87._.js", - "static/chunks/pages__error_0syo-i05b6bs9._.js", - "static/chunks/turbopack-pages__error_0uvy9rwo-qqd2._.js" - ] + "/_app": [] }, "devFiles": [], "polyfillFiles": [ @@ -69,51 +41,6 @@ globalThis.__BUILD_MANIFEST = { "static/chunks/turbopack-_1ajtdyja1k2v5._.js", "static/chunks/_219uq1sj0q91c._.js" ], - "/topics/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_02xtyms8_yhpv._.js" - ], - "/home-road/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0sf-lmfgdqib-._.js" - ], - "/info/[slug]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0t69-r8qc6d_3._.js" - ], "/_not-found/page": [ "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", @@ -129,7 +56,7 @@ globalThis.__BUILD_MANIFEST = { "static/chunks/turbopack-_1ajtdyja1k2v5._.js", "static/chunks/_18x7jxupx5rou._.js" ], - "/search/page": [ + "/nav/page": [ "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", @@ -142,67 +69,7 @@ globalThis.__BUILD_MANIFEST = { "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", "static/chunks/_1anvha4rlo79g._.js", "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_20654wqoxjppx._.js" - ], - "/short-drama/[slug]/play/[episode]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0rc01luv623c1._.js" - ], - "/short-drama/[slug]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_1ijk6p-ee6-ze._.js" - ], - "/shorts/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0x_v3k_l8k1jn._.js" - ], - "/rank/[[...path]]/page": [ - "static/chunks/[turbopack]_browser_dev_hmr-client_hmr-client_ts_1tv1bvk2dj7ph._.js", - "static/chunks/1cpi_next_dist_compiled_next-devtools_index_1hw-_gzpw_fi2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom-client_development_09u_1j28hjxei.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_cjs_react-dom_development_0qaz9shbv19o2.js", - "static/chunks/1cpi_next_dist_compiled_react-dom_1f656li1l6ci5._.js", - "static/chunks/1cpi_next_dist_compiled_react-server-dom-turbopack_208pustgnhis-._.js", - "static/chunks/1cpi_next_dist_compiled_1w15bhds8i16h._.js", - "static/chunks/1cpi_next_dist_client_16ymzkd_xoq12._.js", - "static/chunks/1cpi_next_dist_0olwpokihy_g3._.js", - "static/chunks/0zix_@swc_helpers_cjs_1fie0-s7m60gu._.js", - "static/chunks/_1anvha4rlo79g._.js", - "static/chunks/turbopack-_1ajtdyja1k2v5._.js", - "static/chunks/_0qukakka4cbt4._.js" + "static/chunks/_0w2jlohhfhuy8._.js" ] }, "pagesChunkGroupBootstrapParams": {}, diff --git a/.next-dev/dev/server/pages-manifest.json b/.next-dev/dev/server/pages-manifest.json index 6ac637a..9e26dfe 100644 --- a/.next-dev/dev/server/pages-manifest.json +++ b/.next-dev/dev/server/pages-manifest.json @@ -1,5 +1 @@ -{ - "/_app": "pages/_app.js", - "/_document": "pages/_document.js", - "/_error": "pages/_error.js" -} \ No newline at end of file +{} \ No newline at end of file diff --git a/.next-dev/dev/server/preview-props.json b/.next-dev/dev/server/preview-props.json index 442ac6d..8b804d8 100644 --- a/.next-dev/dev/server/preview-props.json +++ b/.next-dev/dev/server/preview-props.json @@ -1,5 +1,5 @@ { - "previewModeId": "30090c43deeba91c436fc5ed000adb0b", - "previewModeSigningKey": "8d02dc53baaac85d5a2959f2523c5e8b6ba50057c063b428d44fca24955cfcc4", - "previewModeEncryptionKey": "836c86b67cdc8de71e4c567f7f1754243f1c26e2937bd7509055669d5bf8d001" + "previewModeId": "12fbe0e07247508245722a1e7567ba40", + "previewModeSigningKey": "9ac26cfa2e3907d855e0ca60c7d10c05b24a759439e26c13c0dcd0b8ee99cc12", + "previewModeEncryptionKey": "67deec06835307e4c35f71f714aa0b0357e83f1c879376ccab16949f37d9df18" } \ No newline at end of file diff --git a/.next-dev/dev/static/chunks/_0w2jlohhfhuy8._.js b/.next-dev/dev/static/chunks/_0w2jlohhfhuy8._.js new file mode 100644 index 0000000..e217437 --- /dev/null +++ b/.next-dev/dev/static/chunks/_0w2jlohhfhuy8._.js @@ -0,0 +1,5 @@ +(globalThis["TURBOPACK_CHUNK_LISTS"] || (globalThis["TURBOPACK_CHUNK_LISTS"] = [])).push({ + script: typeof document === "object" ? document.currentScript : undefined, + chunks: ["static/chunks/src_05zrynp5ca6j-._.js","static/chunks/1cpi_next_0bj3ntwo4jqkq._.js","static/chunks/18nd_tailwind-variants_dist_1n2pr2lt30jew._.js","static/chunks/0i2c_react-aria_dist_private_09gosis2h5cil._.js","static/chunks/14sg_@heroui_react_dist_12ffc8h67kl1w._.js","static/chunks/1-s6_react-aria-components_dist_private_1pxbg48umv9o7._.js","static/chunks/04a7_tailwindcss_dist_lib_1g629h2ghraqo.js","static/chunks/04a7_tailwindcss_dist_lib_mjs_0b0_5l7hdq7eb._.js","static/chunks/04a7_tailwindcss_dist_0futf_k9rucgf._.js","static/chunks/node_modules__pnpm_1nolhze9spw29._.js","static/chunks/_0potb313406qi._.css","static/chunks/src_components_common_EmptyState_tsx_06zmq8sncx29c._.js"], + source: "entry" +}); diff --git a/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js b/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js index 7f4b5e3..7a7056a 100644 --- a/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js +++ b/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js @@ -1057,7 +1057,7 @@ function StartupGridDialog(param) { href: href, target: "_blank", rel: "noopener noreferrer", - "aria-label": `${title},浏览福利应用`, + "aria-label": `${title},查看推广`, children: inner }, item.id || `${index}-${item.images}`, false, { fileName: "[project]/src/components/common/StartupAdDialog.tsx", @@ -4290,12 +4290,6 @@ const NAV_ITEMS = [ label: "回家的路", page: "home-road", exact: false - }, - { - href: "/apps", - label: "福利应用", - page: "apps", - exact: false } ]; function activeNavKey(pathname) { @@ -4358,11 +4352,6 @@ const CHANNELS = { title: "回家的路", kicker: "STAY CONNECTED", subtitle: "收藏访问入口,下次回来更方便。" - }, - apps: { - title: "福利应用", - kicker: "APPLICATIONS", - subtitle: "应用与网站推荐,集中查看。" } }; const SORTS = [ @@ -5183,10 +5172,17 @@ function isTranslationCurrent(pathname, urlValue) { if (href === "/") return pathname === "/"; return pathname === href || pathname.startsWith(`${href}/`); } +/** 已下线的福利应用页,后台导航配置了也不展示。 */ const REMOVED_NAV_HREF = /^\/apps(?:[/?#]|$)/; function usableTranslationCategories(list) { return (list || []).filter((item)=>{ var _item_name; - return item === null || item === void 0 ? void 0 : (_item_name = item.name) === null || _item_name === void 0 ? void 0 : _item_name.trim(); + return (item === null || item === void 0 ? void 0 : (_item_name = item.name) === null || _item_name === void 0 ? void 0 : _item_name.trim()) && !REMOVED_NAV_HREF.test(translationHref(item.urlValue)); + }).map((item)=>{ + var _item_translationList; + return ((_item_translationList = item.translationList) === null || _item_translationList === void 0 ? void 0 : _item_translationList.length) ? { + ...item, + translationList: item.translationList.filter((child)=>!REMOVED_NAV_HREF.test(translationHref(child.urlValue))) + } : item; }); } if (typeof globalThis.$RefreshHelpers$ === 'object' && globalThis.$RefreshHelpers !== null) { diff --git a/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js.map b/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js.map index d962b29..b3a9665 100644 --- a/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js.map +++ b/.next-dev/dev/static/chunks/src_05zrynp5ca6j-._.js.map @@ -7,7 +7,7 @@ {"offset": {"line": 103, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/MobileNavigationDrawer.tsx"],"sourcesContent":["\"use client\";\n\nimport Link from \"next/link\";\nimport { usePathname } from \"next/navigation\";\nimport { Fragment, useEffect, useRef, useState } from \"react\";\nimport { SocialLinks, type SocialLinkItem } from \"@/components/common/SocialLinks\";\nimport { DecryptedImage } from \"@/components/common/decrypted-image\";\nimport type { FooterPolicyLink } from \"@/lib/api/footer\";\nimport { NAV_ITEMS } from \"@/lib/catalog\";\nimport type { TranslationCategory } from \"@/lib/api/types\";\nimport { isExternalHref, isTranslationCurrent, translationHref } from \"@/lib/translation-nav\";\n\n/** 移动端导航抽屉:`#mobile-navigation-drawer` */\nfunction localNavIcon(urlValue: string | undefined, icons: string[]) {\n const href = translationHref(urlValue);\n const index = NAV_ITEMS.findIndex((item) => item.href === href);\n return index >= 0 ? icons[index] || \"\" : \"\";\n}\n\nexport function MobileNavigationDrawer({\n icons,\n logo,\n wordmark,\n categoryList,\n policyLinks = [],\n socialLinks = [],\n siteName = \"\",\n slogan = \"\",\n year,\n}: {\n icons: string[];\n logo: string;\n wordmark: string;\n categoryList: TranslationCategory[];\n policyLinks?: FooterPolicyLink[];\n socialLinks?: SocialLinkItem[];\n siteName?: string;\n slogan?: string;\n year?: number;\n}) {\n const dialogRef = useRef(null);\n const pathname = usePathname();\n const [currentPath, setCurrentPath] = useState(\"\");\n const [open, setOpen] = useState(false);\n const [ready, setReady] = useState(false);\n\n useEffect(() => {\n setReady(true);\n setCurrentPath(pathname);\n dialogRef.current?.close();\n }, [pathname]);\n\n useEffect(() => {\n document.body.classList.toggle(\"mobile-drawer-open\", open);\n return () => document.body.classList.remove(\"mobile-drawer-open\");\n }, [open]);\n\n return (\n
\n dialogRef.current?.showModal()}\n >\n \n \n \n \n setOpen(event.currentTarget.open)}\n >\n \n \n \"黄果短剧\"\n \n \n
\n \n {siteName\n \n {slogan ?

{slogan}

: null}\n {policyLinks.length ? (\n
\n {policyLinks.map((item) =>\n item.external ? (\n \n {item.name}\n \n ) : (\n \n {item.name}\n \n ),\n )}\n
\n ) : null}\n \n © {year || \"\"} {siteName}\n
\n All rights reserved.\n
\n
\n {socialLinks.length ? (\n
\n \n
\n ) : null}\n \n
\n );\n}\n"],"names":["localNavIcon","urlValue","icons","href","index","findIndex","item","MobileNavigationDrawer","param","logo","wordmark","categoryList","policyLinks","socialLinks","siteName","slogan","year","dialogRef","pathname","currentPath","setCurrentPath","open","setOpen","ready","setReady","_dialogRef_current","current","close","document","body","classList","toggle","remove","className","type","onClick","showModal","viewBox","d","ref","id","onToggle","event","currentTarget","src","alt","width","height","map","Boolean","iconPath","icon","focusable","children","categoryType","translationList","link","target","rel","name","undefined","length","child","childHref","childCurrent","external","startsWith","links"],"mappings":"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"}}, {"offset": {"line": 500, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/PageTools.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useState } from \"react\";\nimport { AppDownloadLink, DownloadQr } from \"@/components/common/app-download\";\nimport { getCatalog } from \"@/lib/catalog\";\n\nconst SHOW_AFTER = 240;\n\n/** 右下角快捷工具。滚动超过一段距离后加上 `.is-visible`。 */\nexport function PageTools() {\n const { brand } = getCatalog();\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n const update = () => setVisible(window.scrollY > SHOW_AFTER);\n update();\n window.addEventListener(\"scroll\", update, { passive: true });\n return () => window.removeEventListener(\"scroll\", update);\n }, []);\n\n const toTop = () => {\n const reduce = window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n window.scrollTo({ top: 0, behavior: reduce ? \"auto\" : \"smooth\" });\n };\n\n return (\n \n
\n \n \n \n \n \n \n
\n
\n \"黄果短剧\"\n
\n
\n \n
\n
\n

扫码下载安装「黄果短剧App」

\n

每一刻都有好戏

\n
\n
\n
\n \n \n );\n}\n"],"names":["SHOW_AFTER","PageTools","brand","visible","setVisible","update","window","scrollY","addEventListener","passive","removeEventListener","toTop","reduce","matchMedia","matches","scrollTo","top","behavior","className","id","undefined","inert","label","title","viewBox","x","y","width","height","rx","fill","stroke","strokeWidth","d","strokeLinecap","src","downloadLogo","alt","type","onClick","strokeLinejoin"],"mappings":";;;;;AAEA;AACA;AACA;;;AAJA;;;;AAMA,MAAMA,aAAa;AAGZ,SAASC;;IACd,MAAM,EAAEC,KAAK,EAAE,GAAG,IAAA,sIAAU;IAC5B,MAAM,CAACC,SAASC,WAAW,GAAG,IAAA,8WAAQ,EAAC;IAEvC,IAAA,+WAAS;+BAAC;YACR,MAAMC;8CAAS,IAAMD,WAAWE,OAAOC,OAAO,GAAGP;;YACjDK;YACAC,OAAOE,gBAAgB,CAAC,UAAUH,QAAQ;gBAAEI,SAAS;YAAK;YAC1D;uCAAO,IAAMH,OAAOI,mBAAmB,CAAC,UAAUL;;QACpD;8BAAG,EAAE;IAEL,MAAMM,QAAQ;QACZ,MAAMC,SAASN,OAAOO,UAAU,CAAC,oCAAoCC,OAAO;QAC5ER,OAAOS,QAAQ,CAAC;YAAEC,KAAK;YAAGC,UAAUL,SAAS,SAAS;QAAS;IACjE;IAEA,qBACE,kYAAC;QACCM,WAAWf,UAAU,0BAA0B;QAC/CgB,IAAG;QACH,cAAW;QACX,eAAahB,UAAUiB,YAAY;QAClC,GAAIjB,UAAU,CAAC,IAAI;YAAEkB,OAAO;QAAK,CAAC;;0BAEnC,kYAAC;gBAAIH,WAAU;gBAAqBC,IAAG;;kCACrC,kYAAC,qKAAe;wBAACD,WAAU;wBAAYC,IAAG;wBAAoBG,OAAM;wBAAeC,OAAM;kCACvF,cAAA,kYAAC;4BAAIC,SAAQ;4BAAY,eAAY;;8CACnC,kYAAC;oCAAKC,GAAE;oCAAIC,GAAE;oCAAIC,OAAM;oCAAKC,QAAO;oCAAKC,IAAG;oCAAIC,MAAK;oCAAOC,QAAO;oCAAeC,aAAY;;;;;;8CAC9F,kYAAC;oCAAKC,GAAE;oCAAkBH,MAAK;oCAAOC,QAAO;oCAAeC,aAAY;oCAAME,eAAc;;;;;;;;;;;;;;;;;kCAGhG,kYAAC;wBAAIhB,WAAU;wBAAoBC,IAAG;;0CACpC,kYAAC;gCAAID,WAAU;0CACb,cAAA,kYAAC;oCAAIA,WAAU;oCAA0BiB,KAAKjC,MAAMkC,YAAY;oCAAEC,KAAI;oCAAOV,OAAO;oCAAKC,QAAQ;;;;;;;;;;;0CAEnG,kYAAC;gCAAIV,WAAU;0CACb,cAAA,kYAAC,gKAAU;;;;;;;;;;0CAEb,kYAAC;gCAAIA,WAAU;;kDACb,kYAAC;kDAAE;;;;;;kDACH,kYAAC;kDAAE;;;;;;;;;;;;;;;;;;;;;;;;0BAIT,kYAAC;gBAAOA,WAAU;gBAAYC,IAAG;gBAAcmB,MAAK;gBAAS,cAAW;gBAAOf,OAAM;gBAAOgB,SAAS5B;0BACnG,cAAA,kYAAC;oBAAIa,SAAQ;oBAAY,eAAY;8BACnC,cAAA,kYAAC;wBAAKS,GAAE;wBAA+BH,MAAK;wBAAOC,QAAO;wBAAeC,aAAY;wBAAME,eAAc;wBAAQM,gBAAe;;;;;;;;;;;;;;;;;;;;;;AAK1I;GAnDgBvC;KAAAA"}}, {"offset": {"line": 717, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/SocialLinks.tsx"],"sourcesContent":["import { getCatalog } from \"@/lib/catalog\";\nimport { BUSINESS_CONTACT } from \"@/lib/contact\";\n\nexport type SocialIconKind = \"qq\" | \"telegram\" | \"x\";\n\nexport type SocialLinkItem = {\n kind: SocialIconKind;\n href: string;\n label: string;\n};\n\n/** 只保留商务联系方式(Telegram),忽略后台配置的 QQ / X / 邮箱。 */\nexport function businessContactLinks(): SocialLinkItem[] {\n return [{ kind: \"telegram\", href: BUSINESS_CONTACT.href, label: `${BUSINESS_CONTACT.label} ${BUSINESS_CONTACT.handle}` }];\n}\n\n/** 源文件页脚社交图标:QQ、Telegram、X。 */\nexport function SocialIcon({ kind }: { kind: SocialIconKind }) {\n if (kind === \"qq\") {\n return \"\";\n }\n if (kind === \"x\") {\n return (\n \n \n \n );\n }\n return (\n \n \n \n );\n}\n\nexport function SocialLinks({ links }: { links?: SocialLinkItem[] }) {\n if (!links?.length) return null;\n return (\n <>\n {links.map((item) => (\n \n \n \n ))}\n \n );\n}\n"],"names":["businessContactLinks","kind","href","label","handle","SocialIcon","param","src","brand","qq","alt","viewBox","d","SocialLinks","links","length","map","item","target","startsWith","undefined","rel","title"],"mappings":";;;;;;;;;AAAA;AACA;;;;AAWO,SAASA;IACd,OAAO;QAAC;YAAEC,MAAM;YAAYC,MAAM,4IAAgB,CAACA,IAAI;YAAEC,OAAO,GAAG,4IAAgB,CAACA,KAAK,CAAC,CAAC,EAAE,4IAAgB,CAACC,MAAM,EAAE;QAAC;KAAE;AAC3H;AAGO,SAASC,WAAWC,KAAkC;QAAlCA,EAAEL,IAAI,EAA4B,GAAlCK;IACzB,IAAIL,SAAS,MAAM;QACjB,qBAAO,kYAAC;YAAIM,KAAK,IAAA,sIAAU,IAAGC,KAAK,CAACC,EAAE;YAAEC,KAAI;;;;;;IAC9C;IACA,IAAIT,SAAS,KAAK;QAChB,qBACE,kYAAC;YAAIU,SAAQ;YAAY,eAAY;sBACnC,cAAA,kYAAC;gBAAKC,GAAE;;;;;;;;;;;IAGd;IACA,qBACE,kYAAC;QAAID,SAAQ;QAAY,eAAY;kBACnC,cAAA,kYAAC;YAAKC,GAAE;;;;;;;;;;;AAGd;KAhBgBP;AAkBT,SAASQ,YAAYP,KAAuC;QAAvCA,EAAEQ,KAAK,EAAgC,GAAvCR;IAC1B,IAAI,EAACQ,kBAAAA,4BAAAA,MAAOC,MAAM,GAAE,OAAO;IAC3B,qBACE;kBACGD,MAAME,GAAG,CAAC,CAACC,qBACV,kYAAC;gBAECf,MAAMe,KAAKf,IAAI;gBACfgB,QAAQD,KAAKf,IAAI,CAACiB,UAAU,CAAC,aAAaC,YAAY;gBACtDC,KAAKJ,KAAKf,IAAI,CAACiB,UAAU,CAAC,aAAaC,YAAY;gBACnD,cAAYH,KAAKd,KAAK;gBACtBmB,OAAOL,KAAKd,KAAK;0BAEjB,cAAA,kYAACE;oBAAWJ,MAAMgB,KAAKhB,IAAI;;;;;;eAPtBgB,KAAKhB,IAAI;;;;;;;;;;AAYxB;MAlBgBY"}}, - {"offset": {"line": 825, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/StartupAdDialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { DecryptedImage } from \"@/components/common/decrypted-image\";\nimport { StartupAgeDialog } from \"@/components/common/StartupAgeDialog\";\nimport { useStartupAds } from \"@/components/common/startup-dialog-ads\";\nimport { CARD_PLACEHOLDER } from \"@/lib/image/decrypt\";\nimport type { AdvitiseInfo } from \"@/lib/api/types\";\n\nconst STARTUP_DAY_KEY = \"startup-popups-day\";\n\nfunction todayStamp() {\n const now = new Date();\n const month = String(now.getMonth() + 1).padStart(2, \"0\");\n const day = String(now.getDate()).padStart(2, \"0\");\n return `${now.getFullYear()}-${month}-${day}`;\n}\n\nfunction startupSeenToday() {\n try {\n return localStorage.getItem(STARTUP_DAY_KEY) === todayStamp();\n } catch {\n return false;\n }\n}\n\nfunction markStartupSeenToday() {\n try {\n localStorage.setItem(STARTUP_DAY_KEY, todayStamp());\n } catch {\n // 无法写入时按未展示处理,下次进入仍会弹出。\n }\n}\n\n/** 同一次页面加载只决定一次。开发环境 effect 会重跑,不能靠第二次读到的日期跳过。 */\nlet startupDailyDecision: \"show\" | \"skip\" | null = null;\n\nfunction decideStartupDaily() {\n if (startupDailyDecision) return startupDailyDecision;\n startupDailyDecision = startupSeenToday() ? \"skip\" : \"show\";\n if (startupDailyDecision === \"show\") markStartupSeenToday();\n return startupDailyDecision;\n}\n\nfunction httpUrl(link: string | undefined) {\n const value = link?.trim();\n if (!value) return \"\";\n try {\n const url = new URL(value);\n if (url.protocol === \"http:\" || url.protocol === \"https:\") return url.toString();\n } catch {\n return \"\";\n }\n return \"\";\n}\n\nfunction StartupAdDialog({ ads, open, onFinished }: { ads: AdvitiseInfo[]; open: boolean; onFinished: () => void }) {\n const dialogRef = useRef(null);\n const [index, setIndex] = useState(0);\n const ad = ads[index];\n\n useEffect(() => {\n const dialog = dialogRef.current;\n if (!open || !dialog || dialog.open) return;\n dialog.showModal();\n }, [open]);\n\n function dismiss() {\n if (index < ads.length - 1) {\n setIndex((value) => value + 1);\n return;\n }\n dialogRef.current?.close();\n }\n\n if (!ad) return null;\n\n const href = httpUrl(ad.link);\n const image = (\n \n );\n\n return (\n {\n event.preventDefault();\n dismiss();\n }}\n onKeyDown={(event) => {\n if (event.key === \"Tab\") event.currentTarget.classList.add(\"startup-keyboard-focus\");\n }}\n onPointerDown={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n onClose={(event) => {\n event.currentTarget.classList.remove(\"startup-keyboard-focus\");\n onFinished();\n }}\n >\n {href ? (\n \n {image}\n \n ) : (\n {image}\n )}\n \n \n );\n}\n\nfunction StartupGridDialog({ items, open }: { items: AdvitiseInfo[]; open: boolean }) {\n const dialogRef = useRef(null);\n\n useEffect(() => {\n const dialog = dialogRef.current;\n if (!open || !dialog || dialog.open) return;\n dialog.showModal();\n }, [open]);\n\n if (!items.length) return null;\n\n return (\n {\n if (event.target instanceof Element && event.target.closest(\".startup-promotion\")) dialogRef.current?.close();\n }}\n onKeyDown={(event) => {\n if (event.key === \"Tab\") event.currentTarget.classList.add(\"startup-keyboard-focus\");\n }}\n onPointerDown={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n onClose={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n >\n
\n {items.map((item, index) => {\n const href = httpUrl(item.link);\n const title = item.title?.trim() || \"推荐\";\n const inner = (\n <>\n \n {title}\n \n );\n if (!href) {\n return (\n \n {inner}\n \n );\n }\n return (\n \n {inner}\n \n );\n })}\n
\n \n \n );\n}\n\n/** 年龄确认后先播 dialogList,全部关闭后再弹出 nineGridList。三个弹窗同一天只展示一次。 */\nexport function StartupPopups() {\n const ads = useStartupAds();\n const acceptedRef = useRef(false);\n const [daily, setDaily] = useState<\"pending\" | \"show\" | \"skip\">(\"pending\");\n const [phase, setPhase] = useState<\"idle\" | \"ad\" | \"grid\" | \"done\">(\"idle\");\n\n useEffect(() => {\n if (decideStartupDaily() === \"skip\") {\n setDaily(\"skip\");\n setPhase(\"done\");\n return;\n }\n setDaily(\"show\");\n }, []);\n\n const reveal = useCallback(() => {\n if (!acceptedRef.current || !ads || phase !== \"idle\") return;\n if (ads.dialogList.length) setPhase(\"ad\");\n else if (ads.nineGridList.length) setPhase(\"grid\");\n else setPhase(\"done\");\n }, [ads, phase]);\n\n useEffect(() => {\n reveal();\n }, [reveal]);\n\n function finishAd() {\n setPhase(ads?.nineGridList.length ? \"grid\" : \"done\");\n }\n\n return (\n <>\n {daily === \"show\" ? (\n {\n acceptedRef.current = true;\n reveal();\n }}\n />\n ) : null}\n {ads?.dialogList.length ? : null}\n {ads?.nineGridList.length ? : null}\n \n );\n}\n"],"names":["STARTUP_DAY_KEY","todayStamp","now","Date","month","String","getMonth","padStart","day","getDate","getFullYear","startupSeenToday","localStorage","getItem","markStartupSeenToday","setItem","startupDailyDecision","decideStartupDaily","httpUrl","link","value","trim","url","URL","protocol","toString","StartupAdDialog","param","ads","open","onFinished","_ad_title","dialogRef","index","setIndex","ad","dialog","current","showModal","dismiss","_dialogRef_current","length","close","href","image","className","src","images","alt","title","width","height","id","ref","onCancel","event","preventDefault","onKeyDown","key","currentTarget","classList","add","onPointerDown","remove","onClose","target","rel","type","onClick","StartupGridDialog","items","Element","closest","map","item","_item_title","inner","fallback","StartupPopups","acceptedRef","daily","setDaily","phase","setPhase","reveal","dialogList","nineGridList","finishAd","active","onAccepted"],"mappings":"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"}}, + {"offset": {"line": 825, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/StartupAdDialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nimport { DecryptedImage } from \"@/components/common/decrypted-image\";\nimport { StartupAgeDialog } from \"@/components/common/StartupAgeDialog\";\nimport { useStartupAds } from \"@/components/common/startup-dialog-ads\";\nimport { CARD_PLACEHOLDER } from \"@/lib/image/decrypt\";\nimport type { AdvitiseInfo } from \"@/lib/api/types\";\n\nconst STARTUP_DAY_KEY = \"startup-popups-day\";\n\nfunction todayStamp() {\n const now = new Date();\n const month = String(now.getMonth() + 1).padStart(2, \"0\");\n const day = String(now.getDate()).padStart(2, \"0\");\n return `${now.getFullYear()}-${month}-${day}`;\n}\n\nfunction startupSeenToday() {\n try {\n return localStorage.getItem(STARTUP_DAY_KEY) === todayStamp();\n } catch {\n return false;\n }\n}\n\nfunction markStartupSeenToday() {\n try {\n localStorage.setItem(STARTUP_DAY_KEY, todayStamp());\n } catch {\n // 无法写入时按未展示处理,下次进入仍会弹出。\n }\n}\n\n/** 同一次页面加载只决定一次。开发环境 effect 会重跑,不能靠第二次读到的日期跳过。 */\nlet startupDailyDecision: \"show\" | \"skip\" | null = null;\n\nfunction decideStartupDaily() {\n if (startupDailyDecision) return startupDailyDecision;\n startupDailyDecision = startupSeenToday() ? \"skip\" : \"show\";\n if (startupDailyDecision === \"show\") markStartupSeenToday();\n return startupDailyDecision;\n}\n\nfunction httpUrl(link: string | undefined) {\n const value = link?.trim();\n if (!value) return \"\";\n try {\n const url = new URL(value);\n if (url.protocol === \"http:\" || url.protocol === \"https:\") return url.toString();\n } catch {\n return \"\";\n }\n return \"\";\n}\n\nfunction StartupAdDialog({ ads, open, onFinished }: { ads: AdvitiseInfo[]; open: boolean; onFinished: () => void }) {\n const dialogRef = useRef(null);\n const [index, setIndex] = useState(0);\n const ad = ads[index];\n\n useEffect(() => {\n const dialog = dialogRef.current;\n if (!open || !dialog || dialog.open) return;\n dialog.showModal();\n }, [open]);\n\n function dismiss() {\n if (index < ads.length - 1) {\n setIndex((value) => value + 1);\n return;\n }\n dialogRef.current?.close();\n }\n\n if (!ad) return null;\n\n const href = httpUrl(ad.link);\n const image = (\n \n );\n\n return (\n {\n event.preventDefault();\n dismiss();\n }}\n onKeyDown={(event) => {\n if (event.key === \"Tab\") event.currentTarget.classList.add(\"startup-keyboard-focus\");\n }}\n onPointerDown={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n onClose={(event) => {\n event.currentTarget.classList.remove(\"startup-keyboard-focus\");\n onFinished();\n }}\n >\n {href ? (\n \n {image}\n \n ) : (\n {image}\n )}\n \n \n );\n}\n\nfunction StartupGridDialog({ items, open }: { items: AdvitiseInfo[]; open: boolean }) {\n const dialogRef = useRef(null);\n\n useEffect(() => {\n const dialog = dialogRef.current;\n if (!open || !dialog || dialog.open) return;\n dialog.showModal();\n }, [open]);\n\n if (!items.length) return null;\n\n return (\n {\n if (event.target instanceof Element && event.target.closest(\".startup-promotion\")) dialogRef.current?.close();\n }}\n onKeyDown={(event) => {\n if (event.key === \"Tab\") event.currentTarget.classList.add(\"startup-keyboard-focus\");\n }}\n onPointerDown={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n onClose={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n >\n
\n {items.map((item, index) => {\n const href = httpUrl(item.link);\n const title = item.title?.trim() || \"推荐\";\n const inner = (\n <>\n \n {title}\n \n );\n if (!href) {\n return (\n \n {inner}\n \n );\n }\n return (\n \n {inner}\n \n );\n })}\n
\n \n \n );\n}\n\n/** 年龄确认后先播 dialogList,全部关闭后再弹出 nineGridList。三个弹窗同一天只展示一次。 */\nexport function StartupPopups() {\n const ads = useStartupAds();\n const acceptedRef = useRef(false);\n const [daily, setDaily] = useState<\"pending\" | \"show\" | \"skip\">(\"pending\");\n const [phase, setPhase] = useState<\"idle\" | \"ad\" | \"grid\" | \"done\">(\"idle\");\n\n useEffect(() => {\n if (decideStartupDaily() === \"skip\") {\n setDaily(\"skip\");\n setPhase(\"done\");\n return;\n }\n setDaily(\"show\");\n }, []);\n\n const reveal = useCallback(() => {\n if (!acceptedRef.current || !ads || phase !== \"idle\") return;\n if (ads.dialogList.length) setPhase(\"ad\");\n else if (ads.nineGridList.length) setPhase(\"grid\");\n else setPhase(\"done\");\n }, [ads, phase]);\n\n useEffect(() => {\n reveal();\n }, [reveal]);\n\n function finishAd() {\n setPhase(ads?.nineGridList.length ? \"grid\" : \"done\");\n }\n\n return (\n <>\n {daily === \"show\" ? (\n {\n acceptedRef.current = true;\n reveal();\n }}\n />\n ) : null}\n {ads?.dialogList.length ? : null}\n {ads?.nineGridList.length ? : null}\n \n );\n}\n"],"names":["STARTUP_DAY_KEY","todayStamp","now","Date","month","String","getMonth","padStart","day","getDate","getFullYear","startupSeenToday","localStorage","getItem","markStartupSeenToday","setItem","startupDailyDecision","decideStartupDaily","httpUrl","link","value","trim","url","URL","protocol","toString","StartupAdDialog","param","ads","open","onFinished","_ad_title","dialogRef","index","setIndex","ad","dialog","current","showModal","dismiss","_dialogRef_current","length","close","href","image","className","src","images","alt","title","width","height","id","ref","onCancel","event","preventDefault","onKeyDown","key","currentTarget","classList","add","onPointerDown","remove","onClose","target","rel","type","onClick","StartupGridDialog","items","Element","closest","map","item","_item_title","inner","fallback","StartupPopups","acceptedRef","daily","setDaily","phase","setPhase","reveal","dialogList","nineGridList","finishAd","active","onAccepted"],"mappings":"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"}}, {"offset": {"line": 1196, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/StartupAdSource.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect } from \"react\";\nimport type { AdvitiseInfo } from \"@/lib/api/types\";\nimport { publishStartupAds } from \"@/components/common/startup-dialog-ads\";\n\n/** 把服务端配置里的启动弹窗广告交给客户端弹窗。 */\nexport function StartupAdSource({\n dialogList,\n nineGridList,\n}: {\n dialogList?: AdvitiseInfo[] | null;\n nineGridList?: AdvitiseInfo[] | null;\n}) {\n useEffect(() => {\n publishStartupAds(dialogList, nineGridList);\n }, [dialogList, nineGridList]);\n return null;\n}\n"],"names":["StartupAdSource","param","dialogList","nineGridList"],"mappings":";;;;AAEA;AAEA;;AAJA;;;AAOO,SAASA,gBAAgBC,KAM/B;QAN+BA,EAC9BC,UAAU,EACVC,YAAY,EAIb,GAN+BF;;IAO9B,IAAA,+WAAS;qCAAC;YACR,IAAA,+KAAiB,EAACC,YAAYC;QAChC;oCAAG;QAACD;QAAYC;KAAa;IAC7B,OAAO;AACT;GAXgBH;KAAAA"}}, {"offset": {"line": 1230, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/StartupAgeDialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useRef, useState } from \"react\";\n\n/** 当天首次进入时弹出。确认后关闭;离开或关闭都离开站点。 */\nexport function StartupAgeDialog({ active, onAccepted }: { active: boolean; onAccepted?: () => void }) {\n const dialogRef = useRef(null);\n const acceptedRef = useRef(false);\n const [mobile, setMobile] = useState(false);\n\n useEffect(() => {\n const dialog = dialogRef.current;\n if (!active || !dialog || dialog.open) return;\n dialog.showModal();\n }, [active]);\n\n useEffect(() => {\n const query = window.matchMedia(\"(max-width:760px)\");\n const sync = () => setMobile(query.matches);\n sync();\n query.addEventListener(\"change\", sync);\n return () => query.removeEventListener(\"change\", sync);\n }, []);\n\n function confirmAge() {\n acceptedRef.current = true;\n dialogRef.current?.close();\n }\n\n function leaveSite() {\n window.location.replace(\"about:blank\");\n }\n\n function keepOpenUnlessAccepted() {\n const dialog = dialogRef.current;\n if (!dialog) return;\n dialog.classList.remove(\"startup-keyboard-focus\");\n if (!acceptedRef.current && !dialog.open) dialog.showModal();\n else if (acceptedRef.current) onAccepted?.();\n }\n\n return (\n event.preventDefault()}\n onClose={keepOpenUnlessAccepted}\n onKeyDown={(event) => {\n if (event.key === \"Tab\") event.currentTarget.classList.add(\"startup-keyboard-focus\");\n }}\n onPointerDown={(event) => event.currentTarget.classList.remove(\"startup-keyboard-focus\")}\n >\n
\n
\n \"18岁以上\"\n \"18岁以上\"\n
\n
\n
\n

本网站仅限成年人访问

\n
\n

本网站包含仅限18岁及以上成年人浏览的内容。若您未满18岁,或所在地法律不允许您浏览此类内容,请立即离开。

\n

继续进入即表示您确认已年满18岁,并达到所在地的法定成年年龄。

\n
\n
\n
\n

这是个成人网站

\n

\n 本网站包含有年龄限制的内容,包括裸体和露骨色情素材的内容。 点击继续即表示您确认您已年满 18 岁,或在您访问本网站时所在的司法管辖区已是成年人\n

\n
\n
\n \n \n
\n
\n
\n \n \n );\n}\n"],"names":["StartupAgeDialog","param","active","onAccepted","dialogRef","acceptedRef","mobile","setMobile","dialog","current","open","showModal","query","window","matchMedia","sync","matches","addEventListener","removeEventListener","confirmAge","_dialogRef_current","close","leaveSite","location","replace","keepOpenUnlessAccepted","classList","remove","id","ref","className","onCancel","event","preventDefault","onClose","onKeyDown","key","currentTarget","add","onPointerDown","src","width","height","alt","type","autoFocus","onClick"],"mappings":"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"}}, {"offset": {"line": 1478, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/components/common/Toast.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect } from \"react\";\nimport { toast } from \"@heroui/react\";\n\n/**\n * 兼容旧的 `app-toast` 自定义事件,转发到 HeroUI toast。\n * 宿主为 ToastHost(Toast.Provider)。\n */\nexport function Toast() {\n useEffect(() => {\n const onNotify = (event: Event) => {\n const detail = (event as CustomEvent).detail;\n const message = typeof detail === \"string\" ? detail.trim() : \"\";\n if (!message) return;\n toast(message);\n };\n window.addEventListener(\"app-toast\", onNotify);\n return () => window.removeEventListener(\"app-toast\", onNotify);\n }, []);\n\n return null;\n}\n"],"names":["Toast","onNotify","event","detail","message","trim","window","addEventListener","removeEventListener"],"mappings":";;;;AAEA;AACA;;AAHA;;;AASO,SAASA;;IACd,IAAA,+WAAS;2BAAC;YACR,MAAMC;4CAAW,CAACC;oBAChB,MAAMC,SAAS,AAACD,MAA8BC,MAAM;oBACpD,MAAMC,UAAU,OAAOD,WAAW,WAAWA,OAAOE,IAAI,KAAK;oBAC7D,IAAI,CAACD,SAAS;oBACd,IAAA,2YAAK,EAACA;gBACR;;YACAE,OAAOC,gBAAgB,CAAC,aAAaN;YACrC;mCAAO,IAAMK,OAAOE,mBAAmB,CAAC,aAAaP;;QACvD;0BAAG,EAAE;IAEL,OAAO;AACT;GAbgBD;KAAAA"}}, @@ -30,12 +30,12 @@ {"offset": {"line": 4037, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/api/sdk-headers.ts"],"sourcesContent":["import { buildBrowserApiHeaders } from \"./client-headers\";\nimport { encodeSdkCommon } from \"./sdk-common\";\n\n/** 业务请求带上访客设备号。 */\nexport async function browserTrackingHeaders(devID = \"\") {\n return {\n ...buildBrowserApiHeaders(devID, \"\"),\n \"X-SDK-Common\": encodeSdkCommon({ sid: \"\", device_id: devID, app_version: \"1.0.0\" }),\n };\n}\n"],"names":["browserTrackingHeaders","devID","sid","device_id","app_version"],"mappings":";;;;AAAA;AACA;;;AAGO,eAAeA;QAAuBC,QAAAA,iEAAQ;IACnD,OAAO;QACL,GAAG,IAAA,mKAAsB,EAACA,OAAO,GAAG;QACpC,gBAAgB,IAAA,wJAAe,EAAC;YAAEC,KAAK;YAAIC,WAAWF;YAAOG,aAAa;QAAQ;IACpF;AACF"}}, {"offset": {"line": 4063, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/auth/auth-cookie.ts"],"sourcesContent":["/** 供服务端 getInfo 读取的会话 token(与 localStorage 同步) */\nexport const AUTH_TOKEN_COOKIE = \"huangguo-auth-token\";\n\nconst MAX_AGE_SEC = 60 * 60 * 24 * 180;\n\nexport function writeAuthTokenCookie(token: string) {\n if (typeof document === \"undefined\" || !token) return;\n document.cookie = `${AUTH_TOKEN_COOKIE}=${encodeURIComponent(token)}; Path=/; Max-Age=${MAX_AGE_SEC}; SameSite=Lax`;\n}\n\nexport function clearAuthTokenCookie() {\n if (typeof document === \"undefined\") return;\n document.cookie = `${AUTH_TOKEN_COOKIE}=; Path=/; Max-Age=0; SameSite=Lax`;\n}\n"],"names":["AUTH_TOKEN_COOKIE","MAX_AGE_SEC","writeAuthTokenCookie","token","document","cookie","encodeURIComponent","clearAuthTokenCookie"],"mappings":"AAAA,gDAAgD;;;;;;;;AACzC,MAAMA,oBAAoB;AAEjC,MAAMC,cAAc,KAAK,KAAK,KAAK;AAE5B,SAASC,qBAAqBC,KAAa;IAChD,IAAI,OAAOC,aAAa,eAAe,CAACD,OAAO;IAC/CC,SAASC,MAAM,GAAG,GAAGL,kBAAkB,CAAC,EAAEM,mBAAmBH,OAAO,kBAAkB,EAAEF,YAAY,cAAc,CAAC;AACrH;AAEO,SAASM;IACd,IAAI,OAAOH,aAAa,aAAa;IACrCA,SAASC,MAAM,GAAG,GAAGL,kBAAkB,kCAAkC,CAAC;AAC5E"}}, {"offset": {"line": 4088, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/auth/session.ts"],"sourcesContent":["import { guestLogin } from \"@/lib/api/auth\";\nimport type { LoginResp } from \"@/lib/api/types\";\nimport { clearAuthTokenCookie, writeAuthTokenCookie } from \"@/lib/auth/auth-cookie\";\nimport { getDeviceId } from \"@/lib/device-id\";\n\nconst USER_KEY = \"huangguo-auth-user\";\nlet guestPromise: Promise | null = null;\n\nexport function readAuthUser(): LoginResp | null {\n if (typeof window === \"undefined\") return null;\n const raw = localStorage.getItem(USER_KEY);\n if (!raw) return null;\n try {\n const data = JSON.parse(raw) as LoginResp;\n if (!data || typeof data !== \"object\" || !data.token) return null;\n return data;\n } catch {\n return null;\n }\n}\n\nfunction saveLoginResp(data: LoginResp) {\n localStorage.setItem(USER_KEY, JSON.stringify(data));\n if (data.token) writeAuthTokenCookie(data.token);\n else clearAuthTokenCookie();\n}\n\nexport function authToken() {\n return readAuthUser()?.token ?? null;\n}\n\n/** 没有本地会话时调用 POST /api/app/auth/guest。已有 token 时只同步 cookie。 */\nexport function ensureGuestSession() {\n const existing = readAuthUser();\n if (existing?.token) {\n writeAuthTokenCookie(existing.token);\n return Promise.resolve(existing);\n }\n if (guestPromise) return guestPromise;\n\n guestPromise = (async () => {\n try {\n const devID = getDeviceId();\n const data = await guestLogin({ devID, deviceId: devID });\n if (!data?.token) return null;\n saveLoginResp(data);\n return data;\n } catch (error) {\n if (process.env.NODE_ENV === \"development\") {\n console.warn(\"[guest-auth]\", error);\n }\n return readAuthUser();\n } finally {\n guestPromise = null;\n }\n })();\n\n return guestPromise;\n}\n"],"names":["USER_KEY","guestPromise","readAuthUser","raw","localStorage","getItem","data","JSON","parse","token","saveLoginResp","setItem","stringify","authToken","_readAuthUser","ensureGuestSession","existing","Promise","resolve","devID","deviceId","error","console","warn"],"mappings":";;;;;;;;AAgDU;AAhDV;AAEA;AACA;;;;AAEA,MAAMA,WAAW;AACjB,IAAIC,eAAiD;AAE9C,SAASC;IACd;;IACA,MAAMC,MAAMC,aAAaC,OAAO,CAACL;IACjC,IAAI,CAACG,KAAK,OAAO;IACjB,IAAI;QACF,MAAMG,OAAOC,KAAKC,KAAK,CAACL;QACxB,IAAI,CAACG,QAAQ,OAAOA,SAAS,YAAY,CAACA,KAAKG,KAAK,EAAE,OAAO;QAC7D,OAAOH;IACT,EAAE,OAAM;QACN,OAAO;IACT;AACF;AAEA,SAASI,cAAcJ,IAAe;IACpCF,aAAaO,OAAO,CAACX,UAAUO,KAAKK,SAAS,CAACN;IAC9C,IAAIA,KAAKG,KAAK,EAAE,IAAA,+JAAoB,EAACH,KAAKG,KAAK;SAC1C,IAAA,+JAAoB;AAC3B;AAEO,SAASI;;QACPC;IAAP,gBAAOA,gBAAAA,4BAAAA,oCAAAA,cAAgBL,KAAK,uCAAI;AAClC;AAGO,SAASM;IACd,MAAMC,WAAWd;IACjB,IAAIc,qBAAAA,+BAAAA,SAAUP,KAAK,EAAE;QACnB,IAAA,+JAAoB,EAACO,SAASP,KAAK;QACnC,OAAOQ,QAAQC,OAAO,CAACF;IACzB;IACA,IAAIf,cAAc,OAAOA;IAEzBA,eAAe,CAAC;QACd,IAAI;YACF,MAAMkB,QAAQ,IAAA,4IAAW;YACzB,MAAMb,OAAO,MAAM,IAAA,0IAAU,EAAC;gBAAEa;gBAAOC,UAAUD;YAAM;YACvD,IAAI,EAACb,iBAAAA,2BAAAA,KAAMG,KAAK,GAAE,OAAO;YACzBC,cAAcJ;YACd,OAAOA;QACT,EAAE,OAAOe,OAAO;YACd,wCAA4C;gBAC1CC,QAAQC,IAAI,CAAC,gBAAgBF;YAC/B;YACA,OAAOnB;QACT,SAAU;YACRD,eAAe;QACjB;IACF,CAAC;IAED,OAAOA;AACT"}}, - {"offset": {"line": 4163, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/catalog.ts"],"sourcesContent":["import catalogJson from \"@/data/catalog.json\";\nimport sourceDramas from \"@/data/dramas.js\";\nimport type { AppIcon, CardStat, CoverBadge, Drama, TopicCollection } from \"@/lib/types\";\n\nconst STEMS = [\"星河\", \"晚风\", \"春日\", \"月光\", \"山海\", \"归途\", \"长街\", \"云端\", \"微光\", \"朝暮\"];\nconst ENDINGS = [\"落在你肩上\", \"与君再相逢\", \"藏不住心动\", \"照亮回家的路\", \"等一场花开\", \"写给未来的信\", \"在雨季重逢\", \"奔向有光处\", \"听见你的心声\", \"越过人海见你\"];\nconst GENRES = [\"都市\", \"甜宠\", \"仙侠\", \"悬疑\", \"古装\", \"年代\", \"职场\", \"家庭\", \"青春\", \"逆袭\"];\nconst BADGE_CYCLE: CoverBadge[] = [\"hot\", \"new\", \"free\", \"\"];\nconst BADGE_LABEL = { hot: \"爆剧\", new: \"新剧\", free: \"原创\" } as const;\n\nexport const NAV_ITEMS = [\n { href: \"/\", label: \"首页\", page: \"home\", exact: true },\n { href: \"/shorts\", label: \"短剧\", page: \"shorts\", exact: false },\n { href: \"/series\", label: \"剧集\", page: \"series\", exact: false },\n { href: \"/topics\", label: \"专题\", page: \"topics\", exact: false },\n { href: \"/rank\", label: \"热榜\", page: \"rank\", exact: false },\n { href: \"/home-road\", label: \"回家的路\", page: \"home-road\", exact: false },\n { href: \"/apps\", label: \"福利应用\", page: \"apps\", exact: false },\n] as const;\n\nexport function activeNavKey(pathname: string) {\n // 详情/播放页、更多专题、搜索页不点亮主导航\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return \"\";\n }\n const match = NAV_ITEMS.find((item) => (item.exact ? pathname === item.href : pathname === item.href || pathname.startsWith(`${item.href}/`)));\n return match?.page ?? \"\";\n}\n\nexport const INFO_LINKS = [\n { href: \"/info/about-us\", label: \"关于我们\" },\n { href: \"/info/user-agreement\", label: \"用户协议\" },\n { href: \"/info/privacy-policy\", label: \"隐私政策\" },\n { href: \"/info/help-center\", label: \"常见问题\" },\n { href: \"/info/2257\", label: \"2257\" },\n { href: \"/info/dmca\", label: \"DMCA\" },\n] as const;\n\nexport const CHANNELS = {\n shorts: { title: \"短剧\", kicker: \"SHORT FILMS\", subtitle: \"发现最新故事,挑选人气好剧。\" },\n series: { title: \"剧集\", kicker: \"SERIES\", subtitle: \"浏览完整剧集,选择下一部想追的故事。\" },\n topics: { title: \"短剧专题\", kicker: \"COLLECTIONS\", subtitle: \"围绕一个主题,发现一组好故事。\" },\n rank: { title: \"排行榜\", kicker: \"RANKINGS\", subtitle: \"从热度、上新和你的收藏中发现好剧。\" },\n \"home-road\": { title: \"回家的路\", kicker: \"STAY CONNECTED\", subtitle: \"收藏访问入口,下次回来更方便。\" },\n apps: { title: \"福利应用\", kicker: \"APPLICATIONS\", subtitle: \"应用与网站推荐,集中查看。\" },\n} as const;\n\nexport const SORTS = [\"最新更新\", \"当前热播\", \"独家原创\", \"随机推荐\"] as const;\nexport const RANK_BOARDS = [\"热播榜\", \"新剧榜\", \"追剧榜\"] as const;\n\nexport const FRIEND_LINKS = [\n \"4399小游戏\",\n \"4399游戏盒\",\n \"4399游戏吧\",\n \"4399手机游戏网\",\n \"4399网页游戏\",\n \"4399游戏资讯\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手机开放平台\",\n \"4399游戏盒推荐\",\n \"4399在线玩\",\n];\n\nexport const ANNOUNCEMENT =\n \"欢迎来到黄果短剧,发现值得一看的好故事!都市甜宠、古装仙侠、悬疑逆袭、热血成长,多种题材随心挑选;浏览精选专题与热门榜单,找到适合此刻心情的精彩短剧。遇到喜欢的作品,记得加入收藏,方便下次继续观看;打开观看历史,轻松找回看过的故事。想看更多内容,可前往短剧、剧集与专题页面探索,也欢迎通过意见反馈告诉我们你的想法。收藏「回家的路」,随时找到黄果短剧,愿每一次相遇,都有好故事陪伴你! · \";\n\ntype CatalogFile = {\n cardStats: CardStat[];\n coverHeights: number[];\n covers: string[];\n heroes: { title: string; wide: string; portrait: string }[];\n topics: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nconst file = catalogJson as CatalogFile;\n\nexport type Catalog = {\n base: Drama[];\n all: Drama[];\n stats: CardStat[];\n badges: CoverBadge[];\n covers: string[];\n coverHeights: number[];\n heroes: CatalogFile[\"heroes\"];\n topicCovers: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nlet cached: Catalog | null = null;\n\nexport function getCatalog(): Catalog {\n if (cached) return cached;\n const base = sourceDramas.map((drama) => ({ ...drama }));\n const stats = file.cardStats.map((item) => ({ ...item, tags: [...item.tags] }));\n const badges: CoverBadge[] = base.map((_, index) => BADGE_CYCLE[index % BADGE_CYCLE.length]);\n const all = [...base];\n\n while (all.length < 100) {\n const sampleCount = all.length - base.length;\n const baseDrama = base[sampleCount % base.length] ?? base[0];\n const title = `${STEMS[Math.floor(sampleCount / ENDINGS.length) % STEMS.length]}${ENDINGS[sampleCount % ENDINGS.length]}`;\n const genre = GENRES[sampleCount % GENRES.length];\n const badgeName = ([\"爆剧\", \"新剧\", \"原创\"] as const)[sampleCount % 3];\n all.push({\n ...baseDrama,\n id: all.length,\n title,\n genre,\n heat: (99.8 - ((sampleCount * 1.37) % 61)).toFixed(1),\n eps: 60 + ((sampleCount * 17) % 420),\n mode: \"免费\",\n desc: `${title},一段关于选择、成长与重逢的故事正在展开。`,\n listSample: true,\n });\n stats.push({\n badge: badgeName,\n likes: 18 + ((sampleCount * 7) % 80),\n tags: [genre, \"精选短剧\"],\n favorites: Number((38 + ((sampleCount * 13) % 70) + sampleCount / 10).toFixed(1)),\n });\n badges.push(badgeName === \"爆剧\" ? \"hot\" : badgeName === \"新剧\" ? \"new\" : \"free\");\n }\n\n cached = {\n base,\n all,\n stats,\n badges,\n covers: file.covers,\n coverHeights: file.coverHeights,\n heroes: file.heroes,\n topicCovers: file.topics,\n promoApps: file.promoApps,\n benefitApps: file.benefitApps,\n brand: file.brand,\n navIcons: file.navIcons,\n roadIcons: file.roadIcons,\n returnIcons: file.returnIcons,\n collections: file.collections,\n };\n return cached;\n}\n\nexport function badgeLabel(type: CoverBadge) {\n return type ? BADGE_LABEL[type] : \"\";\n}\n\nexport function findDrama(id: number) {\n return getCatalog().all.find((drama) => drama.id === id) ?? null;\n}\n\nexport function coverSrc(drama: Drama) {\n const { covers } = getCatalog();\n return covers[drama.img % covers.length];\n}\n\nexport function coverHeight(drama: Drama) {\n const { coverHeights } = getCatalog();\n return coverHeights[drama.img % coverHeights.length] ?? 914;\n}\n\nexport function romanceIds(dramas: Drama[]) {\n const lead = [4, 1, 0, 3];\n return [...lead, ...dramas.map((drama) => drama.id).filter((id) => !lead.includes(id))].slice(0, 10);\n}\n\nexport function homeCollections() {\n const { base, collections } = getCatalog();\n const dynamic: Record = {\n worth: { title: \"值得一追\", ids: base.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...base].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: base.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n return { ...collections, ...dynamic };\n}\n\nexport function topicList(slug: string) {\n const catalog = getCatalog();\n if (slug.startsWith(\"tag-\")) {\n const tag = decodeURIComponent(slug.slice(4));\n const ids = catalog.all.filter((drama) => catalog.stats[drama.id]?.tags.includes(tag)).map((drama) => drama.id);\n return { title: tag ? `#${tag}` : \"专题\", dramas: ids.map((id) => catalog.all[id]).filter(Boolean), isTag: true };\n }\n const collections = slug === \"worth\" || slug === \"hot\" || slug === \"free\" ? fullCollections() : catalog.collections;\n const collection = collections[slug];\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return { title: collection.title, dramas: [...picked, ...rest].slice(0, 100), isTag: false };\n}\n\nfunction fullCollections(): Record {\n const { all } = getCatalog();\n return {\n worth: { title: \"值得一追\", ids: all.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...all].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: all.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n}\n\nexport function dramasBySort(sort: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (sort === \"当前热播\" || sort === \"人气优先\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n else if (sort === \"独家原创\") return list.filter((drama) => stats[drama.id]?.badge === \"原创\");\n else if (sort === \"最新更新\") list.reverse();\n else if (sort === \"随机推荐\") return seededShuffle(list);\n return list;\n}\n\nexport function dramasByRank(board: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (board === \"热播榜\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n if (board === \"新剧榜\") list.sort((a, b) => b.id - a.id);\n if (board === \"追剧榜\") {\n list.sort(\n (a, b) =>\n (stats[b.id]?.favorites ?? 0) - (stats[a.id]?.favorites ?? 0) || Number(b.heat) - Number(a.heat),\n );\n }\n return list;\n}\n\nexport function morePage(slug: string) {\n const catalog = getCatalog();\n const names: Record = {\n mustwatch: \"必看好剧\",\n hot: \"热门好剧\",\n topics: \"专题推荐\",\n dream: \"今日推荐\",\n worth: \"最近更新\",\n };\n if (slug === \"topics\") return { kind: \"topics\" as const, name: names.topics };\n if (slug === \"hot\") {\n return {\n kind: \"dramas\" as const,\n name: names.hot,\n dramas: [...catalog.all].sort((a, b) => Number(b.heat) - Number(a.heat)),\n };\n }\n const collection =\n slug === \"mustwatch\"\n ? { title: names.mustwatch, ids: romanceIds(catalog.base) }\n : (catalog.collections[slug] ?? fullCollections()[slug]);\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return {\n kind: \"dramas\" as const,\n name: names[slug] ?? collection.title,\n dramas: [...picked, ...rest].slice(0, 100),\n };\n}\n\nexport function searchDramas(query: string) {\n const term = query.trim();\n if (!term) return [];\n return getCatalog().all.filter((drama) => `${drama.title}${drama.genre}`.includes(term));\n}\n\nfunction seededShuffle(list: T[]) {\n const items = [...list];\n let state = 1048;\n const next = () => {\n state = (Math.imul(state, 1664525) + 1013904223) >>> 0;\n return state / 4294967296;\n };\n for (let index = items.length - 1; index > 0; index -= 1) {\n const swap = Math.floor(next() * (index + 1));\n [items[index], items[swap]] = [items[swap], items[index]];\n }\n return items;\n}\n"],"names":["STEMS","ENDINGS","GENRES","BADGE_CYCLE","BADGE_LABEL","hot","new","free","NAV_ITEMS","href","label","page","exact","activeNavKey","pathname","startsWith","match","find","item","INFO_LINKS","CHANNELS","shorts","title","kicker","subtitle","series","topics","rank","apps","SORTS","RANK_BOARDS","FRIEND_LINKS","ANNOUNCEMENT","file","cached","getCatalog","base","map","drama","stats","cardStats","tags","badges","_","index","length","all","_base_","sampleCount","baseDrama","Math","floor","genre","badgeName","push","id","heat","toFixed","eps","mode","desc","listSample","badge","likes","favorites","Number","covers","coverHeights","heroes","topicCovers","promoApps","benefitApps","brand","navIcons","roadIcons","returnIcons","collections","badgeLabel","type","findDrama","_getCatalog_all_find","coverSrc","img","coverHeight","_coverHeights_","romanceIds","dramas","lead","filter","includes","slice","homeCollections","dynamic","worth","ids","sort","a","b","topicList","slug","catalog","tag","decodeURIComponent","_catalog_stats_drama_id","Boolean","isTag","fullCollections","collection","picked","rest","dramasBySort","list","_stats_drama_id","reverse","seededShuffle","dramasByRank","board","_stats_b_id","_stats_a_id","morePage","_catalog_collections_slug","_names_slug","names","mustwatch","dream","kind","name","searchDramas","query","term","trim","items","state","next","imul","swap"],"mappings":"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"}}, - {"offset": {"line": 4659, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/channel-routes.ts"],"sourcesContent":["/** 频道列表路径:英文 slug + /page/{n},不用 query。 */\n\nexport const OPERATE_FILTERS = [\n { slug: \"latest\", label: \"最新更新\", type: 1 as const },\n { slug: \"popular\", label: \"当前热播\", type: 2 as const },\n { slug: \"original\", label: \"独家原创\", type: 3 as const },\n { slug: \"random\", label: \"随机推荐\", type: 4 as const },\n] as const;\n\nexport type OperateFilterSlug = (typeof OPERATE_FILTERS)[number][\"slug\"];\nexport type OperateFilterLabel = (typeof OPERATE_FILTERS)[number][\"label\"];\n\nexport const OPERATE_FILTER_LABELS: OperateFilterLabel[] = OPERATE_FILTERS.map((item) => item.label);\n\nexport const RANK_FILTERS = [\n { slug: \"hot\", label: \"热播榜\", rankType: 1 as const },\n { slug: \"new\", label: \"新剧榜\", rankType: 2 as const },\n { slug: \"binge\", label: \"追剧榜\", rankType: 3 as const },\n] as const;\n\nexport type RankFilterSlug = (typeof RANK_FILTERS)[number][\"slug\"];\nexport type RankFilterLabel = (typeof RANK_FILTERS)[number][\"label\"];\n\nexport const RANK_FILTER_LABELS: RankFilterLabel[] = RANK_FILTERS.map((item) => item.label);\n\nexport const DEFAULT_OPERATE_FILTER: OperateFilterSlug = \"latest\";\nexport const DEFAULT_RANK_FILTER: RankFilterSlug = \"hot\";\n\n/** 短剧 `[filter]` 保留段,避免与 more 路由冲突。 */\nexport const SHORTS_RESERVED_FILTERS = new Set([\"more\", \"page\"]);\n\nexport function parseChannelPage(raw: string | undefined | null) {\n const page = Number(raw);\n if (!Number.isFinite(page) || page < 1) return 0;\n return Math.floor(page);\n}\n\n/**\n * 解析运营列表路径段:\n * [] | ['page', n] | [filter] | [filter, 'page', n]\n */\nexport function parseOperatePathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) {\n return { filterSlug: DEFAULT_OPERATE_FILTER, pageNum: 1, canonical: true as const };\n }\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { filterSlug: DEFAULT_OPERATE_FILTER, pageNum, canonical: pageNum > 1 };\n }\n const filter = operateFilterBySlug(parts[0]);\n if (!filter) return null;\n if (parts.length === 1) {\n return {\n filterSlug: filter.slug,\n pageNum: 1,\n canonical: filter.slug !== DEFAULT_OPERATE_FILTER,\n };\n }\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return {\n filterSlug: filter.slug,\n pageNum,\n canonical: filter.slug !== DEFAULT_OPERATE_FILTER && pageNum > 1,\n };\n }\n return null;\n}\n\n/** [] | ['page', n] | [filter] | [filter, 'page', n] */\nexport function parseRankPathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) {\n return { filterSlug: DEFAULT_RANK_FILTER, pageNum: 1, canonical: true as const };\n }\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { filterSlug: DEFAULT_RANK_FILTER, pageNum, canonical: pageNum > 1 };\n }\n const filter = rankFilterBySlug(parts[0]);\n if (!filter) return null;\n if (parts.length === 1) {\n return {\n filterSlug: filter.slug,\n pageNum: 1,\n canonical: filter.slug !== DEFAULT_RANK_FILTER,\n };\n }\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return {\n filterSlug: filter.slug,\n pageNum,\n canonical: filter.slug !== DEFAULT_RANK_FILTER && pageNum > 1,\n };\n }\n return null;\n}\n\n/**\n * 专题路径:列表 [] | ['page', n];详情 [slug] | [slug, 'page', n]\n * tag 路由由 /topics/tag/... 单独处理。\n */\nexport function parseTopicsPathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) return { kind: \"list\" as const, pageNum: 1 };\n if (parts[0] === \"tag\") return null;\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { kind: \"list\" as const, pageNum };\n }\n if (parts[0] === \"page\") return null;\n if (parts.length === 1) return { kind: \"detail\" as const, slug: parts[0], pageNum: 1 };\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return { kind: \"detail\" as const, slug: parts[0], pageNum };\n }\n return null;\n}\n\n/** 详情/更多分页:[] | ['page', n] */\nexport function parseDetailPageSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) return { pageNum: 1, canonical: true as const };\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { pageNum, canonical: pageNum > 1 };\n }\n return null;\n}\n\nexport function operateFilterBySlug(slug: string | undefined | null) {\n const key = (slug || DEFAULT_OPERATE_FILTER).trim();\n return OPERATE_FILTERS.find((item) => item.slug === key) ?? null;\n}\n\nexport function operateFilterByLabel(label: string) {\n return OPERATE_FILTERS.find((item) => item.label === label) ?? OPERATE_FILTERS[0];\n}\n\nexport function rankFilterBySlug(slug: string | undefined | null) {\n const key = (slug || DEFAULT_RANK_FILTER).trim();\n return RANK_FILTERS.find((item) => item.slug === key) ?? null;\n}\n\nexport function rankFilterByLabel(label: string) {\n return RANK_FILTERS.find((item) => item.label === label) ?? RANK_FILTERS[0];\n}\n\n/** `/shorts` · `/shorts/page/2` · `/shorts/popular` · `/shorts/popular/page/2` */\nexport function operateListPath(base: \"shorts\" | \"series\", filterSlug: string, page = 1) {\n const filter = operateFilterBySlug(filterSlug) ?? OPERATE_FILTERS[0];\n const parts: string[] = [base];\n if (filter.slug !== DEFAULT_OPERATE_FILTER) parts.push(filter.slug);\n if (page > 1) parts.push(\"page\", String(page));\n return `/${parts.join(\"/\")}`;\n}\n\n/** `/rank` · `/rank/page/2` · `/rank/new` · `/rank/binge/page/2` */\nexport function rankListPath(filterSlug: string, page = 1) {\n const filter = rankFilterBySlug(filterSlug) ?? RANK_FILTERS[0];\n const parts: string[] = [\"rank\"];\n if (filter.slug !== DEFAULT_RANK_FILTER) parts.push(filter.slug);\n if (page > 1) parts.push(\"page\", String(page));\n return `/${parts.join(\"/\")}`;\n}\n\n/** `/topics` · `/topics/page/2` */\nexport function topicsListPath(page = 1) {\n return page > 1 ? `/topics/page/${page}` : \"/topics\";\n}\n\n/** `/shorts/more/{slug}` · `/shorts/more/{slug}/page/2` */\nexport function shortsMorePath(slug: string, page = 1) {\n const base = `/shorts/more/${slug}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n\n/** `/topics/{slug}` · `/topics/{slug}/page/2` */\nexport function topicDetailPath(slug: string, page = 1) {\n const base = `/topics/${slug}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n\n/** `/topics/tag/{tag}` · `/topics/tag/{tag}/page/2`;tag 优先传 slug,无则 id */\nexport function topicTagPath(tag: string, page = 1) {\n const segment = encodeURIComponent(tag);\n const base = `/topics/tag/${segment}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n"],"names":["OPERATE_FILTERS","slug","label","type","OPERATE_FILTER_LABELS","map","item","RANK_FILTERS","rankType","RANK_FILTER_LABELS","DEFAULT_OPERATE_FILTER","DEFAULT_RANK_FILTER","SHORTS_RESERVED_FILTERS","Set","parseChannelPage","raw","page","Number","isFinite","Math","floor","parseOperatePathSegments","segments","parts","length","filterSlug","pageNum","canonical","filter","operateFilterBySlug","parseRankPathSegments","rankFilterBySlug","parseTopicsPathSegments","kind","parseDetailPageSegments","_OPERATE_FILTERS_find","key","trim","find","operateFilterByLabel","_RANK_FILTERS_find","rankFilterByLabel","operateListPath","base","_operateFilterBySlug","push","String","join","rankListPath","_rankFilterBySlug","topicsListPath","shortsMorePath","topicDetailPath","topicTagPath","tag","segment","encodeURIComponent"],"mappings":"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"}}, - {"offset": {"line": 4955, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/contact.ts"],"sourcesContent":["/** 全站唯一对外联系方式:商务合作(Telegram @jbd125)。不再读取后台的邮箱 / QQ / X / 交流群配置。 */\nexport const BUSINESS_CONTACT = {\n label: \"商务合作\",\n handle: \"@jbd125\",\n href: \"https://t.me/jbd125\",\n} as const;\n"],"names":["BUSINESS_CONTACT","label","handle","href"],"mappings":"AAAA,kEAAkE;;;;AAC3D,MAAMA,mBAAmB;IAC9BC,OAAO;IACPC,QAAQ;IACRC,MAAM;AACR"}}, - {"offset": {"line": 4971, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/device-id.ts"],"sourcesContent":["const DEVICE_KEY = \"guest_dev_id\";\n\nfunction createDeviceId() {\n const chars = \"0123456789ABCDEF\";\n let id = \"\";\n const bytes = globalThis.crypto?.getRandomValues(new Uint8Array(16));\n if (bytes) {\n for (const byte of bytes) id += chars[byte % chars.length];\n return id;\n }\n for (let i = 0; i < 16; i += 1) id += chars[Math.floor(Math.random() * chars.length)];\n return id;\n}\n\nexport function getDeviceId() {\n if (typeof window === \"undefined\") return \"\";\n const existing = localStorage.getItem(DEVICE_KEY)?.trim();\n if (existing) return existing;\n const next = createDeviceId();\n localStorage.setItem(DEVICE_KEY, next);\n return next;\n}\n"],"names":["DEVICE_KEY","createDeviceId","_globalThis_crypto","chars","id","bytes","crypto","getRandomValues","Uint8Array","byte","length","i","Math","floor","random","getDeviceId","_localStorage_getItem","existing","getItem","trim","next","localStorage","setItem"],"mappings":";;;;AAAA,MAAMA,aAAa;AAEnB,SAASC;QAGOC;IAFd,MAAMC,QAAQ;IACd,IAAIC,KAAK;IACT,MAAMC,SAAQH,qBAAAA,WAAWI,MAAM,cAAjBJ,yCAAAA,mBAAmBK,eAAe,CAAC,IAAIC,WAAW;IAChE,IAAIH,OAAO;QACT,KAAK,MAAMI,QAAQJ,MAAOD,MAAMD,KAAK,CAACM,OAAON,MAAMO,MAAM,CAAC;QAC1D,OAAON;IACT;IACA,IAAK,IAAIO,IAAI,GAAGA,IAAI,IAAIA,KAAK,EAAGP,MAAMD,KAAK,CAACS,KAAKC,KAAK,CAACD,KAAKE,MAAM,KAAKX,MAAMO,MAAM,EAAE;IACrF,OAAON;AACT;AAEO,SAASW;QAEGC;IADjB;;IACA,MAAMC,YAAWD,wBAAAA,aAAaE,OAAO,CAAClB,yBAArBgB,4CAAAA,sBAAkCG,IAAI;IACvD,IAAIF,UAAU,OAAOA;IACrB,MAAMG,OAAOnB;IACboB,aAAaC,OAAO,CAACtB,YAAYoB;IACjC,OAAOA;AACT"}}, - {"offset": {"line": 5005, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/image/decrypt.ts"],"sourcesContent":["const XOR_KEY = new TextEncoder().encode(\"2019ysapp7527\");\n/** 图片解密失败或未指定封面时的缺省图 */\nexport const IMG_PLACEHOLDER = \"/placeholder.png\";\n/** 短剧/专题卡片封面缺省与解密前占位 */\nexport const CARD_PLACEHOLDER = \"/placeholder.png\";\n\nconst decryptedURLCache = new Map();\nconst decryptInflight = new Map>();\n\nexport function shouldDecryptImage(url: string | null | undefined) {\n if (!url) return false;\n const value = url.trim();\n if (!value || value.startsWith(\"data:\") || value.startsWith(\"blob:\")) return false;\n if (value.startsWith(\"/images/\") || value.startsWith(\"/logo\")) return false;\n return /^https?:\\/\\//i.test(value);\n}\n\nexport function imgDecrypt(buffer: ArrayBuffer) {\n const bytes = new Uint8Array(buffer.slice(0));\n for (let i = 0; i < Math.min(100, bytes.length); i += 1) {\n bytes[i] ^= XOR_KEY[i % XOR_KEY.length];\n }\n let mime = \"image/jpeg\";\n if (bytes[0] === 0x89 && bytes[1] === 0x50 && bytes[2] === 0x4e && bytes[3] === 0x47) mime = \"image/png\";\n else if (bytes[0] === 0x47 && bytes[1] === 0x49 && bytes[2] === 0x46) mime = \"image/gif\";\n return URL.createObjectURL(new Blob([bytes], { type: mime }));\n}\n\nexport function fetchDecryptImage(url: string) {\n const cached = decryptedURLCache.get(url);\n if (cached) return Promise.resolve(cached);\n const inflight = decryptInflight.get(url);\n if (inflight) return inflight;\n\n const task = fetch(url)\n .then(async (response) => {\n if (!response.ok) throw new Error(String(response.status));\n const blobUrl = imgDecrypt(await response.arrayBuffer());\n decryptedURLCache.set(url, blobUrl);\n return blobUrl;\n })\n .finally(() => {\n decryptInflight.delete(url);\n });\n decryptInflight.set(url, task);\n return task;\n}\n\nexport async function resolveImageSrc(url: string | null | undefined, fallback = IMG_PLACEHOLDER) {\n if (!url) return fallback;\n if (!shouldDecryptImage(url)) return url;\n try {\n return await fetchDecryptImage(url);\n } catch {\n return fallback;\n }\n}\n"],"names":["XOR_KEY","TextEncoder","encode","IMG_PLACEHOLDER","CARD_PLACEHOLDER","decryptedURLCache","Map","decryptInflight","shouldDecryptImage","url","value","trim","startsWith","test","imgDecrypt","buffer","bytes","Uint8Array","slice","i","Math","min","length","mime","URL","createObjectURL","Blob","type","fetchDecryptImage","cached","get","Promise","resolve","inflight","task","fetch","then","response","ok","Error","String","status","blobUrl","arrayBuffer","set","finally","delete","resolveImageSrc","fallback"],"mappings":";;;;;;;;;;;;;;AAAA,MAAMA,UAAU,IAAIC,cAAcC,MAAM,CAAC;AAElC,MAAMC,kBAAkB;AAExB,MAAMC,mBAAmB;AAEhC,MAAMC,oBAAoB,IAAIC;AAC9B,MAAMC,kBAAkB,IAAID;AAErB,SAASE,mBAAmBC,GAA8B;IAC/D,IAAI,CAACA,KAAK,OAAO;IACjB,MAAMC,QAAQD,IAAIE,IAAI;IACtB,IAAI,CAACD,SAASA,MAAME,UAAU,CAAC,YAAYF,MAAME,UAAU,CAAC,UAAU,OAAO;IAC7E,IAAIF,MAAME,UAAU,CAAC,eAAeF,MAAME,UAAU,CAAC,UAAU,OAAO;IACtE,OAAO,gBAAgBC,IAAI,CAACH;AAC9B;AAEO,SAASI,WAAWC,MAAmB;IAC5C,MAAMC,QAAQ,IAAIC,WAAWF,OAAOG,KAAK,CAAC;IAC1C,IAAK,IAAIC,IAAI,GAAGA,IAAIC,KAAKC,GAAG,CAAC,KAAKL,MAAMM,MAAM,GAAGH,KAAK,EAAG;QACvDH,KAAK,CAACG,EAAE,IAAInB,OAAO,CAACmB,IAAInB,QAAQsB,MAAM,CAAC;IACzC;IACA,IAAIC,OAAO;IACX,IAAIP,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,MAAMO,OAAO;SACxF,IAAIP,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,MAAMO,OAAO;IAC7E,OAAOC,IAAIC,eAAe,CAAC,IAAIC,KAAK;QAACV;KAAM,EAAE;QAAEW,MAAMJ;IAAK;AAC5D;AAEO,SAASK,kBAAkBnB,GAAW;IAC3C,MAAMoB,SAASxB,kBAAkByB,GAAG,CAACrB;IACrC,IAAIoB,QAAQ,OAAOE,QAAQC,OAAO,CAACH;IACnC,MAAMI,WAAW1B,gBAAgBuB,GAAG,CAACrB;IACrC,IAAIwB,UAAU,OAAOA;IAErB,MAAMC,OAAOC,MAAM1B,KAChB2B,IAAI,CAAC,OAAOC;QACX,IAAI,CAACA,SAASC,EAAE,EAAE,MAAM,IAAIC,MAAMC,OAAOH,SAASI,MAAM;QACxD,MAAMC,UAAU5B,WAAW,MAAMuB,SAASM,WAAW;QACrDtC,kBAAkBuC,GAAG,CAACnC,KAAKiC;QAC3B,OAAOA;IACT,GACCG,OAAO,CAAC;QACPtC,gBAAgBuC,MAAM,CAACrC;IACzB;IACFF,gBAAgBqC,GAAG,CAACnC,KAAKyB;IACzB,OAAOA;AACT;AAEO,eAAea,gBAAgBtC,GAA8B;QAAEuC,WAAAA,iEAAW7C;IAC/E,IAAI,CAACM,KAAK,OAAOuC;IACjB,IAAI,CAACxC,mBAAmBC,MAAM,OAAOA;IACrC,IAAI;QACF,OAAO,MAAMmB,kBAAkBnB;IACjC,EAAE,OAAM;QACN,OAAOuC;IACT;AACF"}}, - {"offset": {"line": 5078, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/playlet-display.ts"],"sourcesContent":["import type { PlayletCommonData } from \"@/lib/api/types\";\nimport { topicDetailPath, topicTagPath } from \"@/lib/channel-routes\";\n\n/** 详情路径优先 slug,无 slug 回退 id。 */\nexport function playletHref(item: Pick) {\n const slug = item.slug?.trim();\n return `/short-drama/${slug || item.id}`;\n}\n\n/** 播放路径:`/short-drama/{slug|id}/play/{episode}` */\nexport function playletPlayHref(item: Pick, episode: number) {\n return `${playletHref(item)}/play/${episode}`;\n}\n\nexport type PlayletTagLink = { label: string; key: string; kind: \"tag\" | \"theme\" };\n\n/**\n * 展示名 + 跳转 key(优先 slug,无 slug 用 id)。\n * 有 tagNames 时走标签;否则回退 themeNames / themeSlugs / themeIds。\n * 标签进 `/topics/tag/{slug}`,题材进 `/topics/{slug}`。\n */\nexport function playletTagLinks(\n item: Pick,\n limit = 2,\n): PlayletTagLink[] {\n const useTags = (item.tagNames || []).some(Boolean);\n const names = (useTags ? item.tagNames : item.themeNames) || [];\n const slugs = (useTags ? item.tagSlugs : item.themeSlugs) || [];\n const ids = (useTags ? item.tagIds : item.themeIds) || [];\n const kind: PlayletTagLink[\"kind\"] = useTags ? \"tag\" : \"theme\";\n const links: PlayletTagLink[] = [];\n for (let i = 0; i < names.length && links.length < limit; i += 1) {\n const label = names[i]?.trim();\n if (!label) continue;\n const slug = slugs[i]?.trim();\n const id = ids[i];\n const key = slug || (id != null && id !== 0 ? String(id) : \"\");\n if (!key) continue;\n links.push({ label, key, kind });\n }\n return links;\n}\n\n/** 标签查 tag/list,题材查 topic/detail。题材 slug 打到 tag/list 会返回 no data。 */\nexport function playletTagHref(tag: Pick) {\n return tag.kind === \"theme\" ? topicDetailPath(tag.key) : topicTagPath(tag.key);\n}\n\n/** 热度展示文案(仅格式化,不改字段名)。 */\nexport function formatHeatValue(value: number | null | undefined) {\n if (value == null || Number.isNaN(value)) return \"0\";\n if (value >= 10_000) {\n const wan = value / 10_000;\n return `${wan >= 10 ? wan.toFixed(0) : wan.toFixed(1).replace(/\\.0$/, \"\")}万`;\n }\n return value.toLocaleString(\"zh-CN\");\n}\n\n/** 封面角标仅三种,优先级:原创 > 爆剧 > 上新。 */\nexport function playletCoverBadge(item: Pick) {\n if (item.isRecommend) return { kind: \"free\" as const, label: \"原创\" };\n if (item.isFeatured) return { kind: \"hot\" as const, label: \"爆剧\" };\n if (item.isNew) return { kind: \"new\" as const, label: \"上新\" };\n return null;\n}\n"],"names":["playletHref","item","_item_slug","slug","trim","id","playletPlayHref","episode","playletTagLinks","limit","useTags","tagNames","some","Boolean","names","themeNames","slugs","tagSlugs","themeSlugs","ids","tagIds","themeIds","kind","links","i","length","_names_i","_slugs_i","label","key","String","push","playletTagHref","tag","formatHeatValue","value","Number","isNaN","wan","toFixed","replace","toLocaleString","playletCoverBadge","isRecommend","isFeatured","isNew"],"mappings":";;;;;;;;;;;;;;AACA;;AAGO,SAASA,YAAYC,IAA4C;QACzDC;IAAb,MAAMC,QAAOD,aAAAA,KAAKC,IAAI,cAATD,iCAAAA,WAAWE,IAAI;IAC5B,OAAO,CAAC,aAAa,EAAED,QAAQF,KAAKI,EAAE,EAAE;AAC1C;AAGO,SAASC,gBAAgBL,IAA4C,EAAEM,OAAe;IAC3F,OAAO,GAAGP,YAAYC,MAAM,MAAM,EAAEM,SAAS;AAC/C;AASO,SAASC,gBACdP,IAA4G;QAC5GQ,QAAAA,iEAAQ;IAER,MAAMC,UAAU,CAACT,KAAKU,QAAQ,IAAI,EAAE,EAAEC,IAAI,CAACC;IAC3C,MAAMC,QAAQ,CAACJ,UAAUT,KAAKU,QAAQ,GAAGV,KAAKc,UAAU,KAAK,EAAE;IAC/D,MAAMC,QAAQ,CAACN,UAAUT,KAAKgB,QAAQ,GAAGhB,KAAKiB,UAAU,KAAK,EAAE;IAC/D,MAAMC,MAAM,CAACT,UAAUT,KAAKmB,MAAM,GAAGnB,KAAKoB,QAAQ,KAAK,EAAE;IACzD,MAAMC,OAA+BZ,UAAU,QAAQ;IACvD,MAAMa,QAA0B,EAAE;IAClC,IAAK,IAAIC,IAAI,GAAGA,IAAIV,MAAMW,MAAM,IAAIF,MAAME,MAAM,GAAGhB,OAAOe,KAAK,EAAG;YAClDE,UAEDC;QAFb,MAAMC,SAAQF,WAAAA,KAAK,CAACF,EAAE,cAARE,+BAAAA,SAAUtB,IAAI;QAC5B,IAAI,CAACwB,OAAO;QACZ,MAAMzB,QAAOwB,WAAAA,KAAK,CAACH,EAAE,cAARG,+BAAAA,SAAUvB,IAAI;QAC3B,MAAMC,KAAKc,GAAG,CAACK,EAAE;QACjB,MAAMK,MAAM1B,QAAQ,CAACE,MAAM,QAAQA,OAAO,IAAIyB,OAAOzB,MAAM,EAAE;QAC7D,IAAI,CAACwB,KAAK;QACVN,MAAMQ,IAAI,CAAC;YAAEH;YAAOC;YAAKP;QAAK;IAChC;IACA,OAAOC;AACT;AAGO,SAASS,eAAeC,GAAyC;IACtE,OAAOA,IAAIX,IAAI,KAAK,UAAU,IAAA,qJAAe,EAACW,IAAIJ,GAAG,IAAI,IAAA,kJAAY,EAACI,IAAIJ,GAAG;AAC/E;AAGO,SAASK,gBAAgBC,KAAgC;IAC9D,IAAIA,SAAS,QAAQC,OAAOC,KAAK,CAACF,QAAQ,OAAO;IACjD,IAAIA,SAAS,QAAQ;QACnB,MAAMG,MAAMH,QAAQ;QACpB,OAAO,GAAGG,OAAO,KAAKA,IAAIC,OAAO,CAAC,KAAKD,IAAIC,OAAO,CAAC,GAAGC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IAC9E;IACA,OAAOL,MAAMM,cAAc,CAAC;AAC9B;AAGO,SAASC,kBAAkBzC,IAAqE;IACrG,IAAIA,KAAK0C,WAAW,EAAE,OAAO;QAAErB,MAAM;QAAiBM,OAAO;IAAK;IAClE,IAAI3B,KAAK2C,UAAU,EAAE,OAAO;QAAEtB,MAAM;QAAgBM,OAAO;IAAK;IAChE,IAAI3B,KAAK4C,KAAK,EAAE,OAAO;QAAEvB,MAAM;QAAgBM,OAAO;IAAK;IAC3D,OAAO;AACT"}}, - {"offset": {"line": 5159, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/translation-nav.ts"],"sourcesContent":["import type { TranslationCategory } from \"@/lib/api/types\";\n\n/** 空 urlValue 表示首页。外链原样保留。 */\nexport function translationHref(urlValue: string | undefined) {\n const raw = (urlValue || \"\").trim();\n if (!raw || raw === \"/\") return \"/\";\n return raw;\n}\n\nexport function isExternalHref(href: string) {\n return /^https?:\\/\\//i.test(href);\n}\n\n/** 顶栏当前项。详情、播放、更多列表和搜索页不点亮频道。 */\nexport function isTranslationCurrent(pathname: string, urlValue: string | undefined) {\n const href = translationHref(urlValue);\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return false;\n }\n if (href === \"/\") return pathname === \"/\";\n return pathname === href || pathname.startsWith(`${href}/`);\n}\n\nexport function usableTranslationCategories(list: TranslationCategory[] | undefined) {\n return (list || []).filter((item) => item?.name?.trim());\n}\n"],"names":["translationHref","urlValue","raw","trim","isExternalHref","href","test","isTranslationCurrent","pathname","startsWith","usableTranslationCategories","list","filter","item","_item_name","name"],"mappings":";;;;;;;;;;AAGO,SAASA,gBAAgBC,QAA4B;IAC1D,MAAMC,MAAM,CAACD,YAAY,EAAE,EAAEE,IAAI;IACjC,IAAI,CAACD,OAAOA,QAAQ,KAAK,OAAO;IAChC,OAAOA;AACT;AAEO,SAASE,eAAeC,IAAY;IACzC,OAAO,gBAAgBC,IAAI,CAACD;AAC9B;AAGO,SAASE,qBAAqBC,QAAgB,EAAEP,QAA4B;IACjF,MAAMI,OAAOL,gBAAgBC;IAC7B,IACEO,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,kBACpBD,SAASC,UAAU,CAAC,aACpBD,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,YACpBD,SAASC,UAAU,CAAC,YACpB;QACA,OAAO;IACT;IACA,IAAIJ,SAAS,KAAK,OAAOG,aAAa;IACtC,OAAOA,aAAaH,QAAQG,SAASC,UAAU,CAAC,GAAGJ,KAAK,CAAC,CAAC;AAC5D;AAEO,SAASK,4BAA4BC,IAAuC;IACjF,OAAO,CAACA,QAAQ,EAAE,EAAEC,MAAM,CAAC,CAACC;YAASC;eAAAA,iBAAAA,4BAAAA,aAAAA,KAAMC,IAAI,cAAVD,iCAAAA,WAAYX,IAAI;;AACvD"}}, - {"offset": {"line": 5198, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/data/catalog.json.[json].cjs/turbopack:/src/data/catalog.json"],"sourcesContent":["{\"cardStats\":[{\"badge\":\"爆剧\",\"likes\":23,\"tags\":[\"年代\",\"读心\",\"先婚后爱\"],\"favorites\":12.6},{\"badge\":\"新剧\",\"likes\":16,\"tags\":[\"都市\",\"女性成长\",\"逆袭\"],\"favorites\":8.9},{\"badge\":\"新剧\",\"likes\":12,\"tags\":[\"都市\",\"职场\",\"逆袭\"],\"favorites\":6.8},{\"badge\":\"爆剧\",\"likes\":28,\"tags\":[\"仙侠\",\"团宠\",\"漫剧\"],\"favorites\":15.4},{\"badge\":\"原创\",\"likes\":9,\"tags\":[\"都市\",\"甜宠\",\"双向治愈\"],\"favorites\":5.2},{\"badge\":\"原创\",\"likes\":7,\"tags\":[\"玄幻\",\"异能\",\"逆袭\"],\"favorites\":4.1}],\"coverHeights\":[914,914,915,914,914,914],\"covers\":[\"/images/covers/0.jpg\",\"/images/covers/1.jpg\",\"/images/covers/2.jpg\",\"/images/covers/3.jpg\",\"/images/covers/4.jpg\",\"/images/covers/5.jpg\"],\"heroes\":[{\"title\":\"一个部门的诞生\",\"wide\":\"/images/hero/0-wide.webp\",\"portrait\":\"/images/hero/0-portrait.jpg\"},{\"title\":\"特立独行\",\"wide\":\"/images/hero/1-wide.webp\",\"portrait\":\"/images/hero/1-portrait.jpg\"},{\"title\":\"给阿嬷的情书\",\"wide\":\"/images/hero/2-wide.webp\",\"portrait\":\"/images/hero/2-portrait.jpg\"},{\"title\":\"法医秦明之龙番往事\",\"wide\":\"/images/hero/3-wide.webp\",\"portrait\":\"/images/hero/3-portrait.jpg\"},{\"title\":\"一瓯春\",\"wide\":\"/images/hero/4-wide.webp\",\"portrait\":\"/images/hero/4-portrait.jpg\"},{\"title\":\"兰香如故\",\"wide\":\"/images/hero/5-wide.webp\",\"portrait\":\"/images/hero/5-portrait.jpg\"}],\"topics\":{\"dream\":\"/images/topics/dream.webp\",\"city\":\"/images/topics/city.webp\",\"love\":\"/images/topics/love.webp\",\"twists\":\"/images/topics/twists.webp\",\"growth\":\"/images/topics/growth.webp\",\"worth\":\"/images/topics/worth.webp\",\"hot\":\"/images/topics/hot.webp\",\"free\":\"/images/topics/free.webp\"},\"promoApps\":[{\"title\":\"星愿\",\"src\":\"/icons/apps/promo/0.png\"},{\"title\":\"Conso\",\"src\":\"/icons/apps/promo/1.png\"},{\"title\":\"Weela\",\"src\":\"/icons/apps/promo/2.png\"},{\"title\":\"JisQ\",\"src\":\"/icons/apps/promo/3.png\"},{\"title\":\"Soyo\",\"src\":\"/icons/apps/promo/4.png\"},{\"title\":\"Hi\",\"src\":\"/icons/apps/promo/5.png\"},{\"title\":\"Wakoo\",\"src\":\"/icons/apps/promo/6.png\"},{\"title\":\"Lumeet\",\"src\":\"/icons/apps/promo/7.png\"},{\"title\":\"Niki\",\"src\":\"/icons/apps/promo/8.png\"},{\"title\":\"星环\",\"src\":\"/icons/apps/promo/9.png\"},{\"title\":\"Meoo\",\"src\":\"/icons/apps/promo/10.png\"},{\"title\":\"Muaa\",\"src\":\"/icons/apps/promo/11.png\"},{\"title\":\"Xiu\",\"src\":\"/icons/apps/promo/12.png\"},{\"title\":\"Luna\",\"src\":\"/icons/apps/promo/13.png\"},{\"title\":\"Reisly\",\"src\":\"/icons/apps/promo/14.png\"},{\"title\":\"Live\",\"src\":\"/icons/apps/promo/15.png\"}],\"benefitApps\":[{\"title\":\"Siya\",\"src\":\"/icons/apps/benefit/0.png\"},{\"title\":\"Hi聊\",\"src\":\"/icons/apps/benefit/1.png\"},{\"title\":\"Vaga\",\"src\":\"/icons/apps/benefit/2.png\"},{\"title\":\"柠檬\",\"src\":\"/icons/apps/benefit/3.png\"},{\"title\":\"YES\",\"src\":\"/icons/apps/benefit/4.png\"},{\"title\":\"微笑\",\"src\":\"/icons/apps/benefit/5.png\"},{\"title\":\"星语\",\"src\":\"/icons/apps/benefit/6.png\"},{\"title\":\"Anyhoo\",\"src\":\"/icons/apps/benefit/7.png\"},{\"title\":\"蜜果\",\"src\":\"/icons/apps/benefit/8.png\"},{\"title\":\"蜜桃\",\"src\":\"/icons/apps/benefit/9.png\"},{\"title\":\"Live轻语\",\"src\":\"/icons/apps/benefit/10.png\"},{\"title\":\"Live霓虹\",\"src\":\"/icons/apps/benefit/11.png\"},{\"title\":\"Wanna\",\"src\":\"/icons/apps/benefit/12.png\"}],\"brand\":{\"logo\":\"/logo.png\",\"wordmark\":\"/logo.png\",\"coin\":\"/coin.png\",\"downloadLogo\":\"/logo.png\",\"avatar\":\"/images/avatar.png\",\"qr\":\"/images/qr.png\",\"footerLogo\":\"/logo.png\",\"favicon\":\"/favicon.png\",\"search\":\"/icons/search.svg\",\"qq\":\"/icons/qq.png\",\"seriesHeat\":\"/icons/series-heat.svg\"},\"navIcons\":[\"M778.85 226.8H639.62v58.49l65.87 54.05-17.61 5.61-183.52-107.69-318.02 186.62V815H404.6V601.86h199.53V815H822.4V423.88l-43.55-25.55V226.8z\",\"M765 558l-22.93-14.02L725 366h1.44l-1.17-12.3c-24.41-22.2-39.3-35.74-63.71-57.95H265.44c-24.41 22.2-39.3 35.74-63.71 57.95l-37.72 397c25.39 27.92 38.32 42.14 63.71 70.05h471.55c25.39-27.92 38.32-42.14 63.71-70.05l-9.03-95.04 132.04 55.6v-306l-116.13 48.9-4.87 103.85z\",\"M431.19 203.28L151.64 435.26l469.81 231.99 121.03-100.43-3.54 32.54-110.35 112.26-401.95-184.49-75 62.25 469.81 231.98L901 589.38l-116.43-57.5L901 435.26 431.19 203.28z\",\"M473.6 307.44L373.88 234H190.45c-13.24 14.55-19.99 21.97-33.24 36.52l44.5 470.8 52.39 47.67h536.5l52.31-46.92 28.26-259.47-523.33-12.55 20.98-25.18 508.58-19.49 8.82-80.95c-13.27-14.79-19.92-22.21-33.19-37H473.58z\",\"M710.83 236.25c-109.55-109.55-287.18-109.55-396.73 0-109.55 109.55-109.55 287.18 0 396.73 41.51 41.51 92.8 67.28 146.46 77.33l-14.22 28.06c-42.51 2.32-87.82-4.48-131.06-38.02l-18.72 181.57 215.04-83.69 215.04 83.69-24.78-240.38c3.03-2.78 6.03-5.62 8.97-8.56 109.55-109.55 109.55-287.18 0-396.73z\",\"M534.27 168v0.36h-46.45l-13.39 461.39h-0.19l-0.99 40.53-1.78 61.34h0.28l-0.17 6.93-24.29-15.19-6.63-91.65c-146.16 11.32-255.42 56.61-255.42 110.77 0 62.68 146.35 113.5 326.88 113.5S839 805.16 839 742.48c0-58.26-126.42-106.25-289.19-112.74l-4.84-166.76h346.86l-80.71-147.5 80.71-147.5H534.27z\",\"M178.74 474.5h46.77v0.28l33.03-0.28h305.41l-25.85 16.77-312.59 22.53V812h570.47V474.5h46.76v-102h-664v102zM662 243l-119 61-204.78-75.63L287 340l195.97 23 261.77-25L662 243z\"],\"collections\":{\"dream\":{\"title\":\"江湖好梦\",\"ids\":[3,5]},\"city\":{\"title\":\"都市新生\",\"ids\":[1,4]},\"twists\":{\"title\":\"高能反转\",\"ids\":[0,1,2,5]},\"love\":{\"title\":\"怦然心动\",\"ids\":[4,1,0,3,2,5]},\"growth\":{\"title\":\"重新爱自己\",\"ids\":[1,4,2,5,0,3]}},\"roadIcons\":{\"rocket\":\"/icons/road/rocket.svg\",\"link\":\"/icons/road/link.svg\",\"shield\":\"/icons/road/shield.svg\",\"troubleshoot\":\"/icons/road/troubleshoot.svg\",\"devices\":\"/icons/road/devices.svg\",\"iphone\":\"/icons/road/iphone.svg\",\"android\":\"/icons/road/android.svg\",\"desktop\":\"/icons/road/desktop.svg\",\"email\":\"/icons/road/email.svg\",\"tg\":\"/icons/road/tg.svg\",\"biz\":\"/icons/road/biz.svg\",\"twitter\":\"/icons/road/twitter.svg\"},\"returnIcons\":[\"/icons/return/0.svg\",\"/icons/return/1.svg\",\"/icons/return/2.svg\",\"/icons/return/3.svg\",\"/icons/return/4.svg\"]}"],"names":[],"mappings":""}}] + {"offset": {"line": 4163, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/catalog.ts"],"sourcesContent":["import catalogJson from \"@/data/catalog.json\";\nimport sourceDramas from \"@/data/dramas.js\";\nimport type { AppIcon, CardStat, CoverBadge, Drama, TopicCollection } from \"@/lib/types\";\n\nconst STEMS = [\"星河\", \"晚风\", \"春日\", \"月光\", \"山海\", \"归途\", \"长街\", \"云端\", \"微光\", \"朝暮\"];\nconst ENDINGS = [\"落在你肩上\", \"与君再相逢\", \"藏不住心动\", \"照亮回家的路\", \"等一场花开\", \"写给未来的信\", \"在雨季重逢\", \"奔向有光处\", \"听见你的心声\", \"越过人海见你\"];\nconst GENRES = [\"都市\", \"甜宠\", \"仙侠\", \"悬疑\", \"古装\", \"年代\", \"职场\", \"家庭\", \"青春\", \"逆袭\"];\nconst BADGE_CYCLE: CoverBadge[] = [\"hot\", \"new\", \"free\", \"\"];\nconst BADGE_LABEL = { hot: \"爆剧\", new: \"新剧\", free: \"原创\" } as const;\n\nexport const NAV_ITEMS = [\n { href: \"/\", label: \"首页\", page: \"home\", exact: true },\n { href: \"/shorts\", label: \"短剧\", page: \"shorts\", exact: false },\n { href: \"/series\", label: \"剧集\", page: \"series\", exact: false },\n { href: \"/topics\", label: \"专题\", page: \"topics\", exact: false },\n { href: \"/rank\", label: \"热榜\", page: \"rank\", exact: false },\n { href: \"/home-road\", label: \"回家的路\", page: \"home-road\", exact: false },\n] as const;\n\nexport function activeNavKey(pathname: string) {\n // 详情/播放页、更多专题、搜索页不点亮主导航\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return \"\";\n }\n const match = NAV_ITEMS.find((item) => (item.exact ? pathname === item.href : pathname === item.href || pathname.startsWith(`${item.href}/`)));\n return match?.page ?? \"\";\n}\n\nexport const INFO_LINKS = [\n { href: \"/info/about-us\", label: \"关于我们\" },\n { href: \"/info/user-agreement\", label: \"用户协议\" },\n { href: \"/info/privacy-policy\", label: \"隐私政策\" },\n { href: \"/info/help-center\", label: \"常见问题\" },\n { href: \"/info/2257\", label: \"2257\" },\n { href: \"/info/dmca\", label: \"DMCA\" },\n] as const;\n\nexport const CHANNELS = {\n shorts: { title: \"短剧\", kicker: \"SHORT FILMS\", subtitle: \"发现最新故事,挑选人气好剧。\" },\n series: { title: \"剧集\", kicker: \"SERIES\", subtitle: \"浏览完整剧集,选择下一部想追的故事。\" },\n topics: { title: \"短剧专题\", kicker: \"COLLECTIONS\", subtitle: \"围绕一个主题,发现一组好故事。\" },\n rank: { title: \"排行榜\", kicker: \"RANKINGS\", subtitle: \"从热度、上新和你的收藏中发现好剧。\" },\n \"home-road\": { title: \"回家的路\", kicker: \"STAY CONNECTED\", subtitle: \"收藏访问入口,下次回来更方便。\" },\n} as const;\n\nexport const SORTS = [\"最新更新\", \"当前热播\", \"独家原创\", \"随机推荐\"] as const;\nexport const RANK_BOARDS = [\"热播榜\", \"新剧榜\", \"追剧榜\"] as const;\n\nexport const FRIEND_LINKS = [\n \"4399小游戏\",\n \"4399游戏盒\",\n \"4399游戏吧\",\n \"4399手机游戏网\",\n \"4399网页游戏\",\n \"4399游戏资讯\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手游论坛\",\n \"4399手机开放平台\",\n \"4399游戏盒推荐\",\n \"4399在线玩\",\n];\n\nexport const ANNOUNCEMENT =\n \"欢迎来到黄果短剧,发现值得一看的好故事!都市甜宠、古装仙侠、悬疑逆袭、热血成长,多种题材随心挑选;浏览精选专题与热门榜单,找到适合此刻心情的精彩短剧。遇到喜欢的作品,记得加入收藏,方便下次继续观看;打开观看历史,轻松找回看过的故事。想看更多内容,可前往短剧、剧集与专题页面探索,也欢迎通过意见反馈告诉我们你的想法。收藏「回家的路」,随时找到黄果短剧,愿每一次相遇,都有好故事陪伴你! · \";\n\ntype CatalogFile = {\n cardStats: CardStat[];\n coverHeights: number[];\n covers: string[];\n heroes: { title: string; wide: string; portrait: string }[];\n topics: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nconst file = catalogJson as CatalogFile;\n\nexport type Catalog = {\n base: Drama[];\n all: Drama[];\n stats: CardStat[];\n badges: CoverBadge[];\n covers: string[];\n coverHeights: number[];\n heroes: CatalogFile[\"heroes\"];\n topicCovers: Record;\n promoApps: AppIcon[];\n benefitApps: AppIcon[];\n brand: Record;\n navIcons: string[];\n roadIcons: Record;\n returnIcons: string[];\n collections: Record;\n};\n\nlet cached: Catalog | null = null;\n\nexport function getCatalog(): Catalog {\n if (cached) return cached;\n const base = sourceDramas.map((drama) => ({ ...drama }));\n const stats = file.cardStats.map((item) => ({ ...item, tags: [...item.tags] }));\n const badges: CoverBadge[] = base.map((_, index) => BADGE_CYCLE[index % BADGE_CYCLE.length]);\n const all = [...base];\n\n while (all.length < 100) {\n const sampleCount = all.length - base.length;\n const baseDrama = base[sampleCount % base.length] ?? base[0];\n const title = `${STEMS[Math.floor(sampleCount / ENDINGS.length) % STEMS.length]}${ENDINGS[sampleCount % ENDINGS.length]}`;\n const genre = GENRES[sampleCount % GENRES.length];\n const badgeName = ([\"爆剧\", \"新剧\", \"原创\"] as const)[sampleCount % 3];\n all.push({\n ...baseDrama,\n id: all.length,\n title,\n genre,\n heat: (99.8 - ((sampleCount * 1.37) % 61)).toFixed(1),\n eps: 60 + ((sampleCount * 17) % 420),\n mode: \"免费\",\n desc: `${title},一段关于选择、成长与重逢的故事正在展开。`,\n listSample: true,\n });\n stats.push({\n badge: badgeName,\n likes: 18 + ((sampleCount * 7) % 80),\n tags: [genre, \"精选短剧\"],\n favorites: Number((38 + ((sampleCount * 13) % 70) + sampleCount / 10).toFixed(1)),\n });\n badges.push(badgeName === \"爆剧\" ? \"hot\" : badgeName === \"新剧\" ? \"new\" : \"free\");\n }\n\n cached = {\n base,\n all,\n stats,\n badges,\n covers: file.covers,\n coverHeights: file.coverHeights,\n heroes: file.heroes,\n topicCovers: file.topics,\n promoApps: file.promoApps,\n benefitApps: file.benefitApps,\n brand: file.brand,\n navIcons: file.navIcons,\n roadIcons: file.roadIcons,\n returnIcons: file.returnIcons,\n collections: file.collections,\n };\n return cached;\n}\n\nexport function badgeLabel(type: CoverBadge) {\n return type ? BADGE_LABEL[type] : \"\";\n}\n\nexport function findDrama(id: number) {\n return getCatalog().all.find((drama) => drama.id === id) ?? null;\n}\n\nexport function coverSrc(drama: Drama) {\n const { covers } = getCatalog();\n return covers[drama.img % covers.length];\n}\n\nexport function coverHeight(drama: Drama) {\n const { coverHeights } = getCatalog();\n return coverHeights[drama.img % coverHeights.length] ?? 914;\n}\n\nexport function romanceIds(dramas: Drama[]) {\n const lead = [4, 1, 0, 3];\n return [...lead, ...dramas.map((drama) => drama.id).filter((id) => !lead.includes(id))].slice(0, 10);\n}\n\nexport function homeCollections() {\n const { base, collections } = getCatalog();\n const dynamic: Record = {\n worth: { title: \"值得一追\", ids: base.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...base].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: base.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n return { ...collections, ...dynamic };\n}\n\nexport function topicList(slug: string) {\n const catalog = getCatalog();\n if (slug.startsWith(\"tag-\")) {\n const tag = decodeURIComponent(slug.slice(4));\n const ids = catalog.all.filter((drama) => catalog.stats[drama.id]?.tags.includes(tag)).map((drama) => drama.id);\n return { title: tag ? `#${tag}` : \"专题\", dramas: ids.map((id) => catalog.all[id]).filter(Boolean), isTag: true };\n }\n const collections = slug === \"worth\" || slug === \"hot\" || slug === \"free\" ? fullCollections() : catalog.collections;\n const collection = collections[slug];\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return { title: collection.title, dramas: [...picked, ...rest].slice(0, 100), isTag: false };\n}\n\nfunction fullCollections(): Record {\n const { all } = getCatalog();\n return {\n worth: { title: \"值得一追\", ids: all.map((drama) => drama.id) },\n hot: {\n title: \"人气必看\",\n ids: [...all].sort((a, b) => Number(b.heat) - Number(a.heat)).slice(0, 6).map((drama) => drama.id),\n },\n free: { title: \"免费好剧\", ids: all.filter((drama) => drama.mode === \"免费\").map((drama) => drama.id) },\n };\n}\n\nexport function dramasBySort(sort: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (sort === \"当前热播\" || sort === \"人气优先\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n else if (sort === \"独家原创\") return list.filter((drama) => stats[drama.id]?.badge === \"原创\");\n else if (sort === \"最新更新\") list.reverse();\n else if (sort === \"随机推荐\") return seededShuffle(list);\n return list;\n}\n\nexport function dramasByRank(board: string) {\n const { all, stats } = getCatalog();\n const list = [...all];\n if (board === \"热播榜\") list.sort((a, b) => Number(b.heat) - Number(a.heat));\n if (board === \"新剧榜\") list.sort((a, b) => b.id - a.id);\n if (board === \"追剧榜\") {\n list.sort(\n (a, b) =>\n (stats[b.id]?.favorites ?? 0) - (stats[a.id]?.favorites ?? 0) || Number(b.heat) - Number(a.heat),\n );\n }\n return list;\n}\n\nexport function morePage(slug: string) {\n const catalog = getCatalog();\n const names: Record = {\n mustwatch: \"必看好剧\",\n hot: \"热门好剧\",\n topics: \"专题推荐\",\n dream: \"今日推荐\",\n worth: \"最近更新\",\n };\n if (slug === \"topics\") return { kind: \"topics\" as const, name: names.topics };\n if (slug === \"hot\") {\n return {\n kind: \"dramas\" as const,\n name: names.hot,\n dramas: [...catalog.all].sort((a, b) => Number(b.heat) - Number(a.heat)),\n };\n }\n const collection =\n slug === \"mustwatch\"\n ? { title: names.mustwatch, ids: romanceIds(catalog.base) }\n : (catalog.collections[slug] ?? fullCollections()[slug]);\n if (!collection) return null;\n const picked = collection.ids.map((id) => catalog.all[id]).filter(Boolean);\n const rest = catalog.all.filter((drama) => !collection.ids.includes(drama.id));\n return {\n kind: \"dramas\" as const,\n name: names[slug] ?? collection.title,\n dramas: [...picked, ...rest].slice(0, 100),\n };\n}\n\nexport function searchDramas(query: string) {\n const term = query.trim();\n if (!term) return [];\n return getCatalog().all.filter((drama) => `${drama.title}${drama.genre}`.includes(term));\n}\n\nfunction seededShuffle(list: T[]) {\n const items = [...list];\n let state = 1048;\n const next = () => {\n state = (Math.imul(state, 1664525) + 1013904223) >>> 0;\n return state / 4294967296;\n };\n for (let index = items.length - 1; index > 0; index -= 1) {\n const swap = Math.floor(next() * (index + 1));\n [items[index], items[swap]] = [items[swap], items[index]];\n }\n return items;\n}\n"],"names":["STEMS","ENDINGS","GENRES","BADGE_CYCLE","BADGE_LABEL","hot","new","free","NAV_ITEMS","href","label","page","exact","activeNavKey","pathname","startsWith","match","find","item","INFO_LINKS","CHANNELS","shorts","title","kicker","subtitle","series","topics","rank","SORTS","RANK_BOARDS","FRIEND_LINKS","ANNOUNCEMENT","file","cached","getCatalog","base","map","drama","stats","cardStats","tags","badges","_","index","length","all","_base_","sampleCount","baseDrama","Math","floor","genre","badgeName","push","id","heat","toFixed","eps","mode","desc","listSample","badge","likes","favorites","Number","covers","coverHeights","heroes","topicCovers","promoApps","benefitApps","brand","navIcons","roadIcons","returnIcons","collections","badgeLabel","type","findDrama","_getCatalog_all_find","coverSrc","img","coverHeight","_coverHeights_","romanceIds","dramas","lead","filter","includes","slice","homeCollections","dynamic","worth","ids","sort","a","b","topicList","slug","catalog","tag","decodeURIComponent","_catalog_stats_drama_id","Boolean","isTag","fullCollections","collection","picked","rest","dramasBySort","list","_stats_drama_id","reverse","seededShuffle","dramasByRank","board","_stats_b_id","_stats_a_id","morePage","_catalog_collections_slug","_names_slug","names","mustwatch","dream","kind","name","searchDramas","query","term","trim","items","state","next","imul","swap"],"mappings":"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"}}, + {"offset": {"line": 4648, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/channel-routes.ts"],"sourcesContent":["/** 频道列表路径:英文 slug + /page/{n},不用 query。 */\n\nexport const OPERATE_FILTERS = [\n { slug: \"latest\", label: \"最新更新\", type: 1 as const },\n { slug: \"popular\", label: \"当前热播\", type: 2 as const },\n { slug: \"original\", label: \"独家原创\", type: 3 as const },\n { slug: \"random\", label: \"随机推荐\", type: 4 as const },\n] as const;\n\nexport type OperateFilterSlug = (typeof OPERATE_FILTERS)[number][\"slug\"];\nexport type OperateFilterLabel = (typeof OPERATE_FILTERS)[number][\"label\"];\n\nexport const OPERATE_FILTER_LABELS: OperateFilterLabel[] = OPERATE_FILTERS.map((item) => item.label);\n\nexport const RANK_FILTERS = [\n { slug: \"hot\", label: \"热播榜\", rankType: 1 as const },\n { slug: \"new\", label: \"新剧榜\", rankType: 2 as const },\n { slug: \"binge\", label: \"追剧榜\", rankType: 3 as const },\n] as const;\n\nexport type RankFilterSlug = (typeof RANK_FILTERS)[number][\"slug\"];\nexport type RankFilterLabel = (typeof RANK_FILTERS)[number][\"label\"];\n\nexport const RANK_FILTER_LABELS: RankFilterLabel[] = RANK_FILTERS.map((item) => item.label);\n\nexport const DEFAULT_OPERATE_FILTER: OperateFilterSlug = \"latest\";\nexport const DEFAULT_RANK_FILTER: RankFilterSlug = \"hot\";\n\n/** 短剧 `[filter]` 保留段,避免与 more 路由冲突。 */\nexport const SHORTS_RESERVED_FILTERS = new Set([\"more\", \"page\"]);\n\nexport function parseChannelPage(raw: string | undefined | null) {\n const page = Number(raw);\n if (!Number.isFinite(page) || page < 1) return 0;\n return Math.floor(page);\n}\n\n/**\n * 解析运营列表路径段:\n * [] | ['page', n] | [filter] | [filter, 'page', n]\n */\nexport function parseOperatePathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) {\n return { filterSlug: DEFAULT_OPERATE_FILTER, pageNum: 1, canonical: true as const };\n }\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { filterSlug: DEFAULT_OPERATE_FILTER, pageNum, canonical: pageNum > 1 };\n }\n const filter = operateFilterBySlug(parts[0]);\n if (!filter) return null;\n if (parts.length === 1) {\n return {\n filterSlug: filter.slug,\n pageNum: 1,\n canonical: filter.slug !== DEFAULT_OPERATE_FILTER,\n };\n }\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return {\n filterSlug: filter.slug,\n pageNum,\n canonical: filter.slug !== DEFAULT_OPERATE_FILTER && pageNum > 1,\n };\n }\n return null;\n}\n\n/** [] | ['page', n] | [filter] | [filter, 'page', n] */\nexport function parseRankPathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) {\n return { filterSlug: DEFAULT_RANK_FILTER, pageNum: 1, canonical: true as const };\n }\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { filterSlug: DEFAULT_RANK_FILTER, pageNum, canonical: pageNum > 1 };\n }\n const filter = rankFilterBySlug(parts[0]);\n if (!filter) return null;\n if (parts.length === 1) {\n return {\n filterSlug: filter.slug,\n pageNum: 1,\n canonical: filter.slug !== DEFAULT_RANK_FILTER,\n };\n }\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return {\n filterSlug: filter.slug,\n pageNum,\n canonical: filter.slug !== DEFAULT_RANK_FILTER && pageNum > 1,\n };\n }\n return null;\n}\n\n/**\n * 专题路径:列表 [] | ['page', n];详情 [slug] | [slug, 'page', n]\n * tag 路由由 /topics/tag/... 单独处理。\n */\nexport function parseTopicsPathSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) return { kind: \"list\" as const, pageNum: 1 };\n if (parts[0] === \"tag\") return null;\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { kind: \"list\" as const, pageNum };\n }\n if (parts[0] === \"page\") return null;\n if (parts.length === 1) return { kind: \"detail\" as const, slug: parts[0], pageNum: 1 };\n if (parts.length === 3 && parts[1] === \"page\") {\n const pageNum = parseChannelPage(parts[2]);\n if (!pageNum) return null;\n return { kind: \"detail\" as const, slug: parts[0], pageNum };\n }\n return null;\n}\n\n/** 详情/更多分页:[] | ['page', n] */\nexport function parseDetailPageSegments(segments: string[] | undefined) {\n const parts = segments ?? [];\n if (parts.length === 0) return { pageNum: 1, canonical: true as const };\n if (parts.length === 2 && parts[0] === \"page\") {\n const pageNum = parseChannelPage(parts[1]);\n if (!pageNum) return null;\n return { pageNum, canonical: pageNum > 1 };\n }\n return null;\n}\n\nexport function operateFilterBySlug(slug: string | undefined | null) {\n const key = (slug || DEFAULT_OPERATE_FILTER).trim();\n return OPERATE_FILTERS.find((item) => item.slug === key) ?? null;\n}\n\nexport function operateFilterByLabel(label: string) {\n return OPERATE_FILTERS.find((item) => item.label === label) ?? OPERATE_FILTERS[0];\n}\n\nexport function rankFilterBySlug(slug: string | undefined | null) {\n const key = (slug || DEFAULT_RANK_FILTER).trim();\n return RANK_FILTERS.find((item) => item.slug === key) ?? null;\n}\n\nexport function rankFilterByLabel(label: string) {\n return RANK_FILTERS.find((item) => item.label === label) ?? RANK_FILTERS[0];\n}\n\n/** `/shorts` · `/shorts/page/2` · `/shorts/popular` · `/shorts/popular/page/2` */\nexport function operateListPath(base: \"shorts\" | \"series\", filterSlug: string, page = 1) {\n const filter = operateFilterBySlug(filterSlug) ?? OPERATE_FILTERS[0];\n const parts: string[] = [base];\n if (filter.slug !== DEFAULT_OPERATE_FILTER) parts.push(filter.slug);\n if (page > 1) parts.push(\"page\", String(page));\n return `/${parts.join(\"/\")}`;\n}\n\n/** `/rank` · `/rank/page/2` · `/rank/new` · `/rank/binge/page/2` */\nexport function rankListPath(filterSlug: string, page = 1) {\n const filter = rankFilterBySlug(filterSlug) ?? RANK_FILTERS[0];\n const parts: string[] = [\"rank\"];\n if (filter.slug !== DEFAULT_RANK_FILTER) parts.push(filter.slug);\n if (page > 1) parts.push(\"page\", String(page));\n return `/${parts.join(\"/\")}`;\n}\n\n/** `/topics` · `/topics/page/2` */\nexport function topicsListPath(page = 1) {\n return page > 1 ? `/topics/page/${page}` : \"/topics\";\n}\n\n/** `/shorts/more/{slug}` · `/shorts/more/{slug}/page/2` */\nexport function shortsMorePath(slug: string, page = 1) {\n const base = `/shorts/more/${slug}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n\n/** `/topics/{slug}` · `/topics/{slug}/page/2` */\nexport function topicDetailPath(slug: string, page = 1) {\n const base = `/topics/${slug}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n\n/** `/topics/tag/{tag}` · `/topics/tag/{tag}/page/2`;tag 优先传 slug,无则 id */\nexport function topicTagPath(tag: string, page = 1) {\n const segment = encodeURIComponent(tag);\n const base = `/topics/tag/${segment}`;\n return page > 1 ? `${base}/page/${page}` : base;\n}\n"],"names":["OPERATE_FILTERS","slug","label","type","OPERATE_FILTER_LABELS","map","item","RANK_FILTERS","rankType","RANK_FILTER_LABELS","DEFAULT_OPERATE_FILTER","DEFAULT_RANK_FILTER","SHORTS_RESERVED_FILTERS","Set","parseChannelPage","raw","page","Number","isFinite","Math","floor","parseOperatePathSegments","segments","parts","length","filterSlug","pageNum","canonical","filter","operateFilterBySlug","parseRankPathSegments","rankFilterBySlug","parseTopicsPathSegments","kind","parseDetailPageSegments","_OPERATE_FILTERS_find","key","trim","find","operateFilterByLabel","_RANK_FILTERS_find","rankFilterByLabel","operateListPath","base","_operateFilterBySlug","push","String","join","rankListPath","_rankFilterBySlug","topicsListPath","shortsMorePath","topicDetailPath","topicTagPath","tag","segment","encodeURIComponent"],"mappings":"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"}}, + {"offset": {"line": 4944, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/contact.ts"],"sourcesContent":["/** 全站唯一对外联系方式:商务合作(Telegram @jbd125)。不再读取后台的邮箱 / QQ / X / 交流群配置。 */\nexport const BUSINESS_CONTACT = {\n label: \"商务合作\",\n handle: \"@jbd125\",\n href: \"https://t.me/jbd125\",\n} as const;\n"],"names":["BUSINESS_CONTACT","label","handle","href"],"mappings":"AAAA,kEAAkE;;;;AAC3D,MAAMA,mBAAmB;IAC9BC,OAAO;IACPC,QAAQ;IACRC,MAAM;AACR"}}, + {"offset": {"line": 4960, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/device-id.ts"],"sourcesContent":["const DEVICE_KEY = \"guest_dev_id\";\n\nfunction createDeviceId() {\n const chars = \"0123456789ABCDEF\";\n let id = \"\";\n const bytes = globalThis.crypto?.getRandomValues(new Uint8Array(16));\n if (bytes) {\n for (const byte of bytes) id += chars[byte % chars.length];\n return id;\n }\n for (let i = 0; i < 16; i += 1) id += chars[Math.floor(Math.random() * chars.length)];\n return id;\n}\n\nexport function getDeviceId() {\n if (typeof window === \"undefined\") return \"\";\n const existing = localStorage.getItem(DEVICE_KEY)?.trim();\n if (existing) return existing;\n const next = createDeviceId();\n localStorage.setItem(DEVICE_KEY, next);\n return next;\n}\n"],"names":["DEVICE_KEY","createDeviceId","_globalThis_crypto","chars","id","bytes","crypto","getRandomValues","Uint8Array","byte","length","i","Math","floor","random","getDeviceId","_localStorage_getItem","existing","getItem","trim","next","localStorage","setItem"],"mappings":";;;;AAAA,MAAMA,aAAa;AAEnB,SAASC;QAGOC;IAFd,MAAMC,QAAQ;IACd,IAAIC,KAAK;IACT,MAAMC,SAAQH,qBAAAA,WAAWI,MAAM,cAAjBJ,yCAAAA,mBAAmBK,eAAe,CAAC,IAAIC,WAAW;IAChE,IAAIH,OAAO;QACT,KAAK,MAAMI,QAAQJ,MAAOD,MAAMD,KAAK,CAACM,OAAON,MAAMO,MAAM,CAAC;QAC1D,OAAON;IACT;IACA,IAAK,IAAIO,IAAI,GAAGA,IAAI,IAAIA,KAAK,EAAGP,MAAMD,KAAK,CAACS,KAAKC,KAAK,CAACD,KAAKE,MAAM,KAAKX,MAAMO,MAAM,EAAE;IACrF,OAAON;AACT;AAEO,SAASW;QAEGC;IADjB;;IACA,MAAMC,YAAWD,wBAAAA,aAAaE,OAAO,CAAClB,yBAArBgB,4CAAAA,sBAAkCG,IAAI;IACvD,IAAIF,UAAU,OAAOA;IACrB,MAAMG,OAAOnB;IACboB,aAAaC,OAAO,CAACtB,YAAYoB;IACjC,OAAOA;AACT"}}, + {"offset": {"line": 4994, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/image/decrypt.ts"],"sourcesContent":["const XOR_KEY = new TextEncoder().encode(\"2019ysapp7527\");\n/** 图片解密失败或未指定封面时的缺省图 */\nexport const IMG_PLACEHOLDER = \"/placeholder.png\";\n/** 短剧/专题卡片封面缺省与解密前占位 */\nexport const CARD_PLACEHOLDER = \"/placeholder.png\";\n\nconst decryptedURLCache = new Map();\nconst decryptInflight = new Map>();\n\nexport function shouldDecryptImage(url: string | null | undefined) {\n if (!url) return false;\n const value = url.trim();\n if (!value || value.startsWith(\"data:\") || value.startsWith(\"blob:\")) return false;\n if (value.startsWith(\"/images/\") || value.startsWith(\"/logo\")) return false;\n return /^https?:\\/\\//i.test(value);\n}\n\nexport function imgDecrypt(buffer: ArrayBuffer) {\n const bytes = new Uint8Array(buffer.slice(0));\n for (let i = 0; i < Math.min(100, bytes.length); i += 1) {\n bytes[i] ^= XOR_KEY[i % XOR_KEY.length];\n }\n let mime = \"image/jpeg\";\n if (bytes[0] === 0x89 && bytes[1] === 0x50 && bytes[2] === 0x4e && bytes[3] === 0x47) mime = \"image/png\";\n else if (bytes[0] === 0x47 && bytes[1] === 0x49 && bytes[2] === 0x46) mime = \"image/gif\";\n return URL.createObjectURL(new Blob([bytes], { type: mime }));\n}\n\nexport function fetchDecryptImage(url: string) {\n const cached = decryptedURLCache.get(url);\n if (cached) return Promise.resolve(cached);\n const inflight = decryptInflight.get(url);\n if (inflight) return inflight;\n\n const task = fetch(url)\n .then(async (response) => {\n if (!response.ok) throw new Error(String(response.status));\n const blobUrl = imgDecrypt(await response.arrayBuffer());\n decryptedURLCache.set(url, blobUrl);\n return blobUrl;\n })\n .finally(() => {\n decryptInflight.delete(url);\n });\n decryptInflight.set(url, task);\n return task;\n}\n\nexport async function resolveImageSrc(url: string | null | undefined, fallback = IMG_PLACEHOLDER) {\n if (!url) return fallback;\n if (!shouldDecryptImage(url)) return url;\n try {\n return await fetchDecryptImage(url);\n } catch {\n return fallback;\n }\n}\n"],"names":["XOR_KEY","TextEncoder","encode","IMG_PLACEHOLDER","CARD_PLACEHOLDER","decryptedURLCache","Map","decryptInflight","shouldDecryptImage","url","value","trim","startsWith","test","imgDecrypt","buffer","bytes","Uint8Array","slice","i","Math","min","length","mime","URL","createObjectURL","Blob","type","fetchDecryptImage","cached","get","Promise","resolve","inflight","task","fetch","then","response","ok","Error","String","status","blobUrl","arrayBuffer","set","finally","delete","resolveImageSrc","fallback"],"mappings":";;;;;;;;;;;;;;AAAA,MAAMA,UAAU,IAAIC,cAAcC,MAAM,CAAC;AAElC,MAAMC,kBAAkB;AAExB,MAAMC,mBAAmB;AAEhC,MAAMC,oBAAoB,IAAIC;AAC9B,MAAMC,kBAAkB,IAAID;AAErB,SAASE,mBAAmBC,GAA8B;IAC/D,IAAI,CAACA,KAAK,OAAO;IACjB,MAAMC,QAAQD,IAAIE,IAAI;IACtB,IAAI,CAACD,SAASA,MAAME,UAAU,CAAC,YAAYF,MAAME,UAAU,CAAC,UAAU,OAAO;IAC7E,IAAIF,MAAME,UAAU,CAAC,eAAeF,MAAME,UAAU,CAAC,UAAU,OAAO;IACtE,OAAO,gBAAgBC,IAAI,CAACH;AAC9B;AAEO,SAASI,WAAWC,MAAmB;IAC5C,MAAMC,QAAQ,IAAIC,WAAWF,OAAOG,KAAK,CAAC;IAC1C,IAAK,IAAIC,IAAI,GAAGA,IAAIC,KAAKC,GAAG,CAAC,KAAKL,MAAMM,MAAM,GAAGH,KAAK,EAAG;QACvDH,KAAK,CAACG,EAAE,IAAInB,OAAO,CAACmB,IAAInB,QAAQsB,MAAM,CAAC;IACzC;IACA,IAAIC,OAAO;IACX,IAAIP,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,MAAMO,OAAO;SACxF,IAAIP,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,QAAQA,KAAK,CAAC,EAAE,KAAK,MAAMO,OAAO;IAC7E,OAAOC,IAAIC,eAAe,CAAC,IAAIC,KAAK;QAACV;KAAM,EAAE;QAAEW,MAAMJ;IAAK;AAC5D;AAEO,SAASK,kBAAkBnB,GAAW;IAC3C,MAAMoB,SAASxB,kBAAkByB,GAAG,CAACrB;IACrC,IAAIoB,QAAQ,OAAOE,QAAQC,OAAO,CAACH;IACnC,MAAMI,WAAW1B,gBAAgBuB,GAAG,CAACrB;IACrC,IAAIwB,UAAU,OAAOA;IAErB,MAAMC,OAAOC,MAAM1B,KAChB2B,IAAI,CAAC,OAAOC;QACX,IAAI,CAACA,SAASC,EAAE,EAAE,MAAM,IAAIC,MAAMC,OAAOH,SAASI,MAAM;QACxD,MAAMC,UAAU5B,WAAW,MAAMuB,SAASM,WAAW;QACrDtC,kBAAkBuC,GAAG,CAACnC,KAAKiC;QAC3B,OAAOA;IACT,GACCG,OAAO,CAAC;QACPtC,gBAAgBuC,MAAM,CAACrC;IACzB;IACFF,gBAAgBqC,GAAG,CAACnC,KAAKyB;IACzB,OAAOA;AACT;AAEO,eAAea,gBAAgBtC,GAA8B;QAAEuC,WAAAA,iEAAW7C;IAC/E,IAAI,CAACM,KAAK,OAAOuC;IACjB,IAAI,CAACxC,mBAAmBC,MAAM,OAAOA;IACrC,IAAI;QACF,OAAO,MAAMmB,kBAAkBnB;IACjC,EAAE,OAAM;QACN,OAAOuC;IACT;AACF"}}, + {"offset": {"line": 5067, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/playlet-display.ts"],"sourcesContent":["import type { PlayletCommonData } from \"@/lib/api/types\";\nimport { topicDetailPath, topicTagPath } from \"@/lib/channel-routes\";\n\n/** 详情路径优先 slug,无 slug 回退 id。 */\nexport function playletHref(item: Pick) {\n const slug = item.slug?.trim();\n return `/short-drama/${slug || item.id}`;\n}\n\n/** 播放路径:`/short-drama/{slug|id}/play/{episode}` */\nexport function playletPlayHref(item: Pick, episode: number) {\n return `${playletHref(item)}/play/${episode}`;\n}\n\nexport type PlayletTagLink = { label: string; key: string; kind: \"tag\" | \"theme\" };\n\n/**\n * 展示名 + 跳转 key(优先 slug,无 slug 用 id)。\n * 有 tagNames 时走标签;否则回退 themeNames / themeSlugs / themeIds。\n * 标签进 `/topics/tag/{slug}`,题材进 `/topics/{slug}`。\n */\nexport function playletTagLinks(\n item: Pick,\n limit = 2,\n): PlayletTagLink[] {\n const useTags = (item.tagNames || []).some(Boolean);\n const names = (useTags ? item.tagNames : item.themeNames) || [];\n const slugs = (useTags ? item.tagSlugs : item.themeSlugs) || [];\n const ids = (useTags ? item.tagIds : item.themeIds) || [];\n const kind: PlayletTagLink[\"kind\"] = useTags ? \"tag\" : \"theme\";\n const links: PlayletTagLink[] = [];\n for (let i = 0; i < names.length && links.length < limit; i += 1) {\n const label = names[i]?.trim();\n if (!label) continue;\n const slug = slugs[i]?.trim();\n const id = ids[i];\n const key = slug || (id != null && id !== 0 ? String(id) : \"\");\n if (!key) continue;\n links.push({ label, key, kind });\n }\n return links;\n}\n\n/** 标签查 tag/list,题材查 topic/detail。题材 slug 打到 tag/list 会返回 no data。 */\nexport function playletTagHref(tag: Pick) {\n return tag.kind === \"theme\" ? topicDetailPath(tag.key) : topicTagPath(tag.key);\n}\n\n/** 热度展示文案(仅格式化,不改字段名)。 */\nexport function formatHeatValue(value: number | null | undefined) {\n if (value == null || Number.isNaN(value)) return \"0\";\n if (value >= 10_000) {\n const wan = value / 10_000;\n return `${wan >= 10 ? wan.toFixed(0) : wan.toFixed(1).replace(/\\.0$/, \"\")}万`;\n }\n return value.toLocaleString(\"zh-CN\");\n}\n\n/** 封面角标仅三种,优先级:原创 > 爆剧 > 上新。 */\nexport function playletCoverBadge(item: Pick) {\n if (item.isRecommend) return { kind: \"free\" as const, label: \"原创\" };\n if (item.isFeatured) return { kind: \"hot\" as const, label: \"爆剧\" };\n if (item.isNew) return { kind: \"new\" as const, label: \"上新\" };\n return null;\n}\n"],"names":["playletHref","item","_item_slug","slug","trim","id","playletPlayHref","episode","playletTagLinks","limit","useTags","tagNames","some","Boolean","names","themeNames","slugs","tagSlugs","themeSlugs","ids","tagIds","themeIds","kind","links","i","length","_names_i","_slugs_i","label","key","String","push","playletTagHref","tag","formatHeatValue","value","Number","isNaN","wan","toFixed","replace","toLocaleString","playletCoverBadge","isRecommend","isFeatured","isNew"],"mappings":";;;;;;;;;;;;;;AACA;;AAGO,SAASA,YAAYC,IAA4C;QACzDC;IAAb,MAAMC,QAAOD,aAAAA,KAAKC,IAAI,cAATD,iCAAAA,WAAWE,IAAI;IAC5B,OAAO,CAAC,aAAa,EAAED,QAAQF,KAAKI,EAAE,EAAE;AAC1C;AAGO,SAASC,gBAAgBL,IAA4C,EAAEM,OAAe;IAC3F,OAAO,GAAGP,YAAYC,MAAM,MAAM,EAAEM,SAAS;AAC/C;AASO,SAASC,gBACdP,IAA4G;QAC5GQ,QAAAA,iEAAQ;IAER,MAAMC,UAAU,CAACT,KAAKU,QAAQ,IAAI,EAAE,EAAEC,IAAI,CAACC;IAC3C,MAAMC,QAAQ,CAACJ,UAAUT,KAAKU,QAAQ,GAAGV,KAAKc,UAAU,KAAK,EAAE;IAC/D,MAAMC,QAAQ,CAACN,UAAUT,KAAKgB,QAAQ,GAAGhB,KAAKiB,UAAU,KAAK,EAAE;IAC/D,MAAMC,MAAM,CAACT,UAAUT,KAAKmB,MAAM,GAAGnB,KAAKoB,QAAQ,KAAK,EAAE;IACzD,MAAMC,OAA+BZ,UAAU,QAAQ;IACvD,MAAMa,QAA0B,EAAE;IAClC,IAAK,IAAIC,IAAI,GAAGA,IAAIV,MAAMW,MAAM,IAAIF,MAAME,MAAM,GAAGhB,OAAOe,KAAK,EAAG;YAClDE,UAEDC;QAFb,MAAMC,SAAQF,WAAAA,KAAK,CAACF,EAAE,cAARE,+BAAAA,SAAUtB,IAAI;QAC5B,IAAI,CAACwB,OAAO;QACZ,MAAMzB,QAAOwB,WAAAA,KAAK,CAACH,EAAE,cAARG,+BAAAA,SAAUvB,IAAI;QAC3B,MAAMC,KAAKc,GAAG,CAACK,EAAE;QACjB,MAAMK,MAAM1B,QAAQ,CAACE,MAAM,QAAQA,OAAO,IAAIyB,OAAOzB,MAAM,EAAE;QAC7D,IAAI,CAACwB,KAAK;QACVN,MAAMQ,IAAI,CAAC;YAAEH;YAAOC;YAAKP;QAAK;IAChC;IACA,OAAOC;AACT;AAGO,SAASS,eAAeC,GAAyC;IACtE,OAAOA,IAAIX,IAAI,KAAK,UAAU,IAAA,qJAAe,EAACW,IAAIJ,GAAG,IAAI,IAAA,kJAAY,EAACI,IAAIJ,GAAG;AAC/E;AAGO,SAASK,gBAAgBC,KAAgC;IAC9D,IAAIA,SAAS,QAAQC,OAAOC,KAAK,CAACF,QAAQ,OAAO;IACjD,IAAIA,SAAS,QAAQ;QACnB,MAAMG,MAAMH,QAAQ;QACpB,OAAO,GAAGG,OAAO,KAAKA,IAAIC,OAAO,CAAC,KAAKD,IAAIC,OAAO,CAAC,GAAGC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;IAC9E;IACA,OAAOL,MAAMM,cAAc,CAAC;AAC9B;AAGO,SAASC,kBAAkBzC,IAAqE;IACrG,IAAIA,KAAK0C,WAAW,EAAE,OAAO;QAAErB,MAAM;QAAiBM,OAAO;IAAK;IAClE,IAAI3B,KAAK2C,UAAU,EAAE,OAAO;QAAEtB,MAAM;QAAgBM,OAAO;IAAK;IAChE,IAAI3B,KAAK4C,KAAK,EAAE,OAAO;QAAEvB,MAAM;QAAgBM,OAAO;IAAK;IAC3D,OAAO;AACT"}}, + {"offset": {"line": 5148, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/lib/translation-nav.ts"],"sourcesContent":["import type { TranslationCategory } from \"@/lib/api/types\";\n\n/** 空 urlValue 表示首页。外链原样保留。 */\nexport function translationHref(urlValue: string | undefined) {\n const raw = (urlValue || \"\").trim();\n if (!raw || raw === \"/\") return \"/\";\n return raw;\n}\n\nexport function isExternalHref(href: string) {\n return /^https?:\\/\\//i.test(href);\n}\n\n/** 顶栏当前项。详情、播放、更多列表和搜索页不点亮频道。 */\nexport function isTranslationCurrent(pathname: string, urlValue: string | undefined) {\n const href = translationHref(urlValue);\n if (\n pathname.startsWith(\"/shorts/more\") ||\n pathname.startsWith(\"/topics/tag\") ||\n pathname.startsWith(\"/drama\") ||\n pathname.startsWith(\"/short-drama\") ||\n pathname.startsWith(\"/info\") ||\n pathname.startsWith(\"/search\")\n ) {\n return false;\n }\n if (href === \"/\") return pathname === \"/\";\n return pathname === href || pathname.startsWith(`${href}/`);\n}\n\n/** 已下线的福利应用页,后台导航配置了也不展示。 */\nconst REMOVED_NAV_HREF = /^\\/apps(?:[/?#]|$)/;\n\nexport function usableTranslationCategories(list: TranslationCategory[] | undefined) {\n return (list || [])\n .filter((item) => item?.name?.trim() && !REMOVED_NAV_HREF.test(translationHref(item.urlValue)))\n .map((item) =>\n item.translationList?.length\n ? { ...item, translationList: item.translationList.filter((child) => !REMOVED_NAV_HREF.test(translationHref(child.urlValue))) }\n : item,\n );\n}\n"],"names":["translationHref","urlValue","raw","trim","isExternalHref","href","test","isTranslationCurrent","pathname","startsWith","REMOVED_NAV_HREF","usableTranslationCategories","list","filter","item","_item_name","name","map","_item_translationList","translationList","length","child"],"mappings":";;;;;;;;;;AAGO,SAASA,gBAAgBC,QAA4B;IAC1D,MAAMC,MAAM,CAACD,YAAY,EAAE,EAAEE,IAAI;IACjC,IAAI,CAACD,OAAOA,QAAQ,KAAK,OAAO;IAChC,OAAOA;AACT;AAEO,SAASE,eAAeC,IAAY;IACzC,OAAO,gBAAgBC,IAAI,CAACD;AAC9B;AAGO,SAASE,qBAAqBC,QAAgB,EAAEP,QAA4B;IACjF,MAAMI,OAAOL,gBAAgBC;IAC7B,IACEO,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,kBACpBD,SAASC,UAAU,CAAC,aACpBD,SAASC,UAAU,CAAC,mBACpBD,SAASC,UAAU,CAAC,YACpBD,SAASC,UAAU,CAAC,YACpB;QACA,OAAO;IACT;IACA,IAAIJ,SAAS,KAAK,OAAOG,aAAa;IACtC,OAAOA,aAAaH,QAAQG,SAASC,UAAU,CAAC,GAAGJ,KAAK,CAAC,CAAC;AAC5D;AAEA,2BAA2B,GAC3B,MAAMK,mBAAmB;AAElB,SAASC,4BAA4BC,IAAuC;IACjF,OAAO,CAACA,QAAQ,EAAE,EACfC,MAAM,CAAC,CAACC;YAASC;eAAAA,CAAAA,iBAAAA,4BAAAA,aAAAA,KAAMC,IAAI,cAAVD,iCAAAA,WAAYZ,IAAI,OAAM,CAACO,iBAAiBJ,IAAI,CAACN,gBAAgBc,KAAKb,QAAQ;OAC3FgB,GAAG,CAAC,CAACH;YACJI;eAAAA,EAAAA,wBAAAA,KAAKC,eAAe,cAApBD,4CAAAA,sBAAsBE,MAAM,IACxB;YAAE,GAAGN,IAAI;YAAEK,iBAAiBL,KAAKK,eAAe,CAACN,MAAM,CAAC,CAACQ,QAAU,CAACX,iBAAiBJ,IAAI,CAACN,gBAAgBqB,MAAMpB,QAAQ;QAAI,IAC5Ha;;AAEV"}}, + {"offset": {"line": 5194, "column": 0}, "map": {"version":3,"sources":["file:///Users/mac/weiming/%E9%BB%84%E6%9E%9C%E7%9F%AD%E5%89%A7/web_hgdja_h5/src/data/catalog.json.[json].cjs/turbopack:/src/data/catalog.json"],"sourcesContent":["{\"cardStats\":[{\"badge\":\"爆剧\",\"likes\":23,\"tags\":[\"年代\",\"读心\",\"先婚后爱\"],\"favorites\":12.6},{\"badge\":\"新剧\",\"likes\":16,\"tags\":[\"都市\",\"女性成长\",\"逆袭\"],\"favorites\":8.9},{\"badge\":\"新剧\",\"likes\":12,\"tags\":[\"都市\",\"职场\",\"逆袭\"],\"favorites\":6.8},{\"badge\":\"爆剧\",\"likes\":28,\"tags\":[\"仙侠\",\"团宠\",\"漫剧\"],\"favorites\":15.4},{\"badge\":\"原创\",\"likes\":9,\"tags\":[\"都市\",\"甜宠\",\"双向治愈\"],\"favorites\":5.2},{\"badge\":\"原创\",\"likes\":7,\"tags\":[\"玄幻\",\"异能\",\"逆袭\"],\"favorites\":4.1}],\"coverHeights\":[914,914,915,914,914,914],\"covers\":[\"/images/covers/0.jpg\",\"/images/covers/1.jpg\",\"/images/covers/2.jpg\",\"/images/covers/3.jpg\",\"/images/covers/4.jpg\",\"/images/covers/5.jpg\"],\"heroes\":[{\"title\":\"一个部门的诞生\",\"wide\":\"/images/hero/0-wide.webp\",\"portrait\":\"/images/hero/0-portrait.jpg\"},{\"title\":\"特立独行\",\"wide\":\"/images/hero/1-wide.webp\",\"portrait\":\"/images/hero/1-portrait.jpg\"},{\"title\":\"给阿嬷的情书\",\"wide\":\"/images/hero/2-wide.webp\",\"portrait\":\"/images/hero/2-portrait.jpg\"},{\"title\":\"法医秦明之龙番往事\",\"wide\":\"/images/hero/3-wide.webp\",\"portrait\":\"/images/hero/3-portrait.jpg\"},{\"title\":\"一瓯春\",\"wide\":\"/images/hero/4-wide.webp\",\"portrait\":\"/images/hero/4-portrait.jpg\"},{\"title\":\"兰香如故\",\"wide\":\"/images/hero/5-wide.webp\",\"portrait\":\"/images/hero/5-portrait.jpg\"}],\"topics\":{\"dream\":\"/images/topics/dream.webp\",\"city\":\"/images/topics/city.webp\",\"love\":\"/images/topics/love.webp\",\"twists\":\"/images/topics/twists.webp\",\"growth\":\"/images/topics/growth.webp\",\"worth\":\"/images/topics/worth.webp\",\"hot\":\"/images/topics/hot.webp\",\"free\":\"/images/topics/free.webp\"},\"promoApps\":[{\"title\":\"星愿\",\"src\":\"/icons/apps/promo/0.png\"},{\"title\":\"Conso\",\"src\":\"/icons/apps/promo/1.png\"},{\"title\":\"Weela\",\"src\":\"/icons/apps/promo/2.png\"},{\"title\":\"JisQ\",\"src\":\"/icons/apps/promo/3.png\"},{\"title\":\"Soyo\",\"src\":\"/icons/apps/promo/4.png\"},{\"title\":\"Hi\",\"src\":\"/icons/apps/promo/5.png\"},{\"title\":\"Wakoo\",\"src\":\"/icons/apps/promo/6.png\"},{\"title\":\"Lumeet\",\"src\":\"/icons/apps/promo/7.png\"},{\"title\":\"Niki\",\"src\":\"/icons/apps/promo/8.png\"},{\"title\":\"星环\",\"src\":\"/icons/apps/promo/9.png\"},{\"title\":\"Meoo\",\"src\":\"/icons/apps/promo/10.png\"},{\"title\":\"Muaa\",\"src\":\"/icons/apps/promo/11.png\"},{\"title\":\"Xiu\",\"src\":\"/icons/apps/promo/12.png\"},{\"title\":\"Luna\",\"src\":\"/icons/apps/promo/13.png\"},{\"title\":\"Reisly\",\"src\":\"/icons/apps/promo/14.png\"},{\"title\":\"Live\",\"src\":\"/icons/apps/promo/15.png\"}],\"benefitApps\":[{\"title\":\"Siya\",\"src\":\"/icons/apps/benefit/0.png\"},{\"title\":\"Hi聊\",\"src\":\"/icons/apps/benefit/1.png\"},{\"title\":\"Vaga\",\"src\":\"/icons/apps/benefit/2.png\"},{\"title\":\"柠檬\",\"src\":\"/icons/apps/benefit/3.png\"},{\"title\":\"YES\",\"src\":\"/icons/apps/benefit/4.png\"},{\"title\":\"微笑\",\"src\":\"/icons/apps/benefit/5.png\"},{\"title\":\"星语\",\"src\":\"/icons/apps/benefit/6.png\"},{\"title\":\"Anyhoo\",\"src\":\"/icons/apps/benefit/7.png\"},{\"title\":\"蜜果\",\"src\":\"/icons/apps/benefit/8.png\"},{\"title\":\"蜜桃\",\"src\":\"/icons/apps/benefit/9.png\"},{\"title\":\"Live轻语\",\"src\":\"/icons/apps/benefit/10.png\"},{\"title\":\"Live霓虹\",\"src\":\"/icons/apps/benefit/11.png\"},{\"title\":\"Wanna\",\"src\":\"/icons/apps/benefit/12.png\"}],\"brand\":{\"logo\":\"/logo.png\",\"wordmark\":\"/logo.png\",\"coin\":\"/coin.png\",\"downloadLogo\":\"/logo.png\",\"avatar\":\"/images/avatar.png\",\"qr\":\"/images/qr.png\",\"footerLogo\":\"/logo.png\",\"favicon\":\"/favicon.png\",\"search\":\"/icons/search.svg\",\"qq\":\"/icons/qq.png\",\"seriesHeat\":\"/icons/series-heat.svg\"},\"navIcons\":[\"M778.85 226.8H639.62v58.49l65.87 54.05-17.61 5.61-183.52-107.69-318.02 186.62V815H404.6V601.86h199.53V815H822.4V423.88l-43.55-25.55V226.8z\",\"M765 558l-22.93-14.02L725 366h1.44l-1.17-12.3c-24.41-22.2-39.3-35.74-63.71-57.95H265.44c-24.41 22.2-39.3 35.74-63.71 57.95l-37.72 397c25.39 27.92 38.32 42.14 63.71 70.05h471.55c25.39-27.92 38.32-42.14 63.71-70.05l-9.03-95.04 132.04 55.6v-306l-116.13 48.9-4.87 103.85z\",\"M431.19 203.28L151.64 435.26l469.81 231.99 121.03-100.43-3.54 32.54-110.35 112.26-401.95-184.49-75 62.25 469.81 231.98L901 589.38l-116.43-57.5L901 435.26 431.19 203.28z\",\"M473.6 307.44L373.88 234H190.45c-13.24 14.55-19.99 21.97-33.24 36.52l44.5 470.8 52.39 47.67h536.5l52.31-46.92 28.26-259.47-523.33-12.55 20.98-25.18 508.58-19.49 8.82-80.95c-13.27-14.79-19.92-22.21-33.19-37H473.58z\",\"M710.83 236.25c-109.55-109.55-287.18-109.55-396.73 0-109.55 109.55-109.55 287.18 0 396.73 41.51 41.51 92.8 67.28 146.46 77.33l-14.22 28.06c-42.51 2.32-87.82-4.48-131.06-38.02l-18.72 181.57 215.04-83.69 215.04 83.69-24.78-240.38c3.03-2.78 6.03-5.62 8.97-8.56 109.55-109.55 109.55-287.18 0-396.73z\",\"M534.27 168v0.36h-46.45l-13.39 461.39h-0.19l-0.99 40.53-1.78 61.34h0.28l-0.17 6.93-24.29-15.19-6.63-91.65c-146.16 11.32-255.42 56.61-255.42 110.77 0 62.68 146.35 113.5 326.88 113.5S839 805.16 839 742.48c0-58.26-126.42-106.25-289.19-112.74l-4.84-166.76h346.86l-80.71-147.5 80.71-147.5H534.27z\",\"M178.74 474.5h46.77v0.28l33.03-0.28h305.41l-25.85 16.77-312.59 22.53V812h570.47V474.5h46.76v-102h-664v102zM662 243l-119 61-204.78-75.63L287 340l195.97 23 261.77-25L662 243z\"],\"collections\":{\"dream\":{\"title\":\"江湖好梦\",\"ids\":[3,5]},\"city\":{\"title\":\"都市新生\",\"ids\":[1,4]},\"twists\":{\"title\":\"高能反转\",\"ids\":[0,1,2,5]},\"love\":{\"title\":\"怦然心动\",\"ids\":[4,1,0,3,2,5]},\"growth\":{\"title\":\"重新爱自己\",\"ids\":[1,4,2,5,0,3]}},\"roadIcons\":{\"rocket\":\"/icons/road/rocket.svg\",\"link\":\"/icons/road/link.svg\",\"shield\":\"/icons/road/shield.svg\",\"troubleshoot\":\"/icons/road/troubleshoot.svg\",\"devices\":\"/icons/road/devices.svg\",\"iphone\":\"/icons/road/iphone.svg\",\"android\":\"/icons/road/android.svg\",\"desktop\":\"/icons/road/desktop.svg\",\"email\":\"/icons/road/email.svg\",\"tg\":\"/icons/road/tg.svg\",\"biz\":\"/icons/road/biz.svg\",\"twitter\":\"/icons/road/twitter.svg\"},\"returnIcons\":[\"/icons/return/0.svg\",\"/icons/return/1.svg\",\"/icons/return/2.svg\",\"/icons/return/3.svg\",\"/icons/return/4.svg\"]}"],"names":[],"mappings":""}}] } \ No newline at end of file diff --git a/.next-dev/dev/static/development/_buildManifest.js b/.next-dev/dev/static/development/_buildManifest.js index 0632d43..1af6a5b 100644 --- a/.next-dev/dev/static/development/_buildManifest.js +++ b/.next-dev/dev/static/development/_buildManifest.js @@ -1,7 +1,4 @@ self.__BUILD_MANIFEST = { - "/_error": [ - "static/chunks/pages/_error.js" - ], "__rewrites": { "afterFiles": [ { diff --git a/.next-dev/dev/trace b/.next-dev/dev/trace index 74f7dc7..e2a05e4 100644 --- a/.next-dev/dev/trace +++ b/.next-dev/dev/trace @@ -1,65 +1,4 @@ -[{"name":"hot-reloader","duration":35,"timestamp":901469868014,"id":3,"parentId":1,"tags":{"version":"16.4.1"},"startTime":1793889183320,"traceId":"143c4dbcbb09bb1f"},{"name":"setup-dev-bundler","duration":225566,"timestamp":901469747938,"id":2,"parentId":1,"tags":{},"startTime":1793889183200,"traceId":"143c4dbcbb09bb1f"},{"name":"start-dev-server","duration":1379870,"timestamp":901468645656,"id":1,"tags":{"cpus":"12","platform":"darwin","memory.freeMem":"144687104","memory.totalMem":"17179869184","memory.heapSizeLimit":"8640266240","rage-restart":false,"missing-next-dir":false},"startTime":1793889182098,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":988533,"timestamp":901477738312,"id":5,"parentId":1,"tags":{"trigger":"/"},"startTime":1793889191190,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":989519,"timestamp":901477737919,"id":4,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889191190,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1245420,"timestamp":901478874353,"id":7,"parentId":1,"tags":{"path":"/"},"startTime":1793889192326,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1391800,"timestamp":901478728432,"id":6,"parentId":1,"tags":{"url":"/"},"startTime":1793889192180,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":901480120278,"id":8,"parentId":6,"tags":{"url":"/","memory.rss":"661094400","memory.heapUsed":"152608136","memory.heapTotal":"177602560"},"startTime":1793889193572,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":44072,"timestamp":901570484093,"id":9,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889283936,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":756924,"timestamp":901570529052,"id":10,"parentId":1,"tags":{"url":"/"},"startTime":1793889283981,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":901571286153,"id":11,"parentId":10,"tags":{"url":"/","memory.rss":"449347584","memory.heapUsed":"152092528","memory.heapTotal":"190464000"},"startTime":1793889284738,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":757431,"timestamp":901570532582,"id":12,"parentId":1,"tags":{"path":"/"},"startTime":1793889283984,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":374000,"timestamp":901573601728,"id":13,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":32.386083000000006,"persist_duration_ms":340.87812499999995,"task_count":4096,"bytes_written":48610816,"bytes_deleted":0},"startTime":1793889287054,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":292000,"timestamp":901574000230,"id":15,"parentId":3,"tags":{"bytes_written":47137540,"bytes_deleted":47139135},"startTime":1793889287452,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"compile-path","duration":542563,"timestamp":901618229004,"id":18,"parentId":1,"tags":{"trigger":"/topics/[[...path]]"},"startTime":1793889331681,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":543497,"timestamp":901618228466,"id":17,"parentId":3,"tags":{"inputPage":"/topics/[[...path]]/page"},"startTime":1793889331681,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":961560,"timestamp":901618772661,"id":19,"parentId":1,"tags":{"url":"/topics?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889332225,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":6,"timestamp":901619734297,"id":20,"parentId":19,"tags":{"url":"/topics?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"397885440","memory.heapUsed":"134048888","memory.heapTotal":"142163968"},"startTime":1793889333187,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":511576,"timestamp":901619223376,"id":21,"parentId":1,"tags":{"path":"/topics?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889332676,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":44042,"timestamp":901621626171,"id":22,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889335079,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":225165,"timestamp":901621670788,"id":23,"parentId":1,"tags":{"url":"/?_rsc=XsDOH4LZtaBKgf0N"},"startTime":1793889335123,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":901621896042,"id":24,"parentId":23,"tags":{"url":"/?_rsc=XsDOH4LZtaBKgf0N","memory.rss":"382107648","memory.heapUsed":"137192344","memory.heapTotal":"159449088"},"startTime":1793889335348,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":224636,"timestamp":901621672745,"id":25,"parentId":1,"tags":{"path":"/?_rsc=XsDOH4LZtaBKgf0N"},"startTime":1793889335125,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":197115,"timestamp":901623624196,"id":27,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793889337077,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":197421,"timestamp":901623624082,"id":26,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793889337077,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":160434,"timestamp":901623821876,"id":28,"parentId":1,"tags":{"url":"/home-road?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889337274,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":901623982400,"id":29,"parentId":28,"tags":{"url":"/home-road?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"802406400","memory.heapUsed":"144217768","memory.heapTotal":"161726464"},"startTime":1793889337435,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":154720,"timestamp":901623829950,"id":30,"parentId":1,"tags":{"path":"/home-road?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889337282,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":22632,"timestamp":901628125703,"id":31,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889341578,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":352842,"timestamp":901628148808,"id":32,"parentId":1,"tags":{"url":"/?_rsc=yQVrSYgclzAkxXKG"},"startTime":1793889341601,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":6,"timestamp":901628501767,"id":33,"parentId":32,"tags":{"url":"/?_rsc=yQVrSYgclzAkxXKG","memory.rss":"409714688","memory.heapUsed":"139468560","memory.heapTotal":"181665792"},"startTime":1793889341954,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":348294,"timestamp":901628155195,"id":34,"parentId":1,"tags":{"path":"/?_rsc=yQVrSYgclzAkxXKG"},"startTime":1793889341607,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":390000,"timestamp":901630150518,"id":35,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":4.548875,"persist_duration_ms":385.242708,"task_count":4096,"bytes_written":41317481,"bytes_deleted":0},"startTime":1793889343603,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":479000,"timestamp":901630540278,"id":37,"parentId":3,"tags":{"bytes_written":83514096,"bytes_deleted":87748333},"startTime":1793889343993,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"compile-path","duration":466529,"timestamp":901635820687,"id":40,"parentId":1,"tags":{"trigger":"/info/[slug]"},"startTime":1793889349273,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":466920,"timestamp":901635820462,"id":39,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889349273,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":679927,"timestamp":901636288229,"id":41,"parentId":1,"tags":{"url":"/info/user-center?tab=history&_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889349741,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":901636968238,"id":42,"parentId":41,"tags":{"url":"/info/user-center?tab=history&_rsc=KDhbPR_vHFJlvLUo","memory.rss":"515571712","memory.heapUsed":"140536384","memory.heapTotal":"154124288"},"startTime":1793889350421,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":295371,"timestamp":901636675731,"id":43,"parentId":1,"tags":{"path":"/info/user-center?tab=history&_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889350128,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":38447,"timestamp":901641281710,"id":44,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889354734,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":352639,"timestamp":901641320976,"id":45,"parentId":1,"tags":{"url":"/?_rsc=SaO8Jki87meeH3mj"},"startTime":1793889354773,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":901641673669,"id":46,"parentId":45,"tags":{"url":"/?_rsc=SaO8Jki87meeH3mj","memory.rss":"340033536","memory.heapUsed":"145191424","memory.heapTotal":"165888000"},"startTime":1793889355126,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":373589,"timestamp":901641323284,"id":47,"parentId":1,"tags":{"path":"/?_rsc=SaO8Jki87meeH3mj"},"startTime":1793889354775,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":4372,"timestamp":901645147479,"id":48,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889358600,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":218949,"timestamp":901645152101,"id":49,"parentId":1,"tags":{"url":"/?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889358605,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":901645371125,"id":50,"parentId":49,"tags":{"url":"/?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"601948160","memory.heapUsed":"147443800","memory.heapTotal":"185942016"},"startTime":1793889358824,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":218945,"timestamp":901645154605,"id":51,"parentId":1,"tags":{"path":"/?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793889358606,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":21886,"timestamp":901647188241,"id":52,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889360641,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":377972,"timestamp":901647211354,"id":53,"parentId":1,"tags":{"url":"/"},"startTime":1793889360664,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":901647589376,"id":54,"parentId":53,"tags":{"url":"/","memory.rss":"756367360","memory.heapUsed":"172884856","memory.heapTotal":"198180864"},"startTime":1793889361042,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":383445,"timestamp":901647213992,"id":55,"parentId":1,"tags":{"path":"/"},"startTime":1793889360666,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":129544,"timestamp":901795328984,"id":56,"parentId":3,"tags":{"inputPage":"/page","failed":true},"startTime":1793889508782,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":699825,"timestamp":901795463120,"id":59,"parentId":1,"tags":{"trigger":"/_error"},"startTime":1793889508916,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":702329,"timestamp":901795461041,"id":58,"parentId":3,"tags":{"inputPage":"/_error"},"startTime":1793889508914,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":876270,"timestamp":901795459442,"id":57,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889508913,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":901796335763,"id":60,"parentId":57,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"686768128","memory.heapUsed":"160083760","memory.heapTotal":"203702272"},"startTime":1793889509789,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":103191,"timestamp":901796237219,"id":61,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889509690,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":5937,"timestamp":901796379207,"id":62,"parentId":3,"tags":{"inputPage":"/page","failed":true},"startTime":1793889509832,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1589,"timestamp":901796387126,"id":64,"parentId":3,"tags":{"inputPage":"/_error"},"startTime":1793889509840,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":6647,"timestamp":901796386277,"id":63,"parentId":1,"tags":{"url":"/"},"startTime":1793889509839,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":901796392951,"id":65,"parentId":63,"tags":{"url":"/","memory.rss":"669253632","memory.heapUsed":"164414120","memory.heapTotal":"203948032"},"startTime":1793889509846,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":4363,"timestamp":901796388919,"id":66,"parentId":1,"tags":{"path":"/"},"startTime":1793889509841,"traceId":"143c4dbcbb09bb1f"},{"name":"navigation-to-hydration","duration":139000,"timestamp":901796343601,"id":67,"parentId":3,"tags":{"pathname":"/","query":""},"startTime":1793889509797,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":490000,"timestamp":901798493905,"id":68,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":3.4363330000000003,"persist_duration_ms":486.844334,"task_count":4096,"bytes_written":59345763,"bytes_deleted":0},"startTime":1793889511947,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":887000,"timestamp":901799018129,"id":70,"parentId":3,"tags":{"bytes_written":135351871,"bytes_deleted":145036932},"startTime":1793889512471,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"client-hmr-latency","duration":52368000,"timestamp":901855363430,"id":72,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889568817,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":233771,"timestamp":901907833154,"id":74,"parentId":1,"tags":{"trigger":"/"},"startTime":1793889621287,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":234589,"timestamp":901907832601,"id":73,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889621286,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":302845,"timestamp":901908067507,"id":75,"parentId":1,"tags":{"url":"/"},"startTime":1793889621521,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":901908370388,"id":76,"parentId":75,"tags":{"url":"/","memory.rss":"685047808","memory.heapUsed":"178468600","memory.heapTotal":"215646208"},"startTime":1793889621824,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":294598,"timestamp":901908078976,"id":77,"parentId":1,"tags":{"path":"/"},"startTime":1793889621532,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":7473,"timestamp":901914870194,"id":78,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889628324,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":91830,"timestamp":901914878011,"id":79,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889628332,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":901914969886,"id":80,"parentId":79,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"390676480","memory.heapUsed":"184221744","memory.heapTotal":"224755712"},"startTime":1793889628424,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":92593,"timestamp":901914879623,"id":81,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889628333,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":30000,"timestamp":901931941156,"id":82,"parentId":3,"tags":{"updatedModules":["[project]/src/components/common/PageTools.tsx [app-client]","[project]/src/lib/catalog.ts [app-client]"],"page":"/","isPageHidden":false},"startTime":1793889645395,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":17696,"timestamp":901931976451,"id":84,"parentId":1,"tags":{"trigger":"/"},"startTime":1793889645430,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":17956,"timestamp":901931976310,"id":83,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889645430,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":30000,"timestamp":901931940928,"id":86,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889645395,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":101621,"timestamp":901931994615,"id":85,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889645448,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":901932096271,"id":87,"parentId":85,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"474185728","memory.heapUsed":"191309608","memory.heapTotal":"228950016"},"startTime":1793889645550,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":102326,"timestamp":901931997397,"id":88,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793889645451,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987680686,"id":89,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987680914,"id":90,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987678505,"id":92,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":47518,"timestamp":902074387720,"id":91,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889787844,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":179815,"timestamp":902074438442,"id":94,"parentId":1,"tags":{"path":"/"},"startTime":1793889787894,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":182878,"timestamp":902074435865,"id":93,"parentId":1,"tags":{"url":"/"},"startTime":1793889787892,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902074618765,"id":95,"parentId":93,"tags":{"url":"/","memory.rss":"417710080","memory.heapUsed":"180168864","memory.heapTotal":"201670656"},"startTime":1793889788075,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987678413,"id":96,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":63118,"timestamp":902074629902,"id":98,"parentId":1,"tags":{"trigger":"/info/[slug]"},"startTime":1793889788086,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":63431,"timestamp":902074629815,"id":97,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889788086,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987677955,"id":100,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":378392,"timestamp":902074699485,"id":101,"parentId":1,"tags":{"path":"/info/about-us"},"startTime":1793889788156,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":384691,"timestamp":902074693456,"id":99,"parentId":1,"tags":{"url":"/info/about-us"},"startTime":1793889788150,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902075078189,"id":102,"parentId":99,"tags":{"url":"/info/about-us","memory.rss":"946978816","memory.heapUsed":"189040184","memory.heapTotal":"219496448"},"startTime":1793889788535,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":2893,"timestamp":902075133921,"id":103,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889788591,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":73535,"timestamp":902075138682,"id":105,"parentId":1,"tags":{"path":"/info/user-center"},"startTime":1793889788596,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":75436,"timestamp":902075136950,"id":104,"parentId":1,"tags":{"url":"/info/user-center"},"startTime":1793889788594,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902075212412,"id":106,"parentId":104,"tags":{"url":"/info/user-center","memory.rss":"980631552","memory.heapUsed":"190381816","memory.heapTotal":"226459648"},"startTime":1793889788670,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987677161,"id":107,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1146,"timestamp":902075219890,"id":108,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889788677,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":63251,"timestamp":902075221606,"id":110,"parentId":1,"tags":{"path":"/info/deposit"},"startTime":1793889788678,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":63968,"timestamp":902075221148,"id":109,"parentId":1,"tags":{"url":"/info/deposit"},"startTime":1793889788679,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902075285139,"id":111,"parentId":109,"tags":{"url":"/info/deposit","memory.rss":"987611136","memory.heapUsed":"196555152","memory.heapTotal":"231129088"},"startTime":1793889788743,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987676927,"id":112,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1926,"timestamp":902075293221,"id":113,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889788751,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":64281,"timestamp":902075296131,"id":115,"parentId":1,"tags":{"path":"/info/account-settings"},"startTime":1793889788753,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":64956,"timestamp":902075295597,"id":114,"parentId":1,"tags":{"url":"/info/account-settings"},"startTime":1793889788753,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902075360574,"id":116,"parentId":114,"tags":{"url":"/info/account-settings","memory.rss":"990887936","memory.heapUsed":"201342832","memory.heapTotal":"234799104"},"startTime":1793889788818,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987677545,"id":117,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1349,"timestamp":902075369097,"id":118,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889788827,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":54410,"timestamp":902075371165,"id":120,"parentId":1,"tags":{"path":"/info/feedback"},"startTime":1793889788828,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":54991,"timestamp":902075370709,"id":119,"parentId":1,"tags":{"url":"/info/feedback"},"startTime":1793889788828,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902075425724,"id":121,"parentId":119,"tags":{"url":"/info/feedback","memory.rss":"1012498432","memory.heapUsed":"206120064","memory.heapTotal":"238993408"},"startTime":1793889788884,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":901987677547,"id":122,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793889701135,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":244259,"timestamp":902075434488,"id":125,"parentId":1,"tags":{"trigger":"/_not-found/page"},"startTime":1793889788892,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":245106,"timestamp":902075433709,"id":124,"parentId":3,"tags":{"inputPage":"/_not-found/page"},"startTime":1793889788892,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":4933,"timestamp":902075678933,"id":126,"parentId":3,"tags":{"inputPage":"/_not-found/page"},"startTime":1793889789137,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":64107,"timestamp":902075687777,"id":127,"parentId":1,"tags":{"path":"/feedback"},"startTime":1793889789145,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":318830,"timestamp":902075433477,"id":123,"parentId":1,"tags":{"url":"/feedback"},"startTime":1793889788891,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902075752348,"id":128,"parentId":123,"tags":{"url":"/feedback","memory.rss":"1216806912","memory.heapUsed":"210748416","memory.heapTotal":"243662848"},"startTime":1793889789211,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":196629,"timestamp":902075767716,"id":130,"parentId":1,"tags":{"trigger":"/search"},"startTime":1793889789226,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":196743,"timestamp":902075767676,"id":129,"parentId":3,"tags":{"inputPage":"/search/page"},"startTime":1793889789226,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":266513,"timestamp":902075969929,"id":132,"parentId":1,"tags":{"path":"/search?q=a"},"startTime":1793889789429,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":272054,"timestamp":902075964529,"id":131,"parentId":1,"tags":{"url":"/search?q=a"},"startTime":1793889789423,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902076236604,"id":133,"parentId":131,"tags":{"url":"/search?q=a","memory.rss":"1282064384","memory.heapUsed":"205396104","memory.heapTotal":"251985920"},"startTime":1793889789696,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":2929,"timestamp":902076253854,"id":134,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793889789713,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":133645,"timestamp":902076257295,"id":136,"parentId":1,"tags":{"path":"/"},"startTime":1793889789717,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":134232,"timestamp":902076256886,"id":135,"parentId":1,"tags":{"url":"/"},"startTime":1793889789716,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902076391144,"id":137,"parentId":135,"tags":{"url":"/","memory.rss":"1288519680","memory.heapUsed":"220466784","memory.heapTotal":"254787584"},"startTime":1793889789851,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":477000,"timestamp":902078257807,"id":138,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":7.545125,"persist_duration_ms":469.61845800000003,"task_count":4096,"bytes_written":54689598,"bytes_deleted":0},"startTime":1793889791721,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":158000,"timestamp":902078735229,"id":140,"parentId":3,"tags":{"bytes_written":20154294,"bytes_deleted":26763794},"startTime":1793889792199,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":19035,"timestamp":902083637865,"id":142,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889797107,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":88644,"timestamp":902083662752,"id":144,"parentId":1,"tags":{"path":"/info/user-center"},"startTime":1793889797131,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":94393,"timestamp":902083657672,"id":143,"parentId":1,"tags":{"url":"/info/user-center"},"startTime":1793889797127,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902083752088,"id":145,"parentId":143,"tags":{"url":"/info/user-center","memory.rss":"294240256","memory.heapUsed":"228390616","memory.heapTotal":"256622592"},"startTime":1793889797221,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1725,"timestamp":902083761567,"id":146,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889797231,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":79171,"timestamp":902083763880,"id":148,"parentId":1,"tags":{"path":"/info/zzz-nonexistent"},"startTime":1793889797232,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":79773,"timestamp":902083763427,"id":147,"parentId":1,"tags":{"url":"/info/zzz-nonexistent"},"startTime":1793889797233,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902083843224,"id":149,"parentId":147,"tags":{"url":"/info/zzz-nonexistent","memory.rss":"366395392","memory.heapUsed":"221330096","memory.heapTotal":"261029888"},"startTime":1793889797313,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":2119,"timestamp":902083856434,"id":150,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793889797326,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":82972,"timestamp":902083859430,"id":152,"parentId":1,"tags":{"path":"/info/about-us"},"startTime":1793889797328,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":83810,"timestamp":902083858728,"id":151,"parentId":1,"tags":{"url":"/info/about-us"},"startTime":1793889797328,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902083942563,"id":153,"parentId":151,"tags":{"url":"/info/about-us","memory.rss":"473415680","memory.heapUsed":"228319360","memory.heapTotal":"264962048"},"startTime":1793889797412,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":629182,"timestamp":902094365458,"id":155,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793889807843,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":629363,"timestamp":902094365408,"id":154,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889807843,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":968085,"timestamp":902095328159,"id":157,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793889808806,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1302213,"timestamp":902094995028,"id":156,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793889808473,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902096297275,"id":158,"parentId":156,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"1084030976","memory.heapUsed":"214193640","memory.heapTotal":"234471424"},"startTime":1793889809776,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":18031,"timestamp":902096311515,"id":159,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889809790,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":104574,"timestamp":902096331841,"id":161,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/20"},"startTime":1793889809810,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":106847,"timestamp":902096329740,"id":160,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/20"},"startTime":1793889809808,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902096436610,"id":162,"parentId":160,"tags":{"url":"/short-drama/sisr026/play/20","memory.rss":"1132445696","memory.heapUsed":"215389312","memory.heapTotal":"236945408"},"startTime":1793889809915,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1570,"timestamp":902096445955,"id":163,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889809924,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":73193,"timestamp":902096448281,"id":165,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/40"},"startTime":1793889809926,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":73955,"timestamp":902096447667,"id":164,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/40"},"startTime":1793889809926,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902096521644,"id":166,"parentId":164,"tags":{"url":"/short-drama/sisr026/play/40","memory.rss":"1170604032","memory.heapUsed":"223629960","memory.heapTotal":"257638400"},"startTime":1793889810000,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":514000,"timestamp":902098449595,"id":167,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":4.249458000000001,"persist_duration_ms":509.80375,"task_count":4096,"bytes_written":44872979,"bytes_deleted":0},"startTime":1793889811929,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":1303000,"timestamp":902098962766,"id":169,"parentId":3,"tags":{"bytes_written":207037713,"bytes_deleted":223429386},"startTime":1793889812443,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":6801,"timestamp":902103755321,"id":171,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889817236,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":927652,"timestamp":902103766633,"id":173,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793889817248,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":931925,"timestamp":902103762729,"id":172,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793889817244,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902104694685,"id":174,"parentId":172,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"323305472","memory.heapUsed":"225291232","memory.heapTotal":"264192000"},"startTime":1793889818176,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1757,"timestamp":902104703583,"id":175,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889818185,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1652123,"timestamp":902104707528,"id":177,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793889818188,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1654546,"timestamp":902104705476,"id":176,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793889818187,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902106360046,"id":178,"parentId":176,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"531120128","memory.heapUsed":"238870848","memory.heapTotal":"269385728"},"startTime":1793889819842,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":7101,"timestamp":902110712071,"id":179,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889824195,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1203358,"timestamp":902110732543,"id":181,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793889824215,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1210758,"timestamp":902110725539,"id":180,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793889824208,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902111936320,"id":182,"parentId":180,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"309329920","memory.heapUsed":"242094080","memory.heapTotal":"275939328"},"startTime":1793889825419,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1548,"timestamp":902111944692,"id":183,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889825428,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":218914,"timestamp":902111948657,"id":185,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/3"},"startTime":1793889825431,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":221366,"timestamp":902111946385,"id":184,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/3"},"startTime":1793889825429,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902112167773,"id":186,"parentId":184,"tags":{"url":"/short-drama/sisr026/play/3","memory.rss":"882737152","memory.heapUsed":"243996152","memory.heapTotal":"283541504"},"startTime":1793889825651,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1774,"timestamp":902116150254,"id":187,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793889829634,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":308084,"timestamp":902116153891,"id":189,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/3"},"startTime":1793889829637,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":309944,"timestamp":902116152154,"id":188,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/3"},"startTime":1793889829636,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902116462117,"id":190,"parentId":188,"tags":{"url":"/short-drama/sisr026/play/3","memory.rss":"918487040","memory.heapUsed":"258246768","memory.heapTotal":"288669696"},"startTime":1793889829946,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":99812,"timestamp":902326793625,"id":192,"parentId":1,"tags":{"trigger":"/"},"startTime":1793890040281,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":100729,"timestamp":902326793212,"id":191,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890040280,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":215751,"timestamp":902326898097,"id":194,"parentId":1,"tags":{"path":"/"},"startTime":1793890040385,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":222598,"timestamp":902326894930,"id":193,"parentId":1,"tags":{"url":"/"},"startTime":1793890040382,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902327117555,"id":195,"parentId":193,"tags":{"url":"/","memory.rss":"535068672","memory.heapUsed":"266132376","memory.heapTotal":"295911424"},"startTime":1793890040605,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":22476,"timestamp":902327128906,"id":197,"parentId":1,"tags":{"trigger":"/info/[slug]"},"startTime":1793890040616,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":22630,"timestamp":902327128853,"id":196,"parentId":3,"tags":{"inputPage":"/info/[slug]/page"},"startTime":1793890040616,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":117558,"timestamp":902327154691,"id":199,"parentId":1,"tags":{"path":"/info/about-us"},"startTime":1793890040642,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":120644,"timestamp":902327151738,"id":198,"parentId":1,"tags":{"url":"/info/about-us"},"startTime":1793890040639,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902327272406,"id":200,"parentId":198,"tags":{"url":"/info/about-us","memory.rss":"726614016","memory.heapUsed":"247925864","memory.heapTotal":"300482560"},"startTime":1793890040760,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":354355,"timestamp":902327282784,"id":202,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793890040770,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":354466,"timestamp":902327282740,"id":201,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890040770,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":79886,"timestamp":902327918383,"id":204,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890041406,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":360982,"timestamp":902327637414,"id":203,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890041125,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902327998419,"id":205,"parentId":203,"tags":{"url":"/short-drama/sisr026","memory.rss":"1280475136","memory.heapUsed":"253887448","memory.heapTotal":"310820864"},"startTime":1793890041486,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":30310,"timestamp":902334514522,"id":206,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890048002,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":183773,"timestamp":902334547362,"id":208,"parentId":1,"tags":{"path":"/"},"startTime":1793890048034,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":185907,"timestamp":902334545624,"id":207,"parentId":1,"tags":{"url":"/"},"startTime":1793890048033,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902334731555,"id":209,"parentId":207,"tags":{"url":"/","memory.rss":"366002176","memory.heapUsed":"268722672","memory.heapTotal":"312590336"},"startTime":1793890048219,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":22777,"timestamp":902343517357,"id":210,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890057005,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":188955,"timestamp":902343541509,"id":212,"parentId":1,"tags":{"path":"/"},"startTime":1793890057028,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":190480,"timestamp":902343540412,"id":211,"parentId":1,"tags":{"url":"/"},"startTime":1793890057028,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902343730913,"id":213,"parentId":211,"tags":{"url":"/","memory.rss":"455114752","memory.heapUsed":"258864336","memory.heapTotal":"280002560"},"startTime":1793890057218,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":25469,"timestamp":902350113771,"id":214,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890063601,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":217899,"timestamp":902350139875,"id":215,"parentId":1,"tags":{"url":"/"},"startTime":1793890063627,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902350357811,"id":216,"parentId":215,"tags":{"url":"/","memory.rss":"358547456","memory.heapUsed":"268964176","memory.heapTotal":"304037888"},"startTime":1793890063845,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":224259,"timestamp":902350141618,"id":217,"parentId":1,"tags":{"path":"/"},"startTime":1793890063629,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":902464715638,"id":218,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":true},"startTime":1793890178204,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":30857,"timestamp":902464735241,"id":220,"parentId":1,"tags":{"trigger":"/"},"startTime":1793890178224,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":32106,"timestamp":902464734324,"id":219,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890178223,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":902464715778,"id":222,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":true},"startTime":1793890178204,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":146775,"timestamp":902464766875,"id":221,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890178255,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902464913696,"id":223,"parentId":221,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"565542912","memory.heapUsed":"259636080","memory.heapTotal":"274071552"},"startTime":1793890178402,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":140616,"timestamp":902464776220,"id":224,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890178264,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":12210,"timestamp":902506831822,"id":225,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890220320,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":253866,"timestamp":902506847372,"id":227,"parentId":1,"tags":{"path":"/"},"startTime":1793890220335,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":256895,"timestamp":902506844791,"id":226,"parentId":1,"tags":{"url":"/"},"startTime":1793890220333,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902507101764,"id":228,"parentId":226,"tags":{"url":"/","memory.rss":"440238080","memory.heapUsed":"277467688","memory.heapTotal":"298549248"},"startTime":1793890220590,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":902464715362,"id":229,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":true},"startTime":1793890178204,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":2991,"timestamp":902507144750,"id":230,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890220633,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":261532,"timestamp":902507148396,"id":232,"parentId":1,"tags":{"path":"/"},"startTime":1793890220637,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":262167,"timestamp":902507147906,"id":231,"parentId":1,"tags":{"url":"/"},"startTime":1793890220637,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902507410095,"id":233,"parentId":231,"tags":{"url":"/","memory.rss":"652460032","memory.heapUsed":"272433256","memory.heapTotal":"317095936"},"startTime":1793890220899,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":902464715521,"id":234,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":true},"startTime":1793890178204,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":8865,"timestamp":902512803324,"id":235,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890226292,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":176396,"timestamp":902512814590,"id":237,"parentId":1,"tags":{"path":"/"},"startTime":1793890226303,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":178422,"timestamp":902512812838,"id":236,"parentId":1,"tags":{"url":"/"},"startTime":1793890226302,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902512991290,"id":238,"parentId":236,"tags":{"url":"/","memory.rss":"381091840","memory.heapUsed":"288153208","memory.heapTotal":"323698688"},"startTime":1793890226480,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":2000,"timestamp":902464715290,"id":239,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":true},"startTime":1793890178204,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":22467,"timestamp":902609405322,"id":240,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890322895,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":207687,"timestamp":902609429718,"id":241,"parentId":1,"tags":{"url":"/"},"startTime":1793890322919,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902609637443,"id":242,"parentId":241,"tags":{"url":"/","memory.rss":"329580544","memory.heapUsed":"298358128","memory.heapTotal":"323600384"},"startTime":1793890323127,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":203849,"timestamp":902609435274,"id":243,"parentId":1,"tags":{"path":"/"},"startTime":1793890322924,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":242935,"timestamp":902637967944,"id":245,"parentId":1,"tags":{"trigger":"/shorts/[[...path]]"},"startTime":1793890351458,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":243981,"timestamp":902637967511,"id":244,"parentId":3,"tags":{"inputPage":"/shorts/[[...path]]/page"},"startTime":1793890351457,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":774039,"timestamp":902638212337,"id":246,"parentId":1,"tags":{"url":"/shorts?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793890351702,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902638986421,"id":247,"parentId":246,"tags":{"url":"/shorts?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"552353792","memory.heapUsed":"274905136","memory.heapTotal":"288817152"},"startTime":1793890352476,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":389240,"timestamp":902638600105,"id":248,"parentId":1,"tags":{"path":"/shorts?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793890352089,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":88787,"timestamp":902641407759,"id":250,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793890354897,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":89040,"timestamp":902641407633,"id":249,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793890354897,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":49366,"timestamp":902641496902,"id":251,"parentId":1,"tags":{"url":"/home-road?_rsc=6HFRL17K95pEY6ym"},"startTime":1793890354987,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902641546310,"id":252,"parentId":251,"tags":{"url":"/home-road?_rsc=6HFRL17K95pEY6ym","memory.rss":"636944384","memory.heapUsed":"284399056","memory.heapTotal":"305840128"},"startTime":1793890355036,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":51907,"timestamp":902641498944,"id":253,"parentId":1,"tags":{"path":"/home-road?_rsc=6HFRL17K95pEY6ym"},"startTime":1793890354988,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":156141,"timestamp":902642509071,"id":255,"parentId":1,"tags":{"trigger":"/rank/[[...path]]"},"startTime":1793890355999,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":156278,"timestamp":902642509008,"id":254,"parentId":3,"tags":{"inputPage":"/rank/[[...path]]/page"},"startTime":1793890355999,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":615670,"timestamp":902642665586,"id":256,"parentId":1,"tags":{"url":"/rank?_rsc=yQVrSYgclzAkxXKG"},"startTime":1793890356155,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902643281298,"id":257,"parentId":256,"tags":{"url":"/rank?_rsc=yQVrSYgclzAkxXKG","memory.rss":"835256320","memory.heapUsed":"287759096","memory.heapTotal":"311656448"},"startTime":1793890356771,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":352217,"timestamp":902642931473,"id":258,"parentId":1,"tags":{"path":"/rank?_rsc=yQVrSYgclzAkxXKG"},"startTime":1793890356421,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":60857,"timestamp":902643949321,"id":260,"parentId":1,"tags":{"trigger":"/topics/[[...path]]"},"startTime":1793890357439,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":61171,"timestamp":902643949139,"id":259,"parentId":3,"tags":{"inputPage":"/topics/[[...path]]/page"},"startTime":1793890357439,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":42424,"timestamp":902644010487,"id":261,"parentId":1,"tags":{"url":"/topics?_rsc=AvEglrA5ChP11ZIW"},"startTime":1793890357500,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":902644052962,"id":262,"parentId":261,"tags":{"url":"/topics?_rsc=AvEglrA5ChP11ZIW","memory.rss":"957431808","memory.heapUsed":"295968664","memory.heapTotal":"331087872"},"startTime":1793890357543,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":35642,"timestamp":902644020826,"id":263,"parentId":1,"tags":{"path":"/topics?_rsc=AvEglrA5ChP11ZIW"},"startTime":1793890357510,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":492000,"timestamp":902646006253,"id":264,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":5.154,"persist_duration_ms":486.551708,"task_count":4096,"bytes_written":80498873,"bytes_deleted":0},"startTime":1793890359496,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":117000,"timestamp":902646498108,"id":266,"parentId":3,"tags":{"bytes_written":5592101,"bytes_deleted":5638352},"startTime":1793890359988,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":5864,"timestamp":902646701643,"id":268,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890360191,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":86744,"timestamp":902646707630,"id":269,"parentId":1,"tags":{"url":"/?_rsc=XsDOH4LZtaBKgf0N"},"startTime":1793890360197,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902646794405,"id":270,"parentId":269,"tags":{"url":"/?_rsc=XsDOH4LZtaBKgf0N","memory.rss":"1412481024","memory.heapUsed":"288651840","memory.heapTotal":"334626816"},"startTime":1793890360284,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":88368,"timestamp":902646708453,"id":271,"parentId":1,"tags":{"path":"/?_rsc=XsDOH4LZtaBKgf0N"},"startTime":1793890360198,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":90245,"timestamp":902647782982,"id":273,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793890361273,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":91252,"timestamp":902647782733,"id":272,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890361273,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":655462,"timestamp":902647876259,"id":274,"parentId":1,"tags":{"url":"/short-drama/cgdjcuimianshouji?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793890361366,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":902648531758,"id":275,"parentId":274,"tags":{"url":"/short-drama/cgdjcuimianshouji?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"1054621696","memory.heapUsed":"299760656","memory.heapTotal":"336150528"},"startTime":1793890362022,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":644828,"timestamp":902647889344,"id":276,"parentId":1,"tags":{"path":"/short-drama/cgdjcuimianshouji?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793890361379,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":76075,"timestamp":902799924633,"id":278,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793890513416,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":76741,"timestamp":902799924225,"id":277,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793890513415,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1047815,"timestamp":902800001660,"id":279,"parentId":1,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1?_rsc=EdJqOFWto6kkACyU"},"startTime":1793890513493,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":902801049511,"id":280,"parentId":279,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1?_rsc=EdJqOFWto6kkACyU","memory.rss":"490749952","memory.heapUsed":"302716616","memory.heapTotal":"316489728"},"startTime":1793890514540,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1030848,"timestamp":902800020172,"id":281,"parentId":1,"tags":{"path":"/short-drama/cgdjcuimianshouji/play/1?_rsc=EdJqOFWto6kkACyU"},"startTime":1793890513511,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":8679,"timestamp":902811251648,"id":282,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890524743,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":219702,"timestamp":902811268476,"id":284,"parentId":1,"tags":{"path":"/"},"startTime":1793890524759,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":227613,"timestamp":902811261002,"id":283,"parentId":1,"tags":{"url":"/"},"startTime":1793890524752,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902811488645,"id":285,"parentId":283,"tags":{"url":"/","memory.rss":"339230720","memory.heapUsed":"320075624","memory.heapTotal":"342867968"},"startTime":1793890524980,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":29231,"timestamp":902849385186,"id":286,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890562877,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":126492,"timestamp":902849420568,"id":288,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890562912,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":132114,"timestamp":902849415250,"id":287,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890562907,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902849547385,"id":289,"parentId":287,"tags":{"url":"/short-drama/sisr026","memory.rss":"298663936","memory.heapUsed":"289353216","memory.heapTotal":"304218112"},"startTime":1793890563039,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":902894548207,"id":292,"parentId":3,"tags":{"updatedModules":["[project]/src/lib/api/playlet.ts [app-client]"],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890608040,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":236438,"timestamp":902894564088,"id":291,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793890608056,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":237664,"timestamp":902894563225,"id":290,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793890608055,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":384570,"timestamp":902894801582,"id":293,"parentId":1,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1?_rsc=oBhgmOs6JAVH-qgX"},"startTime":1793890608293,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":902895186194,"id":294,"parentId":293,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1?_rsc=oBhgmOs6JAVH-qgX","memory.rss":"578387968","memory.heapUsed":"296759528","memory.heapTotal":"313688064"},"startTime":1793890608678,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":394187,"timestamp":902894810878,"id":295,"parentId":1,"tags":{"path":"/short-drama/cgdjcuimianshouji/play/1?_rsc=oBhgmOs6JAVH-qgX"},"startTime":1793890608302,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905536245,"id":298,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":106127,"timestamp":902905505303,"id":297,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793890618997,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":110170,"timestamp":902905501550,"id":296,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890618994,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905536638,"id":300,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905536679,"id":301,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":423880,"timestamp":902905659215,"id":302,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890619151,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":470118,"timestamp":902905613114,"id":299,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890619105,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902906083252,"id":303,"parentId":299,"tags":{"url":"/short-drama/sisr026","memory.rss":"649904128","memory.heapUsed":"307053936","memory.heapTotal":"352600064"},"startTime":1793890619575,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":5948,"timestamp":902906093032,"id":304,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793890619585,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905535915,"id":306,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":324127,"timestamp":902906100794,"id":307,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793890619592,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":325939,"timestamp":902906099113,"id":305,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793890619591,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902906425077,"id":308,"parentId":305,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"869466112","memory.heapUsed":"317850408","memory.heapTotal":"360939520"},"startTime":1793890619917,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":9452,"timestamp":902911789991,"id":309,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793890625282,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905536273,"id":311,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":450591,"timestamp":902911806720,"id":312,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793890625298,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":457418,"timestamp":902911800184,"id":310,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793890625292,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":902912257632,"id":313,"parentId":310,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"395689984","memory.heapUsed":"333551960","memory.heapTotal":"370376704"},"startTime":1793890625749,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":36587,"timestamp":902988400506,"id":315,"parentId":1,"tags":{"trigger":"/"},"startTime":1793890701901,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":37675,"timestamp":902988400036,"id":314,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890701901,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":12000,"timestamp":902905526914,"id":317,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjcuimianshouji/play/1","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":138668,"timestamp":902988438284,"id":316,"parentId":1,"tags":{"url":"/?_rsc=VkVVKrcvc5nBIgGY"},"startTime":1793890701939,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":902988576982,"id":318,"parentId":316,"tags":{"url":"/?_rsc=VkVVKrcvc5nBIgGY","memory.rss":"457687040","memory.heapUsed":"336174296","memory.heapTotal":"351092736"},"startTime":1793890702078,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":136701,"timestamp":902988442435,"id":319,"parentId":1,"tags":{"path":"/?_rsc=VkVVKrcvc5nBIgGY"},"startTime":1793890701943,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":181888000,"timestamp":902905522950,"id":320,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":181888000,"timestamp":902905522539,"id":323,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":35751,"timestamp":903087433632,"id":322,"parentId":1,"tags":{"trigger":"/"},"startTime":1793890800939,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":36261,"timestamp":903087433320,"id":321,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890800939,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":181888000,"timestamp":902905522425,"id":325,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":144018,"timestamp":903087470067,"id":324,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890800975,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":7,"timestamp":903087618291,"id":326,"parentId":324,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"430866432","memory.heapUsed":"345033016","memory.heapTotal":"365314048"},"startTime":1793890801124,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":145457,"timestamp":903087473347,"id":327,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890800978,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":202933000,"timestamp":902905522282,"id":328,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":15331,"timestamp":903108463299,"id":329,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890821969,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":202933000,"timestamp":902905522651,"id":331,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890619028,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":175704,"timestamp":903108479346,"id":330,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890821985,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":6,"timestamp":903108655156,"id":332,"parentId":330,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"544980992","memory.heapUsed":"353179024","memory.heapTotal":"373882880"},"startTime":1793890822161,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":165283,"timestamp":903108491139,"id":333,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890821996,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":34000,"timestamp":903120165461,"id":334,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890833671,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":12392,"timestamp":903120202281,"id":335,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793890833708,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":34000,"timestamp":903120165700,"id":337,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890833671,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":97837,"timestamp":903120214855,"id":336,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890833721,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":903120312738,"id":338,"parentId":336,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"637206528","memory.heapUsed":"311739136","memory.heapTotal":"327761920"},"startTime":1793890833818,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":96856,"timestamp":903120216188,"id":339,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793890833722,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":34000,"timestamp":903120164667,"id":340,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890833671,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229103325,"id":341,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":189000,"timestamp":903231133634,"id":342,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":2.36375,"persist_duration_ms":186.679625,"task_count":4093,"bytes_written":17969356,"bytes_deleted":0},"startTime":1793890944640,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":355000,"timestamp":903231321747,"id":344,"parentId":3,"tags":{"bytes_written":31190036,"bytes_deleted":45834161},"startTime":1793890944829,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"client-hmr-latency","duration":31000,"timestamp":903229103440,"id":348,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":202439,"timestamp":903236495101,"id":347,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793890950002,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":203182,"timestamp":903236494745,"id":346,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890950002,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229103611,"id":350,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229102796,"id":351,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1100667,"timestamp":903236699507,"id":349,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890950206,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":903237800233,"id":352,"parentId":349,"tags":{"url":"/short-drama/sisr026","memory.rss":"585023488","memory.heapUsed":"337807408","memory.heapTotal":"375750656"},"startTime":1793890951307,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1086657,"timestamp":903236717367,"id":353,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890950224,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229102940,"id":356,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":94097,"timestamp":903239518900,"id":355,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793890953026,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":94659,"timestamp":903239518484,"id":354,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793890953025,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229102834,"id":358,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229103004,"id":359,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":666036,"timestamp":903239613662,"id":357,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793890953121,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":903240279753,"id":360,"parentId":357,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"563675136","memory.heapUsed":"345554736","memory.heapTotal":"386023424"},"startTime":1793890953787,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":661651,"timestamp":903239618697,"id":361,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793890953125,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":14192,"timestamp":903242723843,"id":362,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890956231,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229102619,"id":364,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":229841,"timestamp":903242738696,"id":363,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890956246,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":903242968584,"id":365,"parentId":363,"tags":{"url":"/short-drama/sisr026","memory.rss":"830488576","memory.heapUsed":"356301936","memory.heapTotal":"398868480"},"startTime":1793890956475,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":226734,"timestamp":903242742724,"id":366,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890956249,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":903229103548,"id":367,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793890942610,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":469957,"timestamp":903281013015,"id":369,"parentId":1,"tags":{"trigger":"/robots.txt"},"startTime":1793890994520,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":471265,"timestamp":903281012283,"id":368,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793890994520,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":44428,"timestamp":903281578968,"id":371,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793890995086,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":140800,"timestamp":903281484253,"id":370,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793890994991,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":903281625639,"id":372,"parentId":370,"tags":{"url":"/robots.txt","memory.rss":"687292416","memory.heapUsed":"368507016","memory.heapTotal":"387350528"},"startTime":1793890995133,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":11284,"timestamp":903282437814,"id":373,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793890995945,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":151729,"timestamp":903282449725,"id":374,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793890995957,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":903282601509,"id":375,"parentId":374,"tags":{"url":"/short-drama/sisr026","memory.rss":"740835328","memory.heapUsed":"377165272","memory.heapTotal":"412516352"},"startTime":1793890996109,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":144098,"timestamp":903282458322,"id":376,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793890995965,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":439000,"timestamp":903284735850,"id":377,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":28.260583,"persist_duration_ms":410.498125,"task_count":4096,"bytes_written":23038436,"bytes_deleted":0},"startTime":1793890998244,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":2143000,"timestamp":903285175894,"id":379,"parentId":3,"tags":{"bytes_written":243489058,"bytes_deleted":276034819},"startTime":1793890998683,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":16258,"timestamp":903292180209,"id":381,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891005688,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":12921,"timestamp":903292199096,"id":383,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891005706,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":15521,"timestamp":903292197129,"id":382,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891005704,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":903292212772,"id":384,"parentId":382,"tags":{"url":"/robots.txt","memory.rss":"315768832","memory.heapUsed":"384263144","memory.heapTotal":"412778496"},"startTime":1793891005720,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":11152,"timestamp":903293019008,"id":385,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891006526,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":889834,"timestamp":903293030430,"id":386,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793891006538,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":903293920325,"id":387,"parentId":386,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"635240448","memory.heapUsed":"353996616","memory.heapTotal":"425410560"},"startTime":1793891007428,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":887326,"timestamp":903293033549,"id":388,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793891006540,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":15443,"timestamp":903316196771,"id":389,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891029704,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":198257,"timestamp":903316218227,"id":391,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793891029725,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":203731,"timestamp":903316213078,"id":390,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793891029721,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903316416843,"id":392,"parentId":390,"tags":{"url":"/short-drama/sisr026","memory.rss":"602324992","memory.heapUsed":"345941472","memory.heapTotal":"363593728"},"startTime":1793891029924,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":903326201643,"id":393,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891039709,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":32150,"timestamp":903326572750,"id":394,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891040080,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":18864,"timestamp":903326608794,"id":396,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891040116,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":22368,"timestamp":903326605611,"id":395,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891040113,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":903326628046,"id":397,"parentId":395,"tags":{"url":"/robots.txt","memory.rss":"298582016","memory.heapUsed":"347848296","memory.heapTotal":"365428736"},"startTime":1793891040136,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":903326201119,"id":398,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891039709,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":7989,"timestamp":903327434196,"id":399,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891040942,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":903326201178,"id":401,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891039709,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":171969,"timestamp":903327442544,"id":400,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793891040950,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903327614545,"id":402,"parentId":400,"tags":{"url":"/short-drama/sisr026","memory.rss":"418971648","memory.heapUsed":"357350576","memory.heapTotal":"377225216"},"startTime":1793891041122,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":163589,"timestamp":903327451364,"id":403,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793891040959,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":903326201062,"id":404,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891039709,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":34000,"timestamp":903348149351,"id":405,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":29027,"timestamp":903348186801,"id":406,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793891061695,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":34000,"timestamp":903348149568,"id":408,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":151394,"timestamp":903348216573,"id":407,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793891061724,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":903348368014,"id":409,"parentId":407,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"428261376","memory.heapUsed":"350036584","memory.heapTotal":"377454592"},"startTime":1793891061876,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":143685,"timestamp":903348224623,"id":410,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793891061732,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348149167,"id":411,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":18880,"timestamp":903358489171,"id":412,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793891071997,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148797,"id":414,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":122163,"timestamp":903358510954,"id":413,"parentId":1,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793891072019,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":903358633175,"id":415,"parentId":413,"tags":{"url":"/?_rsc=g-VBiEzkfQ3E1P6V","memory.rss":"435732480","memory.heapUsed":"358898808","memory.heapTotal":"378896384"},"startTime":1793891072141,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":119537,"timestamp":903358513989,"id":416,"parentId":1,"tags":{"path":"/?_rsc=g-VBiEzkfQ3E1P6V"},"startTime":1793891072022,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":25615,"timestamp":903361002407,"id":417,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891074510,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":36872,"timestamp":903361036926,"id":419,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891074545,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":44797,"timestamp":903361029278,"id":418,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891074537,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":903361074144,"id":420,"parentId":418,"tags":{"url":"/robots.txt","memory.rss":"689569792","memory.heapUsed":"360254400","memory.heapTotal":"379158528"},"startTime":1793891074582,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348149294,"id":421,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":23393,"timestamp":903361896184,"id":423,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793891075404,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":23914,"timestamp":903361896001,"id":422,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891075404,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348149432,"id":425,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148625,"id":426,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":870992,"timestamp":903361920198,"id":424,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793891075428,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":903362791231,"id":427,"parentId":424,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"576339968","memory.heapUsed":"356445576","memory.heapTotal":"409747456"},"startTime":1793891076299,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":867661,"timestamp":903361924448,"id":428,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793891075432,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":24425,"timestamp":903381880428,"id":429,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891095389,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":20345,"timestamp":903381910119,"id":431,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891095418,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":25287,"timestamp":903381905785,"id":430,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891095414,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":903381931234,"id":432,"parentId":430,"tags":{"url":"/robots.txt","memory.rss":"188088320","memory.heapUsed":"358067536","memory.heapTotal":"410009600"},"startTime":1793891095439,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148692,"id":433,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":23336,"timestamp":903382736837,"id":435,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793891096245,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":23612,"timestamp":903382736693,"id":434,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891096245,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148952,"id":437,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":177738,"timestamp":903382760526,"id":436,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793891096269,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":903382938318,"id":438,"parentId":436,"tags":{"url":"/short-drama/sisr026","memory.rss":"406552576","memory.heapUsed":"368776352","memory.heapTotal":"405045248"},"startTime":1793891096447,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":174856,"timestamp":903382764251,"id":439,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793891096272,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148897,"id":440,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":31156,"timestamp":903392317776,"id":441,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891105826,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":13877,"timestamp":903392351651,"id":443,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891105859,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":16155,"timestamp":903392349782,"id":442,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891105858,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903392365982,"id":444,"parentId":442,"tags":{"url":"/robots.txt","memory.rss":"229015552","memory.heapUsed":"375983744","memory.heapTotal":"405307392"},"startTime":1793891105874,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148646,"id":445,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148268,"id":448,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":65090,"timestamp":903393177824,"id":447,"parentId":1,"tags":{"trigger":"/shorts/[[...path]]"},"startTime":1793891106686,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":65567,"timestamp":903393177637,"id":446,"parentId":3,"tags":{"inputPage":"/shorts/[[...path]]/page"},"startTime":1793891106686,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148819,"id":450,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":10335000,"timestamp":903348148378,"id":451,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891061657,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":550470,"timestamp":903393243556,"id":449,"parentId":1,"tags":{"url":"/shorts"},"startTime":1793891106752,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":7,"timestamp":903393794074,"id":452,"parentId":449,"tags":{"url":"/shorts","memory.rss":"695910400","memory.heapUsed":"364172160","memory.heapTotal":"412729344"},"startTime":1793891107302,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":547347,"timestamp":903393246970,"id":453,"parentId":1,"tags":{"path":"/shorts"},"startTime":1793891106755,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694659,"id":454,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694689,"id":456,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":72827,"timestamp":903419795604,"id":455,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891133304,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":10800,"timestamp":903419873620,"id":458,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891133382,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":15673,"timestamp":903419868984,"id":457,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891133378,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903419884701,"id":459,"parentId":457,"tags":{"url":"/robots.txt","memory.rss":"313442304","memory.heapUsed":"344065816","memory.heapTotal":"359874560"},"startTime":1793891133393,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694762,"id":460,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":6805,"timestamp":903420693066,"id":461,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891134202,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694931,"id":463,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":183976,"timestamp":903420700201,"id":462,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793891134209,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":903420884217,"id":464,"parentId":462,"tags":{"url":"/short-drama/sisr026","memory.rss":"408125440","memory.heapUsed":"354839768","memory.heapTotal":"382418944"},"startTime":1793891134393,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":178284,"timestamp":903420707160,"id":465,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793891134215,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694783,"id":466,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":10439,"timestamp":903430217158,"id":467,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891143726,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":13976,"timestamp":903430234621,"id":469,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891143742,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":20760,"timestamp":903430228376,"id":468,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891143737,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":903430249295,"id":470,"parentId":468,"tags":{"url":"/robots.txt","memory.rss":"194428928","memory.heapUsed":"358600848","memory.heapTotal":"384466944"},"startTime":1793891143758,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694766,"id":471,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":14478,"timestamp":903431061333,"id":472,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891144570,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694054,"id":474,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694828,"id":475,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":612996,"timestamp":903431076136,"id":473,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/3"},"startTime":1793891144585,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":903431689178,"id":476,"parentId":473,"tags":{"url":"/short-drama/sisr026/play/3","memory.rss":"541540352","memory.heapUsed":"363406912","memory.heapTotal":"422117376"},"startTime":1793891145198,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":610594,"timestamp":903431079464,"id":477,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/3"},"startTime":1793891144588,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":67214,"timestamp":903451903900,"id":479,"parentId":1,"tags":{"trigger":"/search"},"startTime":1793891165413,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":68070,"timestamp":903451903504,"id":478,"parentId":3,"tags":{"inputPage":"/search/page"},"startTime":1793891165412,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694330,"id":481,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":441448,"timestamp":903451976391,"id":482,"parentId":1,"tags":{"path":"/search?q=AI"},"startTime":1793891165485,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":446227,"timestamp":903451972085,"id":480,"parentId":1,"tags":{"url":"/search?q=AI"},"startTime":1793891165481,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903452418362,"id":483,"parentId":480,"tags":{"url":"/search?q=AI","memory.rss":"1005027328","memory.heapUsed":"387317312","memory.heapTotal":"424361984"},"startTime":1793891165927,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":11570,"timestamp":903452428936,"id":485,"parentId":1,"tags":{"trigger":"/topics/[[...path]]"},"startTime":1793891165938,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":11672,"timestamp":903452428893,"id":484,"parentId":3,"tags":{"inputPage":"/topics/[[...path]]/page"},"startTime":1793891165938,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694162,"id":487,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":646384,"timestamp":903452443992,"id":488,"parentId":1,"tags":{"path":"/topics"},"startTime":1793891165952,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":649766,"timestamp":903452440735,"id":486,"parentId":1,"tags":{"url":"/topics"},"startTime":1793891165950,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":903453090526,"id":489,"parentId":486,"tags":{"url":"/topics","memory.rss":"1147469824","memory.heapUsed":"390969944","memory.heapTotal":"432898048"},"startTime":1793891166599,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":29481,"timestamp":903453119664,"id":491,"parentId":1,"tags":{"trigger":"/rank/[[...path]]"},"startTime":1793891166629,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":29592,"timestamp":903453119620,"id":490,"parentId":3,"tags":{"inputPage":"/rank/[[...path]]/page"},"startTime":1793891166628,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418694014,"id":493,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":383694,"timestamp":903453152347,"id":494,"parentId":1,"tags":{"path":"/rank"},"startTime":1793891166661,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":386806,"timestamp":903453149378,"id":492,"parentId":1,"tags":{"url":"/rank"},"startTime":1793891166658,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":903453536213,"id":495,"parentId":492,"tags":{"url":"/rank","memory.rss":"1315520512","memory.heapUsed":"381221144","memory.heapTotal":"443826176"},"startTime":1793891167045,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":27269,"timestamp":904056320730,"id":496,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891769835,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":4000,"timestamp":903418688712,"id":498,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891132203,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1343899,"timestamp":904056348928,"id":497,"parentId":1,"tags":{"url":"/short-drama/cgdjwankuyezun?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793891769863,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":11,"timestamp":904057693065,"id":499,"parentId":497,"tags":{"url":"/short-drama/cgdjwankuyezun?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"305364992","memory.heapUsed":"363805432","memory.heapTotal":"383680512"},"startTime":1793891771208,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1342383,"timestamp":904056356122,"id":500,"parentId":1,"tags":{"path":"/short-drama/cgdjwankuyezun?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793891769870,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":904060416463,"id":501,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjwankuyezun","isPageHidden":false},"startTime":1793891773931,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":904060416809,"id":503,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjwankuyezun","isPageHidden":false},"startTime":1793891773931,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":44064,"timestamp":904065209163,"id":502,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891778724,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":904060416050,"id":505,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjwankuyezun","isPageHidden":false},"startTime":1793891773931,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1258769,"timestamp":904065254193,"id":504,"parentId":1,"tags":{"url":"/short-drama/cgdjwankuyezun/play/1?_rsc=MkbxppM0zsGxobwP"},"startTime":1793891778769,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":904066513007,"id":506,"parentId":504,"tags":{"url":"/short-drama/cgdjwankuyezun/play/1?_rsc=MkbxppM0zsGxobwP","memory.rss":"350240768","memory.heapUsed":"368126440","memory.heapTotal":"388874240"},"startTime":1793891780028,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1254318,"timestamp":904065260237,"id":507,"parentId":1,"tags":{"path":"/short-drama/cgdjwankuyezun/play/1?_rsc=MkbxppM0zsGxobwP"},"startTime":1793891778774,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":18380,"timestamp":904077372918,"id":508,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891790888,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":3000,"timestamp":904060416204,"id":510,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/cgdjwankuyezun/play/1","isPageHidden":false},"startTime":1793891773931,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1364467,"timestamp":904077394582,"id":509,"parentId":1,"tags":{"url":"/short-drama/cgdjwankuyezun/play/1?_rsc=_NDT0WSZ23JE6BHR"},"startTime":1793891790909,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":904078759109,"id":511,"parentId":509,"tags":{"url":"/short-drama/cgdjwankuyezun/play/1?_rsc=_NDT0WSZ23JE6BHR","memory.rss":"274923520","memory.heapUsed":"372620832","memory.heapTotal":"389136384"},"startTime":1793891792274,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1344488,"timestamp":904077416242,"id":512,"parentId":1,"tags":{"path":"/short-drama/cgdjwankuyezun/play/1?_rsc=_NDT0WSZ23JE6BHR"},"startTime":1793891790930,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":174145,"timestamp":904080893869,"id":514,"parentId":1,"tags":{"trigger":"/h5/m3u8/[...path]"},"startTime":1793891794409,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":174527,"timestamp":904080893776,"id":513,"parentId":3,"tags":{"inputPage":"/h5/m3u8/[...path]/route"},"startTime":1793891794408,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":657947,"timestamp":904081527576,"id":516,"parentId":1,"tags":{"path":"/h5/m3u8/v3/bktappupdata/sp/uu/o9/vj/3p/e92aef3dd45f4aa59004b7567a22d6f4104820261031160009.m3u8?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D"},"startTime":1793891795041,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1117385,"timestamp":904081068562,"id":515,"parentId":1,"tags":{"url":"/h5/m3u8/v3/bktappupdata/sp/uu/o9/vj/3p/e92aef3dd45f4aa59004b7567a22d6f4104820261031160009.m3u8?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D"},"startTime":1793891794583,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904082185983,"id":517,"parentId":515,"tags":{"url":"/h5/m3u8/v3/bktappupdata/sp/uu/o9/vj/3p/e92aef3dd45f4aa59004b7567a22d6f4104820261031160009.m3u8?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D","memory.rss":"678936576","memory.heapUsed":"377887560","memory.heapTotal":"396820480"},"startTime":1793891795701,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":52087,"timestamp":904082190041,"id":519,"parentId":1,"tags":{"trigger":"/enkey"},"startTime":1793891795705,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":52221,"timestamp":904082189996,"id":518,"parentId":3,"tags":{"inputPage":"/enkey/route"},"startTime":1793891795705,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":178351,"timestamp":904082257349,"id":521,"parentId":1,"tags":{"path":"/enkey?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D"},"startTime":1793891795771,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":193259,"timestamp":904082242641,"id":520,"parentId":1,"tags":{"url":"/enkey?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D"},"startTime":1793891795757,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904082435949,"id":522,"parentId":520,"tags":{"url":"/enkey?id=16381&t=1793892394&ticket=JFGQIN5joOLaT5cBsz8jo3PW3p8TZoVTkSbREYrW3b1G0-xCDPG1TUMMFWuxe9CoP90b2223y9GADckVxexu020Z4JCd_eHAZzLRIDkWHfeo2dtMrpOQKnB8ikGfz-YsRlee5FeL-O6tvpxw8iLqXP_KGSyOiR6X2_Ey7piOLG3oanPccm-G4q0NEHpHVfdbVDCpvpNK2iaCRMKwybmVQcj9um1uBZov1NxTsNldDEIu3YTfZT5GYQcXzaIrnh7UoD6eyYdeqqc6f6QYOZREEbDMQpZYi8X18pHuAAclGtAiaPKCQ5EYDpiG4dC9ck7wzV0vIOFKBowRkNcOOlk6cG0b-qM-B4oPCZH4VdPC2XaylT5n3UUxt0lGUsTEJNiQpJTfROZg14dVzThQGkl4XVPSVm1k5ifklJey9Q%3D%3D","memory.rss":"674054144","memory.heapUsed":"382074776","memory.heapTotal":"400048128"},"startTime":1793891795951,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":17364,"timestamp":904086988241,"id":523,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891800503,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":2130288,"timestamp":904087006905,"id":524,"parentId":1,"tags":{"url":"/short-drama/cgdjwankuyezun/play/2?_rsc=4LbxDyQ1q4vWVhmi"},"startTime":1793891800522,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":5,"timestamp":904089137466,"id":525,"parentId":524,"tags":{"url":"/short-drama/cgdjwankuyezun/play/2?_rsc=4LbxDyQ1q4vWVhmi","memory.rss":"750075904","memory.heapUsed":"378508600","memory.heapTotal":"413417472"},"startTime":1793891802652,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":2126870,"timestamp":904087013323,"id":526,"parentId":1,"tags":{"path":"/short-drama/cgdjwankuyezun/play/2?_rsc=4LbxDyQ1q4vWVhmi"},"startTime":1793891800528,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":257000,"timestamp":904089007021,"id":527,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":17.567833,"persist_duration_ms":239.765958,"task_count":4055,"bytes_written":13843525,"bytes_deleted":0},"startTime":1793891802522,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":23536,"timestamp":904091158104,"id":529,"parentId":3,"tags":{"inputPage":"/h5/m3u8/[...path]/route"},"startTime":1793891804673,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":13354,"timestamp":904091169325,"id":530,"parentId":3,"tags":{"inputPage":"/h5/m3u8/[...path]/route"},"startTime":1793891804684,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":339256,"timestamp":904091203118,"id":532,"parentId":1,"tags":{"path":"/h5/m3u8/v3/bktappupdata/sp/nl/3a/ty/0n/cf8afecbebf24292aeae6a201ffba9ad104820261031160010.m3u8?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D"},"startTime":1793891804717,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":358661,"timestamp":904091184042,"id":531,"parentId":1,"tags":{"url":"/h5/m3u8/v3/bktappupdata/sp/nl/3a/ty/0n/cf8afecbebf24292aeae6a201ffba9ad104820261031160010.m3u8?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D"},"startTime":1793891804699,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904091542741,"id":533,"parentId":531,"tags":{"url":"/h5/m3u8/v3/bktappupdata/sp/nl/3a/ty/0n/cf8afecbebf24292aeae6a201ffba9ad104820261031160010.m3u8?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D","memory.rss":"1157578752","memory.heapUsed":"381109728","memory.heapTotal":"413417472"},"startTime":1793891805058,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":3892,"timestamp":904091544416,"id":534,"parentId":3,"tags":{"inputPage":"/enkey/route"},"startTime":1793891805059,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":133904,"timestamp":904091549284,"id":536,"parentId":1,"tags":{"path":"/enkey?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D"},"startTime":1793891805064,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":134941,"timestamp":904091548457,"id":535,"parentId":1,"tags":{"url":"/enkey?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D"},"startTime":1793891805063,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904091683437,"id":537,"parentId":535,"tags":{"url":"/enkey?id=16382&t=1793892404&ticket=19w5xONP0XmH-0tHOvqB9jhGUN_bJsJxTPFtM-QtsvVKFBKX7EKOOzNVLcxdoJEI1LByDcO1XJlNr6g5SE-lkdoAIiO_3IouEPbnLtj2VzWxeggitw0xy0MiJ3VKYMPPgSgy_YHA7HFZT4aj6HKSVvbzdO0Au0VvzK2ZnJ14LnlMJZcuWAZFfI8BZSKlZidHjoSPUDy8ETkzXy5QfOc6yiqQeXSWLat0_3risdqCRpOsB1334c5slw1LeZFtWa35h7J1UIUUwLahzfQXWUIm-eOwdpIgSEGSidMdLFXxZGvlapMMqcY5PqRWFqFqvZImF46bOfIBg2dY_rHz9pAuQlO6kzZzo1IwXAcqjVeccsQGiyT0tGffv3FQk64nHE-Sb14P9VGTjUVjOvs0UtIis85yWzyh2lSOSmZt6g%3D%3D","memory.rss":"1154416640","memory.heapUsed":"382323472","memory.heapTotal":"413417472"},"startTime":1793891805198,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":9875,"timestamp":904095859003,"id":538,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793891809374,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":105044,"timestamp":904095869049,"id":539,"parentId":1,"tags":{"url":"/?_rsc=MkbxppM0zsGxobwP"},"startTime":1793891809384,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904095974130,"id":540,"parentId":539,"tags":{"url":"/?_rsc=MkbxppM0zsGxobwP","memory.rss":"981975040","memory.heapUsed":"381820944","memory.heapTotal":"431243264"},"startTime":1793891809489,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":104493,"timestamp":904095870000,"id":541,"parentId":1,"tags":{"path":"/?_rsc=MkbxppM0zsGxobwP"},"startTime":1793891809385,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":38193,"timestamp":904155505611,"id":542,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891869021,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":871935,"timestamp":904155550333,"id":544,"parentId":1,"tags":{"path":"/short-drama/mogaiaiqinggongyudisanji"},"startTime":1793891869066,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":878688,"timestamp":904155544661,"id":543,"parentId":1,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji"},"startTime":1793891869060,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904156423381,"id":545,"parentId":543,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji","memory.rss":"381091840","memory.heapUsed":"402195304","memory.heapTotal":"430620672"},"startTime":1793891869939,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":6908,"timestamp":904156431782,"id":546,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891869947,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":716234,"timestamp":904156441341,"id":548,"parentId":1,"tags":{"path":"/short-drama/mogaiaiqinggongyudisanji/play/1"},"startTime":1793891869956,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":718877,"timestamp":904156438851,"id":547,"parentId":1,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji/play/1"},"startTime":1793891869954,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904157157752,"id":549,"parentId":547,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji/play/1","memory.rss":"843530240","memory.heapUsed":"389923360","memory.heapTotal":"451411968"},"startTime":1793891870673,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1637,"timestamp":904157166445,"id":550,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891870682,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":689759,"timestamp":904157170005,"id":552,"parentId":1,"tags":{"path":"/short-drama/mengxueyuankuailaizhaohuitongnian"},"startTime":1793891870685,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":691757,"timestamp":904157168234,"id":551,"parentId":1,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian"},"startTime":1793891870684,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904157860021,"id":553,"parentId":551,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian","memory.rss":"1236762624","memory.heapUsed":"403882592","memory.heapTotal":"453459968"},"startTime":1793891871375,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":3360,"timestamp":904157869302,"id":554,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891871385,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":543448,"timestamp":904157874584,"id":556,"parentId":1,"tags":{"path":"/short-drama/mengxueyuankuailaizhaohuitongnian/play/1"},"startTime":1793891871390,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":545349,"timestamp":904157872836,"id":555,"parentId":1,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian/play/1"},"startTime":1793891871388,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904158418217,"id":557,"parentId":555,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian/play/1","memory.rss":"1226801152","memory.heapUsed":"416327784","memory.heapTotal":"460013568"},"startTime":1793891871934,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":2275,"timestamp":904158427612,"id":558,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891871943,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":911872,"timestamp":904158431784,"id":560,"parentId":1,"tags":{"path":"/short-drama/cgdjcuimianshouji"},"startTime":1793891871947,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":913758,"timestamp":904158430041,"id":559,"parentId":1,"tags":{"url":"/short-drama/cgdjcuimianshouji"},"startTime":1793891871945,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904159343824,"id":561,"parentId":559,"tags":{"url":"/short-drama/cgdjcuimianshouji","memory.rss":"1331265536","memory.heapUsed":"433443896","memory.heapTotal":"474578944"},"startTime":1793891872859,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1788,"timestamp":904159351967,"id":562,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891872867,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":781400,"timestamp":904159354590,"id":564,"parentId":1,"tags":{"path":"/short-drama/cgdjcuimianshouji/play/1"},"startTime":1793891872870,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":782254,"timestamp":904159353886,"id":563,"parentId":1,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1"},"startTime":1793891872869,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904160136176,"id":565,"parentId":563,"tags":{"url":"/short-drama/cgdjcuimianshouji/play/1","memory.rss":"1181548544","memory.heapUsed":"446997872","memory.heapTotal":"487948288"},"startTime":1793891873652,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":3802,"timestamp":904160147165,"id":566,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891873663,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":489061,"timestamp":904160152856,"id":568,"parentId":1,"tags":{"path":"/short-drama/numingxingzhaojinmaiqingchunmei"},"startTime":1793891873667,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":490926,"timestamp":904160151128,"id":567,"parentId":1,"tags":{"url":"/short-drama/numingxingzhaojinmaiqingchunmei"},"startTime":1793891873667,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904160642081,"id":569,"parentId":567,"tags":{"url":"/short-drama/numingxingzhaojinmaiqingchunmei","memory.rss":"1138556928","memory.heapUsed":"459926736","memory.heapTotal":"500793344"},"startTime":1793891874158,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1539,"timestamp":904160651376,"id":570,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891874167,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":601652,"timestamp":904160654592,"id":572,"parentId":1,"tags":{"path":"/short-drama/numingxingzhaojinmaiqingchunmei/play/1"},"startTime":1793891874170,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":603373,"timestamp":904160653038,"id":571,"parentId":1,"tags":{"url":"/short-drama/numingxingzhaojinmaiqingchunmei/play/1"},"startTime":1793891874168,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904161256435,"id":573,"parentId":571,"tags":{"url":"/short-drama/numingxingzhaojinmaiqingchunmei/play/1","memory.rss":"1226850304","memory.heapUsed":"470225808","memory.heapTotal":"513900544"},"startTime":1793891874772,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":3252,"timestamp":904161266604,"id":574,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891874782,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":661553,"timestamp":904161271963,"id":576,"parentId":1,"tags":{"path":"/short-drama/wodeqigejuesejiejieheji"},"startTime":1793891874787,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":663673,"timestamp":904161270003,"id":575,"parentId":1,"tags":{"url":"/short-drama/wodeqigejuesejiejieheji"},"startTime":1793891874785,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904161933710,"id":577,"parentId":575,"tags":{"url":"/short-drama/wodeqigejuesejiejieheji","memory.rss":"1211990016","memory.heapUsed":"485179008","memory.heapTotal":"529383424"},"startTime":1793891875449,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":4578,"timestamp":904161949746,"id":578,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891875465,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":609199,"timestamp":904161956633,"id":580,"parentId":1,"tags":{"path":"/short-drama/wodeqigejuesejiejieheji/play/1"},"startTime":1793891875471,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":611579,"timestamp":904161954486,"id":579,"parentId":1,"tags":{"url":"/short-drama/wodeqigejuesejiejieheji/play/1"},"startTime":1793891875470,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904162566097,"id":581,"parentId":579,"tags":{"url":"/short-drama/wodeqigejuesejiejieheji/play/1","memory.rss":"1391951872","memory.heapUsed":"430929984","memory.heapTotal":"539639808"},"startTime":1793891876082,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":54147,"timestamp":904216326425,"id":582,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891929842,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":2646669,"timestamp":904216381538,"id":583,"parentId":1,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian?_rsc=VLMInNaOkvT6bh-Y"},"startTime":1793891929898,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904219028331,"id":584,"parentId":583,"tags":{"url":"/short-drama/mengxueyuankuailaizhaohuitongnian?_rsc=VLMInNaOkvT6bh-Y","memory.rss":"328073216","memory.heapUsed":"406028168","memory.heapTotal":"428097536"},"startTime":1793891932544,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":2644390,"timestamp":904216387377,"id":585,"parentId":1,"tags":{"path":"/short-drama/mengxueyuankuailaizhaohuitongnian?_rsc=VLMInNaOkvT6bh-Y"},"startTime":1793891929903,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":32711,"timestamp":904223442101,"id":586,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793891936958,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":137441,"timestamp":904223475682,"id":587,"parentId":1,"tags":{"url":"/?_rsc=opjit8mwI-qrpLKc"},"startTime":1793891936992,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904223613190,"id":588,"parentId":587,"tags":{"url":"/?_rsc=opjit8mwI-qrpLKc","memory.rss":"336609280","memory.heapUsed":"412439992","memory.heapTotal":"441008128"},"startTime":1793891937129,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":134443,"timestamp":904223479359,"id":589,"parentId":1,"tags":{"path":"/?_rsc=opjit8mwI-qrpLKc"},"startTime":1793891936995,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":10650,"timestamp":904224991447,"id":590,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891938508,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1955395,"timestamp":904225003024,"id":591,"parentId":1,"tags":{"url":"/short-drama/sisr026?_rsc=Z3aLdrB6XT6cfHvh"},"startTime":1793891938519,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":904226958483,"id":592,"parentId":591,"tags":{"url":"/short-drama/sisr026?_rsc=Z3aLdrB6XT6cfHvh","memory.rss":"942751744","memory.heapUsed":"421635640","memory.heapTotal":"446201856"},"startTime":1793891940475,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1953367,"timestamp":904225008338,"id":593,"parentId":1,"tags":{"path":"/short-drama/sisr026?_rsc=Z3aLdrB6XT6cfHvh"},"startTime":1793891938524,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":161790000,"timestamp":904080993323,"id":594,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891794510,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":36758,"timestamp":904242818871,"id":596,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793891956335,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":37194,"timestamp":904242818547,"id":595,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891956335,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":90163,"timestamp":904242856318,"id":597,"parentId":1,"tags":{"url":"/short-drama/sisr026?_rsc=w36s5EtTc-Bo6Gd9"},"startTime":1793891956373,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904242946524,"id":598,"parentId":597,"tags":{"url":"/short-drama/sisr026?_rsc=w36s5EtTc-Bo6Gd9","memory.rss":"450576384","memory.heapUsed":"421228560","memory.heapTotal":"438108160"},"startTime":1793891956463,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":161790000,"timestamp":904080994061,"id":599,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891794510,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":90493,"timestamp":904242863372,"id":600,"parentId":1,"tags":{"path":"/short-drama/sisr026?_rsc=w36s5EtTc-Bo6Gd9"},"startTime":1793891956379,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":161790000,"timestamp":904080994272,"id":601,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891794510,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":172424000,"timestamp":904080994053,"id":602,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891794510,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":172424000,"timestamp":904080993967,"id":605,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891794510,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":81962,"timestamp":904253455827,"id":604,"parentId":1,"tags":{"trigger":"/short-drama/[slug]"},"startTime":1793891966972,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":82465,"timestamp":904253455459,"id":603,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891966972,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1339059,"timestamp":904253538612,"id":606,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793891967055,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":7,"timestamp":904254877738,"id":607,"parentId":606,"tags":{"url":"/short-drama/sisr026","memory.rss":"668958720","memory.heapUsed":"433235176","memory.heapTotal":"478986240"},"startTime":1793891968394,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1334368,"timestamp":904253544068,"id":608,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793891967060,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127113,"id":609,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":31325,"timestamp":904271130688,"id":610,"parentId":3,"tags":{"inputPage":"/robots.txt/route"},"startTime":1793891984647,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":17234,"timestamp":904271181950,"id":612,"parentId":1,"tags":{"path":"/robots.txt"},"startTime":1793891984698,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":35231,"timestamp":904271164486,"id":611,"parentId":1,"tags":{"url":"/robots.txt"},"startTime":1793891984681,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904271199790,"id":613,"parentId":611,"tags":{"url":"/robots.txt","memory.rss":"371343360","memory.heapUsed":"436904488","memory.heapTotal":"479248384"},"startTime":1793891984716,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127865,"id":614,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":32187,"timestamp":904272014011,"id":616,"parentId":1,"tags":{"trigger":"/short-drama/[slug]/play/[episode]"},"startTime":1793891985531,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":32979,"timestamp":904272013809,"id":615,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891985530,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127921,"id":618,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127814,"id":619,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1744569,"timestamp":904272047321,"id":617,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/1"},"startTime":1793891985564,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":4,"timestamp":904273791958,"id":620,"parentId":617,"tags":{"url":"/short-drama/sisr026/play/1","memory.rss":"436912128","memory.heapUsed":"450157304","memory.heapTotal":"494698496"},"startTime":1793891987308,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1739211,"timestamp":904272053470,"id":621,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/1"},"startTime":1793891985569,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":29736,"timestamp":904282960533,"id":622,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793891996477,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127717,"id":624,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/sisr026","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1304441,"timestamp":904282991095,"id":623,"parentId":1,"tags":{"url":"/short-drama/gaoyanzhiyujiezhixiaoxianruo?_rsc=p2_2MLd1Pk5H2nsm"},"startTime":1793891996508,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904284295600,"id":625,"parentId":623,"tags":{"url":"/short-drama/gaoyanzhiyujiezhixiaoxianruo?_rsc=p2_2MLd1Pk5H2nsm","memory.rss":"364642304","memory.heapUsed":"455393056","memory.heapTotal":"502185984"},"startTime":1793891997812,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1293541,"timestamp":904283004587,"id":626,"parentId":1,"tags":{"path":"/short-drama/gaoyanzhiyujiezhixiaoxianruo?_rsc=p2_2MLd1Pk5H2nsm"},"startTime":1793891996521,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":4048,"timestamp":904285347471,"id":627,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793891998864,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127720,"id":629,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":1599752,"timestamp":904285351663,"id":628,"parentId":1,"tags":{"url":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1?_rsc=SMtc4PqwKVhnZ4qG"},"startTime":1793891998868,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":904286951454,"id":630,"parentId":628,"tags":{"url":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1?_rsc=SMtc4PqwKVhnZ4qG","memory.rss":"879443968","memory.heapUsed":"437535288","memory.heapTotal":"502218752"},"startTime":1793892000468,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":1600183,"timestamp":904285354042,"id":631,"parentId":1,"tags":{"path":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1?_rsc=SMtc4PqwKVhnZ4qG"},"startTime":1793891998870,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127242,"id":633,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":38263,"timestamp":904288710538,"id":632,"parentId":3,"tags":{"inputPage":"/h5/m3u8/[...path]/route"},"startTime":1793892002227,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126927,"id":635,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":330022,"timestamp":904288751189,"id":636,"parentId":1,"tags":{"path":"/h5/m3u8/v3/k12/c92a/0a80/751d/75c1254cfe4355256491b495f1c2e2a6104320260909042944.m3u8?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D"},"startTime":1793892002267,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":332575,"timestamp":904288748938,"id":634,"parentId":1,"tags":{"url":"/h5/m3u8/v3/k12/c92a/0a80/751d/75c1254cfe4355256491b495f1c2e2a6104320260909042944.m3u8?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D"},"startTime":1793892002266,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904289081553,"id":637,"parentId":634,"tags":{"url":"/h5/m3u8/v3/k12/c92a/0a80/751d/75c1254cfe4355256491b495f1c2e2a6104320260909042944.m3u8?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D","memory.rss":"1351483392","memory.heapUsed":"429304664","memory.heapTotal":"502218752"},"startTime":1793892002598,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":5119,"timestamp":904289085264,"id":638,"parentId":3,"tags":{"inputPage":"/enkey/route"},"startTime":1793892002602,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127065,"id":640,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":121748,"timestamp":904289091045,"id":641,"parentId":1,"tags":{"path":"/enkey?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D"},"startTime":1793892002608,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":122607,"timestamp":904289090506,"id":639,"parentId":1,"tags":{"url":"/enkey?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D"},"startTime":1793892002607,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904289213156,"id":642,"parentId":639,"tags":{"url":"/enkey?id=12691&t=1793892602&ticket=cnihJF4BbwGfNVJA25_VZfRFabtkMj64lHwj2NuY1KlbxsyVCcZoGaFJ9dLtilPHWC5TecohFUURYlTcV5celi1038kSddrEUFYJbRCssnIIAeX4w3Vq2A3ADZhcxzZG49KPmHIuOsy4kOF_wWoaDfu4SEnAS_gyQybiH6zMRc6XKVHXYGwenzdvpGb-YTYxY1f-ufob7xHmzeir32z5yWiXJtqUnhN9zoxmL2w51uFnMrnRcmjbkSzvGD6WN5uBjQ2Lryvj_8tIHOlvRn5fEg6S5sPfuoQHtfIHbNTNsgHiXa6bHmJIHZ_9hGbrI1OVGJK_K7OL4vZkpYmqWl-ARDz0PjsQcW6ErUZvofI54Shvc96Famo46n_3hx0aUSSlmQSLzgsK4tgJXpLvx6rNOMBMHZI7mu_VH479CA%3D%3D","memory.rss":"1349844992","memory.heapUsed":"430514744","memory.heapTotal":"502218752"},"startTime":1793892002730,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":8317,"timestamp":904290682027,"id":643,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/page"},"startTime":1793892004199,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":218772,"timestamp":904290707732,"id":645,"parentId":1,"tags":{"path":"/short-drama/sisr026"},"startTime":1793892004224,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":235324,"timestamp":904290691665,"id":644,"parentId":1,"tags":{"url":"/short-drama/sisr026"},"startTime":1793892004208,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904290927016,"id":646,"parentId":644,"tags":{"url":"/short-drama/sisr026","memory.rss":"395935744","memory.heapUsed":"442543024","memory.heapTotal":"504791040"},"startTime":1793892004444,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127707,"id":647,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":10985,"timestamp":904290946674,"id":648,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793892004463,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127293,"id":650,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":414191,"timestamp":904290960143,"id":651,"parentId":1,"tags":{"path":"/short-drama/sisr026/play/3"},"startTime":1793892004476,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":416655,"timestamp":904290957821,"id":649,"parentId":1,"tags":{"url":"/short-drama/sisr026/play/3"},"startTime":1793892004474,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904291374500,"id":652,"parentId":649,"tags":{"url":"/short-drama/sisr026/play/3","memory.rss":"660537344","memory.heapUsed":"456174472","memory.heapTotal":"506888192"},"startTime":1793892004891,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":1586,"timestamp":904291384921,"id":653,"parentId":3,"tags":{"inputPage":"/short-drama/[slug]/play/[episode]/page"},"startTime":1793892004902,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270127289,"id":655,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":587566,"timestamp":904291388389,"id":656,"parentId":1,"tags":{"path":"/short-drama/mogaiaiqinggongyudisanji/play/1"},"startTime":1793892004905,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":589463,"timestamp":904291386629,"id":654,"parentId":1,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji/play/1"},"startTime":1793892004903,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904291976118,"id":657,"parentId":654,"tags":{"url":"/short-drama/mogaiaiqinggongyudisanji/play/1","memory.rss":"768393216","memory.heapUsed":"476363960","memory.heapTotal":"513327104"},"startTime":1793892005493,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":32769,"timestamp":904313657775,"id":658,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793892027175,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126814,"id":660,"parentId":3,"tags":{"updatedModules":[],"page":"/short-drama/gaoyanzhiyujiezhixiaoxianruo/play/1","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":93445,"timestamp":904313690782,"id":659,"parentId":1,"tags":{"url":"/?_rsc=LvJCpEnnpQqTTSPl"},"startTime":1793892027208,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":3,"timestamp":904313784279,"id":661,"parentId":659,"tags":{"url":"/?_rsc=LvJCpEnnpQqTTSPl","memory.rss":"1128611840","memory.heapUsed":"434927640","memory.heapTotal":"456376320"},"startTime":1793892027301,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":92573,"timestamp":904313692113,"id":662,"parentId":1,"tags":{"path":"/?_rsc=LvJCpEnnpQqTTSPl"},"startTime":1793892027209,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":39314,"timestamp":904381685079,"id":663,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793892095203,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":209277,"timestamp":904381727758,"id":665,"parentId":1,"tags":{"path":"/"},"startTime":1793892095244,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":212784,"timestamp":904381725203,"id":664,"parentId":1,"tags":{"url":"/"},"startTime":1793892095243,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904381938018,"id":666,"parentId":664,"tags":{"url":"/","memory.rss":"388235264","memory.heapUsed":"451826720","memory.heapTotal":"477429760"},"startTime":1793892095456,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126542,"id":667,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126535,"id":669,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":80487,"timestamp":904405506888,"id":668,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892119025,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":73954,"timestamp":904405590350,"id":670,"parentId":1,"tags":{"url":"/home-road?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793892119108,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904405664351,"id":671,"parentId":670,"tags":{"url":"/home-road?_rsc=KDhbPR_vHFJlvLUo","memory.rss":"349470720","memory.heapUsed":"455385256","memory.heapTotal":"495796224"},"startTime":1793892119182,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126632,"id":672,"parentId":3,"tags":{"updatedModules":[],"page":"/","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":70907,"timestamp":904405602510,"id":673,"parentId":1,"tags":{"path":"/home-road?_rsc=KDhbPR_vHFJlvLUo"},"startTime":1793892119119,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":21000,"timestamp":904270126314,"id":674,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793891983644,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":32000,"timestamp":904407141047,"id":675,"parentId":3,"tags":{"updatedModules":["[project]/src/components/common/SocialLinks.tsx [app-client]","[project]/src/lib/contact.ts [app-client]"],"page":"/home-road","isPageHidden":false},"startTime":1793892120659,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"client-hmr-latency","duration":32000,"timestamp":904407141564,"id":678,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892120659,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":74267,"timestamp":904407175274,"id":677,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793892120693,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":74414,"timestamp":904407175202,"id":676,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892120693,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":48655,"timestamp":904407249732,"id":679,"parentId":1,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892120767,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904407298423,"id":680,"parentId":679,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL","memory.rss":"903921664","memory.heapUsed":"451409456","memory.heapTotal":"482459648"},"startTime":1793892120816,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":32000,"timestamp":904407140888,"id":681,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892120659,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":48337,"timestamp":904407254663,"id":682,"parentId":1,"tags":{"path":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892120772,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":904416870257,"id":683,"parentId":3,"tags":{"updatedModules":["[project]/src/components/common/SocialLinks.tsx [app-client]"],"page":"/home-road","isPageHidden":false},"startTime":1793892130388,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":26271,"timestamp":904416908158,"id":685,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793892130426,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":26781,"timestamp":904416907789,"id":684,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892130426,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":75664,"timestamp":904416935096,"id":686,"parentId":1,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892130453,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904417010799,"id":687,"parentId":686,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL","memory.rss":"539410432","memory.heapUsed":"451269328","memory.heapTotal":"476954624"},"startTime":1793892130529,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":31000,"timestamp":904416870188,"id":688,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892130388,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":57991,"timestamp":904416955991,"id":689,"parentId":1,"tags":{"path":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892130473,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":27000,"timestamp":904422274105,"id":690,"parentId":3,"tags":{"updatedModules":["[project]/src/components/common/SocialLinks.tsx [app-client]"],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":26101,"timestamp":904422315125,"id":692,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793892135833,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":27017,"timestamp":904422314325,"id":691,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892135832,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":87017,"timestamp":904422341821,"id":693,"parentId":1,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892135860,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":2,"timestamp":904422428884,"id":694,"parentId":693,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL","memory.rss":"494534656","memory.heapUsed":"453973824","memory.heapTotal":"474857472"},"startTime":1793892135947,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":27000,"timestamp":904422273692,"id":695,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":86602,"timestamp":904422347872,"id":696,"parentId":1,"tags":{"path":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892135866,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":11543000,"timestamp":904422274112,"id":697,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":29525,"timestamp":904433827024,"id":699,"parentId":1,"tags":{"trigger":"/home-road"},"startTime":1793892147345,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":29971,"timestamp":904433826687,"id":698,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892147345,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":64187,"timestamp":904433857110,"id":700,"parentId":1,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892147375,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":1,"timestamp":904433921342,"id":701,"parentId":700,"tags":{"url":"/home-road?_rsc=fKPVgq1wfND5vuCL","memory.rss":"458932224","memory.heapUsed":"458168016","memory.heapTotal":"475906048"},"startTime":1793892147439,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":11543000,"timestamp":904422274005,"id":702,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":65478,"timestamp":904433860237,"id":703,"parentId":1,"tags":{"path":"/home-road?_rsc=fKPVgq1wfND5vuCL"},"startTime":1793892147378,"traceId":"143c4dbcbb09bb1f"},{"name":"ensure-page","duration":8917,"timestamp":904436193619,"id":704,"parentId":3,"tags":{"inputPage":"/home-road/page"},"startTime":1793892149712,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":153455,"timestamp":904436205490,"id":706,"parentId":1,"tags":{"path":"/home-road"},"startTime":1793892149723,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":155905,"timestamp":904436203248,"id":705,"parentId":1,"tags":{"url":"/home-road"},"startTime":1793892149721,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904436359234,"id":707,"parentId":705,"tags":{"url":"/home-road","memory.rss":"378273792","memory.heapUsed":"469640672","memory.heapTotal":"499941376"},"startTime":1793892149877,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":11543000,"timestamp":904422273651,"id":708,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":11543000,"timestamp":904422274011,"id":711,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"compile-path","duration":46100,"timestamp":904436368139,"id":710,"parentId":1,"tags":{"trigger":"/"},"startTime":1793892149886,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"ensure-page","duration":46488,"timestamp":904436368044,"id":709,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793892149886,"traceId":"143c4dbcbb09bb1f"},{"name":"render-path","duration":164484,"timestamp":904436415830,"id":713,"parentId":1,"tags":{"path":"/"},"startTime":1793892149933,"traceId":"143c4dbcbb09bb1f"},{"name":"handle-request","duration":165792,"timestamp":904436414676,"id":712,"parentId":1,"tags":{"url":"/"},"startTime":1793892149933,"traceId":"143c4dbcbb09bb1f"},{"name":"memory-usage","duration":0,"timestamp":904436580490,"id":714,"parentId":712,"tags":{"url":"/","memory.rss":"738344960","memory.heapUsed":"491374672","memory.heapTotal":"525205504"},"startTime":1793892150099,"traceId":"143c4dbcbb09bb1f"},{"name":"client-hmr-latency","duration":11543000,"timestamp":904422273888,"id":715,"parentId":3,"tags":{"updatedModules":[],"page":"/home-road","isPageHidden":false},"startTime":1793892135792,"traceId":"143c4dbcbb09bb1f"},{"name":"turbopack-persistence","duration":247000,"timestamp":904438413154,"id":716,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":16.990708,"persist_duration_ms":229.640042,"task_count":4086,"bytes_written":19687736,"bytes_deleted":0},"startTime":1793892151931,"traceId":"143c4dbcbb09bb1f"}] -[{"name":"turbopack-compaction","duration":344000,"timestamp":904438659644,"id":718,"parentId":3,"tags":{"bytes_written":33565159,"bytes_deleted":49598869},"startTime":1793892152178,"traceId":"143c4dbcbb09bb1f"}] +[{"name":"hot-reloader","duration":44,"timestamp":910588887866,"id":3,"parentId":1,"tags":{"version":"16.4.1"},"startTime":1793898302395,"traceId":"77638174c97cc399"},{"name":"setup-dev-bundler","duration":568591,"timestamp":910588709428,"id":2,"parentId":1,"tags":{},"startTime":1793898302216,"traceId":"77638174c97cc399"},{"name":"start-dev-server","duration":916113,"timestamp":910588419231,"id":1,"tags":{"cpus":"12","platform":"darwin","memory.freeMem":"117637120","memory.totalMem":"17179869184","memory.heapSizeLimit":"8640266240","rage-restart":false,"missing-next-dir":false},"startTime":1793898301926,"traceId":"77638174c97cc399"},{"name":"compile-path","duration":945370,"timestamp":910589337933,"id":5,"parentId":1,"tags":{"trigger":"/"},"startTime":1793898302845,"traceId":"77638174c97cc399"}] +[{"name":"ensure-page","duration":946125,"timestamp":910589337749,"id":4,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793898302845,"traceId":"77638174c97cc399"},{"name":"render-path","duration":618249,"timestamp":910590408998,"id":7,"parentId":1,"tags":{"path":"/"},"startTime":1793898303915,"traceId":"77638174c97cc399"},{"name":"handle-request","duration":743113,"timestamp":910590284587,"id":6,"parentId":1,"tags":{"url":"/"},"startTime":1793898303791,"traceId":"77638174c97cc399"},{"name":"memory-usage","duration":1,"timestamp":910591027749,"id":8,"parentId":6,"tags":{"url":"/","memory.rss":"739229696","memory.heapUsed":"135849592","memory.heapTotal":"163954688"},"startTime":1793898304535,"traceId":"77638174c97cc399"},{"name":"compile-path","duration":31680,"timestamp":910591139099,"id":11,"parentId":1,"tags":{"trigger":"/_not-found/page"},"startTime":1793898304646,"traceId":"77638174c97cc399"}] +[{"name":"ensure-page","duration":33182,"timestamp":910591137713,"id":10,"parentId":3,"tags":{"inputPage":"/_not-found/page"},"startTime":1793898304645,"traceId":"77638174c97cc399"},{"name":"ensure-page","duration":2023,"timestamp":910591171372,"id":12,"parentId":3,"tags":{"inputPage":"/_not-found/page"},"startTime":1793898304678,"traceId":"77638174c97cc399"},{"name":"render-path","duration":149845,"timestamp":910591178423,"id":13,"parentId":1,"tags":{"path":"/apps"},"startTime":1793898304684,"traceId":"77638174c97cc399"},{"name":"handle-request","duration":191565,"timestamp":910591137146,"id":9,"parentId":1,"tags":{"url":"/apps"},"startTime":1793898304644,"traceId":"77638174c97cc399"},{"name":"memory-usage","duration":1,"timestamp":910591328753,"id":14,"parentId":9,"tags":{"url":"/apps","memory.rss":"745603072","memory.heapUsed":"145515392","memory.heapTotal":"172769280"},"startTime":1793898304836,"traceId":"77638174c97cc399"},{"name":"compile-path","duration":589092,"timestamp":910591350313,"id":16,"parentId":1,"tags":{"trigger":"/nav"},"startTime":1793898304857,"traceId":"77638174c97cc399"}] +[{"name":"ensure-page","duration":589344,"timestamp":910591350163,"id":15,"parentId":3,"tags":{"inputPage":"/nav/page"},"startTime":1793898304857,"traceId":"77638174c97cc399"},{"name":"render-path","duration":139304,"timestamp":910591945468,"id":18,"parentId":1,"tags":{"path":"/nav"},"startTime":1793898305452,"traceId":"77638174c97cc399"},{"name":"handle-request","duration":145792,"timestamp":910591939980,"id":17,"parentId":1,"tags":{"url":"/nav"},"startTime":1793898305447,"traceId":"77638174c97cc399"},{"name":"memory-usage","duration":1,"timestamp":910592085810,"id":19,"parentId":17,"tags":{"url":"/nav","memory.rss":"924762112","memory.heapUsed":"157295176","memory.heapTotal":"180158464"},"startTime":1793898305593,"traceId":"77638174c97cc399"},{"name":"ensure-page","duration":4931,"timestamp":910592100994,"id":20,"parentId":3,"tags":{"inputPage":"/page"},"startTime":1793898305608,"traceId":"77638174c97cc399"},{"name":"render-path","duration":265469,"timestamp":910592107236,"id":22,"parentId":1,"tags":{"path":"/"},"startTime":1793898305614,"traceId":"77638174c97cc399"},{"name":"handle-request","duration":278154,"timestamp":910592106204,"id":21,"parentId":1,"tags":{"url":"/"},"startTime":1793898305613,"traceId":"77638174c97cc399"},{"name":"memory-usage","duration":1,"timestamp":910592384403,"id":23,"parentId":21,"tags":{"url":"/","memory.rss":"824524800","memory.heapUsed":"167706848","memory.heapTotal":"191381504"},"startTime":1793898305891,"traceId":"77638174c97cc399"},{"name":"ensure-page","duration":19121,"timestamp":910592417232,"id":24,"parentId":3,"tags":{"inputPage":"/nav/page"},"startTime":1793898305924,"traceId":"77638174c97cc399"},{"name":"render-path","duration":112664,"timestamp":910592441291,"id":26,"parentId":1,"tags":{"path":"/nav"},"startTime":1793898305948,"traceId":"77638174c97cc399"},{"name":"handle-request","duration":115973,"timestamp":910592438294,"id":25,"parentId":1,"tags":{"url":"/nav"},"startTime":1793898305945,"traceId":"77638174c97cc399"},{"name":"memory-usage","duration":1,"timestamp":910592554305,"id":27,"parentId":25,"tags":{"url":"/nav","memory.rss":"790822912","memory.heapUsed":"167538104","memory.heapTotal":"199131136"},"startTime":1793898306061,"traceId":"77638174c97cc399"},{"name":"turbopack-persistence","duration":1144000,"timestamp":910594437771,"id":28,"parentId":3,"tags":{"reason":"idle timeout","snapshot_duration_ms":56.3035,"persist_duration_ms":1087.506083,"task_count":4096,"bytes_written":33822955,"bytes_deleted":0},"startTime":1793898307945,"traceId":"77638174c97cc399"}] diff --git a/.next-dev/dev/types/routes.d.ts b/.next-dev/dev/types/routes.d.ts index 1b6699a..802c671 100644 --- a/.next-dev/dev/types/routes.d.ts +++ b/.next-dev/dev/types/routes.d.ts @@ -1,7 +1,7 @@ // This file is generated automatically by Next.js // Do not edit this file manually -type AppRoutes = "/" | "/apps" | "/drama/[id]" | "/drama/[id]/play/[episode]" | "/home-road" | "/info/[slug]" | "/nav" | "/rank/[[...path]]" | "/richetext/[title]" | "/richtext/[title]" | "/search" | "/series/[[...path]]" | "/short-drama/[slug]" | "/short-drama/[slug]/play/[episode]" | "/shorts/[[...path]]" | "/shorts/more/[slug]/[[...path]]" | "/topics/[[...path]]" | "/topics/tag/[tag]/[[...path]]" +type AppRoutes = "/" | "/drama/[id]" | "/drama/[id]/play/[episode]" | "/home-road" | "/info/[slug]" | "/nav" | "/rank/[[...path]]" | "/richetext/[title]" | "/richtext/[title]" | "/search" | "/series/[[...path]]" | "/short-drama/[slug]" | "/short-drama/[slug]/play/[episode]" | "/shorts/[[...path]]" | "/shorts/more/[slug]/[[...path]]" | "/topics/[[...path]]" | "/topics/tag/[tag]/[[...path]]" type AppRouteHandlerRoutes = "/api/[...path]" | "/enkey" | "/h5/m3u8/[...path]" | "/healthz" | "/newenkey" | "/robots.txt" | "/sitemap.xml" type PageRoutes = never type LayoutRoutes = "/" @@ -14,7 +14,6 @@ interface ParamMap { "/": {} "/api/[...path]": { "path": string[]; } "/api/[[...path]]": { "path"?: string[]; } - "/apps": {} "/drama/[id]": { "id": string; } "/drama/[id]/play/[episode]": { "id": string; "episode": string; } "/enkey": {} diff --git a/.next-dev/dev/types/validator.ts b/.next-dev/dev/types/validator.ts index a7d1abc..3f9dc05 100644 --- a/.next-dev/dev/types/validator.ts +++ b/.next-dev/dev/types/validator.ts @@ -52,23 +52,6 @@ type RouteHandlerConfig> = Specific - const handler = {} as typeof import("../../../src/app/apps/page.js") - type __Check = __IsExpected - - type __ParamMatchingValue = - typeof handler extends { unstable_paramMatching: infer Matcher } ? Matcher : - typeof handler extends { unstable_generateParamMatching: (...args: any[]) => infer Matcher } ? Awaited : {} - type __InvalidParamMatchingKeys = Exclude - type __AssertNoInvalidParamMatchingKeys = Invalid - const __paramMatchingKeyCheck: __AssertNoInvalidParamMatchingKeys<__InvalidParamMatchingKeys> | undefined = undefined - void __paramMatchingKeyCheck - // @ts-ignore - type __Unused = __Check -} - // Validate ../../../src/app/drama/[id]/page.tsx { type __IsExpected> = Specific diff --git a/public/og-default.png b/public/og-default.png index f7050e1..5ae739a 100644 Binary files a/public/og-default.png and b/public/og-default.png differ diff --git a/public/placeholder.png b/public/placeholder.png index 8aa8116..5f30a53 100644 Binary files a/public/placeholder.png and b/public/placeholder.png differ diff --git a/src/app/apps/page.tsx b/src/app/apps/page.tsx deleted file mode 100644 index a326c51..0000000 --- a/src/app/apps/page.tsx +++ /dev/null @@ -1,46 +0,0 @@ -import type { Metadata } from "next"; -import { Suspense } from "react"; -import { AppsPage } from "@/components/apps/AppsPage"; -import { ListLoading } from "@/components/common/ListLoading"; -import { JsonLd } from "@/components/seo/json-ld"; -import { getAppListCached } from "@/lib/api/applist"; -import { navigationSectionSeo } from "@/lib/seo/navigation-seo"; -import { buildWebPageJSONLD, resolvePageMetadata } from "@/lib/seo"; - -async function appsMetadata() { - return resolvePageMetadata({ - seoInfo: await navigationSectionSeo("/apps"), - fallbackTitle: "福利应用", - fallbackDescription: "精选福利应用。", - canonical: "/apps", - }); -} - -export async function generateMetadata(): Promise { - return appsMetadata(); -} - -export default function AppsRoute({ searchParams }: { searchParams: Promise<{ group?: string }> }) { - return ( - }> - - - ); -} - -async function AppsContent({ searchParams }: { searchParams: Promise<{ group?: string }> }) { - const { group } = await searchParams; - const [{ data, error }, metadata] = await Promise.all([getAppListCached(0), appsMetadata()]); - return ( - <> - - - - ); -} diff --git a/src/components/apps/AppsDirectory.tsx b/src/components/apps/AppsDirectory.tsx deleted file mode 100644 index a354691..0000000 --- a/src/components/apps/AppsDirectory.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import { AppsTabs } from "@/components/apps/AppsTabs"; -import { DecryptedImage } from "@/components/common/decrypted-image"; -import type { AppCategoryInfo, AppInfoData, AppListResp } from "@/lib/api/types"; -import { CARD_PLACEHOLDER } from "@/lib/image/decrypt"; - -function categoriesFrom(data: AppListResp | null) { - const list = data?.categoryList?.length ? data.categoryList : data?.category ? [data.category] : []; - // 保持接口返回顺序,不做前端自定义排序 - return list.filter((item) => item.title || item.appList?.length); -} - -function appsOf(category: AppCategoryInfo) { - // 保持接口返回顺序,不做前端自定义排序 - return (category.appList ?? []).filter((app) => app.name || app.url); -} - -function AppCard({ app }: { app: AppInfoData }) { - const body = ( - <> - - - - - {app.name} - {app.intro ? {app.intro} : null} - - - ); - if (!app.url) return
{body}
; - return ( - - {body} - - ); -} - -export function AppsDirectory({ data, error, initialId }: { data?: AppListResp | null; error?: string; initialId?: string }) { - if (error) return

{error}

; - - const categories = categoriesFrom(data ?? null); - if (!categories.length) return

暂无应用

; - - return ( -
- - {categories.map((item) => { - const apps = appsOf(item); - return ( -
-
-
-

{item.title}

- {item.intro ?

{item.intro}

: null} -
-
-
- {apps.map((app) => ( -
- -
- ))} -
-
- ); - })} -
- ); -} diff --git a/src/components/apps/AppsPage.tsx b/src/components/apps/AppsPage.tsx deleted file mode 100644 index 4024c14..0000000 --- a/src/components/apps/AppsPage.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import { AppsDirectory } from "@/components/apps/AppsDirectory"; -import { ChannelFrame } from "@/components/channel/ChannelFrame"; -import type { AppListResp } from "@/lib/api/types"; -import { CHANNELS } from "@/lib/catalog"; - -export function AppsPage({ - group, - data, - error, -}: { - group?: string; - data?: AppListResp | null; - error?: string; -}) { - const channel = CHANNELS.apps; - return ( - - - - ); -} diff --git a/src/components/apps/AppsTabs.tsx b/src/components/apps/AppsTabs.tsx deleted file mode 100644 index 91a8037..0000000 --- a/src/components/apps/AppsTabs.tsx +++ /dev/null @@ -1,25 +0,0 @@ -"use client"; - -import { useState } from "react"; -import type { AppCategoryInfo } from "@/lib/api/types"; - -export function AppsTabs({ categoryList, initialId }: { categoryList: AppCategoryInfo[]; initialId?: string }) { - const initial = categoryList.find((category) => String(category.id) === initialId)?.title ?? categoryList[0]?.title ?? ""; - const [current, setCurrent] = useState(initial); - - const choose = (category: AppCategoryInfo) => { - setCurrent(category.title); - const reduced = window.matchMedia("(prefers-reduced-motion: reduce)").matches; - document.getElementById(`apps-${category.id}`)?.scrollIntoView({ behavior: reduced ? "auto" : "smooth", block: "start" }); - }; - - return ( -
- {categoryList.map((category) => ( - - ))} -
- ); -} diff --git a/src/components/common/StartupAdDialog.tsx b/src/components/common/StartupAdDialog.tsx index 1948d11..b9e10a6 100644 --- a/src/components/common/StartupAdDialog.tsx +++ b/src/components/common/StartupAdDialog.tsx @@ -163,7 +163,7 @@ function StartupGridDialog({ items, open }: { items: AdvitiseInfo[]; open: boole href={href} target="_blank" rel="noopener noreferrer" - aria-label={`${title},浏览福利应用`} + aria-label={`${title},查看推广`} > {inner} diff --git a/src/components/nav/NavPage.tsx b/src/components/nav/NavPage.tsx index 050b0b7..1d10114 100644 --- a/src/components/nav/NavPage.tsx +++ b/src/components/nav/NavPage.tsx @@ -67,7 +67,6 @@ export function NavPage({ config = null }: { config?: ConfigInfoResp | null }) { const officialAppAddr = address(config, "officialAppAddr") || config?.config?.webAddr?.trim() || ""; const twitterAddr = address(config, "twitterAddr"); const pdfAddr = address(config, "pdfAddr"); - const translationAddr = config?.config?.translationAddr?.trim() || ""; return (
@@ -109,7 +108,7 @@ export function NavPage({ config = null }: { config?: ConfigInfoResp | null }) { 官方网站:{officialAppAddr} ) : null} - {officialAppAddr || twitterAddr || pdfAddr || appAddr || translationAddr ? ( + {officialAppAddr || twitterAddr || pdfAddr || appAddr ? ( ) : null}