synapse-orch-ai 1.7.6 → 1.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/backend/core/react_engine.py +94 -2
  2. package/backend/core/routes/api_v1.py +18 -4
  3. package/backend/core/routes/builder.py +13 -3
  4. package/backend/core/routes/chat.py +6 -2
  5. package/backend/core/routes/orchestrations.py +20 -15
  6. package/backend/core/tools.py +37 -7
  7. package/frontend-build/.next/BUILD_ID +1 -1
  8. package/frontend-build/.next/build-manifest.json +3 -3
  9. package/frontend-build/.next/prerender-manifest.json +3 -3
  10. package/frontend-build/.next/server/app/_global-error.html +1 -1
  11. package/frontend-build/.next/server/app/_global-error.rsc +1 -1
  12. package/frontend-build/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  13. package/frontend-build/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/frontend-build/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/frontend-build/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/frontend-build/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/frontend-build/.next/server/app/_not-found.html +1 -1
  18. package/frontend-build/.next/server/app/_not-found.rsc +1 -1
  19. package/frontend-build/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  20. package/frontend-build/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  21. package/frontend-build/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  22. package/frontend-build/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/frontend-build/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  24. package/frontend-build/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  25. package/frontend-build/.next/server/app/index.html +1 -1
  26. package/frontend-build/.next/server/app/index.rsc +2 -2
  27. package/frontend-build/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  28. package/frontend-build/.next/server/app/index.segments/_full.segment.rsc +2 -2
  29. package/frontend-build/.next/server/app/index.segments/_head.segment.rsc +1 -1
  30. package/frontend-build/.next/server/app/index.segments/_index.segment.rsc +1 -1
  31. package/frontend-build/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  32. package/frontend-build/.next/server/app/login.html +1 -1
  33. package/frontend-build/.next/server/app/login.rsc +1 -1
  34. package/frontend-build/.next/server/app/login.segments/_full.segment.rsc +1 -1
  35. package/frontend-build/.next/server/app/login.segments/_head.segment.rsc +1 -1
  36. package/frontend-build/.next/server/app/login.segments/_index.segment.rsc +1 -1
  37. package/frontend-build/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  38. package/frontend-build/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  39. package/frontend-build/.next/server/app/login.segments/login.segment.rsc +1 -1
  40. package/frontend-build/.next/server/app/page.js.nft.json +1 -1
  41. package/frontend-build/.next/server/app/page_client-reference-manifest.js +1 -1
  42. package/frontend-build/.next/server/app/settings/[tab]/page.js.nft.json +1 -1
  43. package/frontend-build/.next/server/app/settings/[tab]/page_client-reference-manifest.js +1 -1
  44. package/frontend-build/.next/server/chunks/ssr/{[root-of-the-server]__0uus84t._.js → [root-of-the-server]__0wxl56w._.js} +2 -2
  45. package/frontend-build/.next/server/chunks/ssr/{[root-of-the-server]__0-1vb4z._.js → [root-of-the-server]__10.-84t._.js} +2 -2
  46. package/frontend-build/.next/server/chunks/ssr/_0b~n.nn._.js +39 -39
  47. package/frontend-build/.next/server/chunks/ssr/src_app_page_tsx_0ss2.w7._.js +1 -1
  48. package/frontend-build/.next/server/middleware-build-manifest.js +3 -3
  49. package/frontend-build/.next/server/pages/404.html +1 -1
  50. package/frontend-build/.next/server/pages/500.html +1 -1
  51. package/frontend-build/.next/server/server-reference-manifest.js +1 -1
  52. package/frontend-build/.next/server/server-reference-manifest.json +1 -1
  53. package/frontend-build/.next/static/chunks/{06492ue-5sndz.js → 0cwgnxu88mzyi.js} +1 -1
  54. package/frontend-build/.next/static/chunks/{0an11bgokf3vm.js → 0g7bk6lyj687k.js} +1 -1
  55. package/frontend-build/.next/static/chunks/{06h113nhz_q9o.js → 0lja9zdxjh.4l.js} +39 -39
  56. package/frontend-build/.next/static/chunks/0wtv8wcl1tn.d.js +1 -0
  57. package/package.json +1 -1
  58. package/frontend-build/.next/static/chunks/0v0eoz45t7rie.js +0 -1
  59. /package/frontend-build/.next/static/{W0Pjdqlln74Lf-bJW-j-y → 0EikMm0W2Fc_3jqq4Xy5Z}/_buildManifest.js +0 -0
  60. /package/frontend-build/.next/static/{W0Pjdqlln74Lf-bJW-j-y → 0EikMm0W2Fc_3jqq4Xy5Z}/_clientMiddlewareManifest.js +0 -0
  61. /package/frontend-build/.next/static/{W0Pjdqlln74Lf-bJW-j-y → 0EikMm0W2Fc_3jqq4Xy5Z}/_ssgManifest.js +0 -0
@@ -3,6 +3,7 @@ Shared ReAct loop engine used by both /chat and /chat/stream endpoints.
3
3
  Yields structured event dicts that callers can handle differently
4
4
  (collect for sync response, or stream as SSE).
5
5
  """
6
+ import asyncio
6
7
  import json
7
8
  import sys
8
9
  import time
@@ -30,6 +31,91 @@ from datetime import timedelta
30
31
  MAX_TURNS = 30
31
32
 
32
33
 
34
+ # ──────────────────────────────────────────────────────────────────────────────
35
+ # SSE keepalive
36
+ #
37
+ # Long-running streaming endpoints (chat / orchestration) can sit silent for
38
+ # many seconds while waiting on an LLM call. A silent SSE stream looks idle to
39
+ # browsers, proxies, and OS network stacks, any of which may reset the
40
+ # connection — surfacing as "Failed to proxy ... aborted / ECONNRESET" and a
41
+ # hung UI.
42
+ #
43
+ # `iter_with_heartbeat` wraps any event async-generator and emits a periodic
44
+ # SSE comment line whenever no real event has arrived within `interval` seconds.
45
+ # The comment is ignored by EventSource and our `data:`-only client parser, but
46
+ # the bytes keep the connection alive and reset the client's stall watchdog.
47
+ # Heartbeats are yielded as the raw SSE string, so endpoints can pass them
48
+ # straight through; real events remain dicts (`isinstance(item, str)`
49
+ # distinguishes them).
50
+ # ──────────────────────────────────────────────────────────────────────────────
51
+ SSE_HEARTBEAT = ": ping\n\n"
52
+
53
+
54
+ async def iter_with_heartbeat(agen, interval: float = 10.0):
55
+ """Yield items from `agen`, injecting `SSE_HEARTBEAT` whenever no item
56
+ arrives within `interval` seconds.
57
+
58
+ The underlying generator is never cancelled on a heartbeat timeout — only
59
+ when the consumer stops early (e.g. a client disconnect closes this
60
+ generator), in which case the pending pull is cancelled and the source is
61
+ closed in the finally block.
62
+ """
63
+ ait = agen.__aiter__()
64
+ pending = None
65
+ try:
66
+ while True:
67
+ if pending is None:
68
+ pending = asyncio.ensure_future(ait.__anext__())
69
+ done, _ = await asyncio.wait({pending}, timeout=interval)
70
+ if not done:
71
+ # No event within the interval — keep the stream warm.
72
+ yield SSE_HEARTBEAT
73
+ continue
74
+ task = pending
75
+ pending = None
76
+ try:
77
+ item = task.result()
78
+ except StopAsyncIteration:
79
+ return
80
+ yield item
81
+ finally:
82
+ if pending is not None:
83
+ pending.cancel()
84
+ try:
85
+ await pending
86
+ except BaseException:
87
+ pass
88
+ aclose = getattr(agen, "aclose", None)
89
+ if aclose is not None:
90
+ try:
91
+ await aclose()
92
+ except BaseException:
93
+ pass
94
+
95
+
96
+ async def drain_queue_with_heartbeat(queue, sentinel, interval: float = 10.0):
97
+ """Yield formatted SSE `data:` strings from an ``asyncio.Queue`` of event
98
+ dicts, emitting ``SSE_HEARTBEAT`` whenever the queue stays empty for
99
+ `interval` seconds, and returning once `sentinel` is dequeued.
100
+
101
+ This is the queue-based counterpart to ``iter_with_heartbeat`` for the
102
+ background-task streaming pattern (the orchestration endpoints run the
103
+ engine in a task that pushes events into a queue while the SSE generator
104
+ drains it). Without the heartbeat, a long LLM/compaction step leaves the
105
+ queue empty and the stream silent — which a client stall watchdog would
106
+ wrongly read as a dropped connection.
107
+ """
108
+ while True:
109
+ try:
110
+ event = await asyncio.wait_for(queue.get(), timeout=interval)
111
+ except asyncio.TimeoutError:
112
+ yield SSE_HEARTBEAT
113
+ continue
114
+ if event is sentinel:
115
+ return
116
+ yield f"data: {json.dumps(event, default=str)}\n\n"
117
+
118
+
33
119
  # ──────────────────────────────────────────────────────────────────────────────
34
120
  # Reasoning blocks
35
121
  #
@@ -1039,10 +1125,16 @@ async def run_agent_step(
1039
1125
  source=source,
1040
1126
  run_id=run_id,
1041
1127
  ):
1042
- # Yield sub-agent events so the UI shows progress
1043
- yield {**sub_event, "delegate_from": agent_id_for_session, "delegate_agent_name": agent_name}
1044
1128
  if sub_event.get("type") == "final":
1129
+ # Capture only — do NOT propagate. A delegate sub-agent's
1130
+ # final has no orch_step_id, so chat.py would treat it as the
1131
+ # top-level final and emit `done`, closing the stream before
1132
+ # the delegate can reason / re-delegate. The sub-agent's answer
1133
+ # still surfaces via the tool_result preview below.
1045
1134
  sub_final = sub_event.get("response", "")
1135
+ continue
1136
+ # Yield non-final sub-agent events so the UI shows progress
1137
+ yield {**sub_event, "delegate_from": agent_id_for_session, "delegate_agent_name": agent_name}
1046
1138
  except Exception as e:
1047
1139
  sub_final = f"Error: Sub-agent '{agent_name}' failed: {e}"
1048
1140
  print(f"DEBUG: ❌ Delegate sub-agent failed: {e}", flush=True)
@@ -149,7 +149,7 @@ async def v1_chat_stream(body: V1ChatRequest, key_record: dict = Depends(require
149
149
  chat_request = _build_chat_request(body, agent)
150
150
 
151
151
  async def event_generator():
152
- from core.react_engine import run_react_loop
152
+ from core.react_engine import run_react_loop, iter_with_heartbeat
153
153
  try:
154
154
  # Emit session info first so the consumer can capture the session_id
155
155
  yield _format_sse_event({
@@ -158,7 +158,11 @@ async def v1_chat_stream(body: V1ChatRequest, key_record: dict = Depends(require
158
158
  "agent_id": agent["id"],
159
159
  "agent_name": agent["name"],
160
160
  })
161
- async for event in run_react_loop(chat_request, _server):
161
+ async for event in iter_with_heartbeat(run_react_loop(chat_request, _server)):
162
+ # Heartbeat comments are yielded as raw SSE strings — pass through.
163
+ if isinstance(event, str):
164
+ yield event
165
+ continue
162
166
  etype = event.get("type", "")
163
167
 
164
168
  if etype == "status":
@@ -309,8 +313,13 @@ async def v1_orchestration_run_stream(
309
313
  engine = OrchestrationEngine(orch, _server)
310
314
 
311
315
  async def event_stream():
316
+ from core.react_engine import iter_with_heartbeat
312
317
  try:
313
- async for event in engine.run(body.message, run_id):
318
+ async for event in iter_with_heartbeat(engine.run(body.message, run_id)):
319
+ # Heartbeat comments are yielded as raw SSE strings — pass through.
320
+ if isinstance(event, str):
321
+ yield event
322
+ continue
314
323
  etype = event.get("type", "")
315
324
 
316
325
  # Skip internal log events
@@ -426,8 +435,13 @@ async def v1_orchestration_resume_stream(
426
435
  human_response = {"response": human_response}
427
436
 
428
437
  async def event_stream():
438
+ from core.react_engine import iter_with_heartbeat
429
439
  try:
430
- async for event in OrchestrationEngine.resume(run_id, human_response, _server):
440
+ async for event in iter_with_heartbeat(OrchestrationEngine.resume(run_id, human_response, _server)):
441
+ # Heartbeat comments are yielded as raw SSE strings — pass through.
442
+ if isinstance(event, str):
443
+ yield event
444
+ continue
431
445
  etype = event.get("type", "")
432
446
 
433
447
  if etype.startswith("_log_"):
@@ -18,6 +18,7 @@ from pydantic import BaseModel
18
18
  from core.models_orchestration import Orchestration
19
19
  from core.orchestration.engine import OrchestrationEngine
20
20
  from core.native_builder import NATIVE_BUILDER_ORCH_ID
21
+ from core.react_engine import iter_with_heartbeat
21
22
 
22
23
  router = APIRouter()
23
24
 
@@ -397,7 +398,10 @@ async def run_builder_stream_compat(request, server_module):
397
398
  model=getattr(request, "model", None),
398
399
  )
399
400
 
400
- async for event in run_builder_stream(builder_req, server_module):
401
+ async for event in iter_with_heartbeat(run_builder_stream(builder_req, server_module)):
402
+ if isinstance(event, str): # heartbeat comment — pass through
403
+ yield event
404
+ continue
401
405
  etype = event["type"]
402
406
 
403
407
  if etype == "thinking":
@@ -446,7 +450,10 @@ async def builder_chat(request: BuilderChatRequest, http_request: Request):
446
450
 
447
451
  async def event_generator():
448
452
  try:
449
- async for event in run_builder_stream(request, server_module):
453
+ async for event in iter_with_heartbeat(run_builder_stream(request, server_module)):
454
+ if isinstance(event, str): # heartbeat comment — pass through
455
+ yield event
456
+ continue
450
457
  yield f"data: {json.dumps(event, default=str)}\n\n"
451
458
  await asyncio.sleep(0)
452
459
  except Exception as exc:
@@ -472,7 +479,10 @@ async def builder_resume(request: BuilderResumeRequest, http_request: Request):
472
479
 
473
480
  async def event_generator():
474
481
  try:
475
- async for event in run_builder_resume_stream(request.run_id, request.response, server_module, model=request.model):
482
+ async for event in iter_with_heartbeat(run_builder_resume_stream(request.run_id, request.response, server_module, model=request.model)):
483
+ if isinstance(event, str): # heartbeat comment — pass through
484
+ yield event
485
+ continue
476
486
  yield f"data: {json.dumps(event, default=str)}\n\n"
477
487
  await asyncio.sleep(0)
478
488
  except Exception as exc:
@@ -9,7 +9,7 @@ from fastapi import APIRouter, HTTPException, Request
9
9
  from fastapi.responses import StreamingResponse
10
10
 
11
11
  from core.models import ChatRequest, ChatResponse
12
- from core.react_engine import run_react_loop, parse_tool_call # noqa: F401 — re-export for backwards compat
12
+ from core.react_engine import run_react_loop, parse_tool_call, iter_with_heartbeat # noqa: F401 — re-export for backwards compat
13
13
 
14
14
  router = APIRouter()
15
15
 
@@ -67,7 +67,11 @@ async def chat_stream(request: ChatRequest):
67
67
  return
68
68
 
69
69
  try:
70
- async for event in run_react_loop(request, _server):
70
+ async for event in iter_with_heartbeat(run_react_loop(request, _server)):
71
+ # Heartbeat comments are yielded as raw SSE strings — pass through.
72
+ if isinstance(event, str):
73
+ yield event
74
+ continue
71
75
  etype = event["type"]
72
76
 
73
77
  if etype == "status":
@@ -12,6 +12,7 @@ from fastapi.responses import StreamingResponse
12
12
  from core.models_orchestration import Orchestration
13
13
  from core.config import DATA_DIR
14
14
  from core.json_store import JsonStore
15
+ from core.react_engine import drain_queue_with_heartbeat
15
16
 
16
17
  router = APIRouter()
17
18
 
@@ -179,11 +180,10 @@ async def run_orchestration(orch_id: str, request: Request):
179
180
  _active_tasks[run_id] = task
180
181
 
181
182
  async def event_stream():
182
- while True:
183
- event = await queue.get()
184
- if event is _SENTINEL:
185
- break
186
- yield f"data: {json.dumps(event, default=str)}\n\n"
183
+ # Heartbeats keep the stream warm during long LLM/compaction steps so a
184
+ # busy-but-alive run is not mistaken for a dropped connection.
185
+ async for chunk in drain_queue_with_heartbeat(queue, _SENTINEL):
186
+ yield chunk
187
187
  yield "data: {\"type\": \"done\"}\n\n"
188
188
 
189
189
  return StreamingResponse(
@@ -205,6 +205,13 @@ async def get_run_status(run_id: str):
205
205
  restored = SharedState.restore(run_id)
206
206
  return restored.run.model_dump()
207
207
  except FileNotFoundError:
208
+ # Checkpoints are only written at step boundaries, so a run still inside
209
+ # its first long-running step has no checkpoint yet. If it's a live
210
+ # in-process background task, report it as running so a reconnecting
211
+ # client re-attaches instead of seeing "Run not found".
212
+ task = _active_tasks.get(run_id)
213
+ if task is not None and not task.done():
214
+ return {"run_id": run_id, "status": "running", "step_history": [], "waiting_for_human": False}
208
215
  raise HTTPException(status_code=404, detail="Run not found")
209
216
 
210
217
 
@@ -235,11 +242,10 @@ async def resume_failed_run(run_id: str, request: Request):
235
242
  _active_tasks[run_id] = task
236
243
 
237
244
  async def event_stream():
238
- while True:
239
- event = await queue.get()
240
- if event is _SENTINEL:
241
- break
242
- yield f"data: {json.dumps(event, default=str)}\n\n"
245
+ # Heartbeats keep the stream warm during long LLM/compaction steps so a
246
+ # busy-but-alive run is not mistaken for a dropped connection.
247
+ async for chunk in drain_queue_with_heartbeat(queue, _SENTINEL):
248
+ yield chunk
243
249
  yield "data: {\"type\": \"done\"}\n\n"
244
250
 
245
251
  return StreamingResponse(
@@ -353,11 +359,10 @@ async def submit_human_input(run_id: str, request: Request):
353
359
  asyncio.create_task(_run_engine())
354
360
 
355
361
  async def event_stream():
356
- while True:
357
- event = await queue.get()
358
- if event is _SENTINEL:
359
- break
360
- yield f"data: {json.dumps(event, default=str)}\n\n"
362
+ # Heartbeats keep the stream warm during long LLM/compaction steps so a
363
+ # busy-but-alive run is not mistaken for a dropped connection.
364
+ async for chunk in drain_queue_with_heartbeat(queue, _SENTINEL):
365
+ yield chunk
361
366
  yield "data: {\"type\": \"done\"}\n\n"
362
367
 
363
368
  return StreamingResponse(
@@ -80,7 +80,16 @@ async def aggregate_all_tools(agent_sessions, active_agent, custom_tools_list):
80
80
  """
81
81
  all_tools = []
82
82
  tool_schema_map = {} # name -> inputSchema
83
-
83
+
84
+ # tool_router is the single source of truth for dispatch (name -> session).
85
+ # A tool name can be exposed by multiple native MCP servers (e.g.
86
+ # read_file_by_lines in both file_reader and code_search); we use this map
87
+ # to declare only the copy from the server that will actually service the
88
+ # call. Deferred import avoids a circular import at module load — aggregation
89
+ # always runs per-request, long after startup has populated the map.
90
+ from core import server as _server
91
+ tool_router = getattr(_server, "tool_router", {}) or {}
92
+
84
93
  allowed_tools = active_agent.get("tools", ["all"])
85
94
 
86
95
  # Auto-inject default tools based on agent type.
@@ -133,12 +142,19 @@ async def aggregate_all_tools(agent_sessions, active_agent, custom_tools_list):
133
142
  if "all" in allowed_tools or prefixed in allowed_tools:
134
143
  all_tools.append(VirtualTool(prefixed, t.description, t.inputSchema))
135
144
  else:
136
- if "all" in allowed_tools:
137
- all_tools.extend(session_tools)
138
- else:
139
- for t in session_tools:
140
- if t.name in allowed_tools:
141
- all_tools.append(t)
145
+ candidate = session_tools if "all" in allowed_tools \
146
+ else [t for t in session_tools if t.name in allowed_tools]
147
+ for t in candidate:
148
+ # A tool name can be exposed by multiple native MCP servers
149
+ # (e.g. read_file_by_lines in BOTH file_reader and code_search).
150
+ # tool_router decides which server services a call (last to
151
+ # register at startup wins). Declare only the copy from that
152
+ # server, so the LLM sees the schema of the impl that runs — and
153
+ # Gemini never receives a duplicate function declaration.
154
+ routed = tool_router.get(t.name)
155
+ if routed and routed[0] != session_name:
156
+ continue
157
+ all_tools.append(t)
142
158
 
143
159
  # Populate schema map for MCP tools
144
160
  for t in all_tools:
@@ -169,6 +185,20 @@ async def aggregate_all_tools(agent_sessions, active_agent, custom_tools_list):
169
185
  all_tools.append(vt)
170
186
  tool_schema_map[vt.name] = vt.inputSchema
171
187
 
188
+ # Safety net: guarantee at most one declaration per tool name across ALL
189
+ # sources (MCP + virtual + custom + builder) before sending to the LLM.
190
+ # Gemini rejects duplicate function declarations outright; the tool_router
191
+ # gate above handles MCP-vs-MCP collisions, this catches cross-source ones.
192
+ seen_names = set()
193
+ deduped = []
194
+ for t in all_tools:
195
+ if t.name in seen_names:
196
+ print(f"DEBUG: ⚠️ Skipping duplicate tool declaration '{t.name}'", flush=True)
197
+ continue
198
+ seen_names.add(t.name)
199
+ deduped.append(t)
200
+ all_tools = deduped
201
+
172
202
  # Build Ollama-formatted tools list
173
203
  ollama_tools = [
174
204
  {
@@ -1 +1 @@
1
- W0Pjdqlln74Lf-bJW-j-y
1
+ 0EikMm0W2Fc_3jqq4Xy5Z
@@ -7,9 +7,9 @@
7
7
  "static/chunks/03~yq9q893hmn.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/W0Pjdqlln74Lf-bJW-j-y/_buildManifest.js",
11
- "static/W0Pjdqlln74Lf-bJW-j-y/_ssgManifest.js",
12
- "static/W0Pjdqlln74Lf-bJW-j-y/_clientMiddlewareManifest.js"
10
+ "static/0EikMm0W2Fc_3jqq4Xy5Z/_buildManifest.js",
11
+ "static/0EikMm0W2Fc_3jqq4Xy5Z/_ssgManifest.js",
12
+ "static/0EikMm0W2Fc_3jqq4Xy5Z/_clientMiddlewareManifest.js"
13
13
  ],
14
14
  "rootMainFiles": [
15
15
  "static/chunks/0qmh881w772ef.js",
@@ -131,8 +131,8 @@
131
131
  "dynamicRoutes": {},
132
132
  "notFoundRoutes": [],
133
133
  "preview": {
134
- "previewModeId": "899a4c13e2ddfba27e36311c63f828ed",
135
- "previewModeSigningKey": "d07330ba757c2bc111411d5764e680449dd001f0f2e04d1c87ea6e4af7abf0f0",
136
- "previewModeEncryptionKey": "6a94105e5db5a28d8ff900a61fc830eab1457f17eca9b4ee8903fe025b87d59a"
134
+ "previewModeId": "922f975169d72e621a9c499352b46688",
135
+ "previewModeSigningKey": "bdf0106c29164a7e3419668cb668e2cd3b85c26c96defa1c1f3ab373d78d43c3",
136
+ "previewModeEncryptionKey": "4c894cc993323d904474ff4d0aaa6bf5fb86bf7f344b5eaefd8098dd4b3ed506"
137
137
  }
138
138
  }
@@ -1 +1 @@
1
- <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0qmh881w772ef.js"/><script src="/_next/static/chunks/02i7dfk78~t~2.js" async=""></script><script src="/_next/static/chunks/0c7h~x4_chf35.js" async=""></script><script src="/_next/static/chunks/00xhsd~k-wxkl.js" async=""></script><script src="/_next/static/chunks/turbopack-09lztqg9--eu..js" async=""></script><script src="/_next/static/chunks/01xlw8hd842-c.js" async=""></script><script src="/_next/static/chunks/0m92kh92cfh_..js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0qmh881w772ef.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"W0Pjdqlln74Lf-bJW-j-y\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0qmh881w772ef.js"/><script src="/_next/static/chunks/02i7dfk78~t~2.js" async=""></script><script src="/_next/static/chunks/0c7h~x4_chf35.js" async=""></script><script src="/_next/static/chunks/00xhsd~k-wxkl.js" async=""></script><script src="/_next/static/chunks/turbopack-09lztqg9--eu..js" async=""></script><script src="/_next/static/chunks/01xlw8hd842-c.js" async=""></script><script src="/_next/static/chunks/0m92kh92cfh_..js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0qmh881w772ef.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[39756,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\"]\n3:I[37457,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\"]\n4:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"ViewportBoundary\"]\na:I[97367,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"MetadataBoundary\"]\nc:I[68027,[\"/_next/static/chunks/01xlw8hd842-c.js\",\"/_next/static/chunks/0m92kh92cfh_..js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"0EikMm0W2Fc_3jqq4Xy5Z\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"6:null\nb:[]\n"])</script></body></html>
@@ -6,7 +6,7 @@
6
6
  8:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"ViewportBoundary"]
7
7
  a:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"MetadataBoundary"]
8
8
  c:I[68027,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"default",1]
9
- 0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"W0Pjdqlln74Lf-bJW-j-y"}
9
+ 0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"0EikMm0W2Fc_3jqq4Xy5Z"}
10
10
  d:[]
11
11
  7:"$Wd"
12
12
  9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
@@ -1,5 +1,5 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"OutletBoundary"]
3
3
  3:"$Sreact.suspense"
4
- 0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"W0Pjdqlln74Lf-bJW-j-y"}
4
+ 0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"0EikMm0W2Fc_3jqq4Xy5Z"}
5
5
  4:null
@@ -6,7 +6,7 @@
6
6
  8:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"ViewportBoundary"]
7
7
  a:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"MetadataBoundary"]
8
8
  c:I[68027,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"default",1]
9
- 0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"W0Pjdqlln74Lf-bJW-j-y"}
9
+ 0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"0EikMm0W2Fc_3jqq4Xy5Z"}
10
10
  d:[]
11
11
  7:"$Wd"
12
12
  9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
@@ -2,4 +2,4 @@
2
2
  2:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"ViewportBoundary"]
3
3
  3:I[97367,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"MetadataBoundary"]
4
4
  4:"$Sreact.suspense"
5
- 0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"W0Pjdqlln74Lf-bJW-j-y"}
5
+ 0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"0EikMm0W2Fc_3jqq4Xy5Z"}
@@ -2,4 +2,4 @@
2
2
  2:I[39756,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"default"]
3
3
  3:I[37457,["/_next/static/chunks/01xlw8hd842-c.js","/_next/static/chunks/0m92kh92cfh_..js"],"default"]
4
4
  4:[]
5
- 0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"W0Pjdqlln74Lf-bJW-j-y"}
5
+ 0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"0EikMm0W2Fc_3jqq4Xy5Z"}
@@ -1 +1 @@
1
- 0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"W0Pjdqlln74Lf-bJW-j-y"}
1
+ 0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"0EikMm0W2Fc_3jqq4Xy5Z"}