domain0 0.3.2 → 0.4.0
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.
- package/README.md +17 -6
- package/dist/contracts.cjs +1 -1811
- package/dist/contracts.cjs.map +1 -1
- package/dist/contracts.d.cts +2 -2
- package/dist/contracts.d.mts +2 -2
- package/dist/contracts.mjs +1 -1665
- package/dist/contracts.mjs.map +1 -1
- package/dist/error-1Gob8Pup.cjs +2 -0
- package/dist/{error-BB4-lyc4.cjs.map → error-1Gob8Pup.cjs.map} +1 -1
- package/dist/error-szz6-UFL.mjs +2 -0
- package/dist/{error-Cyd6a9ay.mjs.map → error-szz6-UFL.mjs.map} +1 -1
- package/dist/{index-sSrRFTnm.d.cts → index-DzGqFq0D.d.cts} +1678 -128
- package/dist/{index-sSrRFTnm.d.mts → index-DzGqFq0D.d.mts} +1678 -128
- package/dist/index.cjs +1 -245
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.mts +3 -3
- package/dist/index.mjs +1 -90
- package/dist/index.mjs.map +1 -1
- package/dist/sdk-BbUuEwzs.mjs +148 -0
- package/dist/sdk-BbUuEwzs.mjs.map +1 -0
- package/dist/{sdk-B10fN-QP.d.mts → sdk-CkEDIlsq.d.cts} +8 -9
- package/dist/{sdk-DYR5Itru.d.cts → sdk-D2QNoMIg.d.mts} +8 -9
- package/dist/sdk-Dv22iteS.cjs +148 -0
- package/dist/sdk-Dv22iteS.cjs.map +1 -0
- package/dist/server.cjs +1 -102
- package/dist/server.cjs.map +1 -1
- package/dist/server.mjs +1 -101
- package/dist/server.mjs.map +1 -1
- package/dist/ui.cjs +1 -12
- package/dist/ui.d.cts +22 -3
- package/dist/ui.d.mts +22 -3
- package/dist/ui.mjs +1 -2
- package/package.json +7 -1
- package/dist/error-BB4-lyc4.cjs +0 -48
- package/dist/error-Cyd6a9ay.mjs +0 -31
- package/dist/sdk-DILJWt1m.cjs +0 -4264
- package/dist/sdk-DILJWt1m.cjs.map +0 -1
- package/dist/sdk-IuBNH4cL.mjs +0 -4187
- package/dist/sdk-IuBNH4cL.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sdk-Dv22iteS.cjs","names":["Domain0ProtocolError","Domain0TransportError","Domain0ErrorResponseSchema","Domain0Error","ListProvidersResponseSchema","ProviderHealthResponseSchema","ConnectionIdSchema","DkimGuidanceInputSchema","DkimGuidanceResponseSchema","CheckDomainInputSchema","CheckDomainResponseSchema","CheckRecordsInputSchema","CheckRecordsResponseSchema","CreateSharedFlowInputSchema","CreateSharedFlowResponseSchema","CreateConnectionInputSchema","CreateConnectionResponseSchema","CreateConnectionFlowInputSchema","ConnectionFlowResponseSchema","ConnectionFlowIdSchema","GetConnectionResponseSchema","IssueConnectionTokenInputSchema","IssueConnectionTokenResponseSchema","DetectProviderResponseSchema","SelectProviderInputSchema","StartOAuthInputSchema","StartOAuthResponseSchema","StartDomainConnectInputSchema","StartDomainConnectResponseSchema","SubmitDomainConnectCompletionInputSchema","AuthorizeWithCredentialInputSchema","PreparePlanInputSchema","ConfirmPlanInputSchema","ApplyPlanInputSchema","VerifyPropagationInputSchema","StartManualConfigurationInputSchema","SubmitManualCompletionInputSchema","CancelConnectionInputSchema","RetryConnectionInputSchema","SharedFlowTokenSchema","SharedFlowUrlSchema","ResolveSharedFlowInputSchema","ResolveSharedFlowResponseSchema","Domain0Error","Domain0TransportError","Domain0ProtocolError","Domain0ConnectErrorEventSchema","Domain0LocaleSchema","useId","forwardRef","useMemo","useRef","useState","Domain0ConnectStepChangeEventSchema","Domain0ConnectSuccessEventSchema","Domain0ConnectFailureEventSchema","Domain0Error","Domain0TransportError","Domain0ProtocolError","Domain0ConnectCloseEventSchema","Domain0RequestCloseEventSchema","AuthorizeWithCredentialInputSchema","directCredentialKindByProvider","Domain0ConnectConfigurationSchema","createRef","createRoot","createElement","ConnectionFlowIdSchema","Domain0ProtocolError","Domain0ProtocolError"],"sources":["../src/client/client.ts","../../node_modules/.bun/react@19.2.8/node_modules/react/cjs/react.production.js","../../node_modules/.bun/react@19.2.8/node_modules/react/index.js","../../node_modules/.bun/react-dom@19.2.8+0f58469d5b3bd39f/node_modules/react-dom/cjs/react-dom.production.js","../../node_modules/.bun/react-dom@19.2.8+0f58469d5b3bd39f/node_modules/react-dom/index.js","../../node_modules/.bun/scheduler@0.27.0/node_modules/scheduler/cjs/scheduler.production.js","../../node_modules/.bun/scheduler@0.27.0/node_modules/scheduler/index.js","../../node_modules/.bun/react-dom@19.2.8+0f58469d5b3bd39f/node_modules/react-dom/cjs/react-dom-client.production.js","../../node_modules/.bun/react-dom@19.2.8+0f58469d5b3bd39f/node_modules/react-dom/client.js","../src/ui/connect-error.ts","../src/ui/locales/es.ts","../src/ui/locales/fr.ts","../src/ui/locales/pt-br.ts","../src/ui/locales/pt-pt.ts","../src/ui/localization.ts","../../node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs","../../node_modules/.bun/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.mjs","../../node_modules/.bun/react@19.2.8/node_modules/react/cjs/react-jsx-runtime.production.js","../../node_modules/.bun/react@19.2.8/node_modules/react/jsx-runtime.js","../src/ui/components/button.tsx","../src/ui/components/icons.tsx","../src/ui/components/surface.tsx","../src/ui/components/visuals.tsx","../src/ui/connect-app.tsx","../src/ui/styles.ts","../src/ui/white-label.ts","../src/ui/connect.tsx","../src/ui/connection-flow.ts","../src/ui/shared-flow.ts","../src/ui/sdk.ts"],"sourcesContent":["import type { ZodType } from 'zod'\n\nimport {\n ApplyPlanInputSchema,\n AuthorizeWithCredentialInputSchema,\n CancelConnectionInputSchema,\n CheckDomainInputSchema,\n CheckDomainResponseSchema,\n CheckRecordsInputSchema,\n CheckRecordsResponseSchema,\n CreateSharedFlowInputSchema,\n CreateSharedFlowResponseSchema,\n ConfirmPlanInputSchema,\n ConnectionIdSchema,\n CreateConnectionInputSchema,\n CreateConnectionResponseSchema,\n CreateConnectionFlowInputSchema,\n ConnectionFlowIdSchema,\n ConnectionFlowResponseSchema,\n DetectProviderResponseSchema,\n DkimGuidanceInputSchema,\n DkimGuidanceResponseSchema,\n Domain0ErrorResponseSchema,\n GetConnectionResponseSchema,\n IssueConnectionTokenInputSchema,\n IssueConnectionTokenResponseSchema,\n ListProvidersResponseSchema,\n ProviderHealthResponseSchema,\n PreparePlanInputSchema,\n RetryConnectionInputSchema,\n SelectProviderInputSchema,\n StartDomainConnectInputSchema,\n StartDomainConnectResponseSchema,\n StartOAuthInputSchema,\n StartOAuthResponseSchema,\n StartManualConfigurationInputSchema,\n SubmitManualCompletionInputSchema,\n SubmitDomainConnectCompletionInputSchema,\n VerifyPropagationInputSchema,\n ResolveSharedFlowInputSchema,\n ResolveSharedFlowResponseSchema,\n SharedFlowTokenSchema,\n SharedFlowUrlSchema,\n} from '../contracts'\nimport type {\n ApplyPlanInput,\n AuthorizeWithCredentialInput,\n CancelConnectionInput,\n CheckDomainInput,\n CheckDomainResponse,\n CheckRecordsInput,\n CheckRecordsResponse,\n CreateSharedFlowInput,\n CreateSharedFlowResponse,\n ConfirmPlanInput,\n ConnectionId,\n CreateConnectionInput,\n CreateConnectionResponse,\n CreateConnectionFlowInput,\n ConnectionFlowId,\n ConnectionFlowResponse,\n DetectProviderResponse,\n DkimGuidanceInput,\n DkimGuidanceResponse,\n GetConnectionResponse,\n IssueConnectionTokenInput,\n IssueConnectionTokenResponse,\n ListProvidersResponse,\n ProviderHealthResponse,\n PreparePlanInput,\n RetryConnectionInput,\n SelectProviderInput,\n StartDomainConnectInput,\n StartDomainConnectResponse,\n StartOAuthInput,\n StartOAuthResponse,\n StartManualConfigurationInput,\n SubmitManualCompletionInput,\n SubmitDomainConnectCompletionInput,\n VerifyPropagationInput,\n ResolveSharedFlowResponse,\n SharedFlowUrl,\n} from '../contracts'\nimport { Domain0Error, Domain0ProtocolError, Domain0TransportError } from './error'\n\nexport interface Domain0ClientOptions {\n baseUrl: string\n token: string | (() => string | Promise<string>)\n fetch?: typeof globalThis.fetch\n}\n\nexport interface Domain0Client {\n listProviders(): Promise<ListProvidersResponse>\n getProviderHealth(): Promise<ProviderHealthResponse>\n getDkimGuidance(\n connectionId: ConnectionId,\n input: DkimGuidanceInput,\n ): Promise<DkimGuidanceResponse>\n checkDomain(input: CheckDomainInput): Promise<CheckDomainResponse>\n checkRecords(input: CheckRecordsInput): Promise<CheckRecordsResponse>\n createSharedFlow(input: CreateSharedFlowInput): Promise<CreateSharedFlowResponse>\n createConnection(input: CreateConnectionInput): Promise<CreateConnectionResponse>\n createConnectionFlow(input: CreateConnectionFlowInput): Promise<ConnectionFlowResponse>\n getConnectionFlow(flowId: ConnectionFlowId): Promise<ConnectionFlowResponse>\n getConnection(connectionId: ConnectionId): Promise<GetConnectionResponse>\n issueConnectionToken(\n connectionId: ConnectionId,\n input: IssueConnectionTokenInput,\n ): Promise<IssueConnectionTokenResponse>\n detectProvider(connectionId: ConnectionId): Promise<DetectProviderResponse>\n selectProvider(connectionId: ConnectionId, input: SelectProviderInput): Promise<GetConnectionResponse>\n startDomainConnect(\n connectionId: ConnectionId,\n input: StartDomainConnectInput,\n ): Promise<StartDomainConnectResponse>\n submitDomainConnectCompletion(\n connectionId: ConnectionId,\n input: SubmitDomainConnectCompletionInput,\n ): Promise<GetConnectionResponse>\n startOAuth(connectionId: ConnectionId, input: StartOAuthInput): Promise<StartOAuthResponse>\n authorizeWithCredential(\n connectionId: ConnectionId,\n input: AuthorizeWithCredentialInput,\n ): Promise<GetConnectionResponse>\n preparePlan(connectionId: ConnectionId, input: PreparePlanInput): Promise<GetConnectionResponse>\n confirmPlan(connectionId: ConnectionId, input: ConfirmPlanInput): Promise<GetConnectionResponse>\n applyPlan(connectionId: ConnectionId, input: ApplyPlanInput): Promise<GetConnectionResponse>\n verifyPropagation(\n connectionId: ConnectionId,\n input: VerifyPropagationInput,\n ): Promise<GetConnectionResponse>\n startManualConfiguration(\n connectionId: ConnectionId,\n input: StartManualConfigurationInput,\n ): Promise<GetConnectionResponse>\n submitManualCompletion(\n connectionId: ConnectionId,\n input: SubmitManualCompletionInput,\n ): Promise<GetConnectionResponse>\n cancelConnection(\n connectionId: ConnectionId,\n input: CancelConnectionInput,\n ): Promise<GetConnectionResponse>\n retryConnection(\n connectionId: ConnectionId,\n input: RetryConnectionInput,\n ): Promise<GetConnectionResponse>\n}\n\nexport interface LoadSharedFlowOptions {\n baseUrl: string\n url: SharedFlowUrl\n origin: string\n fetch?: typeof globalThis.fetch\n}\n\nexport interface LoadedSharedFlow extends ResolveSharedFlowResponse {\n client: Domain0Client\n}\n\nexport function createDomain0Client(options: Domain0ClientOptions): Domain0Client {\n const baseUrl = parseBaseUrl(options.baseUrl)\n const fetchImplementation = options.fetch ?? globalThis.fetch\n if (fetchImplementation === undefined) {\n throw new Domain0ProtocolError('No fetch implementation is available')\n }\n\n async function request<TResponse>(\n path: string,\n init: RequestInit,\n responseSchema: ZodType<TResponse>,\n ): Promise<TResponse> {\n const token = parseBearerToken(\n typeof options.token === 'function' ? await options.token() : options.token,\n )\n\n let response: Response\n try {\n response = await fetchImplementation(new URL(path, baseUrl), {\n ...init,\n headers: {\n accept: 'application/json',\n authorization: `Bearer ${token}`,\n ...(init.body === undefined ? {} : { 'content-type': 'application/json' }),\n ...init.headers,\n },\n })\n } catch (cause) {\n throw new Domain0TransportError(cause)\n }\n\n const body = await parseJson(response)\n if (!response.ok) {\n const parsedError = Domain0ErrorResponseSchema.safeParse(body)\n if (!parsedError.success) {\n throw new Domain0ProtocolError(\n `Domain0 returned HTTP ${response.status} with an invalid error response`,\n parsedError.error,\n )\n }\n throw new Domain0Error(response.status, parsedError.data)\n }\n\n const parsedResponse = responseSchema.safeParse(body)\n if (!parsedResponse.success) {\n throw new Domain0ProtocolError(\n `Domain0 returned HTTP ${response.status} with an invalid response`,\n parsedResponse.error,\n )\n }\n return parsedResponse.data\n }\n\n return {\n async listProviders() {\n return request('v1/providers', { method: 'GET' }, ListProvidersResponseSchema)\n },\n async getProviderHealth() {\n return request('v1/providers/health', { method: 'GET' }, ProviderHealthResponseSchema)\n },\n async getDkimGuidance(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = DkimGuidanceInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/dkim-guidance`,\n { method: 'POST', body: JSON.stringify(body) },\n DkimGuidanceResponseSchema,\n )\n },\n async checkDomain(input) {\n const body = CheckDomainInputSchema.parse(input)\n return request(\n 'v1/domain-checks',\n { method: 'POST', body: JSON.stringify(body) },\n CheckDomainResponseSchema,\n )\n },\n async checkRecords(input) {\n const body = CheckRecordsInputSchema.parse(input)\n return request(\n 'v1/record-checks',\n { method: 'POST', body: JSON.stringify(body) },\n CheckRecordsResponseSchema,\n )\n },\n async createSharedFlow(input) {\n const body = CreateSharedFlowInputSchema.parse(input)\n return request(\n 'v1/shared-flows',\n { method: 'POST', body: JSON.stringify(body) },\n CreateSharedFlowResponseSchema,\n )\n },\n async createConnection(input) {\n const body = CreateConnectionInputSchema.parse(input)\n return request(\n 'v1/connections',\n { method: 'POST', body: JSON.stringify(body) },\n CreateConnectionResponseSchema,\n )\n },\n async createConnectionFlow(input) {\n const body = CreateConnectionFlowInputSchema.parse(input)\n return request(\n 'v1/connection-flows',\n { method: 'POST', body: JSON.stringify(body) },\n ConnectionFlowResponseSchema,\n )\n },\n async getConnectionFlow(flowId) {\n const id = ConnectionFlowIdSchema.parse(flowId)\n return request(\n `v1/connection-flows/${encodeURIComponent(id)}`,\n { method: 'GET' },\n ConnectionFlowResponseSchema,\n )\n },\n async getConnection(connectionId) {\n const id = ConnectionIdSchema.parse(connectionId)\n return request(`v1/connections/${encodeURIComponent(id)}`, { method: 'GET' }, GetConnectionResponseSchema)\n },\n async issueConnectionToken(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = IssueConnectionTokenInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/access-token`,\n { method: 'POST', body: JSON.stringify(body) },\n IssueConnectionTokenResponseSchema,\n )\n },\n async detectProvider(connectionId) {\n const id = ConnectionIdSchema.parse(connectionId)\n return request(\n `v1/connections/${encodeURIComponent(id)}/provider-detection`,\n { method: 'POST' },\n DetectProviderResponseSchema,\n )\n },\n async selectProvider(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = SelectProviderInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/provider-selection`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async startOAuth(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = StartOAuthInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/oauth-authorization`,\n { method: 'POST', body: JSON.stringify(body) },\n StartOAuthResponseSchema,\n )\n },\n async startDomainConnect(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = StartDomainConnectInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/domain-connect-handoff`,\n { method: 'POST', body: JSON.stringify(body) },\n StartDomainConnectResponseSchema,\n )\n },\n async submitDomainConnectCompletion(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = SubmitDomainConnectCompletionInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/domain-connect-completion`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async authorizeWithCredential(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = AuthorizeWithCredentialInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/credential-authorization`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async preparePlan(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = PreparePlanInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/change-plan`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async confirmPlan(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = ConfirmPlanInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/plan-confirmation`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async applyPlan(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = ApplyPlanInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/change-application`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async verifyPropagation(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = VerifyPropagationInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/propagation-verification`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async startManualConfiguration(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = StartManualConfigurationInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/manual-configuration`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async submitManualCompletion(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = SubmitManualCompletionInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/manual-completion`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async cancelConnection(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = CancelConnectionInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/cancellation`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n async retryConnection(connectionId, input) {\n const id = ConnectionIdSchema.parse(connectionId)\n const body = RetryConnectionInputSchema.parse(input)\n return request(\n `v1/connections/${encodeURIComponent(id)}/retry`,\n { method: 'POST', body: JSON.stringify(body) },\n GetConnectionResponseSchema,\n )\n },\n }\n}\n\nexport function createSharedFlowUrl(baseUrl: SharedFlowUrl, token: string): SharedFlowUrl {\n const parsed = parseSharedFlowUrl(baseUrl)\n parsed.hash = `domain0=${SharedFlowTokenSchema.parse(token)}`\n return SharedFlowUrlSchema.parse(parsed.toString())\n}\n\nexport async function loadSharedFlow(options: LoadSharedFlowOptions): Promise<LoadedSharedFlow> {\n const baseUrl = parseBaseUrl(options.baseUrl)\n const sharedUrl = parseSharedFlowUrl(options.url)\n const fragment = new URLSearchParams(sharedUrl.hash.slice(1))\n const token = SharedFlowTokenSchema.parse(fragment.get('domain0'))\n const body = ResolveSharedFlowInputSchema.parse({ token, origin: options.origin })\n const fetchImplementation = options.fetch ?? globalThis.fetch\n if (fetchImplementation === undefined) {\n throw new Domain0ProtocolError('No fetch implementation is available')\n }\n const response = await fetchImplementation(new URL('v1/shared-flows/resolution', baseUrl), {\n method: 'POST',\n headers: { accept: 'application/json', 'content-type': 'application/json' },\n body: JSON.stringify(body),\n })\n const responseBody = await parseJson(response)\n if (!response.ok) {\n const parsedError = Domain0ErrorResponseSchema.safeParse(responseBody)\n if (!parsedError.success) {\n throw new Domain0ProtocolError(`Domain0 returned HTTP ${response.status} with an invalid error response`, parsedError.error)\n }\n throw new Domain0Error(response.status, parsedError.data)\n }\n const resolved = ResolveSharedFlowResponseSchema.safeParse(responseBody)\n if (!resolved.success) {\n throw new Domain0ProtocolError(`Domain0 returned HTTP ${response.status} with an invalid response`, resolved.error)\n }\n return {\n ...resolved.data,\n client: createDomain0Client({ baseUrl: options.baseUrl, token: resolved.data.accessToken, fetch: fetchImplementation }),\n }\n}\n\nfunction parseSharedFlowUrl(value: string): URL {\n let url: URL\n try {\n url = new URL(SharedFlowUrlSchema.parse(value))\n } catch (error) {\n throw new Domain0ProtocolError('Shared flow URL must be an absolute URL', error)\n }\n if (url.protocol !== 'https:' && !(url.protocol === 'http:' && isLoopback(url.hostname))) {\n throw new Domain0ProtocolError('Shared flow URL must use HTTPS outside local development')\n }\n if (url.username !== '' || url.password !== '') {\n throw new Domain0ProtocolError('Shared flow URL must not contain credentials')\n }\n return url\n}\n\nfunction parseBaseUrl(value: string): URL {\n let url: URL\n try {\n url = new URL(value)\n } catch (error) {\n throw new Domain0ProtocolError('Domain0 baseUrl must be an absolute URL', error)\n }\n if (url.protocol !== 'https:' && !isLoopback(url.hostname)) {\n throw new Domain0ProtocolError('Domain0 baseUrl must use HTTPS outside local development')\n }\n if (url.username !== '' || url.password !== '') {\n throw new Domain0ProtocolError('Domain0 baseUrl must not contain credentials')\n }\n if (url.search !== '' || url.hash !== '') {\n throw new Domain0ProtocolError('Domain0 baseUrl must not contain a query or fragment')\n }\n url.pathname = `${url.pathname.replace(/\\/$/, '')}/`\n return url\n}\n\nfunction parseBearerToken(value: unknown): string {\n if (typeof value !== 'string' || value === '') {\n throw new Domain0ProtocolError('Domain0 token must be a non-empty string')\n }\n if (!/^[A-Za-z0-9\\-._~+/]+=*$/.test(value)) {\n throw new Domain0ProtocolError('Domain0 token must use RFC 6750 bearer-token syntax')\n }\n return value\n}\n\nfunction isLoopback(hostname: string): boolean {\n\treturn hostname === 'localhost' || hostname === '127.0.0.1' || hostname === '[::1]'\n}\n\nasync function parseJson(response: Response): Promise<unknown> {\n const contentType = response.headers.get('content-type') ?? ''\n if (!contentType.toLowerCase().includes('application/json')) {\n throw new Domain0ProtocolError(\n `Domain0 returned HTTP ${response.status} without an application/json content type`,\n )\n }\n try {\n return await response.json()\n } catch (error) {\n throw new Domain0ProtocolError(`Domain0 returned HTTP ${response.status} with invalid JSON`, error)\n }\n}\n","/**\n * @license React\n * react.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar ReactNoopUpdateQueue = {\n isMounted: function () {\n return !1;\n },\n enqueueForceUpdate: function () {},\n enqueueReplaceState: function () {},\n enqueueSetState: function () {}\n },\n assign = Object.assign,\n emptyObject = {};\nfunction Component(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nComponent.prototype.isReactComponent = {};\nComponent.prototype.setState = function (partialState, callback) {\n if (\n \"object\" !== typeof partialState &&\n \"function\" !== typeof partialState &&\n null != partialState\n )\n throw Error(\n \"takes an object of state variables to update or a function which returns an object of state variables.\"\n );\n this.updater.enqueueSetState(this, partialState, callback, \"setState\");\n};\nComponent.prototype.forceUpdate = function (callback) {\n this.updater.enqueueForceUpdate(this, callback, \"forceUpdate\");\n};\nfunction ComponentDummy() {}\nComponentDummy.prototype = Component.prototype;\nfunction PureComponent(props, context, updater) {\n this.props = props;\n this.context = context;\n this.refs = emptyObject;\n this.updater = updater || ReactNoopUpdateQueue;\n}\nvar pureComponentPrototype = (PureComponent.prototype = new ComponentDummy());\npureComponentPrototype.constructor = PureComponent;\nassign(pureComponentPrototype, Component.prototype);\npureComponentPrototype.isPureReactComponent = !0;\nvar isArrayImpl = Array.isArray;\nfunction noop() {}\nvar ReactSharedInternals = { H: null, A: null, T: null, S: null },\n hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction ReactElement(type, key, props) {\n var refProp = props.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== refProp ? refProp : null,\n props: props\n };\n}\nfunction cloneAndReplaceKey(oldElement, newKey) {\n return ReactElement(oldElement.type, newKey, oldElement.props);\n}\nfunction isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n}\nfunction escape(key) {\n var escaperLookup = { \"=\": \"=0\", \":\": \"=2\" };\n return (\n \"$\" +\n key.replace(/[=:]/g, function (match) {\n return escaperLookup[match];\n })\n );\n}\nvar userProvidedKeyEscapeRegex = /\\/+/g;\nfunction getElementKey(element, index) {\n return \"object\" === typeof element && null !== element && null != element.key\n ? escape(\"\" + element.key)\n : index.toString(36);\n}\nfunction resolveThenable(thenable) {\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n default:\n switch (\n (\"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenable.status = \"pending\"),\n thenable.then(\n function (fulfilledValue) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"fulfilled\"),\n (thenable.value = fulfilledValue));\n },\n function (error) {\n \"pending\" === thenable.status &&\n ((thenable.status = \"rejected\"), (thenable.reason = error));\n }\n )),\n thenable.status)\n ) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n }\n throw thenable;\n}\nfunction mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {\n var type = typeof children;\n if (\"undefined\" === type || \"boolean\" === type) children = null;\n var invokeCallback = !1;\n if (null === children) invokeCallback = !0;\n else\n switch (type) {\n case \"bigint\":\n case \"string\":\n case \"number\":\n invokeCallback = !0;\n break;\n case \"object\":\n switch (children.$$typeof) {\n case REACT_ELEMENT_TYPE:\n case REACT_PORTAL_TYPE:\n invokeCallback = !0;\n break;\n case REACT_LAZY_TYPE:\n return (\n (invokeCallback = children._init),\n mapIntoArray(\n invokeCallback(children._payload),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n )\n );\n }\n }\n if (invokeCallback)\n return (\n (callback = callback(children)),\n (invokeCallback =\n \"\" === nameSoFar ? \".\" + getElementKey(children, 0) : nameSoFar),\n isArrayImpl(callback)\n ? ((escapedPrefix = \"\"),\n null != invokeCallback &&\n (escapedPrefix =\n invokeCallback.replace(userProvidedKeyEscapeRegex, \"$&/\") + \"/\"),\n mapIntoArray(callback, array, escapedPrefix, \"\", function (c) {\n return c;\n }))\n : null != callback &&\n (isValidElement(callback) &&\n (callback = cloneAndReplaceKey(\n callback,\n escapedPrefix +\n (null == callback.key ||\n (children && children.key === callback.key)\n ? \"\"\n : (\"\" + callback.key).replace(\n userProvidedKeyEscapeRegex,\n \"$&/\"\n ) + \"/\") +\n invokeCallback\n )),\n array.push(callback)),\n 1\n );\n invokeCallback = 0;\n var nextNamePrefix = \"\" === nameSoFar ? \".\" : nameSoFar + \":\";\n if (isArrayImpl(children))\n for (var i = 0; i < children.length; i++)\n (nameSoFar = children[i]),\n (type = nextNamePrefix + getElementKey(nameSoFar, i)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (((i = getIteratorFn(children)), \"function\" === typeof i))\n for (\n children = i.call(children), i = 0;\n !(nameSoFar = children.next()).done;\n\n )\n (nameSoFar = nameSoFar.value),\n (type = nextNamePrefix + getElementKey(nameSoFar, i++)),\n (invokeCallback += mapIntoArray(\n nameSoFar,\n array,\n escapedPrefix,\n type,\n callback\n ));\n else if (\"object\" === type) {\n if (\"function\" === typeof children.then)\n return mapIntoArray(\n resolveThenable(children),\n array,\n escapedPrefix,\n nameSoFar,\n callback\n );\n array = String(children);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === array\n ? \"object with keys {\" + Object.keys(children).join(\", \") + \"}\"\n : array) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n return invokeCallback;\n}\nfunction mapChildren(children, func, context) {\n if (null == children) return children;\n var result = [],\n count = 0;\n mapIntoArray(children, result, \"\", \"\", function (child) {\n return func.call(context, child, count++);\n });\n return result;\n}\nfunction lazyInitializer(payload) {\n if (-1 === payload._status) {\n var ctor = payload._result;\n ctor = ctor();\n ctor.then(\n function (moduleObject) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 1), (payload._result = moduleObject);\n },\n function (error) {\n if (0 === payload._status || -1 === payload._status)\n (payload._status = 2), (payload._result = error);\n }\n );\n -1 === payload._status && ((payload._status = 0), (payload._result = ctor));\n }\n if (1 === payload._status) return payload._result.default;\n throw payload._result;\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n Children = {\n map: mapChildren,\n forEach: function (children, forEachFunc, forEachContext) {\n mapChildren(\n children,\n function () {\n forEachFunc.apply(this, arguments);\n },\n forEachContext\n );\n },\n count: function (children) {\n var n = 0;\n mapChildren(children, function () {\n n++;\n });\n return n;\n },\n toArray: function (children) {\n return (\n mapChildren(children, function (child) {\n return child;\n }) || []\n );\n },\n only: function (children) {\n if (!isValidElement(children))\n throw Error(\n \"React.Children.only expected to receive a single React element child.\"\n );\n return children;\n }\n };\nexports.Activity = REACT_ACTIVITY_TYPE;\nexports.Children = Children;\nexports.Component = Component;\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.Profiler = REACT_PROFILER_TYPE;\nexports.PureComponent = PureComponent;\nexports.StrictMode = REACT_STRICT_MODE_TYPE;\nexports.Suspense = REACT_SUSPENSE_TYPE;\nexports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n ReactSharedInternals;\nexports.__COMPILER_RUNTIME = {\n __proto__: null,\n c: function (size) {\n return ReactSharedInternals.H.useMemoCache(size);\n }\n};\nexports.cache = function (fn) {\n return function () {\n return fn.apply(null, arguments);\n };\n};\nexports.cacheSignal = function () {\n return null;\n};\nexports.cloneElement = function (element, config, children) {\n if (null === element || void 0 === element)\n throw Error(\n \"The argument must be a React element, but you passed \" + element + \".\"\n );\n var props = assign({}, element.props),\n key = element.key;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n !hasOwnProperty.call(config, propName) ||\n \"key\" === propName ||\n \"__self\" === propName ||\n \"__source\" === propName ||\n (\"ref\" === propName && void 0 === config.ref) ||\n (props[propName] = config[propName]);\n var propName = arguments.length - 2;\n if (1 === propName) props.children = children;\n else if (1 < propName) {\n for (var childArray = Array(propName), i = 0; i < propName; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n return ReactElement(element.type, key, props);\n};\nexports.createContext = function (defaultValue) {\n defaultValue = {\n $$typeof: REACT_CONTEXT_TYPE,\n _currentValue: defaultValue,\n _currentValue2: defaultValue,\n _threadCount: 0,\n Provider: null,\n Consumer: null\n };\n defaultValue.Provider = defaultValue;\n defaultValue.Consumer = {\n $$typeof: REACT_CONSUMER_TYPE,\n _context: defaultValue\n };\n return defaultValue;\n};\nexports.createElement = function (type, config, children) {\n var propName,\n props = {},\n key = null;\n if (null != config)\n for (propName in (void 0 !== config.key && (key = \"\" + config.key), config))\n hasOwnProperty.call(config, propName) &&\n \"key\" !== propName &&\n \"__self\" !== propName &&\n \"__source\" !== propName &&\n (props[propName] = config[propName]);\n var childrenLength = arguments.length - 2;\n if (1 === childrenLength) props.children = children;\n else if (1 < childrenLength) {\n for (var childArray = Array(childrenLength), i = 0; i < childrenLength; i++)\n childArray[i] = arguments[i + 2];\n props.children = childArray;\n }\n if (type && type.defaultProps)\n for (propName in ((childrenLength = type.defaultProps), childrenLength))\n void 0 === props[propName] &&\n (props[propName] = childrenLength[propName]);\n return ReactElement(type, key, props);\n};\nexports.createRef = function () {\n return { current: null };\n};\nexports.forwardRef = function (render) {\n return { $$typeof: REACT_FORWARD_REF_TYPE, render: render };\n};\nexports.isValidElement = isValidElement;\nexports.lazy = function (ctor) {\n return {\n $$typeof: REACT_LAZY_TYPE,\n _payload: { _status: -1, _result: ctor },\n _init: lazyInitializer\n };\n};\nexports.memo = function (type, compare) {\n return {\n $$typeof: REACT_MEMO_TYPE,\n type: type,\n compare: void 0 === compare ? null : compare\n };\n};\nexports.startTransition = function (scope) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = scope(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n returnValue.then(noop, reportGlobalError);\n } catch (error) {\n reportGlobalError(error);\n } finally {\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n};\nexports.unstable_useCacheRefresh = function () {\n return ReactSharedInternals.H.useCacheRefresh();\n};\nexports.use = function (usable) {\n return ReactSharedInternals.H.use(usable);\n};\nexports.useActionState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useActionState(action, initialState, permalink);\n};\nexports.useCallback = function (callback, deps) {\n return ReactSharedInternals.H.useCallback(callback, deps);\n};\nexports.useContext = function (Context) {\n return ReactSharedInternals.H.useContext(Context);\n};\nexports.useDebugValue = function () {};\nexports.useDeferredValue = function (value, initialValue) {\n return ReactSharedInternals.H.useDeferredValue(value, initialValue);\n};\nexports.useEffect = function (create, deps) {\n return ReactSharedInternals.H.useEffect(create, deps);\n};\nexports.useEffectEvent = function (callback) {\n return ReactSharedInternals.H.useEffectEvent(callback);\n};\nexports.useId = function () {\n return ReactSharedInternals.H.useId();\n};\nexports.useImperativeHandle = function (ref, create, deps) {\n return ReactSharedInternals.H.useImperativeHandle(ref, create, deps);\n};\nexports.useInsertionEffect = function (create, deps) {\n return ReactSharedInternals.H.useInsertionEffect(create, deps);\n};\nexports.useLayoutEffect = function (create, deps) {\n return ReactSharedInternals.H.useLayoutEffect(create, deps);\n};\nexports.useMemo = function (create, deps) {\n return ReactSharedInternals.H.useMemo(create, deps);\n};\nexports.useOptimistic = function (passthrough, reducer) {\n return ReactSharedInternals.H.useOptimistic(passthrough, reducer);\n};\nexports.useReducer = function (reducer, initialArg, init) {\n return ReactSharedInternals.H.useReducer(reducer, initialArg, init);\n};\nexports.useRef = function (initialValue) {\n return ReactSharedInternals.H.useRef(initialValue);\n};\nexports.useState = function (initialState) {\n return ReactSharedInternals.H.useState(initialState);\n};\nexports.useSyncExternalStore = function (\n subscribe,\n getSnapshot,\n getServerSnapshot\n) {\n return ReactSharedInternals.H.useSyncExternalStore(\n subscribe,\n getSnapshot,\n getServerSnapshot\n );\n};\nexports.useTransition = function () {\n return ReactSharedInternals.H.useTransition();\n};\nexports.version = \"19.2.8\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/**\n * @license React\n * react-dom.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction formatProdErrorMessage(code) {\n var url = \"https://react.dev/errors/\" + code;\n if (1 < arguments.length) {\n url += \"?args[]=\" + encodeURIComponent(arguments[1]);\n for (var i = 2; i < arguments.length; i++)\n url += \"&args[]=\" + encodeURIComponent(arguments[i]);\n }\n return (\n \"Minified React error #\" +\n code +\n \"; visit \" +\n url +\n \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"\n );\n}\nfunction noop() {}\nvar Internals = {\n d: {\n f: noop,\n r: function () {\n throw Error(formatProdErrorMessage(522));\n },\n D: noop,\n C: noop,\n L: noop,\n m: noop,\n X: noop,\n S: noop,\n M: noop\n },\n p: 0,\n findDOMNode: null\n },\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\");\nfunction createPortal$1(children, containerInfo, implementation) {\n var key =\n 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;\n return {\n $$typeof: REACT_PORTAL_TYPE,\n key: null == key ? null : \"\" + key,\n children: children,\n containerInfo: containerInfo,\n implementation: implementation\n };\n}\nvar ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;\nfunction getCrossOriginStringAs(as, input) {\n if (\"font\" === as) return \"\";\n if (\"string\" === typeof input)\n return \"use-credentials\" === input ? input : \"\";\n}\nexports.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =\n Internals;\nexports.createPortal = function (children, container) {\n var key =\n 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;\n if (\n !container ||\n (1 !== container.nodeType &&\n 9 !== container.nodeType &&\n 11 !== container.nodeType)\n )\n throw Error(formatProdErrorMessage(299));\n return createPortal$1(children, container, null, key);\n};\nexports.flushSync = function (fn) {\n var previousTransition = ReactSharedInternals.T,\n previousUpdatePriority = Internals.p;\n try {\n if (((ReactSharedInternals.T = null), (Internals.p = 2), fn)) return fn();\n } finally {\n (ReactSharedInternals.T = previousTransition),\n (Internals.p = previousUpdatePriority),\n Internals.d.f();\n }\n};\nexports.preconnect = function (href, options) {\n \"string\" === typeof href &&\n (options\n ? ((options = options.crossOrigin),\n (options =\n \"string\" === typeof options\n ? \"use-credentials\" === options\n ? options\n : \"\"\n : void 0))\n : (options = null),\n Internals.d.C(href, options));\n};\nexports.prefetchDNS = function (href) {\n \"string\" === typeof href && Internals.d.D(href);\n};\nexports.preinit = function (href, options) {\n if (\"string\" === typeof href && options && \"string\" === typeof options.as) {\n var as = options.as,\n crossOrigin = getCrossOriginStringAs(as, options.crossOrigin),\n integrity =\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n fetchPriority =\n \"string\" === typeof options.fetchPriority\n ? options.fetchPriority\n : void 0;\n \"style\" === as\n ? Internals.d.S(\n href,\n \"string\" === typeof options.precedence ? options.precedence : void 0,\n {\n crossOrigin: crossOrigin,\n integrity: integrity,\n fetchPriority: fetchPriority\n }\n )\n : \"script\" === as &&\n Internals.d.X(href, {\n crossOrigin: crossOrigin,\n integrity: integrity,\n fetchPriority: fetchPriority,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0\n });\n }\n};\nexports.preinitModule = function (href, options) {\n if (\"string\" === typeof href)\n if (\"object\" === typeof options && null !== options) {\n if (null == options.as || \"script\" === options.as) {\n var crossOrigin = getCrossOriginStringAs(\n options.as,\n options.crossOrigin\n );\n Internals.d.M(href, {\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0\n });\n }\n } else null == options && Internals.d.M(href);\n};\nexports.preload = function (href, options) {\n if (\n \"string\" === typeof href &&\n \"object\" === typeof options &&\n null !== options &&\n \"string\" === typeof options.as\n ) {\n var as = options.as,\n crossOrigin = getCrossOriginStringAs(as, options.crossOrigin);\n Internals.d.L(href, as, {\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0,\n nonce: \"string\" === typeof options.nonce ? options.nonce : void 0,\n type: \"string\" === typeof options.type ? options.type : void 0,\n fetchPriority:\n \"string\" === typeof options.fetchPriority\n ? options.fetchPriority\n : void 0,\n referrerPolicy:\n \"string\" === typeof options.referrerPolicy\n ? options.referrerPolicy\n : void 0,\n imageSrcSet:\n \"string\" === typeof options.imageSrcSet ? options.imageSrcSet : void 0,\n imageSizes:\n \"string\" === typeof options.imageSizes ? options.imageSizes : void 0,\n media: \"string\" === typeof options.media ? options.media : void 0\n });\n }\n};\nexports.preloadModule = function (href, options) {\n if (\"string\" === typeof href)\n if (options) {\n var crossOrigin = getCrossOriginStringAs(options.as, options.crossOrigin);\n Internals.d.m(href, {\n as:\n \"string\" === typeof options.as && \"script\" !== options.as\n ? options.as\n : void 0,\n crossOrigin: crossOrigin,\n integrity:\n \"string\" === typeof options.integrity ? options.integrity : void 0\n });\n } else Internals.d.m(href);\n};\nexports.requestFormReset = function (form) {\n Internals.d.r(form);\n};\nexports.unstable_batchedUpdates = function (fn, a) {\n return fn(a);\n};\nexports.useFormState = function (action, initialState, permalink) {\n return ReactSharedInternals.H.useFormState(action, initialState, permalink);\n};\nexports.useFormStatus = function () {\n return ReactSharedInternals.H.useHostTransitionStatus();\n};\nexports.version = \"19.2.8\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","/**\n * @license React\n * scheduler.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nfunction push(heap, node) {\n var index = heap.length;\n heap.push(node);\n a: for (; 0 < index; ) {\n var parentIndex = (index - 1) >>> 1,\n parent = heap[parentIndex];\n if (0 < compare(parent, node))\n (heap[parentIndex] = node), (heap[index] = parent), (index = parentIndex);\n else break a;\n }\n}\nfunction peek(heap) {\n return 0 === heap.length ? null : heap[0];\n}\nfunction pop(heap) {\n if (0 === heap.length) return null;\n var first = heap[0],\n last = heap.pop();\n if (last !== first) {\n heap[0] = last;\n a: for (\n var index = 0, length = heap.length, halfLength = length >>> 1;\n index < halfLength;\n\n ) {\n var leftIndex = 2 * (index + 1) - 1,\n left = heap[leftIndex],\n rightIndex = leftIndex + 1,\n right = heap[rightIndex];\n if (0 > compare(left, last))\n rightIndex < length && 0 > compare(right, left)\n ? ((heap[index] = right),\n (heap[rightIndex] = last),\n (index = rightIndex))\n : ((heap[index] = left),\n (heap[leftIndex] = last),\n (index = leftIndex));\n else if (rightIndex < length && 0 > compare(right, last))\n (heap[index] = right), (heap[rightIndex] = last), (index = rightIndex);\n else break a;\n }\n }\n return first;\n}\nfunction compare(a, b) {\n var diff = a.sortIndex - b.sortIndex;\n return 0 !== diff ? diff : a.id - b.id;\n}\nexports.unstable_now = void 0;\nif (\"object\" === typeof performance && \"function\" === typeof performance.now) {\n var localPerformance = performance;\n exports.unstable_now = function () {\n return localPerformance.now();\n };\n} else {\n var localDate = Date,\n initialTime = localDate.now();\n exports.unstable_now = function () {\n return localDate.now() - initialTime;\n };\n}\nvar taskQueue = [],\n timerQueue = [],\n taskIdCounter = 1,\n currentTask = null,\n currentPriorityLevel = 3,\n isPerformingWork = !1,\n isHostCallbackScheduled = !1,\n isHostTimeoutScheduled = !1,\n needsPaint = !1,\n localSetTimeout = \"function\" === typeof setTimeout ? setTimeout : null,\n localClearTimeout = \"function\" === typeof clearTimeout ? clearTimeout : null,\n localSetImmediate = \"undefined\" !== typeof setImmediate ? setImmediate : null;\nfunction advanceTimers(currentTime) {\n for (var timer = peek(timerQueue); null !== timer; ) {\n if (null === timer.callback) pop(timerQueue);\n else if (timer.startTime <= currentTime)\n pop(timerQueue),\n (timer.sortIndex = timer.expirationTime),\n push(taskQueue, timer);\n else break;\n timer = peek(timerQueue);\n }\n}\nfunction handleTimeout(currentTime) {\n isHostTimeoutScheduled = !1;\n advanceTimers(currentTime);\n if (!isHostCallbackScheduled)\n if (null !== peek(taskQueue))\n (isHostCallbackScheduled = !0),\n isMessageLoopRunning ||\n ((isMessageLoopRunning = !0), schedulePerformWorkUntilDeadline());\n else {\n var firstTimer = peek(timerQueue);\n null !== firstTimer &&\n requestHostTimeout(handleTimeout, firstTimer.startTime - currentTime);\n }\n}\nvar isMessageLoopRunning = !1,\n taskTimeoutID = -1,\n frameInterval = 5,\n startTime = -1;\nfunction shouldYieldToHost() {\n return needsPaint\n ? !0\n : exports.unstable_now() - startTime < frameInterval\n ? !1\n : !0;\n}\nfunction performWorkUntilDeadline() {\n needsPaint = !1;\n if (isMessageLoopRunning) {\n var currentTime = exports.unstable_now();\n startTime = currentTime;\n var hasMoreWork = !0;\n try {\n a: {\n isHostCallbackScheduled = !1;\n isHostTimeoutScheduled &&\n ((isHostTimeoutScheduled = !1),\n localClearTimeout(taskTimeoutID),\n (taskTimeoutID = -1));\n isPerformingWork = !0;\n var previousPriorityLevel = currentPriorityLevel;\n try {\n b: {\n advanceTimers(currentTime);\n for (\n currentTask = peek(taskQueue);\n null !== currentTask &&\n !(\n currentTask.expirationTime > currentTime && shouldYieldToHost()\n );\n\n ) {\n var callback = currentTask.callback;\n if (\"function\" === typeof callback) {\n currentTask.callback = null;\n currentPriorityLevel = currentTask.priorityLevel;\n var continuationCallback = callback(\n currentTask.expirationTime <= currentTime\n );\n currentTime = exports.unstable_now();\n if (\"function\" === typeof continuationCallback) {\n currentTask.callback = continuationCallback;\n advanceTimers(currentTime);\n hasMoreWork = !0;\n break b;\n }\n currentTask === peek(taskQueue) && pop(taskQueue);\n advanceTimers(currentTime);\n } else pop(taskQueue);\n currentTask = peek(taskQueue);\n }\n if (null !== currentTask) hasMoreWork = !0;\n else {\n var firstTimer = peek(timerQueue);\n null !== firstTimer &&\n requestHostTimeout(\n handleTimeout,\n firstTimer.startTime - currentTime\n );\n hasMoreWork = !1;\n }\n }\n break a;\n } finally {\n (currentTask = null),\n (currentPriorityLevel = previousPriorityLevel),\n (isPerformingWork = !1);\n }\n hasMoreWork = void 0;\n }\n } finally {\n hasMoreWork\n ? schedulePerformWorkUntilDeadline()\n : (isMessageLoopRunning = !1);\n }\n }\n}\nvar schedulePerformWorkUntilDeadline;\nif (\"function\" === typeof localSetImmediate)\n schedulePerformWorkUntilDeadline = function () {\n localSetImmediate(performWorkUntilDeadline);\n };\nelse if (\"undefined\" !== typeof MessageChannel) {\n var channel = new MessageChannel(),\n port = channel.port2;\n channel.port1.onmessage = performWorkUntilDeadline;\n schedulePerformWorkUntilDeadline = function () {\n port.postMessage(null);\n };\n} else\n schedulePerformWorkUntilDeadline = function () {\n localSetTimeout(performWorkUntilDeadline, 0);\n };\nfunction requestHostTimeout(callback, ms) {\n taskTimeoutID = localSetTimeout(function () {\n callback(exports.unstable_now());\n }, ms);\n}\nexports.unstable_IdlePriority = 5;\nexports.unstable_ImmediatePriority = 1;\nexports.unstable_LowPriority = 4;\nexports.unstable_NormalPriority = 3;\nexports.unstable_Profiling = null;\nexports.unstable_UserBlockingPriority = 2;\nexports.unstable_cancelCallback = function (task) {\n task.callback = null;\n};\nexports.unstable_forceFrameRate = function (fps) {\n 0 > fps || 125 < fps\n ? console.error(\n \"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"\n )\n : (frameInterval = 0 < fps ? Math.floor(1e3 / fps) : 5);\n};\nexports.unstable_getCurrentPriorityLevel = function () {\n return currentPriorityLevel;\n};\nexports.unstable_next = function (eventHandler) {\n switch (currentPriorityLevel) {\n case 1:\n case 2:\n case 3:\n var priorityLevel = 3;\n break;\n default:\n priorityLevel = currentPriorityLevel;\n }\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n};\nexports.unstable_requestPaint = function () {\n needsPaint = !0;\n};\nexports.unstable_runWithPriority = function (priorityLevel, eventHandler) {\n switch (priorityLevel) {\n case 1:\n case 2:\n case 3:\n case 4:\n case 5:\n break;\n default:\n priorityLevel = 3;\n }\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = priorityLevel;\n try {\n return eventHandler();\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n};\nexports.unstable_scheduleCallback = function (\n priorityLevel,\n callback,\n options\n) {\n var currentTime = exports.unstable_now();\n \"object\" === typeof options && null !== options\n ? ((options = options.delay),\n (options =\n \"number\" === typeof options && 0 < options\n ? currentTime + options\n : currentTime))\n : (options = currentTime);\n switch (priorityLevel) {\n case 1:\n var timeout = -1;\n break;\n case 2:\n timeout = 250;\n break;\n case 5:\n timeout = 1073741823;\n break;\n case 4:\n timeout = 1e4;\n break;\n default:\n timeout = 5e3;\n }\n timeout = options + timeout;\n priorityLevel = {\n id: taskIdCounter++,\n callback: callback,\n priorityLevel: priorityLevel,\n startTime: options,\n expirationTime: timeout,\n sortIndex: -1\n };\n options > currentTime\n ? ((priorityLevel.sortIndex = options),\n push(timerQueue, priorityLevel),\n null === peek(taskQueue) &&\n priorityLevel === peek(timerQueue) &&\n (isHostTimeoutScheduled\n ? (localClearTimeout(taskTimeoutID), (taskTimeoutID = -1))\n : (isHostTimeoutScheduled = !0),\n requestHostTimeout(handleTimeout, options - currentTime)))\n : ((priorityLevel.sortIndex = timeout),\n push(taskQueue, priorityLevel),\n isHostCallbackScheduled ||\n isPerformingWork ||\n ((isHostCallbackScheduled = !0),\n isMessageLoopRunning ||\n ((isMessageLoopRunning = !0), schedulePerformWorkUntilDeadline())));\n return priorityLevel;\n};\nexports.unstable_shouldYield = shouldYieldToHost;\nexports.unstable_wrapCallback = function (callback) {\n var parentPriorityLevel = currentPriorityLevel;\n return function () {\n var previousPriorityLevel = currentPriorityLevel;\n currentPriorityLevel = parentPriorityLevel;\n try {\n return callback.apply(this, arguments);\n } finally {\n currentPriorityLevel = previousPriorityLevel;\n }\n };\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * @license React\n * react-dom-client.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n\"use strict\";\nvar Scheduler = require(\"scheduler\"),\n React = require(\"react\"),\n ReactDOM = require(\"react-dom\");\nfunction formatProdErrorMessage(code) {\n var url = \"https://react.dev/errors/\" + code;\n if (1 < arguments.length) {\n url += \"?args[]=\" + encodeURIComponent(arguments[1]);\n for (var i = 2; i < arguments.length; i++)\n url += \"&args[]=\" + encodeURIComponent(arguments[i]);\n }\n return (\n \"Minified React error #\" +\n code +\n \"; visit \" +\n url +\n \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"\n );\n}\nfunction isValidContainer(node) {\n return !(\n !node ||\n (1 !== node.nodeType && 9 !== node.nodeType && 11 !== node.nodeType)\n );\n}\nfunction getNearestMountedFiber(fiber) {\n var node = fiber,\n nearestMounted = fiber;\n if (fiber.alternate) for (; node.return; ) node = node.return;\n else {\n fiber = node;\n do\n (node = fiber),\n 0 !== (node.flags & 4098) && (nearestMounted = node.return),\n (fiber = node.return);\n while (fiber);\n }\n return 3 === node.tag ? nearestMounted : null;\n}\nfunction getSuspenseInstanceFromFiber(fiber) {\n if (13 === fiber.tag) {\n var suspenseState = fiber.memoizedState;\n null === suspenseState &&\n ((fiber = fiber.alternate),\n null !== fiber && (suspenseState = fiber.memoizedState));\n if (null !== suspenseState) return suspenseState.dehydrated;\n }\n return null;\n}\nfunction getActivityInstanceFromFiber(fiber) {\n if (31 === fiber.tag) {\n var activityState = fiber.memoizedState;\n null === activityState &&\n ((fiber = fiber.alternate),\n null !== fiber && (activityState = fiber.memoizedState));\n if (null !== activityState) return activityState.dehydrated;\n }\n return null;\n}\nfunction assertIsMounted(fiber) {\n if (getNearestMountedFiber(fiber) !== fiber)\n throw Error(formatProdErrorMessage(188));\n}\nfunction findCurrentFiberUsingSlowPath(fiber) {\n var alternate = fiber.alternate;\n if (!alternate) {\n alternate = getNearestMountedFiber(fiber);\n if (null === alternate) throw Error(formatProdErrorMessage(188));\n return alternate !== fiber ? null : fiber;\n }\n for (var a = fiber, b = alternate; ; ) {\n var parentA = a.return;\n if (null === parentA) break;\n var parentB = parentA.alternate;\n if (null === parentB) {\n b = parentA.return;\n if (null !== b) {\n a = b;\n continue;\n }\n break;\n }\n if (parentA.child === parentB.child) {\n for (parentB = parentA.child; parentB; ) {\n if (parentB === a) return assertIsMounted(parentA), fiber;\n if (parentB === b) return assertIsMounted(parentA), alternate;\n parentB = parentB.sibling;\n }\n throw Error(formatProdErrorMessage(188));\n }\n if (a.return !== b.return) (a = parentA), (b = parentB);\n else {\n for (var didFindChild = !1, child$0 = parentA.child; child$0; ) {\n if (child$0 === a) {\n didFindChild = !0;\n a = parentA;\n b = parentB;\n break;\n }\n if (child$0 === b) {\n didFindChild = !0;\n b = parentA;\n a = parentB;\n break;\n }\n child$0 = child$0.sibling;\n }\n if (!didFindChild) {\n for (child$0 = parentB.child; child$0; ) {\n if (child$0 === a) {\n didFindChild = !0;\n a = parentB;\n b = parentA;\n break;\n }\n if (child$0 === b) {\n didFindChild = !0;\n b = parentB;\n a = parentA;\n break;\n }\n child$0 = child$0.sibling;\n }\n if (!didFindChild) throw Error(formatProdErrorMessage(189));\n }\n }\n if (a.alternate !== b) throw Error(formatProdErrorMessage(190));\n }\n if (3 !== a.tag) throw Error(formatProdErrorMessage(188));\n return a.stateNode.current === a ? fiber : alternate;\n}\nfunction findCurrentHostFiberImpl(node) {\n var tag = node.tag;\n if (5 === tag || 26 === tag || 27 === tag || 6 === tag) return node;\n for (node = node.child; null !== node; ) {\n tag = findCurrentHostFiberImpl(node);\n if (null !== tag) return tag;\n node = node.sibling;\n }\n return null;\n}\nvar assign = Object.assign,\n REACT_LEGACY_ELEMENT_TYPE = Symbol.for(\"react.element\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\");\nSymbol.for(\"react.scope\");\nvar REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\");\nSymbol.for(\"react.legacy_hidden\");\nSymbol.for(\"react.tracing_marker\");\nvar REACT_MEMO_CACHE_SENTINEL = Symbol.for(\"react.memo_cache_sentinel\");\nSymbol.for(\"react.view_transition\");\nvar MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (type.$$typeof) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n}\nvar isArrayImpl = Array.isArray,\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n ReactDOMSharedInternals =\n ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n sharedNotPendingObject = {\n pending: !1,\n data: null,\n method: null,\n action: null\n },\n valueStack = [],\n index = -1;\nfunction createCursor(defaultValue) {\n return { current: defaultValue };\n}\nfunction pop(cursor) {\n 0 > index ||\n ((cursor.current = valueStack[index]), (valueStack[index] = null), index--);\n}\nfunction push(cursor, value) {\n index++;\n valueStack[index] = cursor.current;\n cursor.current = value;\n}\nvar contextStackCursor = createCursor(null),\n contextFiberStackCursor = createCursor(null),\n rootInstanceStackCursor = createCursor(null),\n hostTransitionProviderCursor = createCursor(null);\nfunction pushHostContainer(fiber, nextRootInstance) {\n push(rootInstanceStackCursor, nextRootInstance);\n push(contextFiberStackCursor, fiber);\n push(contextStackCursor, null);\n switch (nextRootInstance.nodeType) {\n case 9:\n case 11:\n fiber = (fiber = nextRootInstance.documentElement)\n ? (fiber = fiber.namespaceURI)\n ? getOwnHostContext(fiber)\n : 0\n : 0;\n break;\n default:\n if (\n ((fiber = nextRootInstance.tagName),\n (nextRootInstance = nextRootInstance.namespaceURI))\n )\n (nextRootInstance = getOwnHostContext(nextRootInstance)),\n (fiber = getChildHostContextProd(nextRootInstance, fiber));\n else\n switch (fiber) {\n case \"svg\":\n fiber = 1;\n break;\n case \"math\":\n fiber = 2;\n break;\n default:\n fiber = 0;\n }\n }\n pop(contextStackCursor);\n push(contextStackCursor, fiber);\n}\nfunction popHostContainer() {\n pop(contextStackCursor);\n pop(contextFiberStackCursor);\n pop(rootInstanceStackCursor);\n}\nfunction pushHostContext(fiber) {\n null !== fiber.memoizedState && push(hostTransitionProviderCursor, fiber);\n var context = contextStackCursor.current;\n var JSCompiler_inline_result = getChildHostContextProd(context, fiber.type);\n context !== JSCompiler_inline_result &&\n (push(contextFiberStackCursor, fiber),\n push(contextStackCursor, JSCompiler_inline_result));\n}\nfunction popHostContext(fiber) {\n contextFiberStackCursor.current === fiber &&\n (pop(contextStackCursor), pop(contextFiberStackCursor));\n hostTransitionProviderCursor.current === fiber &&\n (pop(hostTransitionProviderCursor),\n (HostTransitionContext._currentValue = sharedNotPendingObject));\n}\nvar prefix, suffix;\nfunction describeBuiltInComponentFrame(name) {\n if (void 0 === prefix)\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = (match && match[1]) || \"\";\n suffix =\n -1 < x.stack.indexOf(\"\\n at\")\n ? \" (<anonymous>)\"\n : -1 < x.stack.indexOf(\"@\")\n ? \"@unknown:0:0\"\n : \"\";\n }\n return \"\\n\" + prefix + name + suffix;\n}\nvar reentry = !1;\nfunction describeNativeComponentFrame(fn, construct) {\n if (!fn || reentry) return \"\";\n reentry = !0;\n var previousPrepareStackTrace = Error.prepareStackTrace;\n Error.prepareStackTrace = void 0;\n try {\n var RunInRootFrame = {\n DetermineComponentFrameRoot: function () {\n try {\n if (construct) {\n var Fake = function () {\n throw Error();\n };\n Object.defineProperty(Fake.prototype, \"props\", {\n set: function () {\n throw Error();\n }\n });\n if (\"object\" === typeof Reflect && Reflect.construct) {\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n var control = x;\n }\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x$1) {\n control = x$1;\n }\n fn.call(Fake.prototype);\n }\n } else {\n try {\n throw Error();\n } catch (x$2) {\n control = x$2;\n }\n (Fake = fn()) &&\n \"function\" === typeof Fake.catch &&\n Fake.catch(function () {});\n }\n } catch (sample) {\n if (sample && control && \"string\" === typeof sample.stack)\n return [sample.stack, control.stack];\n }\n return [null, null];\n }\n };\n RunInRootFrame.DetermineComponentFrameRoot.displayName =\n \"DetermineComponentFrameRoot\";\n var namePropDescriptor = Object.getOwnPropertyDescriptor(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\"\n );\n namePropDescriptor &&\n namePropDescriptor.configurable &&\n Object.defineProperty(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\",\n { value: \"DetermineComponentFrameRoot\" }\n );\n var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(),\n sampleStack = _RunInRootFrame$Deter[0],\n controlStack = _RunInRootFrame$Deter[1];\n if (sampleStack && controlStack) {\n var sampleLines = sampleStack.split(\"\\n\"),\n controlLines = controlStack.split(\"\\n\");\n for (\n namePropDescriptor = RunInRootFrame = 0;\n RunInRootFrame < sampleLines.length &&\n !sampleLines[RunInRootFrame].includes(\"DetermineComponentFrameRoot\");\n\n )\n RunInRootFrame++;\n for (\n ;\n namePropDescriptor < controlLines.length &&\n !controlLines[namePropDescriptor].includes(\n \"DetermineComponentFrameRoot\"\n );\n\n )\n namePropDescriptor++;\n if (\n RunInRootFrame === sampleLines.length ||\n namePropDescriptor === controlLines.length\n )\n for (\n RunInRootFrame = sampleLines.length - 1,\n namePropDescriptor = controlLines.length - 1;\n 1 <= RunInRootFrame &&\n 0 <= namePropDescriptor &&\n sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor];\n\n )\n namePropDescriptor--;\n for (\n ;\n 1 <= RunInRootFrame && 0 <= namePropDescriptor;\n RunInRootFrame--, namePropDescriptor--\n )\n if (sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor]) {\n if (1 !== RunInRootFrame || 1 !== namePropDescriptor) {\n do\n if (\n (RunInRootFrame--,\n namePropDescriptor--,\n 0 > namePropDescriptor ||\n sampleLines[RunInRootFrame] !==\n controlLines[namePropDescriptor])\n ) {\n var frame =\n \"\\n\" +\n sampleLines[RunInRootFrame].replace(\" at new \", \" at \");\n fn.displayName &&\n frame.includes(\"<anonymous>\") &&\n (frame = frame.replace(\"<anonymous>\", fn.displayName));\n return frame;\n }\n while (1 <= RunInRootFrame && 0 <= namePropDescriptor);\n }\n break;\n }\n }\n } finally {\n (reentry = !1), (Error.prepareStackTrace = previousPrepareStackTrace);\n }\n return (previousPrepareStackTrace = fn ? fn.displayName || fn.name : \"\")\n ? describeBuiltInComponentFrame(previousPrepareStackTrace)\n : \"\";\n}\nfunction describeFiber(fiber, childFiber) {\n switch (fiber.tag) {\n case 26:\n case 27:\n case 5:\n return describeBuiltInComponentFrame(fiber.type);\n case 16:\n return describeBuiltInComponentFrame(\"Lazy\");\n case 13:\n return fiber.child !== childFiber && null !== childFiber\n ? describeBuiltInComponentFrame(\"Suspense Fallback\")\n : describeBuiltInComponentFrame(\"Suspense\");\n case 19:\n return describeBuiltInComponentFrame(\"SuspenseList\");\n case 0:\n case 15:\n return describeNativeComponentFrame(fiber.type, !1);\n case 11:\n return describeNativeComponentFrame(fiber.type.render, !1);\n case 1:\n return describeNativeComponentFrame(fiber.type, !0);\n case 31:\n return describeBuiltInComponentFrame(\"Activity\");\n default:\n return \"\";\n }\n}\nfunction getStackByFiberInDevAndProd(workInProgress) {\n try {\n var info = \"\",\n previous = null;\n do\n (info += describeFiber(workInProgress, previous)),\n (previous = workInProgress),\n (workInProgress = workInProgress.return);\n while (workInProgress);\n return info;\n } catch (x) {\n return \"\\nError generating stack: \" + x.message + \"\\n\" + x.stack;\n }\n}\nvar hasOwnProperty = Object.prototype.hasOwnProperty,\n scheduleCallback$3 = Scheduler.unstable_scheduleCallback,\n cancelCallback$1 = Scheduler.unstable_cancelCallback,\n shouldYield = Scheduler.unstable_shouldYield,\n requestPaint = Scheduler.unstable_requestPaint,\n now = Scheduler.unstable_now,\n getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel,\n ImmediatePriority = Scheduler.unstable_ImmediatePriority,\n UserBlockingPriority = Scheduler.unstable_UserBlockingPriority,\n NormalPriority$1 = Scheduler.unstable_NormalPriority,\n LowPriority = Scheduler.unstable_LowPriority,\n IdlePriority = Scheduler.unstable_IdlePriority,\n log$1 = Scheduler.log,\n unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue,\n rendererID = null,\n injectedHook = null;\nfunction setIsStrictModeForDevtools(newIsStrictMode) {\n \"function\" === typeof log$1 && unstable_setDisableYieldValue(newIsStrictMode);\n if (injectedHook && \"function\" === typeof injectedHook.setStrictMode)\n try {\n injectedHook.setStrictMode(rendererID, newIsStrictMode);\n } catch (err) {}\n}\nvar clz32 = Math.clz32 ? Math.clz32 : clz32Fallback,\n log = Math.log,\n LN2 = Math.LN2;\nfunction clz32Fallback(x) {\n x >>>= 0;\n return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;\n}\nvar nextTransitionUpdateLane = 256,\n nextTransitionDeferredLane = 262144,\n nextRetryLane = 4194304;\nfunction getHighestPriorityLanes(lanes) {\n var pendingSyncLanes = lanes & 42;\n if (0 !== pendingSyncLanes) return pendingSyncLanes;\n switch (lanes & -lanes) {\n case 1:\n return 1;\n case 2:\n return 2;\n case 4:\n return 4;\n case 8:\n return 8;\n case 16:\n return 16;\n case 32:\n return 32;\n case 64:\n return 64;\n case 128:\n return 128;\n case 256:\n case 512:\n case 1024:\n case 2048:\n case 4096:\n case 8192:\n case 16384:\n case 32768:\n case 65536:\n case 131072:\n return lanes & 261888;\n case 262144:\n case 524288:\n case 1048576:\n case 2097152:\n return lanes & 3932160;\n case 4194304:\n case 8388608:\n case 16777216:\n case 33554432:\n return lanes & 62914560;\n case 67108864:\n return 67108864;\n case 134217728:\n return 134217728;\n case 268435456:\n return 268435456;\n case 536870912:\n return 536870912;\n case 1073741824:\n return 0;\n default:\n return lanes;\n }\n}\nfunction getNextLanes(root, wipLanes, rootHasPendingCommit) {\n var pendingLanes = root.pendingLanes;\n if (0 === pendingLanes) return 0;\n var nextLanes = 0,\n suspendedLanes = root.suspendedLanes,\n pingedLanes = root.pingedLanes;\n root = root.warmLanes;\n var nonIdlePendingLanes = pendingLanes & 134217727;\n 0 !== nonIdlePendingLanes\n ? ((pendingLanes = nonIdlePendingLanes & ~suspendedLanes),\n 0 !== pendingLanes\n ? (nextLanes = getHighestPriorityLanes(pendingLanes))\n : ((pingedLanes &= nonIdlePendingLanes),\n 0 !== pingedLanes\n ? (nextLanes = getHighestPriorityLanes(pingedLanes))\n : rootHasPendingCommit ||\n ((rootHasPendingCommit = nonIdlePendingLanes & ~root),\n 0 !== rootHasPendingCommit &&\n (nextLanes = getHighestPriorityLanes(rootHasPendingCommit)))))\n : ((nonIdlePendingLanes = pendingLanes & ~suspendedLanes),\n 0 !== nonIdlePendingLanes\n ? (nextLanes = getHighestPriorityLanes(nonIdlePendingLanes))\n : 0 !== pingedLanes\n ? (nextLanes = getHighestPriorityLanes(pingedLanes))\n : rootHasPendingCommit ||\n ((rootHasPendingCommit = pendingLanes & ~root),\n 0 !== rootHasPendingCommit &&\n (nextLanes = getHighestPriorityLanes(rootHasPendingCommit))));\n return 0 === nextLanes\n ? 0\n : 0 !== wipLanes &&\n wipLanes !== nextLanes &&\n 0 === (wipLanes & suspendedLanes) &&\n ((suspendedLanes = nextLanes & -nextLanes),\n (rootHasPendingCommit = wipLanes & -wipLanes),\n suspendedLanes >= rootHasPendingCommit ||\n (32 === suspendedLanes && 0 !== (rootHasPendingCommit & 4194048)))\n ? wipLanes\n : nextLanes;\n}\nfunction checkIfRootIsPrerendering(root, renderLanes) {\n return (\n 0 ===\n (root.pendingLanes &\n ~(root.suspendedLanes & ~root.pingedLanes) &\n renderLanes)\n );\n}\nfunction computeExpirationTime(lane, currentTime) {\n switch (lane) {\n case 1:\n case 2:\n case 4:\n case 8:\n case 64:\n return currentTime + 250;\n case 16:\n case 32:\n case 128:\n case 256:\n case 512:\n case 1024:\n case 2048:\n case 4096:\n case 8192:\n case 16384:\n case 32768:\n case 65536:\n case 131072:\n case 262144:\n case 524288:\n case 1048576:\n case 2097152:\n return currentTime + 5e3;\n case 4194304:\n case 8388608:\n case 16777216:\n case 33554432:\n return -1;\n case 67108864:\n case 134217728:\n case 268435456:\n case 536870912:\n case 1073741824:\n return -1;\n default:\n return -1;\n }\n}\nfunction claimNextRetryLane() {\n var lane = nextRetryLane;\n nextRetryLane <<= 1;\n 0 === (nextRetryLane & 62914560) && (nextRetryLane = 4194304);\n return lane;\n}\nfunction createLaneMap(initial) {\n for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial);\n return laneMap;\n}\nfunction markRootUpdated$1(root, updateLane) {\n root.pendingLanes |= updateLane;\n 268435456 !== updateLane &&\n ((root.suspendedLanes = 0), (root.pingedLanes = 0), (root.warmLanes = 0));\n}\nfunction markRootFinished(\n root,\n finishedLanes,\n remainingLanes,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes\n) {\n var previouslyPendingLanes = root.pendingLanes;\n root.pendingLanes = remainingLanes;\n root.suspendedLanes = 0;\n root.pingedLanes = 0;\n root.warmLanes = 0;\n root.expiredLanes &= remainingLanes;\n root.entangledLanes &= remainingLanes;\n root.errorRecoveryDisabledLanes &= remainingLanes;\n root.shellSuspendCounter = 0;\n var entanglements = root.entanglements,\n expirationTimes = root.expirationTimes,\n hiddenUpdates = root.hiddenUpdates;\n for (\n remainingLanes = previouslyPendingLanes & ~remainingLanes;\n 0 < remainingLanes;\n\n ) {\n var index$7 = 31 - clz32(remainingLanes),\n lane = 1 << index$7;\n entanglements[index$7] = 0;\n expirationTimes[index$7] = -1;\n var hiddenUpdatesForLane = hiddenUpdates[index$7];\n if (null !== hiddenUpdatesForLane)\n for (\n hiddenUpdates[index$7] = null, index$7 = 0;\n index$7 < hiddenUpdatesForLane.length;\n index$7++\n ) {\n var update = hiddenUpdatesForLane[index$7];\n null !== update && (update.lane &= -536870913);\n }\n remainingLanes &= ~lane;\n }\n 0 !== spawnedLane && markSpawnedDeferredLane(root, spawnedLane, 0);\n 0 !== suspendedRetryLanes &&\n 0 === updatedLanes &&\n 0 !== root.tag &&\n (root.suspendedLanes |=\n suspendedRetryLanes & ~(previouslyPendingLanes & ~finishedLanes));\n}\nfunction markSpawnedDeferredLane(root, spawnedLane, entangledLanes) {\n root.pendingLanes |= spawnedLane;\n root.suspendedLanes &= ~spawnedLane;\n var spawnedLaneIndex = 31 - clz32(spawnedLane);\n root.entangledLanes |= spawnedLane;\n root.entanglements[spawnedLaneIndex] =\n root.entanglements[spawnedLaneIndex] |\n 1073741824 |\n (entangledLanes & 261930);\n}\nfunction markRootEntangled(root, entangledLanes) {\n var rootEntangledLanes = (root.entangledLanes |= entangledLanes);\n for (root = root.entanglements; rootEntangledLanes; ) {\n var index$8 = 31 - clz32(rootEntangledLanes),\n lane = 1 << index$8;\n (lane & entangledLanes) | (root[index$8] & entangledLanes) &&\n (root[index$8] |= entangledLanes);\n rootEntangledLanes &= ~lane;\n }\n}\nfunction getBumpedLaneForHydration(root, renderLanes) {\n var renderLane = renderLanes & -renderLanes;\n renderLane =\n 0 !== (renderLane & 42) ? 1 : getBumpedLaneForHydrationByLane(renderLane);\n return 0 !== (renderLane & (root.suspendedLanes | renderLanes))\n ? 0\n : renderLane;\n}\nfunction getBumpedLaneForHydrationByLane(lane) {\n switch (lane) {\n case 2:\n lane = 1;\n break;\n case 8:\n lane = 4;\n break;\n case 32:\n lane = 16;\n break;\n case 256:\n case 512:\n case 1024:\n case 2048:\n case 4096:\n case 8192:\n case 16384:\n case 32768:\n case 65536:\n case 131072:\n case 262144:\n case 524288:\n case 1048576:\n case 2097152:\n case 4194304:\n case 8388608:\n case 16777216:\n case 33554432:\n lane = 128;\n break;\n case 268435456:\n lane = 134217728;\n break;\n default:\n lane = 0;\n }\n return lane;\n}\nfunction lanesToEventPriority(lanes) {\n lanes &= -lanes;\n return 2 < lanes\n ? 8 < lanes\n ? 0 !== (lanes & 134217727)\n ? 32\n : 268435456\n : 8\n : 2;\n}\nfunction resolveUpdatePriority() {\n var updatePriority = ReactDOMSharedInternals.p;\n if (0 !== updatePriority) return updatePriority;\n updatePriority = window.event;\n return void 0 === updatePriority ? 32 : getEventPriority(updatePriority.type);\n}\nfunction runWithPriority(priority, fn) {\n var previousPriority = ReactDOMSharedInternals.p;\n try {\n return (ReactDOMSharedInternals.p = priority), fn();\n } finally {\n ReactDOMSharedInternals.p = previousPriority;\n }\n}\nvar randomKey = Math.random().toString(36).slice(2),\n internalInstanceKey = \"__reactFiber$\" + randomKey,\n internalPropsKey = \"__reactProps$\" + randomKey,\n internalContainerInstanceKey = \"__reactContainer$\" + randomKey,\n internalEventHandlersKey = \"__reactEvents$\" + randomKey,\n internalEventHandlerListenersKey = \"__reactListeners$\" + randomKey,\n internalEventHandlesSetKey = \"__reactHandles$\" + randomKey,\n internalRootNodeResourcesKey = \"__reactResources$\" + randomKey,\n internalHoistableMarker = \"__reactMarker$\" + randomKey;\nfunction detachDeletedInstance(node) {\n delete node[internalInstanceKey];\n delete node[internalPropsKey];\n delete node[internalEventHandlersKey];\n delete node[internalEventHandlerListenersKey];\n delete node[internalEventHandlesSetKey];\n}\nfunction getClosestInstanceFromNode(targetNode) {\n var targetInst = targetNode[internalInstanceKey];\n if (targetInst) return targetInst;\n for (var parentNode = targetNode.parentNode; parentNode; ) {\n if (\n (targetInst =\n parentNode[internalContainerInstanceKey] ||\n parentNode[internalInstanceKey])\n ) {\n parentNode = targetInst.alternate;\n if (\n null !== targetInst.child ||\n (null !== parentNode && null !== parentNode.child)\n )\n for (\n targetNode = getParentHydrationBoundary(targetNode);\n null !== targetNode;\n\n ) {\n if ((parentNode = targetNode[internalInstanceKey])) return parentNode;\n targetNode = getParentHydrationBoundary(targetNode);\n }\n return targetInst;\n }\n targetNode = parentNode;\n parentNode = targetNode.parentNode;\n }\n return null;\n}\nfunction getInstanceFromNode(node) {\n if (\n (node = node[internalInstanceKey] || node[internalContainerInstanceKey])\n ) {\n var tag = node.tag;\n if (\n 5 === tag ||\n 6 === tag ||\n 13 === tag ||\n 31 === tag ||\n 26 === tag ||\n 27 === tag ||\n 3 === tag\n )\n return node;\n }\n return null;\n}\nfunction getNodeFromInstance(inst) {\n var tag = inst.tag;\n if (5 === tag || 26 === tag || 27 === tag || 6 === tag) return inst.stateNode;\n throw Error(formatProdErrorMessage(33));\n}\nfunction getResourcesFromRoot(root) {\n var resources = root[internalRootNodeResourcesKey];\n resources ||\n (resources = root[internalRootNodeResourcesKey] =\n { hoistableStyles: new Map(), hoistableScripts: new Map() });\n return resources;\n}\nfunction markNodeAsHoistable(node) {\n node[internalHoistableMarker] = !0;\n}\nvar allNativeEvents = new Set(),\n registrationNameDependencies = {};\nfunction registerTwoPhaseEvent(registrationName, dependencies) {\n registerDirectEvent(registrationName, dependencies);\n registerDirectEvent(registrationName + \"Capture\", dependencies);\n}\nfunction registerDirectEvent(registrationName, dependencies) {\n registrationNameDependencies[registrationName] = dependencies;\n for (\n registrationName = 0;\n registrationName < dependencies.length;\n registrationName++\n )\n allNativeEvents.add(dependencies[registrationName]);\n}\nvar VALID_ATTRIBUTE_NAME_REGEX = RegExp(\n \"^[:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD][:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040]*$\"\n ),\n illegalAttributeNameCache = {},\n validatedAttributeNameCache = {};\nfunction isAttributeNameSafe(attributeName) {\n if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))\n return !0;\n if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) return !1;\n if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))\n return (validatedAttributeNameCache[attributeName] = !0);\n illegalAttributeNameCache[attributeName] = !0;\n return !1;\n}\nfunction setValueForAttribute(node, name, value) {\n if (isAttributeNameSafe(name))\n if (null === value) node.removeAttribute(name);\n else {\n switch (typeof value) {\n case \"undefined\":\n case \"function\":\n case \"symbol\":\n node.removeAttribute(name);\n return;\n case \"boolean\":\n var prefix$10 = name.toLowerCase().slice(0, 5);\n if (\"data-\" !== prefix$10 && \"aria-\" !== prefix$10) {\n node.removeAttribute(name);\n return;\n }\n }\n node.setAttribute(name, \"\" + value);\n }\n}\nfunction setValueForKnownAttribute(node, name, value) {\n if (null === value) node.removeAttribute(name);\n else {\n switch (typeof value) {\n case \"undefined\":\n case \"function\":\n case \"symbol\":\n case \"boolean\":\n node.removeAttribute(name);\n return;\n }\n node.setAttribute(name, \"\" + value);\n }\n}\nfunction setValueForNamespacedAttribute(node, namespace, name, value) {\n if (null === value) node.removeAttribute(name);\n else {\n switch (typeof value) {\n case \"undefined\":\n case \"function\":\n case \"symbol\":\n case \"boolean\":\n node.removeAttribute(name);\n return;\n }\n node.setAttributeNS(namespace, name, \"\" + value);\n }\n}\nfunction getToStringValue(value) {\n switch (typeof value) {\n case \"bigint\":\n case \"boolean\":\n case \"number\":\n case \"string\":\n case \"undefined\":\n return value;\n case \"object\":\n return value;\n default:\n return \"\";\n }\n}\nfunction isCheckable(elem) {\n var type = elem.type;\n return (\n (elem = elem.nodeName) &&\n \"input\" === elem.toLowerCase() &&\n (\"checkbox\" === type || \"radio\" === type)\n );\n}\nfunction trackValueOnNode(node, valueField, currentValue) {\n var descriptor = Object.getOwnPropertyDescriptor(\n node.constructor.prototype,\n valueField\n );\n if (\n !node.hasOwnProperty(valueField) &&\n \"undefined\" !== typeof descriptor &&\n \"function\" === typeof descriptor.get &&\n \"function\" === typeof descriptor.set\n ) {\n var get = descriptor.get,\n set = descriptor.set;\n Object.defineProperty(node, valueField, {\n configurable: !0,\n get: function () {\n return get.call(this);\n },\n set: function (value) {\n currentValue = \"\" + value;\n set.call(this, value);\n }\n });\n Object.defineProperty(node, valueField, {\n enumerable: descriptor.enumerable\n });\n return {\n getValue: function () {\n return currentValue;\n },\n setValue: function (value) {\n currentValue = \"\" + value;\n },\n stopTracking: function () {\n node._valueTracker = null;\n delete node[valueField];\n }\n };\n }\n}\nfunction track(node) {\n if (!node._valueTracker) {\n var valueField = isCheckable(node) ? \"checked\" : \"value\";\n node._valueTracker = trackValueOnNode(\n node,\n valueField,\n \"\" + node[valueField]\n );\n }\n}\nfunction updateValueIfChanged(node) {\n if (!node) return !1;\n var tracker = node._valueTracker;\n if (!tracker) return !0;\n var lastValue = tracker.getValue();\n var value = \"\";\n node &&\n (value = isCheckable(node)\n ? node.checked\n ? \"true\"\n : \"false\"\n : node.value);\n node = value;\n return node !== lastValue ? (tracker.setValue(node), !0) : !1;\n}\nfunction getActiveElement(doc) {\n doc = doc || (\"undefined\" !== typeof document ? document : void 0);\n if (\"undefined\" === typeof doc) return null;\n try {\n return doc.activeElement || doc.body;\n } catch (e) {\n return doc.body;\n }\n}\nvar escapeSelectorAttributeValueInsideDoubleQuotesRegex = /[\\n\"\\\\]/g;\nfunction escapeSelectorAttributeValueInsideDoubleQuotes(value) {\n return value.replace(\n escapeSelectorAttributeValueInsideDoubleQuotesRegex,\n function (ch) {\n return \"\\\\\" + ch.charCodeAt(0).toString(16) + \" \";\n }\n );\n}\nfunction updateInput(\n element,\n value,\n defaultValue,\n lastDefaultValue,\n checked,\n defaultChecked,\n type,\n name\n) {\n element.name = \"\";\n null != type &&\n \"function\" !== typeof type &&\n \"symbol\" !== typeof type &&\n \"boolean\" !== typeof type\n ? (element.type = type)\n : element.removeAttribute(\"type\");\n if (null != value)\n if (\"number\" === type) {\n if ((0 === value && \"\" === element.value) || element.value != value)\n element.value = \"\" + getToStringValue(value);\n } else\n element.value !== \"\" + getToStringValue(value) &&\n (element.value = \"\" + getToStringValue(value));\n else\n (\"submit\" !== type && \"reset\" !== type) || element.removeAttribute(\"value\");\n null != value\n ? setDefaultValue(element, type, getToStringValue(value))\n : null != defaultValue\n ? setDefaultValue(element, type, getToStringValue(defaultValue))\n : null != lastDefaultValue && element.removeAttribute(\"value\");\n null == checked &&\n null != defaultChecked &&\n (element.defaultChecked = !!defaultChecked);\n null != checked &&\n (element.checked =\n checked && \"function\" !== typeof checked && \"symbol\" !== typeof checked);\n null != name &&\n \"function\" !== typeof name &&\n \"symbol\" !== typeof name &&\n \"boolean\" !== typeof name\n ? (element.name = \"\" + getToStringValue(name))\n : element.removeAttribute(\"name\");\n}\nfunction initInput(\n element,\n value,\n defaultValue,\n checked,\n defaultChecked,\n type,\n name,\n isHydrating\n) {\n null != type &&\n \"function\" !== typeof type &&\n \"symbol\" !== typeof type &&\n \"boolean\" !== typeof type &&\n (element.type = type);\n if (null != value || null != defaultValue) {\n if (\n !(\n (\"submit\" !== type && \"reset\" !== type) ||\n (void 0 !== value && null !== value)\n )\n ) {\n track(element);\n return;\n }\n defaultValue =\n null != defaultValue ? \"\" + getToStringValue(defaultValue) : \"\";\n value = null != value ? \"\" + getToStringValue(value) : defaultValue;\n isHydrating || value === element.value || (element.value = value);\n element.defaultValue = value;\n }\n checked = null != checked ? checked : defaultChecked;\n checked =\n \"function\" !== typeof checked && \"symbol\" !== typeof checked && !!checked;\n element.checked = isHydrating ? element.checked : !!checked;\n element.defaultChecked = !!checked;\n null != name &&\n \"function\" !== typeof name &&\n \"symbol\" !== typeof name &&\n \"boolean\" !== typeof name &&\n (element.name = name);\n track(element);\n}\nfunction setDefaultValue(node, type, value) {\n (\"number\" === type && getActiveElement(node.ownerDocument) === node) ||\n node.defaultValue === \"\" + value ||\n (node.defaultValue = \"\" + value);\n}\nfunction updateOptions(node, multiple, propValue, setDefaultSelected) {\n node = node.options;\n if (multiple) {\n multiple = {};\n for (var i = 0; i < propValue.length; i++)\n multiple[\"$\" + propValue[i]] = !0;\n for (propValue = 0; propValue < node.length; propValue++)\n (i = multiple.hasOwnProperty(\"$\" + node[propValue].value)),\n node[propValue].selected !== i && (node[propValue].selected = i),\n i && setDefaultSelected && (node[propValue].defaultSelected = !0);\n } else {\n propValue = \"\" + getToStringValue(propValue);\n multiple = null;\n for (i = 0; i < node.length; i++) {\n if (node[i].value === propValue) {\n node[i].selected = !0;\n setDefaultSelected && (node[i].defaultSelected = !0);\n return;\n }\n null !== multiple || node[i].disabled || (multiple = node[i]);\n }\n null !== multiple && (multiple.selected = !0);\n }\n}\nfunction updateTextarea(element, value, defaultValue) {\n if (\n null != value &&\n ((value = \"\" + getToStringValue(value)),\n value !== element.value && (element.value = value),\n null == defaultValue)\n ) {\n element.defaultValue !== value && (element.defaultValue = value);\n return;\n }\n element.defaultValue =\n null != defaultValue ? \"\" + getToStringValue(defaultValue) : \"\";\n}\nfunction initTextarea(element, value, defaultValue, children) {\n if (null == value) {\n if (null != children) {\n if (null != defaultValue) throw Error(formatProdErrorMessage(92));\n if (isArrayImpl(children)) {\n if (1 < children.length) throw Error(formatProdErrorMessage(93));\n children = children[0];\n }\n defaultValue = children;\n }\n null == defaultValue && (defaultValue = \"\");\n value = defaultValue;\n }\n defaultValue = getToStringValue(value);\n element.defaultValue = defaultValue;\n children = element.textContent;\n children === defaultValue &&\n \"\" !== children &&\n null !== children &&\n (element.value = children);\n track(element);\n}\nfunction setTextContent(node, text) {\n if (text) {\n var firstChild = node.firstChild;\n if (\n firstChild &&\n firstChild === node.lastChild &&\n 3 === firstChild.nodeType\n ) {\n firstChild.nodeValue = text;\n return;\n }\n }\n node.textContent = text;\n}\nvar unitlessNumbers = new Set(\n \"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\n \" \"\n )\n);\nfunction setValueForStyle(style, styleName, value) {\n var isCustomProperty = 0 === styleName.indexOf(\"--\");\n null == value || \"boolean\" === typeof value || \"\" === value\n ? isCustomProperty\n ? style.setProperty(styleName, \"\")\n : \"float\" === styleName\n ? (style.cssFloat = \"\")\n : (style[styleName] = \"\")\n : isCustomProperty\n ? style.setProperty(styleName, value)\n : \"number\" !== typeof value ||\n 0 === value ||\n unitlessNumbers.has(styleName)\n ? \"float\" === styleName\n ? (style.cssFloat = value)\n : (style[styleName] = (\"\" + value).trim())\n : (style[styleName] = value + \"px\");\n}\nfunction setValueForStyles(node, styles, prevStyles) {\n if (null != styles && \"object\" !== typeof styles)\n throw Error(formatProdErrorMessage(62));\n node = node.style;\n if (null != prevStyles) {\n for (var styleName in prevStyles)\n !prevStyles.hasOwnProperty(styleName) ||\n (null != styles && styles.hasOwnProperty(styleName)) ||\n (0 === styleName.indexOf(\"--\")\n ? node.setProperty(styleName, \"\")\n : \"float\" === styleName\n ? (node.cssFloat = \"\")\n : (node[styleName] = \"\"));\n for (var styleName$16 in styles)\n (styleName = styles[styleName$16]),\n styles.hasOwnProperty(styleName$16) &&\n prevStyles[styleName$16] !== styleName &&\n setValueForStyle(node, styleName$16, styleName);\n } else\n for (var styleName$17 in styles)\n styles.hasOwnProperty(styleName$17) &&\n setValueForStyle(node, styleName$17, styles[styleName$17]);\n}\nfunction isCustomElement(tagName) {\n if (-1 === tagName.indexOf(\"-\")) return !1;\n switch (tagName) {\n case \"annotation-xml\":\n case \"color-profile\":\n case \"font-face\":\n case \"font-face-src\":\n case \"font-face-uri\":\n case \"font-face-format\":\n case \"font-face-name\":\n case \"missing-glyph\":\n return !1;\n default:\n return !0;\n }\n}\nvar aliases = new Map([\n [\"acceptCharset\", \"accept-charset\"],\n [\"htmlFor\", \"for\"],\n [\"httpEquiv\", \"http-equiv\"],\n [\"crossOrigin\", \"crossorigin\"],\n [\"accentHeight\", \"accent-height\"],\n [\"alignmentBaseline\", \"alignment-baseline\"],\n [\"arabicForm\", \"arabic-form\"],\n [\"baselineShift\", \"baseline-shift\"],\n [\"capHeight\", \"cap-height\"],\n [\"clipPath\", \"clip-path\"],\n [\"clipRule\", \"clip-rule\"],\n [\"colorInterpolation\", \"color-interpolation\"],\n [\"colorInterpolationFilters\", \"color-interpolation-filters\"],\n [\"colorProfile\", \"color-profile\"],\n [\"colorRendering\", \"color-rendering\"],\n [\"dominantBaseline\", \"dominant-baseline\"],\n [\"enableBackground\", \"enable-background\"],\n [\"fillOpacity\", \"fill-opacity\"],\n [\"fillRule\", \"fill-rule\"],\n [\"floodColor\", \"flood-color\"],\n [\"floodOpacity\", \"flood-opacity\"],\n [\"fontFamily\", \"font-family\"],\n [\"fontSize\", \"font-size\"],\n [\"fontSizeAdjust\", \"font-size-adjust\"],\n [\"fontStretch\", \"font-stretch\"],\n [\"fontStyle\", \"font-style\"],\n [\"fontVariant\", \"font-variant\"],\n [\"fontWeight\", \"font-weight\"],\n [\"glyphName\", \"glyph-name\"],\n [\"glyphOrientationHorizontal\", \"glyph-orientation-horizontal\"],\n [\"glyphOrientationVertical\", \"glyph-orientation-vertical\"],\n [\"horizAdvX\", \"horiz-adv-x\"],\n [\"horizOriginX\", \"horiz-origin-x\"],\n [\"imageRendering\", \"image-rendering\"],\n [\"letterSpacing\", \"letter-spacing\"],\n [\"lightingColor\", \"lighting-color\"],\n [\"markerEnd\", \"marker-end\"],\n [\"markerMid\", \"marker-mid\"],\n [\"markerStart\", \"marker-start\"],\n [\"overlinePosition\", \"overline-position\"],\n [\"overlineThickness\", \"overline-thickness\"],\n [\"paintOrder\", \"paint-order\"],\n [\"panose-1\", \"panose-1\"],\n [\"pointerEvents\", \"pointer-events\"],\n [\"renderingIntent\", \"rendering-intent\"],\n [\"shapeRendering\", \"shape-rendering\"],\n [\"stopColor\", \"stop-color\"],\n [\"stopOpacity\", \"stop-opacity\"],\n [\"strikethroughPosition\", \"strikethrough-position\"],\n [\"strikethroughThickness\", \"strikethrough-thickness\"],\n [\"strokeDasharray\", \"stroke-dasharray\"],\n [\"strokeDashoffset\", \"stroke-dashoffset\"],\n [\"strokeLinecap\", \"stroke-linecap\"],\n [\"strokeLinejoin\", \"stroke-linejoin\"],\n [\"strokeMiterlimit\", \"stroke-miterlimit\"],\n [\"strokeOpacity\", \"stroke-opacity\"],\n [\"strokeWidth\", \"stroke-width\"],\n [\"textAnchor\", \"text-anchor\"],\n [\"textDecoration\", \"text-decoration\"],\n [\"textRendering\", \"text-rendering\"],\n [\"transformOrigin\", \"transform-origin\"],\n [\"underlinePosition\", \"underline-position\"],\n [\"underlineThickness\", \"underline-thickness\"],\n [\"unicodeBidi\", \"unicode-bidi\"],\n [\"unicodeRange\", \"unicode-range\"],\n [\"unitsPerEm\", \"units-per-em\"],\n [\"vAlphabetic\", \"v-alphabetic\"],\n [\"vHanging\", \"v-hanging\"],\n [\"vIdeographic\", \"v-ideographic\"],\n [\"vMathematical\", \"v-mathematical\"],\n [\"vectorEffect\", \"vector-effect\"],\n [\"vertAdvY\", \"vert-adv-y\"],\n [\"vertOriginX\", \"vert-origin-x\"],\n [\"vertOriginY\", \"vert-origin-y\"],\n [\"wordSpacing\", \"word-spacing\"],\n [\"writingMode\", \"writing-mode\"],\n [\"xmlnsXlink\", \"xmlns:xlink\"],\n [\"xHeight\", \"x-height\"]\n ]),\n isJavaScriptProtocol =\n /^[\\u0000-\\u001F ]*j[\\r\\n\\t]*a[\\r\\n\\t]*v[\\r\\n\\t]*a[\\r\\n\\t]*s[\\r\\n\\t]*c[\\r\\n\\t]*r[\\r\\n\\t]*i[\\r\\n\\t]*p[\\r\\n\\t]*t[\\r\\n\\t]*:/i;\nfunction sanitizeURL(url) {\n return isJavaScriptProtocol.test(\"\" + url)\n ? \"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')\"\n : url;\n}\nfunction noop$1() {}\nvar currentReplayingEvent = null;\nfunction getEventTarget(nativeEvent) {\n nativeEvent = nativeEvent.target || nativeEvent.srcElement || window;\n nativeEvent.correspondingUseElement &&\n (nativeEvent = nativeEvent.correspondingUseElement);\n return 3 === nativeEvent.nodeType ? nativeEvent.parentNode : nativeEvent;\n}\nvar restoreTarget = null,\n restoreQueue = null;\nfunction restoreStateOfTarget(target) {\n var internalInstance = getInstanceFromNode(target);\n if (internalInstance && (target = internalInstance.stateNode)) {\n var props = target[internalPropsKey] || null;\n a: switch (((target = internalInstance.stateNode), internalInstance.type)) {\n case \"input\":\n updateInput(\n target,\n props.value,\n props.defaultValue,\n props.defaultValue,\n props.checked,\n props.defaultChecked,\n props.type,\n props.name\n );\n internalInstance = props.name;\n if (\"radio\" === props.type && null != internalInstance) {\n for (props = target; props.parentNode; ) props = props.parentNode;\n props = props.querySelectorAll(\n 'input[name=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(\n \"\" + internalInstance\n ) +\n '\"][type=\"radio\"]'\n );\n for (\n internalInstance = 0;\n internalInstance < props.length;\n internalInstance++\n ) {\n var otherNode = props[internalInstance];\n if (otherNode !== target && otherNode.form === target.form) {\n var otherProps = otherNode[internalPropsKey] || null;\n if (!otherProps) throw Error(formatProdErrorMessage(90));\n updateInput(\n otherNode,\n otherProps.value,\n otherProps.defaultValue,\n otherProps.defaultValue,\n otherProps.checked,\n otherProps.defaultChecked,\n otherProps.type,\n otherProps.name\n );\n }\n }\n for (\n internalInstance = 0;\n internalInstance < props.length;\n internalInstance++\n )\n (otherNode = props[internalInstance]),\n otherNode.form === target.form && updateValueIfChanged(otherNode);\n }\n break a;\n case \"textarea\":\n updateTextarea(target, props.value, props.defaultValue);\n break a;\n case \"select\":\n (internalInstance = props.value),\n null != internalInstance &&\n updateOptions(target, !!props.multiple, internalInstance, !1);\n }\n }\n}\nvar isInsideEventHandler = !1;\nfunction batchedUpdates$1(fn, a, b) {\n if (isInsideEventHandler) return fn(a, b);\n isInsideEventHandler = !0;\n try {\n var JSCompiler_inline_result = fn(a);\n return JSCompiler_inline_result;\n } finally {\n if (\n ((isInsideEventHandler = !1),\n null !== restoreTarget || null !== restoreQueue)\n )\n if (\n (flushSyncWork$1(),\n restoreTarget &&\n ((a = restoreTarget),\n (fn = restoreQueue),\n (restoreQueue = restoreTarget = null),\n restoreStateOfTarget(a),\n fn))\n )\n for (a = 0; a < fn.length; a++) restoreStateOfTarget(fn[a]);\n }\n}\nfunction getListener(inst, registrationName) {\n var stateNode = inst.stateNode;\n if (null === stateNode) return null;\n var props = stateNode[internalPropsKey] || null;\n if (null === props) return null;\n stateNode = props[registrationName];\n a: switch (registrationName) {\n case \"onClick\":\n case \"onClickCapture\":\n case \"onDoubleClick\":\n case \"onDoubleClickCapture\":\n case \"onMouseDown\":\n case \"onMouseDownCapture\":\n case \"onMouseMove\":\n case \"onMouseMoveCapture\":\n case \"onMouseUp\":\n case \"onMouseUpCapture\":\n case \"onMouseEnter\":\n (props = !props.disabled) ||\n ((inst = inst.type),\n (props = !(\n \"button\" === inst ||\n \"input\" === inst ||\n \"select\" === inst ||\n \"textarea\" === inst\n )));\n inst = !props;\n break a;\n default:\n inst = !1;\n }\n if (inst) return null;\n if (stateNode && \"function\" !== typeof stateNode)\n throw Error(\n formatProdErrorMessage(231, registrationName, typeof stateNode)\n );\n return stateNode;\n}\nvar canUseDOM = !(\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ),\n passiveBrowserEventsSupported = !1;\nif (canUseDOM)\n try {\n var options = {};\n Object.defineProperty(options, \"passive\", {\n get: function () {\n passiveBrowserEventsSupported = !0;\n }\n });\n window.addEventListener(\"test\", options, options);\n window.removeEventListener(\"test\", options, options);\n } catch (e) {\n passiveBrowserEventsSupported = !1;\n }\nvar root = null,\n startText = null,\n fallbackText = null;\nfunction getData() {\n if (fallbackText) return fallbackText;\n var start,\n startValue = startText,\n startLength = startValue.length,\n end,\n endValue = \"value\" in root ? root.value : root.textContent,\n endLength = endValue.length;\n for (\n start = 0;\n start < startLength && startValue[start] === endValue[start];\n start++\n );\n var minEnd = startLength - start;\n for (\n end = 1;\n end <= minEnd &&\n startValue[startLength - end] === endValue[endLength - end];\n end++\n );\n return (fallbackText = endValue.slice(start, 1 < end ? 1 - end : void 0));\n}\nfunction getEventCharCode(nativeEvent) {\n var keyCode = nativeEvent.keyCode;\n \"charCode\" in nativeEvent\n ? ((nativeEvent = nativeEvent.charCode),\n 0 === nativeEvent && 13 === keyCode && (nativeEvent = 13))\n : (nativeEvent = keyCode);\n 10 === nativeEvent && (nativeEvent = 13);\n return 32 <= nativeEvent || 13 === nativeEvent ? nativeEvent : 0;\n}\nfunction functionThatReturnsTrue() {\n return !0;\n}\nfunction functionThatReturnsFalse() {\n return !1;\n}\nfunction createSyntheticEvent(Interface) {\n function SyntheticBaseEvent(\n reactName,\n reactEventType,\n targetInst,\n nativeEvent,\n nativeEventTarget\n ) {\n this._reactName = reactName;\n this._targetInst = targetInst;\n this.type = reactEventType;\n this.nativeEvent = nativeEvent;\n this.target = nativeEventTarget;\n this.currentTarget = null;\n for (var propName in Interface)\n Interface.hasOwnProperty(propName) &&\n ((reactName = Interface[propName]),\n (this[propName] = reactName\n ? reactName(nativeEvent)\n : nativeEvent[propName]));\n this.isDefaultPrevented = (\n null != nativeEvent.defaultPrevented\n ? nativeEvent.defaultPrevented\n : !1 === nativeEvent.returnValue\n )\n ? functionThatReturnsTrue\n : functionThatReturnsFalse;\n this.isPropagationStopped = functionThatReturnsFalse;\n return this;\n }\n assign(SyntheticBaseEvent.prototype, {\n preventDefault: function () {\n this.defaultPrevented = !0;\n var event = this.nativeEvent;\n event &&\n (event.preventDefault\n ? event.preventDefault()\n : \"unknown\" !== typeof event.returnValue && (event.returnValue = !1),\n (this.isDefaultPrevented = functionThatReturnsTrue));\n },\n stopPropagation: function () {\n var event = this.nativeEvent;\n event &&\n (event.stopPropagation\n ? event.stopPropagation()\n : \"unknown\" !== typeof event.cancelBubble &&\n (event.cancelBubble = !0),\n (this.isPropagationStopped = functionThatReturnsTrue));\n },\n persist: function () {},\n isPersistent: functionThatReturnsTrue\n });\n return SyntheticBaseEvent;\n}\nvar EventInterface = {\n eventPhase: 0,\n bubbles: 0,\n cancelable: 0,\n timeStamp: function (event) {\n return event.timeStamp || Date.now();\n },\n defaultPrevented: 0,\n isTrusted: 0\n },\n SyntheticEvent = createSyntheticEvent(EventInterface),\n UIEventInterface = assign({}, EventInterface, { view: 0, detail: 0 }),\n SyntheticUIEvent = createSyntheticEvent(UIEventInterface),\n lastMovementX,\n lastMovementY,\n lastMouseEvent,\n MouseEventInterface = assign({}, UIEventInterface, {\n screenX: 0,\n screenY: 0,\n clientX: 0,\n clientY: 0,\n pageX: 0,\n pageY: 0,\n ctrlKey: 0,\n shiftKey: 0,\n altKey: 0,\n metaKey: 0,\n getModifierState: getEventModifierState,\n button: 0,\n buttons: 0,\n relatedTarget: function (event) {\n return void 0 === event.relatedTarget\n ? event.fromElement === event.srcElement\n ? event.toElement\n : event.fromElement\n : event.relatedTarget;\n },\n movementX: function (event) {\n if (\"movementX\" in event) return event.movementX;\n event !== lastMouseEvent &&\n (lastMouseEvent && \"mousemove\" === event.type\n ? ((lastMovementX = event.screenX - lastMouseEvent.screenX),\n (lastMovementY = event.screenY - lastMouseEvent.screenY))\n : (lastMovementY = lastMovementX = 0),\n (lastMouseEvent = event));\n return lastMovementX;\n },\n movementY: function (event) {\n return \"movementY\" in event ? event.movementY : lastMovementY;\n }\n }),\n SyntheticMouseEvent = createSyntheticEvent(MouseEventInterface),\n DragEventInterface = assign({}, MouseEventInterface, { dataTransfer: 0 }),\n SyntheticDragEvent = createSyntheticEvent(DragEventInterface),\n FocusEventInterface = assign({}, UIEventInterface, { relatedTarget: 0 }),\n SyntheticFocusEvent = createSyntheticEvent(FocusEventInterface),\n AnimationEventInterface = assign({}, EventInterface, {\n animationName: 0,\n elapsedTime: 0,\n pseudoElement: 0\n }),\n SyntheticAnimationEvent = createSyntheticEvent(AnimationEventInterface),\n ClipboardEventInterface = assign({}, EventInterface, {\n clipboardData: function (event) {\n return \"clipboardData\" in event\n ? event.clipboardData\n : window.clipboardData;\n }\n }),\n SyntheticClipboardEvent = createSyntheticEvent(ClipboardEventInterface),\n CompositionEventInterface = assign({}, EventInterface, { data: 0 }),\n SyntheticCompositionEvent = createSyntheticEvent(CompositionEventInterface),\n normalizeKey = {\n Esc: \"Escape\",\n Spacebar: \" \",\n Left: \"ArrowLeft\",\n Up: \"ArrowUp\",\n Right: \"ArrowRight\",\n Down: \"ArrowDown\",\n Del: \"Delete\",\n Win: \"OS\",\n Menu: \"ContextMenu\",\n Apps: \"ContextMenu\",\n Scroll: \"ScrollLock\",\n MozPrintableKey: \"Unidentified\"\n },\n translateToKey = {\n 8: \"Backspace\",\n 9: \"Tab\",\n 12: \"Clear\",\n 13: \"Enter\",\n 16: \"Shift\",\n 17: \"Control\",\n 18: \"Alt\",\n 19: \"Pause\",\n 20: \"CapsLock\",\n 27: \"Escape\",\n 32: \" \",\n 33: \"PageUp\",\n 34: \"PageDown\",\n 35: \"End\",\n 36: \"Home\",\n 37: \"ArrowLeft\",\n 38: \"ArrowUp\",\n 39: \"ArrowRight\",\n 40: \"ArrowDown\",\n 45: \"Insert\",\n 46: \"Delete\",\n 112: \"F1\",\n 113: \"F2\",\n 114: \"F3\",\n 115: \"F4\",\n 116: \"F5\",\n 117: \"F6\",\n 118: \"F7\",\n 119: \"F8\",\n 120: \"F9\",\n 121: \"F10\",\n 122: \"F11\",\n 123: \"F12\",\n 144: \"NumLock\",\n 145: \"ScrollLock\",\n 224: \"Meta\"\n },\n modifierKeyToProp = {\n Alt: \"altKey\",\n Control: \"ctrlKey\",\n Meta: \"metaKey\",\n Shift: \"shiftKey\"\n };\nfunction modifierStateGetter(keyArg) {\n var nativeEvent = this.nativeEvent;\n return nativeEvent.getModifierState\n ? nativeEvent.getModifierState(keyArg)\n : (keyArg = modifierKeyToProp[keyArg])\n ? !!nativeEvent[keyArg]\n : !1;\n}\nfunction getEventModifierState() {\n return modifierStateGetter;\n}\nvar KeyboardEventInterface = assign({}, UIEventInterface, {\n key: function (nativeEvent) {\n if (nativeEvent.key) {\n var key = normalizeKey[nativeEvent.key] || nativeEvent.key;\n if (\"Unidentified\" !== key) return key;\n }\n return \"keypress\" === nativeEvent.type\n ? ((nativeEvent = getEventCharCode(nativeEvent)),\n 13 === nativeEvent ? \"Enter\" : String.fromCharCode(nativeEvent))\n : \"keydown\" === nativeEvent.type || \"keyup\" === nativeEvent.type\n ? translateToKey[nativeEvent.keyCode] || \"Unidentified\"\n : \"\";\n },\n code: 0,\n location: 0,\n ctrlKey: 0,\n shiftKey: 0,\n altKey: 0,\n metaKey: 0,\n repeat: 0,\n locale: 0,\n getModifierState: getEventModifierState,\n charCode: function (event) {\n return \"keypress\" === event.type ? getEventCharCode(event) : 0;\n },\n keyCode: function (event) {\n return \"keydown\" === event.type || \"keyup\" === event.type\n ? event.keyCode\n : 0;\n },\n which: function (event) {\n return \"keypress\" === event.type\n ? getEventCharCode(event)\n : \"keydown\" === event.type || \"keyup\" === event.type\n ? event.keyCode\n : 0;\n }\n }),\n SyntheticKeyboardEvent = createSyntheticEvent(KeyboardEventInterface),\n PointerEventInterface = assign({}, MouseEventInterface, {\n pointerId: 0,\n width: 0,\n height: 0,\n pressure: 0,\n tangentialPressure: 0,\n tiltX: 0,\n tiltY: 0,\n twist: 0,\n pointerType: 0,\n isPrimary: 0\n }),\n SyntheticPointerEvent = createSyntheticEvent(PointerEventInterface),\n TouchEventInterface = assign({}, UIEventInterface, {\n touches: 0,\n targetTouches: 0,\n changedTouches: 0,\n altKey: 0,\n metaKey: 0,\n ctrlKey: 0,\n shiftKey: 0,\n getModifierState: getEventModifierState\n }),\n SyntheticTouchEvent = createSyntheticEvent(TouchEventInterface),\n TransitionEventInterface = assign({}, EventInterface, {\n propertyName: 0,\n elapsedTime: 0,\n pseudoElement: 0\n }),\n SyntheticTransitionEvent = createSyntheticEvent(TransitionEventInterface),\n WheelEventInterface = assign({}, MouseEventInterface, {\n deltaX: function (event) {\n return \"deltaX\" in event\n ? event.deltaX\n : \"wheelDeltaX\" in event\n ? -event.wheelDeltaX\n : 0;\n },\n deltaY: function (event) {\n return \"deltaY\" in event\n ? event.deltaY\n : \"wheelDeltaY\" in event\n ? -event.wheelDeltaY\n : \"wheelDelta\" in event\n ? -event.wheelDelta\n : 0;\n },\n deltaZ: 0,\n deltaMode: 0\n }),\n SyntheticWheelEvent = createSyntheticEvent(WheelEventInterface),\n ToggleEventInterface = assign({}, EventInterface, {\n newState: 0,\n oldState: 0\n }),\n SyntheticToggleEvent = createSyntheticEvent(ToggleEventInterface),\n END_KEYCODES = [9, 13, 27, 32],\n canUseCompositionEvent = canUseDOM && \"CompositionEvent\" in window,\n documentMode = null;\ncanUseDOM &&\n \"documentMode\" in document &&\n (documentMode = document.documentMode);\nvar canUseTextInputEvent = canUseDOM && \"TextEvent\" in window && !documentMode,\n useFallbackCompositionData =\n canUseDOM &&\n (!canUseCompositionEvent ||\n (documentMode && 8 < documentMode && 11 >= documentMode)),\n SPACEBAR_CHAR = String.fromCharCode(32),\n hasSpaceKeypress = !1;\nfunction isFallbackCompositionEnd(domEventName, nativeEvent) {\n switch (domEventName) {\n case \"keyup\":\n return -1 !== END_KEYCODES.indexOf(nativeEvent.keyCode);\n case \"keydown\":\n return 229 !== nativeEvent.keyCode;\n case \"keypress\":\n case \"mousedown\":\n case \"focusout\":\n return !0;\n default:\n return !1;\n }\n}\nfunction getDataFromCustomEvent(nativeEvent) {\n nativeEvent = nativeEvent.detail;\n return \"object\" === typeof nativeEvent && \"data\" in nativeEvent\n ? nativeEvent.data\n : null;\n}\nvar isComposing = !1;\nfunction getNativeBeforeInputChars(domEventName, nativeEvent) {\n switch (domEventName) {\n case \"compositionend\":\n return getDataFromCustomEvent(nativeEvent);\n case \"keypress\":\n if (32 !== nativeEvent.which) return null;\n hasSpaceKeypress = !0;\n return SPACEBAR_CHAR;\n case \"textInput\":\n return (\n (domEventName = nativeEvent.data),\n domEventName === SPACEBAR_CHAR && hasSpaceKeypress ? null : domEventName\n );\n default:\n return null;\n }\n}\nfunction getFallbackBeforeInputChars(domEventName, nativeEvent) {\n if (isComposing)\n return \"compositionend\" === domEventName ||\n (!canUseCompositionEvent &&\n isFallbackCompositionEnd(domEventName, nativeEvent))\n ? ((domEventName = getData()),\n (fallbackText = startText = root = null),\n (isComposing = !1),\n domEventName)\n : null;\n switch (domEventName) {\n case \"paste\":\n return null;\n case \"keypress\":\n if (\n !(nativeEvent.ctrlKey || nativeEvent.altKey || nativeEvent.metaKey) ||\n (nativeEvent.ctrlKey && nativeEvent.altKey)\n ) {\n if (nativeEvent.char && 1 < nativeEvent.char.length)\n return nativeEvent.char;\n if (nativeEvent.which) return String.fromCharCode(nativeEvent.which);\n }\n return null;\n case \"compositionend\":\n return useFallbackCompositionData && \"ko\" !== nativeEvent.locale\n ? null\n : nativeEvent.data;\n default:\n return null;\n }\n}\nvar supportedInputTypes = {\n color: !0,\n date: !0,\n datetime: !0,\n \"datetime-local\": !0,\n email: !0,\n month: !0,\n number: !0,\n password: !0,\n range: !0,\n search: !0,\n tel: !0,\n text: !0,\n time: !0,\n url: !0,\n week: !0\n};\nfunction isTextInputElement(elem) {\n var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();\n return \"input\" === nodeName\n ? !!supportedInputTypes[elem.type]\n : \"textarea\" === nodeName\n ? !0\n : !1;\n}\nfunction createAndAccumulateChangeEvent(\n dispatchQueue,\n inst,\n nativeEvent,\n target\n) {\n restoreTarget\n ? restoreQueue\n ? restoreQueue.push(target)\n : (restoreQueue = [target])\n : (restoreTarget = target);\n inst = accumulateTwoPhaseListeners(inst, \"onChange\");\n 0 < inst.length &&\n ((nativeEvent = new SyntheticEvent(\n \"onChange\",\n \"change\",\n null,\n nativeEvent,\n target\n )),\n dispatchQueue.push({ event: nativeEvent, listeners: inst }));\n}\nvar activeElement$1 = null,\n activeElementInst$1 = null;\nfunction runEventInBatch(dispatchQueue) {\n processDispatchQueue(dispatchQueue, 0);\n}\nfunction getInstIfValueChanged(targetInst) {\n var targetNode = getNodeFromInstance(targetInst);\n if (updateValueIfChanged(targetNode)) return targetInst;\n}\nfunction getTargetInstForChangeEvent(domEventName, targetInst) {\n if (\"change\" === domEventName) return targetInst;\n}\nvar isInputEventSupported = !1;\nif (canUseDOM) {\n var JSCompiler_inline_result$jscomp$286;\n if (canUseDOM) {\n var isSupported$jscomp$inline_427 = \"oninput\" in document;\n if (!isSupported$jscomp$inline_427) {\n var element$jscomp$inline_428 = document.createElement(\"div\");\n element$jscomp$inline_428.setAttribute(\"oninput\", \"return;\");\n isSupported$jscomp$inline_427 =\n \"function\" === typeof element$jscomp$inline_428.oninput;\n }\n JSCompiler_inline_result$jscomp$286 = isSupported$jscomp$inline_427;\n } else JSCompiler_inline_result$jscomp$286 = !1;\n isInputEventSupported =\n JSCompiler_inline_result$jscomp$286 &&\n (!document.documentMode || 9 < document.documentMode);\n}\nfunction stopWatchingForValueChange() {\n activeElement$1 &&\n (activeElement$1.detachEvent(\"onpropertychange\", handlePropertyChange),\n (activeElementInst$1 = activeElement$1 = null));\n}\nfunction handlePropertyChange(nativeEvent) {\n if (\n \"value\" === nativeEvent.propertyName &&\n getInstIfValueChanged(activeElementInst$1)\n ) {\n var dispatchQueue = [];\n createAndAccumulateChangeEvent(\n dispatchQueue,\n activeElementInst$1,\n nativeEvent,\n getEventTarget(nativeEvent)\n );\n batchedUpdates$1(runEventInBatch, dispatchQueue);\n }\n}\nfunction handleEventsForInputEventPolyfill(domEventName, target, targetInst) {\n \"focusin\" === domEventName\n ? (stopWatchingForValueChange(),\n (activeElement$1 = target),\n (activeElementInst$1 = targetInst),\n activeElement$1.attachEvent(\"onpropertychange\", handlePropertyChange))\n : \"focusout\" === domEventName && stopWatchingForValueChange();\n}\nfunction getTargetInstForInputEventPolyfill(domEventName) {\n if (\n \"selectionchange\" === domEventName ||\n \"keyup\" === domEventName ||\n \"keydown\" === domEventName\n )\n return getInstIfValueChanged(activeElementInst$1);\n}\nfunction getTargetInstForClickEvent(domEventName, targetInst) {\n if (\"click\" === domEventName) return getInstIfValueChanged(targetInst);\n}\nfunction getTargetInstForInputOrChangeEvent(domEventName, targetInst) {\n if (\"input\" === domEventName || \"change\" === domEventName)\n return getInstIfValueChanged(targetInst);\n}\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is;\nfunction shallowEqual(objA, objB) {\n if (objectIs(objA, objB)) return !0;\n if (\n \"object\" !== typeof objA ||\n null === objA ||\n \"object\" !== typeof objB ||\n null === objB\n )\n return !1;\n var keysA = Object.keys(objA),\n keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) return !1;\n for (keysB = 0; keysB < keysA.length; keysB++) {\n var currentKey = keysA[keysB];\n if (\n !hasOwnProperty.call(objB, currentKey) ||\n !objectIs(objA[currentKey], objB[currentKey])\n )\n return !1;\n }\n return !0;\n}\nfunction getLeafNode(node) {\n for (; node && node.firstChild; ) node = node.firstChild;\n return node;\n}\nfunction getNodeForCharacterOffset(root, offset) {\n var node = getLeafNode(root);\n root = 0;\n for (var nodeEnd; node; ) {\n if (3 === node.nodeType) {\n nodeEnd = root + node.textContent.length;\n if (root <= offset && nodeEnd >= offset)\n return { node: node, offset: offset - root };\n root = nodeEnd;\n }\n a: {\n for (; node; ) {\n if (node.nextSibling) {\n node = node.nextSibling;\n break a;\n }\n node = node.parentNode;\n }\n node = void 0;\n }\n node = getLeafNode(node);\n }\n}\nfunction containsNode(outerNode, innerNode) {\n return outerNode && innerNode\n ? outerNode === innerNode\n ? !0\n : outerNode && 3 === outerNode.nodeType\n ? !1\n : innerNode && 3 === innerNode.nodeType\n ? containsNode(outerNode, innerNode.parentNode)\n : \"contains\" in outerNode\n ? outerNode.contains(innerNode)\n : outerNode.compareDocumentPosition\n ? !!(outerNode.compareDocumentPosition(innerNode) & 16)\n : !1\n : !1;\n}\nfunction getActiveElementDeep(containerInfo) {\n containerInfo =\n null != containerInfo &&\n null != containerInfo.ownerDocument &&\n null != containerInfo.ownerDocument.defaultView\n ? containerInfo.ownerDocument.defaultView\n : window;\n for (\n var element = getActiveElement(containerInfo.document);\n element instanceof containerInfo.HTMLIFrameElement;\n\n ) {\n try {\n var JSCompiler_inline_result =\n \"string\" === typeof element.contentWindow.location.href;\n } catch (err) {\n JSCompiler_inline_result = !1;\n }\n if (JSCompiler_inline_result) containerInfo = element.contentWindow;\n else break;\n element = getActiveElement(containerInfo.document);\n }\n return element;\n}\nfunction hasSelectionCapabilities(elem) {\n var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();\n return (\n nodeName &&\n ((\"input\" === nodeName &&\n (\"text\" === elem.type ||\n \"search\" === elem.type ||\n \"tel\" === elem.type ||\n \"url\" === elem.type ||\n \"password\" === elem.type)) ||\n \"textarea\" === nodeName ||\n \"true\" === elem.contentEditable)\n );\n}\nvar skipSelectionChangeEvent =\n canUseDOM && \"documentMode\" in document && 11 >= document.documentMode,\n activeElement = null,\n activeElementInst = null,\n lastSelection = null,\n mouseDown = !1;\nfunction constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget) {\n var doc =\n nativeEventTarget.window === nativeEventTarget\n ? nativeEventTarget.document\n : 9 === nativeEventTarget.nodeType\n ? nativeEventTarget\n : nativeEventTarget.ownerDocument;\n mouseDown ||\n null == activeElement ||\n activeElement !== getActiveElement(doc) ||\n ((doc = activeElement),\n \"selectionStart\" in doc && hasSelectionCapabilities(doc)\n ? (doc = { start: doc.selectionStart, end: doc.selectionEnd })\n : ((doc = (\n (doc.ownerDocument && doc.ownerDocument.defaultView) ||\n window\n ).getSelection()),\n (doc = {\n anchorNode: doc.anchorNode,\n anchorOffset: doc.anchorOffset,\n focusNode: doc.focusNode,\n focusOffset: doc.focusOffset\n })),\n (lastSelection && shallowEqual(lastSelection, doc)) ||\n ((lastSelection = doc),\n (doc = accumulateTwoPhaseListeners(activeElementInst, \"onSelect\")),\n 0 < doc.length &&\n ((nativeEvent = new SyntheticEvent(\n \"onSelect\",\n \"select\",\n null,\n nativeEvent,\n nativeEventTarget\n )),\n dispatchQueue.push({ event: nativeEvent, listeners: doc }),\n (nativeEvent.target = activeElement))));\n}\nfunction makePrefixMap(styleProp, eventName) {\n var prefixes = {};\n prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();\n prefixes[\"Webkit\" + styleProp] = \"webkit\" + eventName;\n prefixes[\"Moz\" + styleProp] = \"moz\" + eventName;\n return prefixes;\n}\nvar vendorPrefixes = {\n animationend: makePrefixMap(\"Animation\", \"AnimationEnd\"),\n animationiteration: makePrefixMap(\"Animation\", \"AnimationIteration\"),\n animationstart: makePrefixMap(\"Animation\", \"AnimationStart\"),\n transitionrun: makePrefixMap(\"Transition\", \"TransitionRun\"),\n transitionstart: makePrefixMap(\"Transition\", \"TransitionStart\"),\n transitioncancel: makePrefixMap(\"Transition\", \"TransitionCancel\"),\n transitionend: makePrefixMap(\"Transition\", \"TransitionEnd\")\n },\n prefixedEventNames = {},\n style = {};\ncanUseDOM &&\n ((style = document.createElement(\"div\").style),\n \"AnimationEvent\" in window ||\n (delete vendorPrefixes.animationend.animation,\n delete vendorPrefixes.animationiteration.animation,\n delete vendorPrefixes.animationstart.animation),\n \"TransitionEvent\" in window ||\n delete vendorPrefixes.transitionend.transition);\nfunction getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) return prefixedEventNames[eventName];\n if (!vendorPrefixes[eventName]) return eventName;\n var prefixMap = vendorPrefixes[eventName],\n styleProp;\n for (styleProp in prefixMap)\n if (prefixMap.hasOwnProperty(styleProp) && styleProp in style)\n return (prefixedEventNames[eventName] = prefixMap[styleProp]);\n return eventName;\n}\nvar ANIMATION_END = getVendorPrefixedEventName(\"animationend\"),\n ANIMATION_ITERATION = getVendorPrefixedEventName(\"animationiteration\"),\n ANIMATION_START = getVendorPrefixedEventName(\"animationstart\"),\n TRANSITION_RUN = getVendorPrefixedEventName(\"transitionrun\"),\n TRANSITION_START = getVendorPrefixedEventName(\"transitionstart\"),\n TRANSITION_CANCEL = getVendorPrefixedEventName(\"transitioncancel\"),\n TRANSITION_END = getVendorPrefixedEventName(\"transitionend\"),\n topLevelEventsToReactNames = new Map(),\n simpleEventPluginEvents =\n \"abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel\".split(\n \" \"\n );\nsimpleEventPluginEvents.push(\"scrollEnd\");\nfunction registerSimpleEvent(domEventName, reactName) {\n topLevelEventsToReactNames.set(domEventName, reactName);\n registerTwoPhaseEvent(reactName, [domEventName]);\n}\nvar reportGlobalError =\n \"function\" === typeof reportError\n ? reportError\n : function (error) {\n if (\n \"object\" === typeof window &&\n \"function\" === typeof window.ErrorEvent\n ) {\n var event = new window.ErrorEvent(\"error\", {\n bubbles: !0,\n cancelable: !0,\n message:\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.message\n ? String(error.message)\n : String(error),\n error: error\n });\n if (!window.dispatchEvent(event)) return;\n } else if (\n \"object\" === typeof process &&\n \"function\" === typeof process.emit\n ) {\n process.emit(\"uncaughtException\", error);\n return;\n }\n console.error(error);\n },\n concurrentQueues = [],\n concurrentQueuesIndex = 0,\n concurrentlyUpdatedLanes = 0;\nfunction finishQueueingConcurrentUpdates() {\n for (\n var endIndex = concurrentQueuesIndex,\n i = (concurrentlyUpdatedLanes = concurrentQueuesIndex = 0);\n i < endIndex;\n\n ) {\n var fiber = concurrentQueues[i];\n concurrentQueues[i++] = null;\n var queue = concurrentQueues[i];\n concurrentQueues[i++] = null;\n var update = concurrentQueues[i];\n concurrentQueues[i++] = null;\n var lane = concurrentQueues[i];\n concurrentQueues[i++] = null;\n if (null !== queue && null !== update) {\n var pending = queue.pending;\n null === pending\n ? (update.next = update)\n : ((update.next = pending.next), (pending.next = update));\n queue.pending = update;\n }\n 0 !== lane && markUpdateLaneFromFiberToRoot(fiber, update, lane);\n }\n}\nfunction enqueueUpdate$1(fiber, queue, update, lane) {\n concurrentQueues[concurrentQueuesIndex++] = fiber;\n concurrentQueues[concurrentQueuesIndex++] = queue;\n concurrentQueues[concurrentQueuesIndex++] = update;\n concurrentQueues[concurrentQueuesIndex++] = lane;\n concurrentlyUpdatedLanes |= lane;\n fiber.lanes |= lane;\n fiber = fiber.alternate;\n null !== fiber && (fiber.lanes |= lane);\n}\nfunction enqueueConcurrentHookUpdate(fiber, queue, update, lane) {\n enqueueUpdate$1(fiber, queue, update, lane);\n return getRootForUpdatedFiber(fiber);\n}\nfunction enqueueConcurrentRenderForLane(fiber, lane) {\n enqueueUpdate$1(fiber, null, null, lane);\n return getRootForUpdatedFiber(fiber);\n}\nfunction markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) {\n sourceFiber.lanes |= lane;\n var alternate = sourceFiber.alternate;\n null !== alternate && (alternate.lanes |= lane);\n for (var isHidden = !1, parent = sourceFiber.return; null !== parent; )\n (parent.childLanes |= lane),\n (alternate = parent.alternate),\n null !== alternate && (alternate.childLanes |= lane),\n 22 === parent.tag &&\n ((sourceFiber = parent.stateNode),\n null === sourceFiber || sourceFiber._visibility & 1 || (isHidden = !0)),\n (sourceFiber = parent),\n (parent = parent.return);\n return 3 === sourceFiber.tag\n ? ((parent = sourceFiber.stateNode),\n isHidden &&\n null !== update &&\n ((isHidden = 31 - clz32(lane)),\n (sourceFiber = parent.hiddenUpdates),\n (alternate = sourceFiber[isHidden]),\n null === alternate\n ? (sourceFiber[isHidden] = [update])\n : alternate.push(update),\n (update.lane = lane | 536870912)),\n parent)\n : null;\n}\nfunction getRootForUpdatedFiber(sourceFiber) {\n if (50 < nestedUpdateCount)\n throw (\n ((nestedUpdateCount = 0),\n (rootWithNestedUpdates = null),\n Error(formatProdErrorMessage(185)))\n );\n for (var parent = sourceFiber.return; null !== parent; )\n (sourceFiber = parent), (parent = sourceFiber.return);\n return 3 === sourceFiber.tag ? sourceFiber.stateNode : null;\n}\nvar emptyContextObject = {};\nfunction FiberNode(tag, pendingProps, key, mode) {\n this.tag = tag;\n this.key = key;\n this.sibling =\n this.child =\n this.return =\n this.stateNode =\n this.type =\n this.elementType =\n null;\n this.index = 0;\n this.refCleanup = this.ref = null;\n this.pendingProps = pendingProps;\n this.dependencies =\n this.memoizedState =\n this.updateQueue =\n this.memoizedProps =\n null;\n this.mode = mode;\n this.subtreeFlags = this.flags = 0;\n this.deletions = null;\n this.childLanes = this.lanes = 0;\n this.alternate = null;\n}\nfunction createFiberImplClass(tag, pendingProps, key, mode) {\n return new FiberNode(tag, pendingProps, key, mode);\n}\nfunction shouldConstruct(Component) {\n Component = Component.prototype;\n return !(!Component || !Component.isReactComponent);\n}\nfunction createWorkInProgress(current, pendingProps) {\n var workInProgress = current.alternate;\n null === workInProgress\n ? ((workInProgress = createFiberImplClass(\n current.tag,\n pendingProps,\n current.key,\n current.mode\n )),\n (workInProgress.elementType = current.elementType),\n (workInProgress.type = current.type),\n (workInProgress.stateNode = current.stateNode),\n (workInProgress.alternate = current),\n (current.alternate = workInProgress))\n : ((workInProgress.pendingProps = pendingProps),\n (workInProgress.type = current.type),\n (workInProgress.flags = 0),\n (workInProgress.subtreeFlags = 0),\n (workInProgress.deletions = null));\n workInProgress.flags = current.flags & 65011712;\n workInProgress.childLanes = current.childLanes;\n workInProgress.lanes = current.lanes;\n workInProgress.child = current.child;\n workInProgress.memoizedProps = current.memoizedProps;\n workInProgress.memoizedState = current.memoizedState;\n workInProgress.updateQueue = current.updateQueue;\n pendingProps = current.dependencies;\n workInProgress.dependencies =\n null === pendingProps\n ? null\n : { lanes: pendingProps.lanes, firstContext: pendingProps.firstContext };\n workInProgress.sibling = current.sibling;\n workInProgress.index = current.index;\n workInProgress.ref = current.ref;\n workInProgress.refCleanup = current.refCleanup;\n return workInProgress;\n}\nfunction resetWorkInProgress(workInProgress, renderLanes) {\n workInProgress.flags &= 65011714;\n var current = workInProgress.alternate;\n null === current\n ? ((workInProgress.childLanes = 0),\n (workInProgress.lanes = renderLanes),\n (workInProgress.child = null),\n (workInProgress.subtreeFlags = 0),\n (workInProgress.memoizedProps = null),\n (workInProgress.memoizedState = null),\n (workInProgress.updateQueue = null),\n (workInProgress.dependencies = null),\n (workInProgress.stateNode = null))\n : ((workInProgress.childLanes = current.childLanes),\n (workInProgress.lanes = current.lanes),\n (workInProgress.child = current.child),\n (workInProgress.subtreeFlags = 0),\n (workInProgress.deletions = null),\n (workInProgress.memoizedProps = current.memoizedProps),\n (workInProgress.memoizedState = current.memoizedState),\n (workInProgress.updateQueue = current.updateQueue),\n (workInProgress.type = current.type),\n (renderLanes = current.dependencies),\n (workInProgress.dependencies =\n null === renderLanes\n ? null\n : {\n lanes: renderLanes.lanes,\n firstContext: renderLanes.firstContext\n }));\n return workInProgress;\n}\nfunction createFiberFromTypeAndProps(\n type,\n key,\n pendingProps,\n owner,\n mode,\n lanes\n) {\n var fiberTag = 0;\n owner = type;\n if (\"function\" === typeof type) shouldConstruct(type) && (fiberTag = 1);\n else if (\"string\" === typeof type)\n fiberTag = isHostHoistableType(\n type,\n pendingProps,\n contextStackCursor.current\n )\n ? 26\n : \"html\" === type || \"head\" === type || \"body\" === type\n ? 27\n : 5;\n else\n a: switch (type) {\n case REACT_ACTIVITY_TYPE:\n return (\n (type = createFiberImplClass(31, pendingProps, key, mode)),\n (type.elementType = REACT_ACTIVITY_TYPE),\n (type.lanes = lanes),\n type\n );\n case REACT_FRAGMENT_TYPE:\n return createFiberFromFragment(pendingProps.children, mode, lanes, key);\n case REACT_STRICT_MODE_TYPE:\n fiberTag = 8;\n mode |= 24;\n break;\n case REACT_PROFILER_TYPE:\n return (\n (type = createFiberImplClass(12, pendingProps, key, mode | 2)),\n (type.elementType = REACT_PROFILER_TYPE),\n (type.lanes = lanes),\n type\n );\n case REACT_SUSPENSE_TYPE:\n return (\n (type = createFiberImplClass(13, pendingProps, key, mode)),\n (type.elementType = REACT_SUSPENSE_TYPE),\n (type.lanes = lanes),\n type\n );\n case REACT_SUSPENSE_LIST_TYPE:\n return (\n (type = createFiberImplClass(19, pendingProps, key, mode)),\n (type.elementType = REACT_SUSPENSE_LIST_TYPE),\n (type.lanes = lanes),\n type\n );\n default:\n if (\"object\" === typeof type && null !== type)\n switch (type.$$typeof) {\n case REACT_CONTEXT_TYPE:\n fiberTag = 10;\n break a;\n case REACT_CONSUMER_TYPE:\n fiberTag = 9;\n break a;\n case REACT_FORWARD_REF_TYPE:\n fiberTag = 11;\n break a;\n case REACT_MEMO_TYPE:\n fiberTag = 14;\n break a;\n case REACT_LAZY_TYPE:\n fiberTag = 16;\n owner = null;\n break a;\n }\n fiberTag = 29;\n pendingProps = Error(\n formatProdErrorMessage(130, null === type ? \"null\" : typeof type, \"\")\n );\n owner = null;\n }\n key = createFiberImplClass(fiberTag, pendingProps, key, mode);\n key.elementType = type;\n key.type = owner;\n key.lanes = lanes;\n return key;\n}\nfunction createFiberFromFragment(elements, mode, lanes, key) {\n elements = createFiberImplClass(7, elements, key, mode);\n elements.lanes = lanes;\n return elements;\n}\nfunction createFiberFromText(content, mode, lanes) {\n content = createFiberImplClass(6, content, null, mode);\n content.lanes = lanes;\n return content;\n}\nfunction createFiberFromDehydratedFragment(dehydratedNode) {\n var fiber = createFiberImplClass(18, null, null, 0);\n fiber.stateNode = dehydratedNode;\n return fiber;\n}\nfunction createFiberFromPortal(portal, mode, lanes) {\n mode = createFiberImplClass(\n 4,\n null !== portal.children ? portal.children : [],\n portal.key,\n mode\n );\n mode.lanes = lanes;\n mode.stateNode = {\n containerInfo: portal.containerInfo,\n pendingChildren: null,\n implementation: portal.implementation\n };\n return mode;\n}\nvar CapturedStacks = new WeakMap();\nfunction createCapturedValueAtFiber(value, source) {\n if (\"object\" === typeof value && null !== value) {\n var existing = CapturedStacks.get(value);\n if (void 0 !== existing) return existing;\n source = {\n value: value,\n source: source,\n stack: getStackByFiberInDevAndProd(source)\n };\n CapturedStacks.set(value, source);\n return source;\n }\n return {\n value: value,\n source: source,\n stack: getStackByFiberInDevAndProd(source)\n };\n}\nvar forkStack = [],\n forkStackIndex = 0,\n treeForkProvider = null,\n treeForkCount = 0,\n idStack = [],\n idStackIndex = 0,\n treeContextProvider = null,\n treeContextId = 1,\n treeContextOverflow = \"\";\nfunction pushTreeFork(workInProgress, totalChildren) {\n forkStack[forkStackIndex++] = treeForkCount;\n forkStack[forkStackIndex++] = treeForkProvider;\n treeForkProvider = workInProgress;\n treeForkCount = totalChildren;\n}\nfunction pushTreeId(workInProgress, totalChildren, index) {\n idStack[idStackIndex++] = treeContextId;\n idStack[idStackIndex++] = treeContextOverflow;\n idStack[idStackIndex++] = treeContextProvider;\n treeContextProvider = workInProgress;\n var baseIdWithLeadingBit = treeContextId;\n workInProgress = treeContextOverflow;\n var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;\n baseIdWithLeadingBit &= ~(1 << baseLength);\n index += 1;\n var length = 32 - clz32(totalChildren) + baseLength;\n if (30 < length) {\n var numberOfOverflowBits = baseLength - (baseLength % 5);\n length = (\n baseIdWithLeadingBit &\n ((1 << numberOfOverflowBits) - 1)\n ).toString(32);\n baseIdWithLeadingBit >>= numberOfOverflowBits;\n baseLength -= numberOfOverflowBits;\n treeContextId =\n (1 << (32 - clz32(totalChildren) + baseLength)) |\n (index << baseLength) |\n baseIdWithLeadingBit;\n treeContextOverflow = length + workInProgress;\n } else\n (treeContextId =\n (1 << length) | (index << baseLength) | baseIdWithLeadingBit),\n (treeContextOverflow = workInProgress);\n}\nfunction pushMaterializedTreeId(workInProgress) {\n null !== workInProgress.return &&\n (pushTreeFork(workInProgress, 1), pushTreeId(workInProgress, 1, 0));\n}\nfunction popTreeContext(workInProgress) {\n for (; workInProgress === treeForkProvider; )\n (treeForkProvider = forkStack[--forkStackIndex]),\n (forkStack[forkStackIndex] = null),\n (treeForkCount = forkStack[--forkStackIndex]),\n (forkStack[forkStackIndex] = null);\n for (; workInProgress === treeContextProvider; )\n (treeContextProvider = idStack[--idStackIndex]),\n (idStack[idStackIndex] = null),\n (treeContextOverflow = idStack[--idStackIndex]),\n (idStack[idStackIndex] = null),\n (treeContextId = idStack[--idStackIndex]),\n (idStack[idStackIndex] = null);\n}\nfunction restoreSuspendedTreeContext(workInProgress, suspendedContext) {\n idStack[idStackIndex++] = treeContextId;\n idStack[idStackIndex++] = treeContextOverflow;\n idStack[idStackIndex++] = treeContextProvider;\n treeContextId = suspendedContext.id;\n treeContextOverflow = suspendedContext.overflow;\n treeContextProvider = workInProgress;\n}\nvar hydrationParentFiber = null,\n nextHydratableInstance = null,\n isHydrating = !1,\n hydrationErrors = null,\n rootOrSingletonContext = !1,\n HydrationMismatchException = Error(formatProdErrorMessage(519));\nfunction throwOnHydrationMismatch(fiber) {\n var error = Error(\n formatProdErrorMessage(\n 418,\n 1 < arguments.length && void 0 !== arguments[1] && arguments[1]\n ? \"text\"\n : \"HTML\",\n \"\"\n )\n );\n queueHydrationError(createCapturedValueAtFiber(error, fiber));\n throw HydrationMismatchException;\n}\nfunction prepareToHydrateHostInstance(fiber) {\n var instance = fiber.stateNode,\n type = fiber.type,\n props = fiber.memoizedProps;\n instance[internalInstanceKey] = fiber;\n instance[internalPropsKey] = props;\n switch (type) {\n case \"dialog\":\n listenToNonDelegatedEvent(\"cancel\", instance);\n listenToNonDelegatedEvent(\"close\", instance);\n break;\n case \"iframe\":\n case \"object\":\n case \"embed\":\n listenToNonDelegatedEvent(\"load\", instance);\n break;\n case \"video\":\n case \"audio\":\n for (type = 0; type < mediaEventTypes.length; type++)\n listenToNonDelegatedEvent(mediaEventTypes[type], instance);\n break;\n case \"source\":\n listenToNonDelegatedEvent(\"error\", instance);\n break;\n case \"img\":\n case \"image\":\n case \"link\":\n listenToNonDelegatedEvent(\"error\", instance);\n listenToNonDelegatedEvent(\"load\", instance);\n break;\n case \"details\":\n listenToNonDelegatedEvent(\"toggle\", instance);\n break;\n case \"input\":\n listenToNonDelegatedEvent(\"invalid\", instance);\n initInput(\n instance,\n props.value,\n props.defaultValue,\n props.checked,\n props.defaultChecked,\n props.type,\n props.name,\n !0\n );\n break;\n case \"select\":\n listenToNonDelegatedEvent(\"invalid\", instance);\n break;\n case \"textarea\":\n listenToNonDelegatedEvent(\"invalid\", instance),\n initTextarea(instance, props.value, props.defaultValue, props.children);\n }\n type = props.children;\n (\"string\" !== typeof type &&\n \"number\" !== typeof type &&\n \"bigint\" !== typeof type) ||\n instance.textContent === \"\" + type ||\n !0 === props.suppressHydrationWarning ||\n checkForUnmatchedText(instance.textContent, type)\n ? (null != props.popover &&\n (listenToNonDelegatedEvent(\"beforetoggle\", instance),\n listenToNonDelegatedEvent(\"toggle\", instance)),\n null != props.onScroll && listenToNonDelegatedEvent(\"scroll\", instance),\n null != props.onScrollEnd &&\n listenToNonDelegatedEvent(\"scrollend\", instance),\n null != props.onClick && (instance.onclick = noop$1),\n (instance = !0))\n : (instance = !1);\n instance || throwOnHydrationMismatch(fiber, !0);\n}\nfunction popToNextHostParent(fiber) {\n for (hydrationParentFiber = fiber.return; hydrationParentFiber; )\n switch (hydrationParentFiber.tag) {\n case 5:\n case 31:\n case 13:\n rootOrSingletonContext = !1;\n return;\n case 27:\n case 3:\n rootOrSingletonContext = !0;\n return;\n default:\n hydrationParentFiber = hydrationParentFiber.return;\n }\n}\nfunction popHydrationState(fiber) {\n if (fiber !== hydrationParentFiber) return !1;\n if (!isHydrating) return popToNextHostParent(fiber), (isHydrating = !0), !1;\n var tag = fiber.tag,\n JSCompiler_temp;\n if ((JSCompiler_temp = 3 !== tag && 27 !== tag)) {\n if ((JSCompiler_temp = 5 === tag))\n (JSCompiler_temp = fiber.type),\n (JSCompiler_temp =\n !(\"form\" !== JSCompiler_temp && \"button\" !== JSCompiler_temp) ||\n shouldSetTextContent(fiber.type, fiber.memoizedProps));\n JSCompiler_temp = !JSCompiler_temp;\n }\n JSCompiler_temp && nextHydratableInstance && throwOnHydrationMismatch(fiber);\n popToNextHostParent(fiber);\n if (13 === tag) {\n fiber = fiber.memoizedState;\n fiber = null !== fiber ? fiber.dehydrated : null;\n if (!fiber) throw Error(formatProdErrorMessage(317));\n nextHydratableInstance =\n getNextHydratableInstanceAfterHydrationBoundary(fiber);\n } else if (31 === tag) {\n fiber = fiber.memoizedState;\n fiber = null !== fiber ? fiber.dehydrated : null;\n if (!fiber) throw Error(formatProdErrorMessage(317));\n nextHydratableInstance =\n getNextHydratableInstanceAfterHydrationBoundary(fiber);\n } else\n 27 === tag\n ? ((tag = nextHydratableInstance),\n isSingletonScope(fiber.type)\n ? ((fiber = previousHydratableOnEnteringScopedSingleton),\n (previousHydratableOnEnteringScopedSingleton = null),\n (nextHydratableInstance = fiber))\n : (nextHydratableInstance = tag))\n : (nextHydratableInstance = hydrationParentFiber\n ? getNextHydratable(fiber.stateNode.nextSibling)\n : null);\n return !0;\n}\nfunction resetHydrationState() {\n nextHydratableInstance = hydrationParentFiber = null;\n isHydrating = !1;\n}\nfunction upgradeHydrationErrorsToRecoverable() {\n var queuedErrors = hydrationErrors;\n null !== queuedErrors &&\n (null === workInProgressRootRecoverableErrors\n ? (workInProgressRootRecoverableErrors = queuedErrors)\n : workInProgressRootRecoverableErrors.push.apply(\n workInProgressRootRecoverableErrors,\n queuedErrors\n ),\n (hydrationErrors = null));\n return queuedErrors;\n}\nfunction queueHydrationError(error) {\n null === hydrationErrors\n ? (hydrationErrors = [error])\n : hydrationErrors.push(error);\n}\nvar valueCursor = createCursor(null),\n currentlyRenderingFiber$1 = null,\n lastContextDependency = null;\nfunction pushProvider(providerFiber, context, nextValue) {\n push(valueCursor, context._currentValue);\n context._currentValue = nextValue;\n}\nfunction popProvider(context) {\n context._currentValue = valueCursor.current;\n pop(valueCursor);\n}\nfunction scheduleContextWorkOnParentPath(parent, renderLanes, propagationRoot) {\n for (; null !== parent; ) {\n var alternate = parent.alternate;\n (parent.childLanes & renderLanes) !== renderLanes\n ? ((parent.childLanes |= renderLanes),\n null !== alternate && (alternate.childLanes |= renderLanes))\n : null !== alternate &&\n (alternate.childLanes & renderLanes) !== renderLanes &&\n (alternate.childLanes |= renderLanes);\n if (parent === propagationRoot) break;\n parent = parent.return;\n }\n}\nfunction propagateContextChanges(\n workInProgress,\n contexts,\n renderLanes,\n forcePropagateEntireTree\n) {\n var fiber = workInProgress.child;\n null !== fiber && (fiber.return = workInProgress);\n for (; null !== fiber; ) {\n var list = fiber.dependencies;\n if (null !== list) {\n var nextFiber = fiber.child;\n list = list.firstContext;\n a: for (; null !== list; ) {\n var dependency = list;\n list = fiber;\n for (var i = 0; i < contexts.length; i++)\n if (dependency.context === contexts[i]) {\n list.lanes |= renderLanes;\n dependency = list.alternate;\n null !== dependency && (dependency.lanes |= renderLanes);\n scheduleContextWorkOnParentPath(\n list.return,\n renderLanes,\n workInProgress\n );\n forcePropagateEntireTree || (nextFiber = null);\n break a;\n }\n list = dependency.next;\n }\n } else if (18 === fiber.tag) {\n nextFiber = fiber.return;\n if (null === nextFiber) throw Error(formatProdErrorMessage(341));\n nextFiber.lanes |= renderLanes;\n list = nextFiber.alternate;\n null !== list && (list.lanes |= renderLanes);\n scheduleContextWorkOnParentPath(nextFiber, renderLanes, workInProgress);\n nextFiber = null;\n } else nextFiber = fiber.child;\n if (null !== nextFiber) nextFiber.return = fiber;\n else\n for (nextFiber = fiber; null !== nextFiber; ) {\n if (nextFiber === workInProgress) {\n nextFiber = null;\n break;\n }\n fiber = nextFiber.sibling;\n if (null !== fiber) {\n fiber.return = nextFiber.return;\n nextFiber = fiber;\n break;\n }\n nextFiber = nextFiber.return;\n }\n fiber = nextFiber;\n }\n}\nfunction propagateParentContextChanges(\n current,\n workInProgress,\n renderLanes,\n forcePropagateEntireTree\n) {\n current = null;\n for (\n var parent = workInProgress, isInsidePropagationBailout = !1;\n null !== parent;\n\n ) {\n if (!isInsidePropagationBailout)\n if (0 !== (parent.flags & 524288)) isInsidePropagationBailout = !0;\n else if (0 !== (parent.flags & 262144)) break;\n if (10 === parent.tag) {\n var currentParent = parent.alternate;\n if (null === currentParent) throw Error(formatProdErrorMessage(387));\n currentParent = currentParent.memoizedProps;\n if (null !== currentParent) {\n var context = parent.type;\n objectIs(parent.pendingProps.value, currentParent.value) ||\n (null !== current ? current.push(context) : (current = [context]));\n }\n } else if (parent === hostTransitionProviderCursor.current) {\n currentParent = parent.alternate;\n if (null === currentParent) throw Error(formatProdErrorMessage(387));\n currentParent.memoizedState.memoizedState !==\n parent.memoizedState.memoizedState &&\n (null !== current\n ? current.push(HostTransitionContext)\n : (current = [HostTransitionContext]));\n }\n parent = parent.return;\n }\n null !== current &&\n propagateContextChanges(\n workInProgress,\n current,\n renderLanes,\n forcePropagateEntireTree\n );\n workInProgress.flags |= 262144;\n}\nfunction checkIfContextChanged(currentDependencies) {\n for (\n currentDependencies = currentDependencies.firstContext;\n null !== currentDependencies;\n\n ) {\n if (\n !objectIs(\n currentDependencies.context._currentValue,\n currentDependencies.memoizedValue\n )\n )\n return !0;\n currentDependencies = currentDependencies.next;\n }\n return !1;\n}\nfunction prepareToReadContext(workInProgress) {\n currentlyRenderingFiber$1 = workInProgress;\n lastContextDependency = null;\n workInProgress = workInProgress.dependencies;\n null !== workInProgress && (workInProgress.firstContext = null);\n}\nfunction readContext(context) {\n return readContextForConsumer(currentlyRenderingFiber$1, context);\n}\nfunction readContextDuringReconciliation(consumer, context) {\n null === currentlyRenderingFiber$1 && prepareToReadContext(consumer);\n return readContextForConsumer(consumer, context);\n}\nfunction readContextForConsumer(consumer, context) {\n var value = context._currentValue;\n context = { context: context, memoizedValue: value, next: null };\n if (null === lastContextDependency) {\n if (null === consumer) throw Error(formatProdErrorMessage(308));\n lastContextDependency = context;\n consumer.dependencies = { lanes: 0, firstContext: context };\n consumer.flags |= 524288;\n } else lastContextDependency = lastContextDependency.next = context;\n return value;\n}\nvar AbortControllerLocal =\n \"undefined\" !== typeof AbortController\n ? AbortController\n : function () {\n var listeners = [],\n signal = (this.signal = {\n aborted: !1,\n addEventListener: function (type, listener) {\n listeners.push(listener);\n }\n });\n this.abort = function () {\n signal.aborted = !0;\n listeners.forEach(function (listener) {\n return listener();\n });\n };\n },\n scheduleCallback$2 = Scheduler.unstable_scheduleCallback,\n NormalPriority = Scheduler.unstable_NormalPriority,\n CacheContext = {\n $$typeof: REACT_CONTEXT_TYPE,\n Consumer: null,\n Provider: null,\n _currentValue: null,\n _currentValue2: null,\n _threadCount: 0\n };\nfunction createCache() {\n return {\n controller: new AbortControllerLocal(),\n data: new Map(),\n refCount: 0\n };\n}\nfunction releaseCache(cache) {\n cache.refCount--;\n 0 === cache.refCount &&\n scheduleCallback$2(NormalPriority, function () {\n cache.controller.abort();\n });\n}\nvar currentEntangledListeners = null,\n currentEntangledPendingCount = 0,\n currentEntangledLane = 0,\n currentEntangledActionThenable = null;\nfunction entangleAsyncAction(transition, thenable) {\n if (null === currentEntangledListeners) {\n var entangledListeners = (currentEntangledListeners = []);\n currentEntangledPendingCount = 0;\n currentEntangledLane = requestTransitionLane();\n currentEntangledActionThenable = {\n status: \"pending\",\n value: void 0,\n then: function (resolve) {\n entangledListeners.push(resolve);\n }\n };\n }\n currentEntangledPendingCount++;\n thenable.then(pingEngtangledActionScope, pingEngtangledActionScope);\n return thenable;\n}\nfunction pingEngtangledActionScope() {\n if (\n 0 === --currentEntangledPendingCount &&\n null !== currentEntangledListeners\n ) {\n null !== currentEntangledActionThenable &&\n (currentEntangledActionThenable.status = \"fulfilled\");\n var listeners = currentEntangledListeners;\n currentEntangledListeners = null;\n currentEntangledLane = 0;\n currentEntangledActionThenable = null;\n for (var i = 0; i < listeners.length; i++) (0, listeners[i])();\n }\n}\nfunction chainThenableValue(thenable, result) {\n var listeners = [],\n thenableWithOverride = {\n status: \"pending\",\n value: null,\n reason: null,\n then: function (resolve) {\n listeners.push(resolve);\n }\n };\n thenable.then(\n function () {\n thenableWithOverride.status = \"fulfilled\";\n thenableWithOverride.value = result;\n for (var i = 0; i < listeners.length; i++) (0, listeners[i])(result);\n },\n function (error) {\n thenableWithOverride.status = \"rejected\";\n thenableWithOverride.reason = error;\n for (error = 0; error < listeners.length; error++)\n (0, listeners[error])(void 0);\n }\n );\n return thenableWithOverride;\n}\nvar prevOnStartTransitionFinish = ReactSharedInternals.S;\nReactSharedInternals.S = function (transition, returnValue) {\n globalMostRecentTransitionTime = now();\n \"object\" === typeof returnValue &&\n null !== returnValue &&\n \"function\" === typeof returnValue.then &&\n entangleAsyncAction(transition, returnValue);\n null !== prevOnStartTransitionFinish &&\n prevOnStartTransitionFinish(transition, returnValue);\n};\nvar resumedCache = createCursor(null);\nfunction peekCacheFromPool() {\n var cacheResumedFromPreviousRender = resumedCache.current;\n return null !== cacheResumedFromPreviousRender\n ? cacheResumedFromPreviousRender\n : workInProgressRoot.pooledCache;\n}\nfunction pushTransition(offscreenWorkInProgress, prevCachePool) {\n null === prevCachePool\n ? push(resumedCache, resumedCache.current)\n : push(resumedCache, prevCachePool.pool);\n}\nfunction getSuspendedCache() {\n var cacheFromPool = peekCacheFromPool();\n return null === cacheFromPool\n ? null\n : { parent: CacheContext._currentValue, pool: cacheFromPool };\n}\nvar SuspenseException = Error(formatProdErrorMessage(460)),\n SuspenseyCommitException = Error(formatProdErrorMessage(474)),\n SuspenseActionException = Error(formatProdErrorMessage(542)),\n noopSuspenseyCommitThenable = { then: function () {} };\nfunction isThenableResolved(thenable) {\n thenable = thenable.status;\n return \"fulfilled\" === thenable || \"rejected\" === thenable;\n}\nfunction trackUsedThenable(thenableState, thenable, index) {\n index = thenableState[index];\n void 0 === index\n ? thenableState.push(thenable)\n : index !== thenable && (thenable.then(noop$1, noop$1), (thenable = index));\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw (\n ((thenableState = thenable.reason),\n checkIfUseWrappedInAsyncCatch(thenableState),\n thenableState)\n );\n default:\n if (\"string\" === typeof thenable.status) thenable.then(noop$1, noop$1);\n else {\n thenableState = workInProgressRoot;\n if (null !== thenableState && 100 < thenableState.shellSuspendCounter)\n throw Error(formatProdErrorMessage(482));\n thenableState = thenable;\n thenableState.status = \"pending\";\n thenableState.then(\n function (fulfilledValue) {\n if (\"pending\" === thenable.status) {\n var fulfilledThenable = thenable;\n fulfilledThenable.status = \"fulfilled\";\n fulfilledThenable.value = fulfilledValue;\n }\n },\n function (error) {\n if (\"pending\" === thenable.status) {\n var rejectedThenable = thenable;\n rejectedThenable.status = \"rejected\";\n rejectedThenable.reason = error;\n }\n }\n );\n }\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw (\n ((thenableState = thenable.reason),\n checkIfUseWrappedInAsyncCatch(thenableState),\n thenableState)\n );\n }\n suspendedThenable = thenable;\n throw SuspenseException;\n }\n}\nfunction resolveLazy(lazyType) {\n try {\n var init = lazyType._init;\n return init(lazyType._payload);\n } catch (x) {\n if (null !== x && \"object\" === typeof x && \"function\" === typeof x.then)\n throw ((suspendedThenable = x), SuspenseException);\n throw x;\n }\n}\nvar suspendedThenable = null;\nfunction getSuspendedThenable() {\n if (null === suspendedThenable) throw Error(formatProdErrorMessage(459));\n var thenable = suspendedThenable;\n suspendedThenable = null;\n return thenable;\n}\nfunction checkIfUseWrappedInAsyncCatch(rejectedReason) {\n if (\n rejectedReason === SuspenseException ||\n rejectedReason === SuspenseActionException\n )\n throw Error(formatProdErrorMessage(483));\n}\nvar thenableState$1 = null,\n thenableIndexCounter$1 = 0;\nfunction unwrapThenable(thenable) {\n var index = thenableIndexCounter$1;\n thenableIndexCounter$1 += 1;\n null === thenableState$1 && (thenableState$1 = []);\n return trackUsedThenable(thenableState$1, thenable, index);\n}\nfunction coerceRef(workInProgress, element) {\n element = element.props.ref;\n workInProgress.ref = void 0 !== element ? element : null;\n}\nfunction throwOnInvalidObjectTypeImpl(returnFiber, newChild) {\n if (newChild.$$typeof === REACT_LEGACY_ELEMENT_TYPE)\n throw Error(formatProdErrorMessage(525));\n returnFiber = Object.prototype.toString.call(newChild);\n throw Error(\n formatProdErrorMessage(\n 31,\n \"[object Object]\" === returnFiber\n ? \"object with keys {\" + Object.keys(newChild).join(\", \") + \"}\"\n : returnFiber\n )\n );\n}\nfunction createChildReconciler(shouldTrackSideEffects) {\n function deleteChild(returnFiber, childToDelete) {\n if (shouldTrackSideEffects) {\n var deletions = returnFiber.deletions;\n null === deletions\n ? ((returnFiber.deletions = [childToDelete]), (returnFiber.flags |= 16))\n : deletions.push(childToDelete);\n }\n }\n function deleteRemainingChildren(returnFiber, currentFirstChild) {\n if (!shouldTrackSideEffects) return null;\n for (; null !== currentFirstChild; )\n deleteChild(returnFiber, currentFirstChild),\n (currentFirstChild = currentFirstChild.sibling);\n return null;\n }\n function mapRemainingChildren(currentFirstChild) {\n for (var existingChildren = new Map(); null !== currentFirstChild; )\n null !== currentFirstChild.key\n ? existingChildren.set(currentFirstChild.key, currentFirstChild)\n : existingChildren.set(currentFirstChild.index, currentFirstChild),\n (currentFirstChild = currentFirstChild.sibling);\n return existingChildren;\n }\n function useFiber(fiber, pendingProps) {\n fiber = createWorkInProgress(fiber, pendingProps);\n fiber.index = 0;\n fiber.sibling = null;\n return fiber;\n }\n function placeChild(newFiber, lastPlacedIndex, newIndex) {\n newFiber.index = newIndex;\n if (!shouldTrackSideEffects)\n return (newFiber.flags |= 1048576), lastPlacedIndex;\n newIndex = newFiber.alternate;\n if (null !== newIndex)\n return (\n (newIndex = newIndex.index),\n newIndex < lastPlacedIndex\n ? ((newFiber.flags |= 67108866), lastPlacedIndex)\n : newIndex\n );\n newFiber.flags |= 67108866;\n return lastPlacedIndex;\n }\n function placeSingleChild(newFiber) {\n shouldTrackSideEffects &&\n null === newFiber.alternate &&\n (newFiber.flags |= 67108866);\n return newFiber;\n }\n function updateTextNode(returnFiber, current, textContent, lanes) {\n if (null === current || 6 !== current.tag)\n return (\n (current = createFiberFromText(textContent, returnFiber.mode, lanes)),\n (current.return = returnFiber),\n current\n );\n current = useFiber(current, textContent);\n current.return = returnFiber;\n return current;\n }\n function updateElement(returnFiber, current, element, lanes) {\n var elementType = element.type;\n if (elementType === REACT_FRAGMENT_TYPE)\n return updateFragment(\n returnFiber,\n current,\n element.props.children,\n lanes,\n element.key\n );\n if (\n null !== current &&\n (current.elementType === elementType ||\n (\"object\" === typeof elementType &&\n null !== elementType &&\n elementType.$$typeof === REACT_LAZY_TYPE &&\n resolveLazy(elementType) === current.type))\n )\n return (\n (current = useFiber(current, element.props)),\n coerceRef(current, element),\n (current.return = returnFiber),\n current\n );\n current = createFiberFromTypeAndProps(\n element.type,\n element.key,\n element.props,\n null,\n returnFiber.mode,\n lanes\n );\n coerceRef(current, element);\n current.return = returnFiber;\n return current;\n }\n function updatePortal(returnFiber, current, portal, lanes) {\n if (\n null === current ||\n 4 !== current.tag ||\n current.stateNode.containerInfo !== portal.containerInfo ||\n current.stateNode.implementation !== portal.implementation\n )\n return (\n (current = createFiberFromPortal(portal, returnFiber.mode, lanes)),\n (current.return = returnFiber),\n current\n );\n current = useFiber(current, portal.children || []);\n current.return = returnFiber;\n return current;\n }\n function updateFragment(returnFiber, current, fragment, lanes, key) {\n if (null === current || 7 !== current.tag)\n return (\n (current = createFiberFromFragment(\n fragment,\n returnFiber.mode,\n lanes,\n key\n )),\n (current.return = returnFiber),\n current\n );\n current = useFiber(current, fragment);\n current.return = returnFiber;\n return current;\n }\n function createChild(returnFiber, newChild, lanes) {\n if (\n (\"string\" === typeof newChild && \"\" !== newChild) ||\n \"number\" === typeof newChild ||\n \"bigint\" === typeof newChild\n )\n return (\n (newChild = createFiberFromText(\n \"\" + newChild,\n returnFiber.mode,\n lanes\n )),\n (newChild.return = returnFiber),\n newChild\n );\n if (\"object\" === typeof newChild && null !== newChild) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n return (\n (lanes = createFiberFromTypeAndProps(\n newChild.type,\n newChild.key,\n newChild.props,\n null,\n returnFiber.mode,\n lanes\n )),\n coerceRef(lanes, newChild),\n (lanes.return = returnFiber),\n lanes\n );\n case REACT_PORTAL_TYPE:\n return (\n (newChild = createFiberFromPortal(\n newChild,\n returnFiber.mode,\n lanes\n )),\n (newChild.return = returnFiber),\n newChild\n );\n case REACT_LAZY_TYPE:\n return (\n (newChild = resolveLazy(newChild)),\n createChild(returnFiber, newChild, lanes)\n );\n }\n if (isArrayImpl(newChild) || getIteratorFn(newChild))\n return (\n (newChild = createFiberFromFragment(\n newChild,\n returnFiber.mode,\n lanes,\n null\n )),\n (newChild.return = returnFiber),\n newChild\n );\n if (\"function\" === typeof newChild.then)\n return createChild(returnFiber, unwrapThenable(newChild), lanes);\n if (newChild.$$typeof === REACT_CONTEXT_TYPE)\n return createChild(\n returnFiber,\n readContextDuringReconciliation(returnFiber, newChild),\n lanes\n );\n throwOnInvalidObjectTypeImpl(returnFiber, newChild);\n }\n return null;\n }\n function updateSlot(returnFiber, oldFiber, newChild, lanes) {\n var key = null !== oldFiber ? oldFiber.key : null;\n if (\n (\"string\" === typeof newChild && \"\" !== newChild) ||\n \"number\" === typeof newChild ||\n \"bigint\" === typeof newChild\n )\n return null !== key\n ? null\n : updateTextNode(returnFiber, oldFiber, \"\" + newChild, lanes);\n if (\"object\" === typeof newChild && null !== newChild) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n return newChild.key === key\n ? updateElement(returnFiber, oldFiber, newChild, lanes)\n : null;\n case REACT_PORTAL_TYPE:\n return newChild.key === key\n ? updatePortal(returnFiber, oldFiber, newChild, lanes)\n : null;\n case REACT_LAZY_TYPE:\n return (\n (newChild = resolveLazy(newChild)),\n updateSlot(returnFiber, oldFiber, newChild, lanes)\n );\n }\n if (isArrayImpl(newChild) || getIteratorFn(newChild))\n return null !== key\n ? null\n : updateFragment(returnFiber, oldFiber, newChild, lanes, null);\n if (\"function\" === typeof newChild.then)\n return updateSlot(\n returnFiber,\n oldFiber,\n unwrapThenable(newChild),\n lanes\n );\n if (newChild.$$typeof === REACT_CONTEXT_TYPE)\n return updateSlot(\n returnFiber,\n oldFiber,\n readContextDuringReconciliation(returnFiber, newChild),\n lanes\n );\n throwOnInvalidObjectTypeImpl(returnFiber, newChild);\n }\n return null;\n }\n function updateFromMap(\n existingChildren,\n returnFiber,\n newIdx,\n newChild,\n lanes\n ) {\n if (\n (\"string\" === typeof newChild && \"\" !== newChild) ||\n \"number\" === typeof newChild ||\n \"bigint\" === typeof newChild\n )\n return (\n (existingChildren = existingChildren.get(newIdx) || null),\n updateTextNode(returnFiber, existingChildren, \"\" + newChild, lanes)\n );\n if (\"object\" === typeof newChild && null !== newChild) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n return (\n (existingChildren =\n existingChildren.get(\n null === newChild.key ? newIdx : newChild.key\n ) || null),\n updateElement(returnFiber, existingChildren, newChild, lanes)\n );\n case REACT_PORTAL_TYPE:\n return (\n (existingChildren =\n existingChildren.get(\n null === newChild.key ? newIdx : newChild.key\n ) || null),\n updatePortal(returnFiber, existingChildren, newChild, lanes)\n );\n case REACT_LAZY_TYPE:\n return (\n (newChild = resolveLazy(newChild)),\n updateFromMap(\n existingChildren,\n returnFiber,\n newIdx,\n newChild,\n lanes\n )\n );\n }\n if (isArrayImpl(newChild) || getIteratorFn(newChild))\n return (\n (existingChildren = existingChildren.get(newIdx) || null),\n updateFragment(returnFiber, existingChildren, newChild, lanes, null)\n );\n if (\"function\" === typeof newChild.then)\n return updateFromMap(\n existingChildren,\n returnFiber,\n newIdx,\n unwrapThenable(newChild),\n lanes\n );\n if (newChild.$$typeof === REACT_CONTEXT_TYPE)\n return updateFromMap(\n existingChildren,\n returnFiber,\n newIdx,\n readContextDuringReconciliation(returnFiber, newChild),\n lanes\n );\n throwOnInvalidObjectTypeImpl(returnFiber, newChild);\n }\n return null;\n }\n function reconcileChildrenArray(\n returnFiber,\n currentFirstChild,\n newChildren,\n lanes\n ) {\n for (\n var resultingFirstChild = null,\n previousNewFiber = null,\n oldFiber = currentFirstChild,\n newIdx = (currentFirstChild = 0),\n nextOldFiber = null;\n null !== oldFiber && newIdx < newChildren.length;\n newIdx++\n ) {\n oldFiber.index > newIdx\n ? ((nextOldFiber = oldFiber), (oldFiber = null))\n : (nextOldFiber = oldFiber.sibling);\n var newFiber = updateSlot(\n returnFiber,\n oldFiber,\n newChildren[newIdx],\n lanes\n );\n if (null === newFiber) {\n null === oldFiber && (oldFiber = nextOldFiber);\n break;\n }\n shouldTrackSideEffects &&\n oldFiber &&\n null === newFiber.alternate &&\n deleteChild(returnFiber, oldFiber);\n currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);\n null === previousNewFiber\n ? (resultingFirstChild = newFiber)\n : (previousNewFiber.sibling = newFiber);\n previousNewFiber = newFiber;\n oldFiber = nextOldFiber;\n }\n if (newIdx === newChildren.length)\n return (\n deleteRemainingChildren(returnFiber, oldFiber),\n isHydrating && pushTreeFork(returnFiber, newIdx),\n resultingFirstChild\n );\n if (null === oldFiber) {\n for (; newIdx < newChildren.length; newIdx++)\n (oldFiber = createChild(returnFiber, newChildren[newIdx], lanes)),\n null !== oldFiber &&\n ((currentFirstChild = placeChild(\n oldFiber,\n currentFirstChild,\n newIdx\n )),\n null === previousNewFiber\n ? (resultingFirstChild = oldFiber)\n : (previousNewFiber.sibling = oldFiber),\n (previousNewFiber = oldFiber));\n isHydrating && pushTreeFork(returnFiber, newIdx);\n return resultingFirstChild;\n }\n for (\n oldFiber = mapRemainingChildren(oldFiber);\n newIdx < newChildren.length;\n newIdx++\n )\n (nextOldFiber = updateFromMap(\n oldFiber,\n returnFiber,\n newIdx,\n newChildren[newIdx],\n lanes\n )),\n null !== nextOldFiber &&\n (shouldTrackSideEffects &&\n null !== nextOldFiber.alternate &&\n oldFiber.delete(\n null === nextOldFiber.key ? newIdx : nextOldFiber.key\n ),\n (currentFirstChild = placeChild(\n nextOldFiber,\n currentFirstChild,\n newIdx\n )),\n null === previousNewFiber\n ? (resultingFirstChild = nextOldFiber)\n : (previousNewFiber.sibling = nextOldFiber),\n (previousNewFiber = nextOldFiber));\n shouldTrackSideEffects &&\n oldFiber.forEach(function (child) {\n return deleteChild(returnFiber, child);\n });\n isHydrating && pushTreeFork(returnFiber, newIdx);\n return resultingFirstChild;\n }\n function reconcileChildrenIterator(\n returnFiber,\n currentFirstChild,\n newChildren,\n lanes\n ) {\n if (null == newChildren) throw Error(formatProdErrorMessage(151));\n for (\n var resultingFirstChild = null,\n previousNewFiber = null,\n oldFiber = currentFirstChild,\n newIdx = (currentFirstChild = 0),\n nextOldFiber = null,\n step = newChildren.next();\n null !== oldFiber && !step.done;\n newIdx++, step = newChildren.next()\n ) {\n oldFiber.index > newIdx\n ? ((nextOldFiber = oldFiber), (oldFiber = null))\n : (nextOldFiber = oldFiber.sibling);\n var newFiber = updateSlot(returnFiber, oldFiber, step.value, lanes);\n if (null === newFiber) {\n null === oldFiber && (oldFiber = nextOldFiber);\n break;\n }\n shouldTrackSideEffects &&\n oldFiber &&\n null === newFiber.alternate &&\n deleteChild(returnFiber, oldFiber);\n currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);\n null === previousNewFiber\n ? (resultingFirstChild = newFiber)\n : (previousNewFiber.sibling = newFiber);\n previousNewFiber = newFiber;\n oldFiber = nextOldFiber;\n }\n if (step.done)\n return (\n deleteRemainingChildren(returnFiber, oldFiber),\n isHydrating && pushTreeFork(returnFiber, newIdx),\n resultingFirstChild\n );\n if (null === oldFiber) {\n for (; !step.done; newIdx++, step = newChildren.next())\n (step = createChild(returnFiber, step.value, lanes)),\n null !== step &&\n ((currentFirstChild = placeChild(step, currentFirstChild, newIdx)),\n null === previousNewFiber\n ? (resultingFirstChild = step)\n : (previousNewFiber.sibling = step),\n (previousNewFiber = step));\n isHydrating && pushTreeFork(returnFiber, newIdx);\n return resultingFirstChild;\n }\n for (\n oldFiber = mapRemainingChildren(oldFiber);\n !step.done;\n newIdx++, step = newChildren.next()\n )\n (step = updateFromMap(oldFiber, returnFiber, newIdx, step.value, lanes)),\n null !== step &&\n (shouldTrackSideEffects &&\n null !== step.alternate &&\n oldFiber.delete(null === step.key ? newIdx : step.key),\n (currentFirstChild = placeChild(step, currentFirstChild, newIdx)),\n null === previousNewFiber\n ? (resultingFirstChild = step)\n : (previousNewFiber.sibling = step),\n (previousNewFiber = step));\n shouldTrackSideEffects &&\n oldFiber.forEach(function (child) {\n return deleteChild(returnFiber, child);\n });\n isHydrating && pushTreeFork(returnFiber, newIdx);\n return resultingFirstChild;\n }\n function reconcileChildFibersImpl(\n returnFiber,\n currentFirstChild,\n newChild,\n lanes\n ) {\n \"object\" === typeof newChild &&\n null !== newChild &&\n newChild.type === REACT_FRAGMENT_TYPE &&\n null === newChild.key &&\n (newChild = newChild.props.children);\n if (\"object\" === typeof newChild && null !== newChild) {\n switch (newChild.$$typeof) {\n case REACT_ELEMENT_TYPE:\n a: {\n for (var key = newChild.key; null !== currentFirstChild; ) {\n if (currentFirstChild.key === key) {\n key = newChild.type;\n if (key === REACT_FRAGMENT_TYPE) {\n if (7 === currentFirstChild.tag) {\n deleteRemainingChildren(\n returnFiber,\n currentFirstChild.sibling\n );\n lanes = useFiber(\n currentFirstChild,\n newChild.props.children\n );\n lanes.return = returnFiber;\n returnFiber = lanes;\n break a;\n }\n } else if (\n currentFirstChild.elementType === key ||\n (\"object\" === typeof key &&\n null !== key &&\n key.$$typeof === REACT_LAZY_TYPE &&\n resolveLazy(key) === currentFirstChild.type)\n ) {\n deleteRemainingChildren(\n returnFiber,\n currentFirstChild.sibling\n );\n lanes = useFiber(currentFirstChild, newChild.props);\n coerceRef(lanes, newChild);\n lanes.return = returnFiber;\n returnFiber = lanes;\n break a;\n }\n deleteRemainingChildren(returnFiber, currentFirstChild);\n break;\n } else deleteChild(returnFiber, currentFirstChild);\n currentFirstChild = currentFirstChild.sibling;\n }\n newChild.type === REACT_FRAGMENT_TYPE\n ? ((lanes = createFiberFromFragment(\n newChild.props.children,\n returnFiber.mode,\n lanes,\n newChild.key\n )),\n (lanes.return = returnFiber),\n (returnFiber = lanes))\n : ((lanes = createFiberFromTypeAndProps(\n newChild.type,\n newChild.key,\n newChild.props,\n null,\n returnFiber.mode,\n lanes\n )),\n coerceRef(lanes, newChild),\n (lanes.return = returnFiber),\n (returnFiber = lanes));\n }\n return placeSingleChild(returnFiber);\n case REACT_PORTAL_TYPE:\n a: {\n for (key = newChild.key; null !== currentFirstChild; ) {\n if (currentFirstChild.key === key)\n if (\n 4 === currentFirstChild.tag &&\n currentFirstChild.stateNode.containerInfo ===\n newChild.containerInfo &&\n currentFirstChild.stateNode.implementation ===\n newChild.implementation\n ) {\n deleteRemainingChildren(\n returnFiber,\n currentFirstChild.sibling\n );\n lanes = useFiber(currentFirstChild, newChild.children || []);\n lanes.return = returnFiber;\n returnFiber = lanes;\n break a;\n } else {\n deleteRemainingChildren(returnFiber, currentFirstChild);\n break;\n }\n else deleteChild(returnFiber, currentFirstChild);\n currentFirstChild = currentFirstChild.sibling;\n }\n lanes = createFiberFromPortal(newChild, returnFiber.mode, lanes);\n lanes.return = returnFiber;\n returnFiber = lanes;\n }\n return placeSingleChild(returnFiber);\n case REACT_LAZY_TYPE:\n return (\n (newChild = resolveLazy(newChild)),\n reconcileChildFibersImpl(\n returnFiber,\n currentFirstChild,\n newChild,\n lanes\n )\n );\n }\n if (isArrayImpl(newChild))\n return reconcileChildrenArray(\n returnFiber,\n currentFirstChild,\n newChild,\n lanes\n );\n if (getIteratorFn(newChild)) {\n key = getIteratorFn(newChild);\n if (\"function\" !== typeof key) throw Error(formatProdErrorMessage(150));\n newChild = key.call(newChild);\n return reconcileChildrenIterator(\n returnFiber,\n currentFirstChild,\n newChild,\n lanes\n );\n }\n if (\"function\" === typeof newChild.then)\n return reconcileChildFibersImpl(\n returnFiber,\n currentFirstChild,\n unwrapThenable(newChild),\n lanes\n );\n if (newChild.$$typeof === REACT_CONTEXT_TYPE)\n return reconcileChildFibersImpl(\n returnFiber,\n currentFirstChild,\n readContextDuringReconciliation(returnFiber, newChild),\n lanes\n );\n throwOnInvalidObjectTypeImpl(returnFiber, newChild);\n }\n return (\"string\" === typeof newChild && \"\" !== newChild) ||\n \"number\" === typeof newChild ||\n \"bigint\" === typeof newChild\n ? ((newChild = \"\" + newChild),\n null !== currentFirstChild && 6 === currentFirstChild.tag\n ? (deleteRemainingChildren(returnFiber, currentFirstChild.sibling),\n (lanes = useFiber(currentFirstChild, newChild)),\n (lanes.return = returnFiber),\n (returnFiber = lanes))\n : (deleteRemainingChildren(returnFiber, currentFirstChild),\n (lanes = createFiberFromText(newChild, returnFiber.mode, lanes)),\n (lanes.return = returnFiber),\n (returnFiber = lanes)),\n placeSingleChild(returnFiber))\n : deleteRemainingChildren(returnFiber, currentFirstChild);\n }\n return function (returnFiber, currentFirstChild, newChild, lanes) {\n try {\n thenableIndexCounter$1 = 0;\n var firstChildFiber = reconcileChildFibersImpl(\n returnFiber,\n currentFirstChild,\n newChild,\n lanes\n );\n thenableState$1 = null;\n return firstChildFiber;\n } catch (x) {\n if (x === SuspenseException || x === SuspenseActionException) throw x;\n var fiber = createFiberImplClass(29, x, null, returnFiber.mode);\n fiber.lanes = lanes;\n fiber.return = returnFiber;\n return fiber;\n } finally {\n }\n };\n}\nvar reconcileChildFibers = createChildReconciler(!0),\n mountChildFibers = createChildReconciler(!1),\n hasForceUpdate = !1;\nfunction initializeUpdateQueue(fiber) {\n fiber.updateQueue = {\n baseState: fiber.memoizedState,\n firstBaseUpdate: null,\n lastBaseUpdate: null,\n shared: { pending: null, lanes: 0, hiddenCallbacks: null },\n callbacks: null\n };\n}\nfunction cloneUpdateQueue(current, workInProgress) {\n current = current.updateQueue;\n workInProgress.updateQueue === current &&\n (workInProgress.updateQueue = {\n baseState: current.baseState,\n firstBaseUpdate: current.firstBaseUpdate,\n lastBaseUpdate: current.lastBaseUpdate,\n shared: current.shared,\n callbacks: null\n });\n}\nfunction createUpdate(lane) {\n return { lane: lane, tag: 0, payload: null, callback: null, next: null };\n}\nfunction enqueueUpdate(fiber, update, lane) {\n var updateQueue = fiber.updateQueue;\n if (null === updateQueue) return null;\n updateQueue = updateQueue.shared;\n if (0 !== (executionContext & 2)) {\n var pending = updateQueue.pending;\n null === pending\n ? (update.next = update)\n : ((update.next = pending.next), (pending.next = update));\n updateQueue.pending = update;\n update = getRootForUpdatedFiber(fiber);\n markUpdateLaneFromFiberToRoot(fiber, null, lane);\n return update;\n }\n enqueueUpdate$1(fiber, updateQueue, update, lane);\n return getRootForUpdatedFiber(fiber);\n}\nfunction entangleTransitions(root, fiber, lane) {\n fiber = fiber.updateQueue;\n if (null !== fiber && ((fiber = fiber.shared), 0 !== (lane & 4194048))) {\n var queueLanes = fiber.lanes;\n queueLanes &= root.pendingLanes;\n lane |= queueLanes;\n fiber.lanes = lane;\n markRootEntangled(root, lane);\n }\n}\nfunction enqueueCapturedUpdate(workInProgress, capturedUpdate) {\n var queue = workInProgress.updateQueue,\n current = workInProgress.alternate;\n if (\n null !== current &&\n ((current = current.updateQueue), queue === current)\n ) {\n var newFirst = null,\n newLast = null;\n queue = queue.firstBaseUpdate;\n if (null !== queue) {\n do {\n var clone = {\n lane: queue.lane,\n tag: queue.tag,\n payload: queue.payload,\n callback: null,\n next: null\n };\n null === newLast\n ? (newFirst = newLast = clone)\n : (newLast = newLast.next = clone);\n queue = queue.next;\n } while (null !== queue);\n null === newLast\n ? (newFirst = newLast = capturedUpdate)\n : (newLast = newLast.next = capturedUpdate);\n } else newFirst = newLast = capturedUpdate;\n queue = {\n baseState: current.baseState,\n firstBaseUpdate: newFirst,\n lastBaseUpdate: newLast,\n shared: current.shared,\n callbacks: current.callbacks\n };\n workInProgress.updateQueue = queue;\n return;\n }\n workInProgress = queue.lastBaseUpdate;\n null === workInProgress\n ? (queue.firstBaseUpdate = capturedUpdate)\n : (workInProgress.next = capturedUpdate);\n queue.lastBaseUpdate = capturedUpdate;\n}\nvar didReadFromEntangledAsyncAction = !1;\nfunction suspendIfUpdateReadFromEntangledAsyncAction() {\n if (didReadFromEntangledAsyncAction) {\n var entangledActionThenable = currentEntangledActionThenable;\n if (null !== entangledActionThenable) throw entangledActionThenable;\n }\n}\nfunction processUpdateQueue(\n workInProgress$jscomp$0,\n props,\n instance$jscomp$0,\n renderLanes\n) {\n didReadFromEntangledAsyncAction = !1;\n var queue = workInProgress$jscomp$0.updateQueue;\n hasForceUpdate = !1;\n var firstBaseUpdate = queue.firstBaseUpdate,\n lastBaseUpdate = queue.lastBaseUpdate,\n pendingQueue = queue.shared.pending;\n if (null !== pendingQueue) {\n queue.shared.pending = null;\n var lastPendingUpdate = pendingQueue,\n firstPendingUpdate = lastPendingUpdate.next;\n lastPendingUpdate.next = null;\n null === lastBaseUpdate\n ? (firstBaseUpdate = firstPendingUpdate)\n : (lastBaseUpdate.next = firstPendingUpdate);\n lastBaseUpdate = lastPendingUpdate;\n var current = workInProgress$jscomp$0.alternate;\n null !== current &&\n ((current = current.updateQueue),\n (pendingQueue = current.lastBaseUpdate),\n pendingQueue !== lastBaseUpdate &&\n (null === pendingQueue\n ? (current.firstBaseUpdate = firstPendingUpdate)\n : (pendingQueue.next = firstPendingUpdate),\n (current.lastBaseUpdate = lastPendingUpdate)));\n }\n if (null !== firstBaseUpdate) {\n var newState = queue.baseState;\n lastBaseUpdate = 0;\n current = firstPendingUpdate = lastPendingUpdate = null;\n pendingQueue = firstBaseUpdate;\n do {\n var updateLane = pendingQueue.lane & -536870913,\n isHiddenUpdate = updateLane !== pendingQueue.lane;\n if (\n isHiddenUpdate\n ? (workInProgressRootRenderLanes & updateLane) === updateLane\n : (renderLanes & updateLane) === updateLane\n ) {\n 0 !== updateLane &&\n updateLane === currentEntangledLane &&\n (didReadFromEntangledAsyncAction = !0);\n null !== current &&\n (current = current.next =\n {\n lane: 0,\n tag: pendingQueue.tag,\n payload: pendingQueue.payload,\n callback: null,\n next: null\n });\n a: {\n var workInProgress = workInProgress$jscomp$0,\n update = pendingQueue;\n updateLane = props;\n var instance = instance$jscomp$0;\n switch (update.tag) {\n case 1:\n workInProgress = update.payload;\n if (\"function\" === typeof workInProgress) {\n newState = workInProgress.call(instance, newState, updateLane);\n break a;\n }\n newState = workInProgress;\n break a;\n case 3:\n workInProgress.flags = (workInProgress.flags & -65537) | 128;\n case 0:\n workInProgress = update.payload;\n updateLane =\n \"function\" === typeof workInProgress\n ? workInProgress.call(instance, newState, updateLane)\n : workInProgress;\n if (null === updateLane || void 0 === updateLane) break a;\n newState = assign({}, newState, updateLane);\n break a;\n case 2:\n hasForceUpdate = !0;\n }\n }\n updateLane = pendingQueue.callback;\n null !== updateLane &&\n ((workInProgress$jscomp$0.flags |= 64),\n isHiddenUpdate && (workInProgress$jscomp$0.flags |= 8192),\n (isHiddenUpdate = queue.callbacks),\n null === isHiddenUpdate\n ? (queue.callbacks = [updateLane])\n : isHiddenUpdate.push(updateLane));\n } else\n (isHiddenUpdate = {\n lane: updateLane,\n tag: pendingQueue.tag,\n payload: pendingQueue.payload,\n callback: pendingQueue.callback,\n next: null\n }),\n null === current\n ? ((firstPendingUpdate = current = isHiddenUpdate),\n (lastPendingUpdate = newState))\n : (current = current.next = isHiddenUpdate),\n (lastBaseUpdate |= updateLane);\n pendingQueue = pendingQueue.next;\n if (null === pendingQueue)\n if (((pendingQueue = queue.shared.pending), null === pendingQueue))\n break;\n else\n (isHiddenUpdate = pendingQueue),\n (pendingQueue = isHiddenUpdate.next),\n (isHiddenUpdate.next = null),\n (queue.lastBaseUpdate = isHiddenUpdate),\n (queue.shared.pending = null);\n } while (1);\n null === current && (lastPendingUpdate = newState);\n queue.baseState = lastPendingUpdate;\n queue.firstBaseUpdate = firstPendingUpdate;\n queue.lastBaseUpdate = current;\n null === firstBaseUpdate && (queue.shared.lanes = 0);\n workInProgressRootSkippedLanes |= lastBaseUpdate;\n workInProgress$jscomp$0.lanes = lastBaseUpdate;\n workInProgress$jscomp$0.memoizedState = newState;\n }\n}\nfunction callCallback(callback, context) {\n if (\"function\" !== typeof callback)\n throw Error(formatProdErrorMessage(191, callback));\n callback.call(context);\n}\nfunction commitCallbacks(updateQueue, context) {\n var callbacks = updateQueue.callbacks;\n if (null !== callbacks)\n for (\n updateQueue.callbacks = null, updateQueue = 0;\n updateQueue < callbacks.length;\n updateQueue++\n )\n callCallback(callbacks[updateQueue], context);\n}\nvar currentTreeHiddenStackCursor = createCursor(null),\n prevEntangledRenderLanesCursor = createCursor(0);\nfunction pushHiddenContext(fiber, context) {\n fiber = entangledRenderLanes;\n push(prevEntangledRenderLanesCursor, fiber);\n push(currentTreeHiddenStackCursor, context);\n entangledRenderLanes = fiber | context.baseLanes;\n}\nfunction reuseHiddenContextOnStack() {\n push(prevEntangledRenderLanesCursor, entangledRenderLanes);\n push(currentTreeHiddenStackCursor, currentTreeHiddenStackCursor.current);\n}\nfunction popHiddenContext() {\n entangledRenderLanes = prevEntangledRenderLanesCursor.current;\n pop(currentTreeHiddenStackCursor);\n pop(prevEntangledRenderLanesCursor);\n}\nvar suspenseHandlerStackCursor = createCursor(null),\n shellBoundary = null;\nfunction pushPrimaryTreeSuspenseHandler(handler) {\n var current = handler.alternate;\n push(suspenseStackCursor, suspenseStackCursor.current & 1);\n push(suspenseHandlerStackCursor, handler);\n null === shellBoundary &&\n (null === current || null !== currentTreeHiddenStackCursor.current\n ? (shellBoundary = handler)\n : null !== current.memoizedState && (shellBoundary = handler));\n}\nfunction pushDehydratedActivitySuspenseHandler(fiber) {\n push(suspenseStackCursor, suspenseStackCursor.current);\n push(suspenseHandlerStackCursor, fiber);\n null === shellBoundary && (shellBoundary = fiber);\n}\nfunction pushOffscreenSuspenseHandler(fiber) {\n 22 === fiber.tag\n ? (push(suspenseStackCursor, suspenseStackCursor.current),\n push(suspenseHandlerStackCursor, fiber),\n null === shellBoundary && (shellBoundary = fiber))\n : reuseSuspenseHandlerOnStack(fiber);\n}\nfunction reuseSuspenseHandlerOnStack() {\n push(suspenseStackCursor, suspenseStackCursor.current);\n push(suspenseHandlerStackCursor, suspenseHandlerStackCursor.current);\n}\nfunction popSuspenseHandler(fiber) {\n pop(suspenseHandlerStackCursor);\n shellBoundary === fiber && (shellBoundary = null);\n pop(suspenseStackCursor);\n}\nvar suspenseStackCursor = createCursor(0);\nfunction findFirstSuspended(row) {\n for (var node = row; null !== node; ) {\n if (13 === node.tag) {\n var state = node.memoizedState;\n if (\n null !== state &&\n ((state = state.dehydrated),\n null === state ||\n isSuspenseInstancePending(state) ||\n isSuspenseInstanceFallback(state))\n )\n return node;\n } else if (\n 19 === node.tag &&\n (\"forwards\" === node.memoizedProps.revealOrder ||\n \"backwards\" === node.memoizedProps.revealOrder ||\n \"unstable_legacy-backwards\" === node.memoizedProps.revealOrder ||\n \"together\" === node.memoizedProps.revealOrder)\n ) {\n if (0 !== (node.flags & 128)) return node;\n } else if (null !== node.child) {\n node.child.return = node;\n node = node.child;\n continue;\n }\n if (node === row) break;\n for (; null === node.sibling; ) {\n if (null === node.return || node.return === row) return null;\n node = node.return;\n }\n node.sibling.return = node.return;\n node = node.sibling;\n }\n return null;\n}\nvar renderLanes = 0,\n currentlyRenderingFiber = null,\n currentHook = null,\n workInProgressHook = null,\n didScheduleRenderPhaseUpdate = !1,\n didScheduleRenderPhaseUpdateDuringThisPass = !1,\n shouldDoubleInvokeUserFnsInHooksDEV = !1,\n localIdCounter = 0,\n thenableIndexCounter = 0,\n thenableState = null,\n globalClientIdCounter = 0;\nfunction throwInvalidHookError() {\n throw Error(formatProdErrorMessage(321));\n}\nfunction areHookInputsEqual(nextDeps, prevDeps) {\n if (null === prevDeps) return !1;\n for (var i = 0; i < prevDeps.length && i < nextDeps.length; i++)\n if (!objectIs(nextDeps[i], prevDeps[i])) return !1;\n return !0;\n}\nfunction renderWithHooks(\n current,\n workInProgress,\n Component,\n props,\n secondArg,\n nextRenderLanes\n) {\n renderLanes = nextRenderLanes;\n currentlyRenderingFiber = workInProgress;\n workInProgress.memoizedState = null;\n workInProgress.updateQueue = null;\n workInProgress.lanes = 0;\n ReactSharedInternals.H =\n null === current || null === current.memoizedState\n ? HooksDispatcherOnMount\n : HooksDispatcherOnUpdate;\n shouldDoubleInvokeUserFnsInHooksDEV = !1;\n nextRenderLanes = Component(props, secondArg);\n shouldDoubleInvokeUserFnsInHooksDEV = !1;\n didScheduleRenderPhaseUpdateDuringThisPass &&\n (nextRenderLanes = renderWithHooksAgain(\n workInProgress,\n Component,\n props,\n secondArg\n ));\n finishRenderingHooks(current);\n return nextRenderLanes;\n}\nfunction finishRenderingHooks(current) {\n ReactSharedInternals.H = ContextOnlyDispatcher;\n var didRenderTooFewHooks = null !== currentHook && null !== currentHook.next;\n renderLanes = 0;\n workInProgressHook = currentHook = currentlyRenderingFiber = null;\n didScheduleRenderPhaseUpdate = !1;\n thenableIndexCounter = 0;\n thenableState = null;\n if (didRenderTooFewHooks) throw Error(formatProdErrorMessage(300));\n null === current ||\n didReceiveUpdate ||\n ((current = current.dependencies),\n null !== current &&\n checkIfContextChanged(current) &&\n (didReceiveUpdate = !0));\n}\nfunction renderWithHooksAgain(workInProgress, Component, props, secondArg) {\n currentlyRenderingFiber = workInProgress;\n var numberOfReRenders = 0;\n do {\n didScheduleRenderPhaseUpdateDuringThisPass && (thenableState = null);\n thenableIndexCounter = 0;\n didScheduleRenderPhaseUpdateDuringThisPass = !1;\n if (25 <= numberOfReRenders) throw Error(formatProdErrorMessage(301));\n numberOfReRenders += 1;\n workInProgressHook = currentHook = null;\n if (null != workInProgress.updateQueue) {\n var children = workInProgress.updateQueue;\n children.lastEffect = null;\n children.events = null;\n children.stores = null;\n null != children.memoCache && (children.memoCache.index = 0);\n }\n ReactSharedInternals.H = HooksDispatcherOnRerender;\n children = Component(props, secondArg);\n } while (didScheduleRenderPhaseUpdateDuringThisPass);\n return children;\n}\nfunction TransitionAwareHostComponent() {\n var dispatcher = ReactSharedInternals.H,\n maybeThenable = dispatcher.useState()[0];\n maybeThenable =\n \"function\" === typeof maybeThenable.then\n ? useThenable(maybeThenable)\n : maybeThenable;\n dispatcher = dispatcher.useState()[0];\n (null !== currentHook ? currentHook.memoizedState : null) !== dispatcher &&\n (currentlyRenderingFiber.flags |= 1024);\n return maybeThenable;\n}\nfunction checkDidRenderIdHook() {\n var didRenderIdHook = 0 !== localIdCounter;\n localIdCounter = 0;\n return didRenderIdHook;\n}\nfunction bailoutHooks(current, workInProgress, lanes) {\n workInProgress.updateQueue = current.updateQueue;\n workInProgress.flags &= -2053;\n current.lanes &= ~lanes;\n}\nfunction resetHooksOnUnwind(workInProgress) {\n if (didScheduleRenderPhaseUpdate) {\n for (\n workInProgress = workInProgress.memoizedState;\n null !== workInProgress;\n\n ) {\n var queue = workInProgress.queue;\n null !== queue && (queue.pending = null);\n workInProgress = workInProgress.next;\n }\n didScheduleRenderPhaseUpdate = !1;\n }\n renderLanes = 0;\n workInProgressHook = currentHook = currentlyRenderingFiber = null;\n didScheduleRenderPhaseUpdateDuringThisPass = !1;\n thenableIndexCounter = localIdCounter = 0;\n thenableState = null;\n}\nfunction mountWorkInProgressHook() {\n var hook = {\n memoizedState: null,\n baseState: null,\n baseQueue: null,\n queue: null,\n next: null\n };\n null === workInProgressHook\n ? (currentlyRenderingFiber.memoizedState = workInProgressHook = hook)\n : (workInProgressHook = workInProgressHook.next = hook);\n return workInProgressHook;\n}\nfunction updateWorkInProgressHook() {\n if (null === currentHook) {\n var nextCurrentHook = currentlyRenderingFiber.alternate;\n nextCurrentHook =\n null !== nextCurrentHook ? nextCurrentHook.memoizedState : null;\n } else nextCurrentHook = currentHook.next;\n var nextWorkInProgressHook =\n null === workInProgressHook\n ? currentlyRenderingFiber.memoizedState\n : workInProgressHook.next;\n if (null !== nextWorkInProgressHook)\n (workInProgressHook = nextWorkInProgressHook),\n (currentHook = nextCurrentHook);\n else {\n if (null === nextCurrentHook) {\n if (null === currentlyRenderingFiber.alternate)\n throw Error(formatProdErrorMessage(467));\n throw Error(formatProdErrorMessage(310));\n }\n currentHook = nextCurrentHook;\n nextCurrentHook = {\n memoizedState: currentHook.memoizedState,\n baseState: currentHook.baseState,\n baseQueue: currentHook.baseQueue,\n queue: currentHook.queue,\n next: null\n };\n null === workInProgressHook\n ? (currentlyRenderingFiber.memoizedState = workInProgressHook =\n nextCurrentHook)\n : (workInProgressHook = workInProgressHook.next = nextCurrentHook);\n }\n return workInProgressHook;\n}\nfunction createFunctionComponentUpdateQueue() {\n return { lastEffect: null, events: null, stores: null, memoCache: null };\n}\nfunction useThenable(thenable) {\n var index = thenableIndexCounter;\n thenableIndexCounter += 1;\n null === thenableState && (thenableState = []);\n thenable = trackUsedThenable(thenableState, thenable, index);\n index = currentlyRenderingFiber;\n null ===\n (null === workInProgressHook\n ? index.memoizedState\n : workInProgressHook.next) &&\n ((index = index.alternate),\n (ReactSharedInternals.H =\n null === index || null === index.memoizedState\n ? HooksDispatcherOnMount\n : HooksDispatcherOnUpdate));\n return thenable;\n}\nfunction use(usable) {\n if (null !== usable && \"object\" === typeof usable) {\n if (\"function\" === typeof usable.then) return useThenable(usable);\n if (usable.$$typeof === REACT_CONTEXT_TYPE) return readContext(usable);\n }\n throw Error(formatProdErrorMessage(438, String(usable)));\n}\nfunction useMemoCache(size) {\n var memoCache = null,\n updateQueue = currentlyRenderingFiber.updateQueue;\n null !== updateQueue && (memoCache = updateQueue.memoCache);\n if (null == memoCache) {\n var current = currentlyRenderingFiber.alternate;\n null !== current &&\n ((current = current.updateQueue),\n null !== current &&\n ((current = current.memoCache),\n null != current &&\n (memoCache = {\n data: current.data.map(function (array) {\n return array.slice();\n }),\n index: 0\n })));\n }\n null == memoCache && (memoCache = { data: [], index: 0 });\n null === updateQueue &&\n ((updateQueue = createFunctionComponentUpdateQueue()),\n (currentlyRenderingFiber.updateQueue = updateQueue));\n updateQueue.memoCache = memoCache;\n updateQueue = memoCache.data[memoCache.index];\n if (void 0 === updateQueue)\n for (\n updateQueue = memoCache.data[memoCache.index] = Array(size), current = 0;\n current < size;\n current++\n )\n updateQueue[current] = REACT_MEMO_CACHE_SENTINEL;\n memoCache.index++;\n return updateQueue;\n}\nfunction basicStateReducer(state, action) {\n return \"function\" === typeof action ? action(state) : action;\n}\nfunction updateReducer(reducer) {\n var hook = updateWorkInProgressHook();\n return updateReducerImpl(hook, currentHook, reducer);\n}\nfunction updateReducerImpl(hook, current, reducer) {\n var queue = hook.queue;\n if (null === queue) throw Error(formatProdErrorMessage(311));\n queue.lastRenderedReducer = reducer;\n var baseQueue = hook.baseQueue,\n pendingQueue = queue.pending;\n if (null !== pendingQueue) {\n if (null !== baseQueue) {\n var baseFirst = baseQueue.next;\n baseQueue.next = pendingQueue.next;\n pendingQueue.next = baseFirst;\n }\n current.baseQueue = baseQueue = pendingQueue;\n queue.pending = null;\n }\n pendingQueue = hook.baseState;\n if (null === baseQueue) hook.memoizedState = pendingQueue;\n else {\n current = baseQueue.next;\n var newBaseQueueFirst = (baseFirst = null),\n newBaseQueueLast = null,\n update = current,\n didReadFromEntangledAsyncAction$60 = !1;\n do {\n var updateLane = update.lane & -536870913;\n if (\n updateLane !== update.lane\n ? (workInProgressRootRenderLanes & updateLane) === updateLane\n : (renderLanes & updateLane) === updateLane\n ) {\n var revertLane = update.revertLane;\n if (0 === revertLane)\n null !== newBaseQueueLast &&\n (newBaseQueueLast = newBaseQueueLast.next =\n {\n lane: 0,\n revertLane: 0,\n gesture: null,\n action: update.action,\n hasEagerState: update.hasEagerState,\n eagerState: update.eagerState,\n next: null\n }),\n updateLane === currentEntangledLane &&\n (didReadFromEntangledAsyncAction$60 = !0);\n else if ((renderLanes & revertLane) === revertLane) {\n update = update.next;\n revertLane === currentEntangledLane &&\n (didReadFromEntangledAsyncAction$60 = !0);\n continue;\n } else\n (updateLane = {\n lane: 0,\n revertLane: update.revertLane,\n gesture: null,\n action: update.action,\n hasEagerState: update.hasEagerState,\n eagerState: update.eagerState,\n next: null\n }),\n null === newBaseQueueLast\n ? ((newBaseQueueFirst = newBaseQueueLast = updateLane),\n (baseFirst = pendingQueue))\n : (newBaseQueueLast = newBaseQueueLast.next = updateLane),\n (currentlyRenderingFiber.lanes |= revertLane),\n (workInProgressRootSkippedLanes |= revertLane);\n updateLane = update.action;\n shouldDoubleInvokeUserFnsInHooksDEV &&\n reducer(pendingQueue, updateLane);\n pendingQueue = update.hasEagerState\n ? update.eagerState\n : reducer(pendingQueue, updateLane);\n } else\n (revertLane = {\n lane: updateLane,\n revertLane: update.revertLane,\n gesture: update.gesture,\n action: update.action,\n hasEagerState: update.hasEagerState,\n eagerState: update.eagerState,\n next: null\n }),\n null === newBaseQueueLast\n ? ((newBaseQueueFirst = newBaseQueueLast = revertLane),\n (baseFirst = pendingQueue))\n : (newBaseQueueLast = newBaseQueueLast.next = revertLane),\n (currentlyRenderingFiber.lanes |= updateLane),\n (workInProgressRootSkippedLanes |= updateLane);\n update = update.next;\n } while (null !== update && update !== current);\n null === newBaseQueueLast\n ? (baseFirst = pendingQueue)\n : (newBaseQueueLast.next = newBaseQueueFirst);\n if (\n !objectIs(pendingQueue, hook.memoizedState) &&\n ((didReceiveUpdate = !0),\n didReadFromEntangledAsyncAction$60 &&\n ((reducer = currentEntangledActionThenable), null !== reducer))\n )\n throw reducer;\n hook.memoizedState = pendingQueue;\n hook.baseState = baseFirst;\n hook.baseQueue = newBaseQueueLast;\n queue.lastRenderedState = pendingQueue;\n }\n null === baseQueue && (queue.lanes = 0);\n return [hook.memoizedState, queue.dispatch];\n}\nfunction rerenderReducer(reducer) {\n var hook = updateWorkInProgressHook(),\n queue = hook.queue;\n if (null === queue) throw Error(formatProdErrorMessage(311));\n queue.lastRenderedReducer = reducer;\n var dispatch = queue.dispatch,\n lastRenderPhaseUpdate = queue.pending,\n newState = hook.memoizedState;\n if (null !== lastRenderPhaseUpdate) {\n queue.pending = null;\n var update = (lastRenderPhaseUpdate = lastRenderPhaseUpdate.next);\n do (newState = reducer(newState, update.action)), (update = update.next);\n while (update !== lastRenderPhaseUpdate);\n objectIs(newState, hook.memoizedState) || (didReceiveUpdate = !0);\n hook.memoizedState = newState;\n null === hook.baseQueue && (hook.baseState = newState);\n queue.lastRenderedState = newState;\n }\n return [newState, dispatch];\n}\nfunction updateSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {\n var fiber = currentlyRenderingFiber,\n hook = updateWorkInProgressHook(),\n isHydrating$jscomp$0 = isHydrating;\n if (isHydrating$jscomp$0) {\n if (void 0 === getServerSnapshot) throw Error(formatProdErrorMessage(407));\n getServerSnapshot = getServerSnapshot();\n } else getServerSnapshot = getSnapshot();\n var snapshotChanged = !objectIs(\n (currentHook || hook).memoizedState,\n getServerSnapshot\n );\n snapshotChanged &&\n ((hook.memoizedState = getServerSnapshot), (didReceiveUpdate = !0));\n hook = hook.queue;\n updateEffect(subscribeToStore.bind(null, fiber, hook, subscribe), [\n subscribe\n ]);\n if (\n hook.getSnapshot !== getSnapshot ||\n snapshotChanged ||\n (null !== workInProgressHook && workInProgressHook.memoizedState.tag & 1)\n ) {\n fiber.flags |= 2048;\n pushSimpleEffect(\n 9,\n { destroy: void 0 },\n updateStoreInstance.bind(\n null,\n fiber,\n hook,\n getServerSnapshot,\n getSnapshot\n ),\n null\n );\n if (null === workInProgressRoot) throw Error(formatProdErrorMessage(349));\n isHydrating$jscomp$0 ||\n 0 !== (renderLanes & 127) ||\n pushStoreConsistencyCheck(fiber, getSnapshot, getServerSnapshot);\n }\n return getServerSnapshot;\n}\nfunction pushStoreConsistencyCheck(fiber, getSnapshot, renderedSnapshot) {\n fiber.flags |= 16384;\n fiber = { getSnapshot: getSnapshot, value: renderedSnapshot };\n getSnapshot = currentlyRenderingFiber.updateQueue;\n null === getSnapshot\n ? ((getSnapshot = createFunctionComponentUpdateQueue()),\n (currentlyRenderingFiber.updateQueue = getSnapshot),\n (getSnapshot.stores = [fiber]))\n : ((renderedSnapshot = getSnapshot.stores),\n null === renderedSnapshot\n ? (getSnapshot.stores = [fiber])\n : renderedSnapshot.push(fiber));\n}\nfunction updateStoreInstance(fiber, inst, nextSnapshot, getSnapshot) {\n inst.value = nextSnapshot;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceStoreRerender(fiber);\n}\nfunction subscribeToStore(fiber, inst, subscribe) {\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceStoreRerender(fiber);\n });\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction forceStoreRerender(fiber) {\n var root = enqueueConcurrentRenderForLane(fiber, 2);\n null !== root && scheduleUpdateOnFiber(root, fiber, 2);\n}\nfunction mountStateImpl(initialState) {\n var hook = mountWorkInProgressHook();\n if (\"function\" === typeof initialState) {\n var initialStateInitializer = initialState;\n initialState = initialStateInitializer();\n if (shouldDoubleInvokeUserFnsInHooksDEV) {\n setIsStrictModeForDevtools(!0);\n try {\n initialStateInitializer();\n } finally {\n setIsStrictModeForDevtools(!1);\n }\n }\n }\n hook.memoizedState = hook.baseState = initialState;\n hook.queue = {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: basicStateReducer,\n lastRenderedState: initialState\n };\n return hook;\n}\nfunction updateOptimisticImpl(hook, current, passthrough, reducer) {\n hook.baseState = passthrough;\n return updateReducerImpl(\n hook,\n currentHook,\n \"function\" === typeof reducer ? reducer : basicStateReducer\n );\n}\nfunction dispatchActionState(\n fiber,\n actionQueue,\n setPendingState,\n setState,\n payload\n) {\n if (isRenderPhaseUpdate(fiber)) throw Error(formatProdErrorMessage(485));\n fiber = actionQueue.action;\n if (null !== fiber) {\n var actionNode = {\n payload: payload,\n action: fiber,\n next: null,\n isTransition: !0,\n status: \"pending\",\n value: null,\n reason: null,\n listeners: [],\n then: function (listener) {\n actionNode.listeners.push(listener);\n }\n };\n null !== ReactSharedInternals.T\n ? setPendingState(!0)\n : (actionNode.isTransition = !1);\n setState(actionNode);\n setPendingState = actionQueue.pending;\n null === setPendingState\n ? ((actionNode.next = actionQueue.pending = actionNode),\n runActionStateAction(actionQueue, actionNode))\n : ((actionNode.next = setPendingState.next),\n (actionQueue.pending = setPendingState.next = actionNode));\n }\n}\nfunction runActionStateAction(actionQueue, node) {\n var action = node.action,\n payload = node.payload,\n prevState = actionQueue.state;\n if (node.isTransition) {\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n try {\n var returnValue = action(prevState, payload),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n handleActionReturnValue(actionQueue, node, returnValue);\n } catch (error) {\n onActionError(actionQueue, node, error);\n } finally {\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n } else\n try {\n (prevTransition = action(prevState, payload)),\n handleActionReturnValue(actionQueue, node, prevTransition);\n } catch (error$66) {\n onActionError(actionQueue, node, error$66);\n }\n}\nfunction handleActionReturnValue(actionQueue, node, returnValue) {\n null !== returnValue &&\n \"object\" === typeof returnValue &&\n \"function\" === typeof returnValue.then\n ? returnValue.then(\n function (nextState) {\n onActionSuccess(actionQueue, node, nextState);\n },\n function (error) {\n return onActionError(actionQueue, node, error);\n }\n )\n : onActionSuccess(actionQueue, node, returnValue);\n}\nfunction onActionSuccess(actionQueue, actionNode, nextState) {\n actionNode.status = \"fulfilled\";\n actionNode.value = nextState;\n notifyActionListeners(actionNode);\n actionQueue.state = nextState;\n actionNode = actionQueue.pending;\n null !== actionNode &&\n ((nextState = actionNode.next),\n nextState === actionNode\n ? (actionQueue.pending = null)\n : ((nextState = nextState.next),\n (actionNode.next = nextState),\n runActionStateAction(actionQueue, nextState)));\n}\nfunction onActionError(actionQueue, actionNode, error) {\n var last = actionQueue.pending;\n actionQueue.pending = null;\n if (null !== last) {\n last = last.next;\n do\n (actionNode.status = \"rejected\"),\n (actionNode.reason = error),\n notifyActionListeners(actionNode),\n (actionNode = actionNode.next);\n while (actionNode !== last);\n }\n actionQueue.action = null;\n}\nfunction notifyActionListeners(actionNode) {\n actionNode = actionNode.listeners;\n for (var i = 0; i < actionNode.length; i++) (0, actionNode[i])();\n}\nfunction actionStateReducer(oldState, newState) {\n return newState;\n}\nfunction mountActionState(action, initialStateProp) {\n if (isHydrating) {\n var ssrFormState = workInProgressRoot.formState;\n if (null !== ssrFormState) {\n a: {\n var JSCompiler_inline_result = currentlyRenderingFiber;\n if (isHydrating) {\n if (nextHydratableInstance) {\n b: {\n var JSCompiler_inline_result$jscomp$0 = nextHydratableInstance;\n for (\n var inRootOrSingleton = rootOrSingletonContext;\n 8 !== JSCompiler_inline_result$jscomp$0.nodeType;\n\n ) {\n if (!inRootOrSingleton) {\n JSCompiler_inline_result$jscomp$0 = null;\n break b;\n }\n JSCompiler_inline_result$jscomp$0 = getNextHydratable(\n JSCompiler_inline_result$jscomp$0.nextSibling\n );\n if (null === JSCompiler_inline_result$jscomp$0) {\n JSCompiler_inline_result$jscomp$0 = null;\n break b;\n }\n }\n inRootOrSingleton = JSCompiler_inline_result$jscomp$0.data;\n JSCompiler_inline_result$jscomp$0 =\n \"F!\" === inRootOrSingleton || \"F\" === inRootOrSingleton\n ? JSCompiler_inline_result$jscomp$0\n : null;\n }\n if (JSCompiler_inline_result$jscomp$0) {\n nextHydratableInstance = getNextHydratable(\n JSCompiler_inline_result$jscomp$0.nextSibling\n );\n JSCompiler_inline_result =\n \"F!\" === JSCompiler_inline_result$jscomp$0.data;\n break a;\n }\n }\n throwOnHydrationMismatch(JSCompiler_inline_result);\n }\n JSCompiler_inline_result = !1;\n }\n JSCompiler_inline_result && (initialStateProp = ssrFormState[0]);\n }\n }\n ssrFormState = mountWorkInProgressHook();\n ssrFormState.memoizedState = ssrFormState.baseState = initialStateProp;\n JSCompiler_inline_result = {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: actionStateReducer,\n lastRenderedState: initialStateProp\n };\n ssrFormState.queue = JSCompiler_inline_result;\n ssrFormState = dispatchSetState.bind(\n null,\n currentlyRenderingFiber,\n JSCompiler_inline_result\n );\n JSCompiler_inline_result.dispatch = ssrFormState;\n JSCompiler_inline_result = mountStateImpl(!1);\n inRootOrSingleton = dispatchOptimisticSetState.bind(\n null,\n currentlyRenderingFiber,\n !1,\n JSCompiler_inline_result.queue\n );\n JSCompiler_inline_result = mountWorkInProgressHook();\n JSCompiler_inline_result$jscomp$0 = {\n state: initialStateProp,\n dispatch: null,\n action: action,\n pending: null\n };\n JSCompiler_inline_result.queue = JSCompiler_inline_result$jscomp$0;\n ssrFormState = dispatchActionState.bind(\n null,\n currentlyRenderingFiber,\n JSCompiler_inline_result$jscomp$0,\n inRootOrSingleton,\n ssrFormState\n );\n JSCompiler_inline_result$jscomp$0.dispatch = ssrFormState;\n JSCompiler_inline_result.memoizedState = action;\n return [initialStateProp, ssrFormState, !1];\n}\nfunction updateActionState(action) {\n var stateHook = updateWorkInProgressHook();\n return updateActionStateImpl(stateHook, currentHook, action);\n}\nfunction updateActionStateImpl(stateHook, currentStateHook, action) {\n currentStateHook = updateReducerImpl(\n stateHook,\n currentStateHook,\n actionStateReducer\n )[0];\n stateHook = updateReducer(basicStateReducer)[0];\n if (\n \"object\" === typeof currentStateHook &&\n null !== currentStateHook &&\n \"function\" === typeof currentStateHook.then\n )\n try {\n var state = useThenable(currentStateHook);\n } catch (x) {\n if (x === SuspenseException) throw SuspenseActionException;\n throw x;\n }\n else state = currentStateHook;\n currentStateHook = updateWorkInProgressHook();\n var actionQueue = currentStateHook.queue,\n dispatch = actionQueue.dispatch;\n action !== currentStateHook.memoizedState &&\n ((currentlyRenderingFiber.flags |= 2048),\n pushSimpleEffect(\n 9,\n { destroy: void 0 },\n actionStateActionEffect.bind(null, actionQueue, action),\n null\n ));\n return [state, dispatch, stateHook];\n}\nfunction actionStateActionEffect(actionQueue, action) {\n actionQueue.action = action;\n}\nfunction rerenderActionState(action) {\n var stateHook = updateWorkInProgressHook(),\n currentStateHook = currentHook;\n if (null !== currentStateHook)\n return updateActionStateImpl(stateHook, currentStateHook, action);\n updateWorkInProgressHook();\n stateHook = stateHook.memoizedState;\n currentStateHook = updateWorkInProgressHook();\n var dispatch = currentStateHook.queue.dispatch;\n currentStateHook.memoizedState = action;\n return [stateHook, dispatch, !1];\n}\nfunction pushSimpleEffect(tag, inst, create, deps) {\n tag = { tag: tag, create: create, deps: deps, inst: inst, next: null };\n inst = currentlyRenderingFiber.updateQueue;\n null === inst &&\n ((inst = createFunctionComponentUpdateQueue()),\n (currentlyRenderingFiber.updateQueue = inst));\n create = inst.lastEffect;\n null === create\n ? (inst.lastEffect = tag.next = tag)\n : ((deps = create.next),\n (create.next = tag),\n (tag.next = deps),\n (inst.lastEffect = tag));\n return tag;\n}\nfunction updateRef() {\n return updateWorkInProgressHook().memoizedState;\n}\nfunction mountEffectImpl(fiberFlags, hookFlags, create, deps) {\n var hook = mountWorkInProgressHook();\n currentlyRenderingFiber.flags |= fiberFlags;\n hook.memoizedState = pushSimpleEffect(\n 1 | hookFlags,\n { destroy: void 0 },\n create,\n void 0 === deps ? null : deps\n );\n}\nfunction updateEffectImpl(fiberFlags, hookFlags, create, deps) {\n var hook = updateWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n var inst = hook.memoizedState.inst;\n null !== currentHook &&\n null !== deps &&\n areHookInputsEqual(deps, currentHook.memoizedState.deps)\n ? (hook.memoizedState = pushSimpleEffect(hookFlags, inst, create, deps))\n : ((currentlyRenderingFiber.flags |= fiberFlags),\n (hook.memoizedState = pushSimpleEffect(\n 1 | hookFlags,\n inst,\n create,\n deps\n )));\n}\nfunction mountEffect(create, deps) {\n mountEffectImpl(8390656, 8, create, deps);\n}\nfunction updateEffect(create, deps) {\n updateEffectImpl(2048, 8, create, deps);\n}\nfunction useEffectEventImpl(payload) {\n currentlyRenderingFiber.flags |= 4;\n var componentUpdateQueue = currentlyRenderingFiber.updateQueue;\n if (null === componentUpdateQueue)\n (componentUpdateQueue = createFunctionComponentUpdateQueue()),\n (currentlyRenderingFiber.updateQueue = componentUpdateQueue),\n (componentUpdateQueue.events = [payload]);\n else {\n var events = componentUpdateQueue.events;\n null === events\n ? (componentUpdateQueue.events = [payload])\n : events.push(payload);\n }\n}\nfunction updateEvent(callback) {\n var ref = updateWorkInProgressHook().memoizedState;\n useEffectEventImpl({ ref: ref, nextImpl: callback });\n return function () {\n if (0 !== (executionContext & 2)) throw Error(formatProdErrorMessage(440));\n return ref.impl.apply(void 0, arguments);\n };\n}\nfunction updateInsertionEffect(create, deps) {\n return updateEffectImpl(4, 2, create, deps);\n}\nfunction updateLayoutEffect(create, deps) {\n return updateEffectImpl(4, 4, create, deps);\n}\nfunction imperativeHandleEffect(create, ref) {\n if (\"function\" === typeof ref) {\n create = create();\n var refCleanup = ref(create);\n return function () {\n \"function\" === typeof refCleanup ? refCleanup() : ref(null);\n };\n }\n if (null !== ref && void 0 !== ref)\n return (\n (create = create()),\n (ref.current = create),\n function () {\n ref.current = null;\n }\n );\n}\nfunction updateImperativeHandle(ref, create, deps) {\n deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;\n updateEffectImpl(4, 4, imperativeHandleEffect.bind(null, create, ref), deps);\n}\nfunction mountDebugValue() {}\nfunction updateCallback(callback, deps) {\n var hook = updateWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n var prevState = hook.memoizedState;\n if (null !== deps && areHookInputsEqual(deps, prevState[1]))\n return prevState[0];\n hook.memoizedState = [callback, deps];\n return callback;\n}\nfunction updateMemo(nextCreate, deps) {\n var hook = updateWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n var prevState = hook.memoizedState;\n if (null !== deps && areHookInputsEqual(deps, prevState[1]))\n return prevState[0];\n prevState = nextCreate();\n if (shouldDoubleInvokeUserFnsInHooksDEV) {\n setIsStrictModeForDevtools(!0);\n try {\n nextCreate();\n } finally {\n setIsStrictModeForDevtools(!1);\n }\n }\n hook.memoizedState = [prevState, deps];\n return prevState;\n}\nfunction mountDeferredValueImpl(hook, value, initialValue) {\n if (\n void 0 === initialValue ||\n (0 !== (renderLanes & 1073741824) &&\n 0 === (workInProgressRootRenderLanes & 261930))\n )\n return (hook.memoizedState = value);\n hook.memoizedState = initialValue;\n hook = requestDeferredLane();\n currentlyRenderingFiber.lanes |= hook;\n workInProgressRootSkippedLanes |= hook;\n return initialValue;\n}\nfunction updateDeferredValueImpl(hook, prevValue, value, initialValue) {\n if (objectIs(value, prevValue)) return value;\n if (null !== currentTreeHiddenStackCursor.current)\n return (\n (hook = mountDeferredValueImpl(hook, value, initialValue)),\n objectIs(hook, prevValue) || (didReceiveUpdate = !0),\n hook\n );\n if (\n 0 === (renderLanes & 42) ||\n (0 !== (renderLanes & 1073741824) &&\n 0 === (workInProgressRootRenderLanes & 261930))\n )\n return (didReceiveUpdate = !0), (hook.memoizedState = value);\n hook = requestDeferredLane();\n currentlyRenderingFiber.lanes |= hook;\n workInProgressRootSkippedLanes |= hook;\n return prevValue;\n}\nfunction startTransition(fiber, queue, pendingState, finishedState, callback) {\n var previousPriority = ReactDOMSharedInternals.p;\n ReactDOMSharedInternals.p =\n 0 !== previousPriority && 8 > previousPriority ? previousPriority : 8;\n var prevTransition = ReactSharedInternals.T,\n currentTransition = {};\n ReactSharedInternals.T = currentTransition;\n dispatchOptimisticSetState(fiber, !1, queue, pendingState);\n try {\n var returnValue = callback(),\n onStartTransitionFinish = ReactSharedInternals.S;\n null !== onStartTransitionFinish &&\n onStartTransitionFinish(currentTransition, returnValue);\n if (\n null !== returnValue &&\n \"object\" === typeof returnValue &&\n \"function\" === typeof returnValue.then\n ) {\n var thenableForFinishedState = chainThenableValue(\n returnValue,\n finishedState\n );\n dispatchSetStateInternal(\n fiber,\n queue,\n thenableForFinishedState,\n requestUpdateLane(fiber)\n );\n } else\n dispatchSetStateInternal(\n fiber,\n queue,\n finishedState,\n requestUpdateLane(fiber)\n );\n } catch (error) {\n dispatchSetStateInternal(\n fiber,\n queue,\n { then: function () {}, status: \"rejected\", reason: error },\n requestUpdateLane()\n );\n } finally {\n (ReactDOMSharedInternals.p = previousPriority),\n null !== prevTransition &&\n null !== currentTransition.types &&\n (prevTransition.types = currentTransition.types),\n (ReactSharedInternals.T = prevTransition);\n }\n}\nfunction noop() {}\nfunction startHostTransition(formFiber, pendingState, action, formData) {\n if (5 !== formFiber.tag) throw Error(formatProdErrorMessage(476));\n var queue = ensureFormComponentIsStateful(formFiber).queue;\n startTransition(\n formFiber,\n queue,\n pendingState,\n sharedNotPendingObject,\n null === action\n ? noop\n : function () {\n requestFormReset$1(formFiber);\n return action(formData);\n }\n );\n}\nfunction ensureFormComponentIsStateful(formFiber) {\n var existingStateHook = formFiber.memoizedState;\n if (null !== existingStateHook) return existingStateHook;\n existingStateHook = {\n memoizedState: sharedNotPendingObject,\n baseState: sharedNotPendingObject,\n baseQueue: null,\n queue: {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: basicStateReducer,\n lastRenderedState: sharedNotPendingObject\n },\n next: null\n };\n var initialResetState = {};\n existingStateHook.next = {\n memoizedState: initialResetState,\n baseState: initialResetState,\n baseQueue: null,\n queue: {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: basicStateReducer,\n lastRenderedState: initialResetState\n },\n next: null\n };\n formFiber.memoizedState = existingStateHook;\n formFiber = formFiber.alternate;\n null !== formFiber && (formFiber.memoizedState = existingStateHook);\n return existingStateHook;\n}\nfunction requestFormReset$1(formFiber) {\n var stateHook = ensureFormComponentIsStateful(formFiber);\n null === stateHook.next && (stateHook = formFiber.alternate.memoizedState);\n dispatchSetStateInternal(\n formFiber,\n stateHook.next.queue,\n {},\n requestUpdateLane()\n );\n}\nfunction useHostTransitionStatus() {\n return readContext(HostTransitionContext);\n}\nfunction updateId() {\n return updateWorkInProgressHook().memoizedState;\n}\nfunction updateRefresh() {\n return updateWorkInProgressHook().memoizedState;\n}\nfunction refreshCache(fiber) {\n for (var provider = fiber.return; null !== provider; ) {\n switch (provider.tag) {\n case 24:\n case 3:\n var lane = requestUpdateLane();\n fiber = createUpdate(lane);\n var root$69 = enqueueUpdate(provider, fiber, lane);\n null !== root$69 &&\n (scheduleUpdateOnFiber(root$69, provider, lane),\n entangleTransitions(root$69, provider, lane));\n provider = { cache: createCache() };\n fiber.payload = provider;\n return;\n }\n provider = provider.return;\n }\n}\nfunction dispatchReducerAction(fiber, queue, action) {\n var lane = requestUpdateLane();\n action = {\n lane: lane,\n revertLane: 0,\n gesture: null,\n action: action,\n hasEagerState: !1,\n eagerState: null,\n next: null\n };\n isRenderPhaseUpdate(fiber)\n ? enqueueRenderPhaseUpdate(queue, action)\n : ((action = enqueueConcurrentHookUpdate(fiber, queue, action, lane)),\n null !== action &&\n (scheduleUpdateOnFiber(action, fiber, lane),\n entangleTransitionUpdate(action, queue, lane)));\n}\nfunction dispatchSetState(fiber, queue, action) {\n var lane = requestUpdateLane();\n dispatchSetStateInternal(fiber, queue, action, lane);\n}\nfunction dispatchSetStateInternal(fiber, queue, action, lane) {\n var update = {\n lane: lane,\n revertLane: 0,\n gesture: null,\n action: action,\n hasEagerState: !1,\n eagerState: null,\n next: null\n };\n if (isRenderPhaseUpdate(fiber)) enqueueRenderPhaseUpdate(queue, update);\n else {\n var alternate = fiber.alternate;\n if (\n 0 === fiber.lanes &&\n (null === alternate || 0 === alternate.lanes) &&\n ((alternate = queue.lastRenderedReducer), null !== alternate)\n )\n try {\n var currentState = queue.lastRenderedState,\n eagerState = alternate(currentState, action);\n update.hasEagerState = !0;\n update.eagerState = eagerState;\n if (objectIs(eagerState, currentState))\n return (\n enqueueUpdate$1(fiber, queue, update, 0),\n null === workInProgressRoot && finishQueueingConcurrentUpdates(),\n !1\n );\n } catch (error) {\n } finally {\n }\n action = enqueueConcurrentHookUpdate(fiber, queue, update, lane);\n if (null !== action)\n return (\n scheduleUpdateOnFiber(action, fiber, lane),\n entangleTransitionUpdate(action, queue, lane),\n !0\n );\n }\n return !1;\n}\nfunction dispatchOptimisticSetState(fiber, throwIfDuringRender, queue, action) {\n action = {\n lane: 2,\n revertLane: requestTransitionLane(),\n gesture: null,\n action: action,\n hasEagerState: !1,\n eagerState: null,\n next: null\n };\n if (isRenderPhaseUpdate(fiber)) {\n if (throwIfDuringRender) throw Error(formatProdErrorMessage(479));\n } else\n (throwIfDuringRender = enqueueConcurrentHookUpdate(\n fiber,\n queue,\n action,\n 2\n )),\n null !== throwIfDuringRender &&\n scheduleUpdateOnFiber(throwIfDuringRender, fiber, 2);\n}\nfunction isRenderPhaseUpdate(fiber) {\n var alternate = fiber.alternate;\n return (\n fiber === currentlyRenderingFiber ||\n (null !== alternate && alternate === currentlyRenderingFiber)\n );\n}\nfunction enqueueRenderPhaseUpdate(queue, update) {\n didScheduleRenderPhaseUpdateDuringThisPass = didScheduleRenderPhaseUpdate =\n !0;\n var pending = queue.pending;\n null === pending\n ? (update.next = update)\n : ((update.next = pending.next), (pending.next = update));\n queue.pending = update;\n}\nfunction entangleTransitionUpdate(root, queue, lane) {\n if (0 !== (lane & 4194048)) {\n var queueLanes = queue.lanes;\n queueLanes &= root.pendingLanes;\n lane |= queueLanes;\n queue.lanes = lane;\n markRootEntangled(root, lane);\n }\n}\nvar ContextOnlyDispatcher = {\n readContext: readContext,\n use: use,\n useCallback: throwInvalidHookError,\n useContext: throwInvalidHookError,\n useEffect: throwInvalidHookError,\n useImperativeHandle: throwInvalidHookError,\n useLayoutEffect: throwInvalidHookError,\n useInsertionEffect: throwInvalidHookError,\n useMemo: throwInvalidHookError,\n useReducer: throwInvalidHookError,\n useRef: throwInvalidHookError,\n useState: throwInvalidHookError,\n useDebugValue: throwInvalidHookError,\n useDeferredValue: throwInvalidHookError,\n useTransition: throwInvalidHookError,\n useSyncExternalStore: throwInvalidHookError,\n useId: throwInvalidHookError,\n useHostTransitionStatus: throwInvalidHookError,\n useFormState: throwInvalidHookError,\n useActionState: throwInvalidHookError,\n useOptimistic: throwInvalidHookError,\n useMemoCache: throwInvalidHookError,\n useCacheRefresh: throwInvalidHookError\n};\nContextOnlyDispatcher.useEffectEvent = throwInvalidHookError;\nvar HooksDispatcherOnMount = {\n readContext: readContext,\n use: use,\n useCallback: function (callback, deps) {\n mountWorkInProgressHook().memoizedState = [\n callback,\n void 0 === deps ? null : deps\n ];\n return callback;\n },\n useContext: readContext,\n useEffect: mountEffect,\n useImperativeHandle: function (ref, create, deps) {\n deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;\n mountEffectImpl(\n 4194308,\n 4,\n imperativeHandleEffect.bind(null, create, ref),\n deps\n );\n },\n useLayoutEffect: function (create, deps) {\n return mountEffectImpl(4194308, 4, create, deps);\n },\n useInsertionEffect: function (create, deps) {\n mountEffectImpl(4, 2, create, deps);\n },\n useMemo: function (nextCreate, deps) {\n var hook = mountWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n var nextValue = nextCreate();\n if (shouldDoubleInvokeUserFnsInHooksDEV) {\n setIsStrictModeForDevtools(!0);\n try {\n nextCreate();\n } finally {\n setIsStrictModeForDevtools(!1);\n }\n }\n hook.memoizedState = [nextValue, deps];\n return nextValue;\n },\n useReducer: function (reducer, initialArg, init) {\n var hook = mountWorkInProgressHook();\n if (void 0 !== init) {\n var initialState = init(initialArg);\n if (shouldDoubleInvokeUserFnsInHooksDEV) {\n setIsStrictModeForDevtools(!0);\n try {\n init(initialArg);\n } finally {\n setIsStrictModeForDevtools(!1);\n }\n }\n } else initialState = initialArg;\n hook.memoizedState = hook.baseState = initialState;\n reducer = {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: reducer,\n lastRenderedState: initialState\n };\n hook.queue = reducer;\n reducer = reducer.dispatch = dispatchReducerAction.bind(\n null,\n currentlyRenderingFiber,\n reducer\n );\n return [hook.memoizedState, reducer];\n },\n useRef: function (initialValue) {\n var hook = mountWorkInProgressHook();\n initialValue = { current: initialValue };\n return (hook.memoizedState = initialValue);\n },\n useState: function (initialState) {\n initialState = mountStateImpl(initialState);\n var queue = initialState.queue,\n dispatch = dispatchSetState.bind(null, currentlyRenderingFiber, queue);\n queue.dispatch = dispatch;\n return [initialState.memoizedState, dispatch];\n },\n useDebugValue: mountDebugValue,\n useDeferredValue: function (value, initialValue) {\n var hook = mountWorkInProgressHook();\n return mountDeferredValueImpl(hook, value, initialValue);\n },\n useTransition: function () {\n var stateHook = mountStateImpl(!1);\n stateHook = startTransition.bind(\n null,\n currentlyRenderingFiber,\n stateHook.queue,\n !0,\n !1\n );\n mountWorkInProgressHook().memoizedState = stateHook;\n return [!1, stateHook];\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n var fiber = currentlyRenderingFiber,\n hook = mountWorkInProgressHook();\n if (isHydrating) {\n if (void 0 === getServerSnapshot)\n throw Error(formatProdErrorMessage(407));\n getServerSnapshot = getServerSnapshot();\n } else {\n getServerSnapshot = getSnapshot();\n if (null === workInProgressRoot)\n throw Error(formatProdErrorMessage(349));\n 0 !== (workInProgressRootRenderLanes & 127) ||\n pushStoreConsistencyCheck(fiber, getSnapshot, getServerSnapshot);\n }\n hook.memoizedState = getServerSnapshot;\n var inst = { value: getServerSnapshot, getSnapshot: getSnapshot };\n hook.queue = inst;\n mountEffect(subscribeToStore.bind(null, fiber, inst, subscribe), [\n subscribe\n ]);\n fiber.flags |= 2048;\n pushSimpleEffect(\n 9,\n { destroy: void 0 },\n updateStoreInstance.bind(\n null,\n fiber,\n inst,\n getServerSnapshot,\n getSnapshot\n ),\n null\n );\n return getServerSnapshot;\n },\n useId: function () {\n var hook = mountWorkInProgressHook(),\n identifierPrefix = workInProgressRoot.identifierPrefix;\n if (isHydrating) {\n var JSCompiler_inline_result = treeContextOverflow;\n var idWithLeadingBit = treeContextId;\n JSCompiler_inline_result =\n (\n idWithLeadingBit & ~(1 << (32 - clz32(idWithLeadingBit) - 1))\n ).toString(32) + JSCompiler_inline_result;\n identifierPrefix =\n \"_\" + identifierPrefix + \"R_\" + JSCompiler_inline_result;\n JSCompiler_inline_result = localIdCounter++;\n 0 < JSCompiler_inline_result &&\n (identifierPrefix += \"H\" + JSCompiler_inline_result.toString(32));\n identifierPrefix += \"_\";\n } else\n (JSCompiler_inline_result = globalClientIdCounter++),\n (identifierPrefix =\n \"_\" +\n identifierPrefix +\n \"r_\" +\n JSCompiler_inline_result.toString(32) +\n \"_\");\n return (hook.memoizedState = identifierPrefix);\n },\n useHostTransitionStatus: useHostTransitionStatus,\n useFormState: mountActionState,\n useActionState: mountActionState,\n useOptimistic: function (passthrough) {\n var hook = mountWorkInProgressHook();\n hook.memoizedState = hook.baseState = passthrough;\n var queue = {\n pending: null,\n lanes: 0,\n dispatch: null,\n lastRenderedReducer: null,\n lastRenderedState: null\n };\n hook.queue = queue;\n hook = dispatchOptimisticSetState.bind(\n null,\n currentlyRenderingFiber,\n !0,\n queue\n );\n queue.dispatch = hook;\n return [passthrough, hook];\n },\n useMemoCache: useMemoCache,\n useCacheRefresh: function () {\n return (mountWorkInProgressHook().memoizedState = refreshCache.bind(\n null,\n currentlyRenderingFiber\n ));\n },\n useEffectEvent: function (callback) {\n var hook = mountWorkInProgressHook(),\n ref = { impl: callback };\n hook.memoizedState = ref;\n return function () {\n if (0 !== (executionContext & 2))\n throw Error(formatProdErrorMessage(440));\n return ref.impl.apply(void 0, arguments);\n };\n }\n },\n HooksDispatcherOnUpdate = {\n readContext: readContext,\n use: use,\n useCallback: updateCallback,\n useContext: readContext,\n useEffect: updateEffect,\n useImperativeHandle: updateImperativeHandle,\n useInsertionEffect: updateInsertionEffect,\n useLayoutEffect: updateLayoutEffect,\n useMemo: updateMemo,\n useReducer: updateReducer,\n useRef: updateRef,\n useState: function () {\n return updateReducer(basicStateReducer);\n },\n useDebugValue: mountDebugValue,\n useDeferredValue: function (value, initialValue) {\n var hook = updateWorkInProgressHook();\n return updateDeferredValueImpl(\n hook,\n currentHook.memoizedState,\n value,\n initialValue\n );\n },\n useTransition: function () {\n var booleanOrThenable = updateReducer(basicStateReducer)[0],\n start = updateWorkInProgressHook().memoizedState;\n return [\n \"boolean\" === typeof booleanOrThenable\n ? booleanOrThenable\n : useThenable(booleanOrThenable),\n start\n ];\n },\n useSyncExternalStore: updateSyncExternalStore,\n useId: updateId,\n useHostTransitionStatus: useHostTransitionStatus,\n useFormState: updateActionState,\n useActionState: updateActionState,\n useOptimistic: function (passthrough, reducer) {\n var hook = updateWorkInProgressHook();\n return updateOptimisticImpl(hook, currentHook, passthrough, reducer);\n },\n useMemoCache: useMemoCache,\n useCacheRefresh: updateRefresh\n };\nHooksDispatcherOnUpdate.useEffectEvent = updateEvent;\nvar HooksDispatcherOnRerender = {\n readContext: readContext,\n use: use,\n useCallback: updateCallback,\n useContext: readContext,\n useEffect: updateEffect,\n useImperativeHandle: updateImperativeHandle,\n useInsertionEffect: updateInsertionEffect,\n useLayoutEffect: updateLayoutEffect,\n useMemo: updateMemo,\n useReducer: rerenderReducer,\n useRef: updateRef,\n useState: function () {\n return rerenderReducer(basicStateReducer);\n },\n useDebugValue: mountDebugValue,\n useDeferredValue: function (value, initialValue) {\n var hook = updateWorkInProgressHook();\n return null === currentHook\n ? mountDeferredValueImpl(hook, value, initialValue)\n : updateDeferredValueImpl(\n hook,\n currentHook.memoizedState,\n value,\n initialValue\n );\n },\n useTransition: function () {\n var booleanOrThenable = rerenderReducer(basicStateReducer)[0],\n start = updateWorkInProgressHook().memoizedState;\n return [\n \"boolean\" === typeof booleanOrThenable\n ? booleanOrThenable\n : useThenable(booleanOrThenable),\n start\n ];\n },\n useSyncExternalStore: updateSyncExternalStore,\n useId: updateId,\n useHostTransitionStatus: useHostTransitionStatus,\n useFormState: rerenderActionState,\n useActionState: rerenderActionState,\n useOptimistic: function (passthrough, reducer) {\n var hook = updateWorkInProgressHook();\n if (null !== currentHook)\n return updateOptimisticImpl(hook, currentHook, passthrough, reducer);\n hook.baseState = passthrough;\n return [passthrough, hook.queue.dispatch];\n },\n useMemoCache: useMemoCache,\n useCacheRefresh: updateRefresh\n};\nHooksDispatcherOnRerender.useEffectEvent = updateEvent;\nfunction applyDerivedStateFromProps(\n workInProgress,\n ctor,\n getDerivedStateFromProps,\n nextProps\n) {\n ctor = workInProgress.memoizedState;\n getDerivedStateFromProps = getDerivedStateFromProps(nextProps, ctor);\n getDerivedStateFromProps =\n null === getDerivedStateFromProps || void 0 === getDerivedStateFromProps\n ? ctor\n : assign({}, ctor, getDerivedStateFromProps);\n workInProgress.memoizedState = getDerivedStateFromProps;\n 0 === workInProgress.lanes &&\n (workInProgress.updateQueue.baseState = getDerivedStateFromProps);\n}\nvar classComponentUpdater = {\n enqueueSetState: function (inst, payload, callback) {\n inst = inst._reactInternals;\n var lane = requestUpdateLane(),\n update = createUpdate(lane);\n update.payload = payload;\n void 0 !== callback && null !== callback && (update.callback = callback);\n payload = enqueueUpdate(inst, update, lane);\n null !== payload &&\n (scheduleUpdateOnFiber(payload, inst, lane),\n entangleTransitions(payload, inst, lane));\n },\n enqueueReplaceState: function (inst, payload, callback) {\n inst = inst._reactInternals;\n var lane = requestUpdateLane(),\n update = createUpdate(lane);\n update.tag = 1;\n update.payload = payload;\n void 0 !== callback && null !== callback && (update.callback = callback);\n payload = enqueueUpdate(inst, update, lane);\n null !== payload &&\n (scheduleUpdateOnFiber(payload, inst, lane),\n entangleTransitions(payload, inst, lane));\n },\n enqueueForceUpdate: function (inst, callback) {\n inst = inst._reactInternals;\n var lane = requestUpdateLane(),\n update = createUpdate(lane);\n update.tag = 2;\n void 0 !== callback && null !== callback && (update.callback = callback);\n callback = enqueueUpdate(inst, update, lane);\n null !== callback &&\n (scheduleUpdateOnFiber(callback, inst, lane),\n entangleTransitions(callback, inst, lane));\n }\n};\nfunction checkShouldComponentUpdate(\n workInProgress,\n ctor,\n oldProps,\n newProps,\n oldState,\n newState,\n nextContext\n) {\n workInProgress = workInProgress.stateNode;\n return \"function\" === typeof workInProgress.shouldComponentUpdate\n ? workInProgress.shouldComponentUpdate(newProps, newState, nextContext)\n : ctor.prototype && ctor.prototype.isPureReactComponent\n ? !shallowEqual(oldProps, newProps) || !shallowEqual(oldState, newState)\n : !0;\n}\nfunction callComponentWillReceiveProps(\n workInProgress,\n instance,\n newProps,\n nextContext\n) {\n workInProgress = instance.state;\n \"function\" === typeof instance.componentWillReceiveProps &&\n instance.componentWillReceiveProps(newProps, nextContext);\n \"function\" === typeof instance.UNSAFE_componentWillReceiveProps &&\n instance.UNSAFE_componentWillReceiveProps(newProps, nextContext);\n instance.state !== workInProgress &&\n classComponentUpdater.enqueueReplaceState(instance, instance.state, null);\n}\nfunction resolveClassComponentProps(Component, baseProps) {\n var newProps = baseProps;\n if (\"ref\" in baseProps) {\n newProps = {};\n for (var propName in baseProps)\n \"ref\" !== propName && (newProps[propName] = baseProps[propName]);\n }\n if ((Component = Component.defaultProps)) {\n newProps === baseProps && (newProps = assign({}, newProps));\n for (var propName$73 in Component)\n void 0 === newProps[propName$73] &&\n (newProps[propName$73] = Component[propName$73]);\n }\n return newProps;\n}\nfunction defaultOnUncaughtError(error) {\n reportGlobalError(error);\n}\nfunction defaultOnCaughtError(error) {\n console.error(error);\n}\nfunction defaultOnRecoverableError(error) {\n reportGlobalError(error);\n}\nfunction logUncaughtError(root, errorInfo) {\n try {\n var onUncaughtError = root.onUncaughtError;\n onUncaughtError(errorInfo.value, { componentStack: errorInfo.stack });\n } catch (e$74) {\n setTimeout(function () {\n throw e$74;\n });\n }\n}\nfunction logCaughtError(root, boundary, errorInfo) {\n try {\n var onCaughtError = root.onCaughtError;\n onCaughtError(errorInfo.value, {\n componentStack: errorInfo.stack,\n errorBoundary: 1 === boundary.tag ? boundary.stateNode : null\n });\n } catch (e$75) {\n setTimeout(function () {\n throw e$75;\n });\n }\n}\nfunction createRootErrorUpdate(root, errorInfo, lane) {\n lane = createUpdate(lane);\n lane.tag = 3;\n lane.payload = { element: null };\n lane.callback = function () {\n logUncaughtError(root, errorInfo);\n };\n return lane;\n}\nfunction createClassErrorUpdate(lane) {\n lane = createUpdate(lane);\n lane.tag = 3;\n return lane;\n}\nfunction initializeClassErrorUpdate(update, root, fiber, errorInfo) {\n var getDerivedStateFromError = fiber.type.getDerivedStateFromError;\n if (\"function\" === typeof getDerivedStateFromError) {\n var error = errorInfo.value;\n update.payload = function () {\n return getDerivedStateFromError(error);\n };\n update.callback = function () {\n logCaughtError(root, fiber, errorInfo);\n };\n }\n var inst = fiber.stateNode;\n null !== inst &&\n \"function\" === typeof inst.componentDidCatch &&\n (update.callback = function () {\n logCaughtError(root, fiber, errorInfo);\n \"function\" !== typeof getDerivedStateFromError &&\n (null === legacyErrorBoundariesThatAlreadyFailed\n ? (legacyErrorBoundariesThatAlreadyFailed = new Set([this]))\n : legacyErrorBoundariesThatAlreadyFailed.add(this));\n var stack = errorInfo.stack;\n this.componentDidCatch(errorInfo.value, {\n componentStack: null !== stack ? stack : \"\"\n });\n });\n}\nfunction throwException(\n root,\n returnFiber,\n sourceFiber,\n value,\n rootRenderLanes\n) {\n sourceFiber.flags |= 32768;\n if (\n null !== value &&\n \"object\" === typeof value &&\n \"function\" === typeof value.then\n ) {\n returnFiber = sourceFiber.alternate;\n null !== returnFiber &&\n propagateParentContextChanges(\n returnFiber,\n sourceFiber,\n rootRenderLanes,\n !0\n );\n sourceFiber = suspenseHandlerStackCursor.current;\n if (null !== sourceFiber) {\n switch (sourceFiber.tag) {\n case 31:\n case 13:\n return (\n null === shellBoundary\n ? renderDidSuspendDelayIfPossible()\n : null === sourceFiber.alternate &&\n 0 === workInProgressRootExitStatus &&\n (workInProgressRootExitStatus = 3),\n (sourceFiber.flags &= -257),\n (sourceFiber.flags |= 65536),\n (sourceFiber.lanes = rootRenderLanes),\n value === noopSuspenseyCommitThenable\n ? (sourceFiber.flags |= 16384)\n : ((returnFiber = sourceFiber.updateQueue),\n null === returnFiber\n ? (sourceFiber.updateQueue = new Set([value]))\n : returnFiber.add(value),\n attachPingListener(root, value, rootRenderLanes)),\n !1\n );\n case 22:\n return (\n (sourceFiber.flags |= 65536),\n value === noopSuspenseyCommitThenable\n ? (sourceFiber.flags |= 16384)\n : ((returnFiber = sourceFiber.updateQueue),\n null === returnFiber\n ? ((returnFiber = {\n transitions: null,\n markerInstances: null,\n retryQueue: new Set([value])\n }),\n (sourceFiber.updateQueue = returnFiber))\n : ((sourceFiber = returnFiber.retryQueue),\n null === sourceFiber\n ? (returnFiber.retryQueue = new Set([value]))\n : sourceFiber.add(value)),\n attachPingListener(root, value, rootRenderLanes)),\n !1\n );\n }\n throw Error(formatProdErrorMessage(435, sourceFiber.tag));\n }\n attachPingListener(root, value, rootRenderLanes);\n renderDidSuspendDelayIfPossible();\n return !1;\n }\n if (isHydrating)\n return (\n (returnFiber = suspenseHandlerStackCursor.current),\n null !== returnFiber\n ? (0 === (returnFiber.flags & 65536) && (returnFiber.flags |= 256),\n (returnFiber.flags |= 65536),\n (returnFiber.lanes = rootRenderLanes),\n value !== HydrationMismatchException &&\n ((root = Error(formatProdErrorMessage(422), { cause: value })),\n queueHydrationError(createCapturedValueAtFiber(root, sourceFiber))))\n : (value !== HydrationMismatchException &&\n ((returnFiber = Error(formatProdErrorMessage(423), {\n cause: value\n })),\n queueHydrationError(\n createCapturedValueAtFiber(returnFiber, sourceFiber)\n )),\n (root = root.current.alternate),\n (root.flags |= 65536),\n (rootRenderLanes &= -rootRenderLanes),\n (root.lanes |= rootRenderLanes),\n (value = createCapturedValueAtFiber(value, sourceFiber)),\n (rootRenderLanes = createRootErrorUpdate(\n root.stateNode,\n value,\n rootRenderLanes\n )),\n enqueueCapturedUpdate(root, rootRenderLanes),\n 4 !== workInProgressRootExitStatus &&\n (workInProgressRootExitStatus = 2)),\n !1\n );\n var wrapperError = Error(formatProdErrorMessage(520), { cause: value });\n wrapperError = createCapturedValueAtFiber(wrapperError, sourceFiber);\n null === workInProgressRootConcurrentErrors\n ? (workInProgressRootConcurrentErrors = [wrapperError])\n : workInProgressRootConcurrentErrors.push(wrapperError);\n 4 !== workInProgressRootExitStatus && (workInProgressRootExitStatus = 2);\n if (null === returnFiber) return !0;\n value = createCapturedValueAtFiber(value, sourceFiber);\n sourceFiber = returnFiber;\n do {\n switch (sourceFiber.tag) {\n case 3:\n return (\n (sourceFiber.flags |= 65536),\n (root = rootRenderLanes & -rootRenderLanes),\n (sourceFiber.lanes |= root),\n (root = createRootErrorUpdate(sourceFiber.stateNode, value, root)),\n enqueueCapturedUpdate(sourceFiber, root),\n !1\n );\n case 1:\n if (\n ((returnFiber = sourceFiber.type),\n (wrapperError = sourceFiber.stateNode),\n 0 === (sourceFiber.flags & 128) &&\n (\"function\" === typeof returnFiber.getDerivedStateFromError ||\n (null !== wrapperError &&\n \"function\" === typeof wrapperError.componentDidCatch &&\n (null === legacyErrorBoundariesThatAlreadyFailed ||\n !legacyErrorBoundariesThatAlreadyFailed.has(wrapperError)))))\n )\n return (\n (sourceFiber.flags |= 65536),\n (rootRenderLanes &= -rootRenderLanes),\n (sourceFiber.lanes |= rootRenderLanes),\n (rootRenderLanes = createClassErrorUpdate(rootRenderLanes)),\n initializeClassErrorUpdate(\n rootRenderLanes,\n root,\n sourceFiber,\n value\n ),\n enqueueCapturedUpdate(sourceFiber, rootRenderLanes),\n !1\n );\n }\n sourceFiber = sourceFiber.return;\n } while (null !== sourceFiber);\n return !1;\n}\nvar SelectiveHydrationException = Error(formatProdErrorMessage(461)),\n didReceiveUpdate = !1;\nfunction reconcileChildren(current, workInProgress, nextChildren, renderLanes) {\n workInProgress.child =\n null === current\n ? mountChildFibers(workInProgress, null, nextChildren, renderLanes)\n : reconcileChildFibers(\n workInProgress,\n current.child,\n nextChildren,\n renderLanes\n );\n}\nfunction updateForwardRef(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n) {\n Component = Component.render;\n var ref = workInProgress.ref;\n if (\"ref\" in nextProps) {\n var propsWithoutRef = {};\n for (var key in nextProps)\n \"ref\" !== key && (propsWithoutRef[key] = nextProps[key]);\n } else propsWithoutRef = nextProps;\n prepareToReadContext(workInProgress);\n nextProps = renderWithHooks(\n current,\n workInProgress,\n Component,\n propsWithoutRef,\n ref,\n renderLanes\n );\n key = checkDidRenderIdHook();\n if (null !== current && !didReceiveUpdate)\n return (\n bailoutHooks(current, workInProgress, renderLanes),\n bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)\n );\n isHydrating && key && pushMaterializedTreeId(workInProgress);\n workInProgress.flags |= 1;\n reconcileChildren(current, workInProgress, nextProps, renderLanes);\n return workInProgress.child;\n}\nfunction updateMemoComponent(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n) {\n if (null === current) {\n var type = Component.type;\n if (\n \"function\" === typeof type &&\n !shouldConstruct(type) &&\n void 0 === type.defaultProps &&\n null === Component.compare\n )\n return (\n (workInProgress.tag = 15),\n (workInProgress.type = type),\n updateSimpleMemoComponent(\n current,\n workInProgress,\n type,\n nextProps,\n renderLanes\n )\n );\n current = createFiberFromTypeAndProps(\n Component.type,\n null,\n nextProps,\n workInProgress,\n workInProgress.mode,\n renderLanes\n );\n current.ref = workInProgress.ref;\n current.return = workInProgress;\n return (workInProgress.child = current);\n }\n type = current.child;\n if (!checkScheduledUpdateOrContext(current, renderLanes)) {\n var prevProps = type.memoizedProps;\n Component = Component.compare;\n Component = null !== Component ? Component : shallowEqual;\n if (Component(prevProps, nextProps) && current.ref === workInProgress.ref)\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n }\n workInProgress.flags |= 1;\n current = createWorkInProgress(type, nextProps);\n current.ref = workInProgress.ref;\n current.return = workInProgress;\n return (workInProgress.child = current);\n}\nfunction updateSimpleMemoComponent(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n) {\n if (null !== current) {\n var prevProps = current.memoizedProps;\n if (\n shallowEqual(prevProps, nextProps) &&\n current.ref === workInProgress.ref\n )\n if (\n ((didReceiveUpdate = !1),\n (workInProgress.pendingProps = nextProps = prevProps),\n checkScheduledUpdateOrContext(current, renderLanes))\n )\n 0 !== (current.flags & 131072) && (didReceiveUpdate = !0);\n else\n return (\n (workInProgress.lanes = current.lanes),\n bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)\n );\n }\n return updateFunctionComponent(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n );\n}\nfunction updateOffscreenComponent(\n current,\n workInProgress,\n renderLanes,\n nextProps\n) {\n var nextChildren = nextProps.children,\n prevState = null !== current ? current.memoizedState : null;\n null === current &&\n null === workInProgress.stateNode &&\n (workInProgress.stateNode = {\n _visibility: 1,\n _pendingMarkers: null,\n _retryCache: null,\n _transitions: null\n });\n if (\"hidden\" === nextProps.mode) {\n if (0 !== (workInProgress.flags & 128)) {\n prevState =\n null !== prevState ? prevState.baseLanes | renderLanes : renderLanes;\n if (null !== current) {\n nextProps = workInProgress.child = current.child;\n for (nextChildren = 0; null !== nextProps; )\n (nextChildren =\n nextChildren | nextProps.lanes | nextProps.childLanes),\n (nextProps = nextProps.sibling);\n nextProps = nextChildren & ~prevState;\n } else (nextProps = 0), (workInProgress.child = null);\n return deferHiddenOffscreenComponent(\n current,\n workInProgress,\n prevState,\n renderLanes,\n nextProps\n );\n }\n if (0 !== (renderLanes & 536870912))\n (workInProgress.memoizedState = { baseLanes: 0, cachePool: null }),\n null !== current &&\n pushTransition(\n workInProgress,\n null !== prevState ? prevState.cachePool : null\n ),\n null !== prevState\n ? pushHiddenContext(workInProgress, prevState)\n : reuseHiddenContextOnStack(),\n pushOffscreenSuspenseHandler(workInProgress);\n else\n return (\n (nextProps = workInProgress.lanes = 536870912),\n deferHiddenOffscreenComponent(\n current,\n workInProgress,\n null !== prevState ? prevState.baseLanes | renderLanes : renderLanes,\n renderLanes,\n nextProps\n )\n );\n } else\n null !== prevState\n ? (pushTransition(workInProgress, prevState.cachePool),\n pushHiddenContext(workInProgress, prevState),\n reuseSuspenseHandlerOnStack(workInProgress),\n (workInProgress.memoizedState = null))\n : (null !== current && pushTransition(workInProgress, null),\n reuseHiddenContextOnStack(),\n reuseSuspenseHandlerOnStack(workInProgress));\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\nfunction bailoutOffscreenComponent(current, workInProgress) {\n (null !== current && 22 === current.tag) ||\n null !== workInProgress.stateNode ||\n (workInProgress.stateNode = {\n _visibility: 1,\n _pendingMarkers: null,\n _retryCache: null,\n _transitions: null\n });\n return workInProgress.sibling;\n}\nfunction deferHiddenOffscreenComponent(\n current,\n workInProgress,\n nextBaseLanes,\n renderLanes,\n remainingChildLanes\n) {\n var JSCompiler_inline_result = peekCacheFromPool();\n JSCompiler_inline_result =\n null === JSCompiler_inline_result\n ? null\n : { parent: CacheContext._currentValue, pool: JSCompiler_inline_result };\n workInProgress.memoizedState = {\n baseLanes: nextBaseLanes,\n cachePool: JSCompiler_inline_result\n };\n null !== current && pushTransition(workInProgress, null);\n reuseHiddenContextOnStack();\n pushOffscreenSuspenseHandler(workInProgress);\n null !== current &&\n propagateParentContextChanges(current, workInProgress, renderLanes, !0);\n workInProgress.childLanes = remainingChildLanes;\n return null;\n}\nfunction mountActivityChildren(workInProgress, nextProps) {\n nextProps = mountWorkInProgressOffscreenFiber(\n { mode: nextProps.mode, children: nextProps.children },\n workInProgress.mode\n );\n nextProps.ref = workInProgress.ref;\n workInProgress.child = nextProps;\n nextProps.return = workInProgress;\n return nextProps;\n}\nfunction retryActivityComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n) {\n reconcileChildFibers(workInProgress, current.child, null, renderLanes);\n current = mountActivityChildren(workInProgress, workInProgress.pendingProps);\n current.flags |= 2;\n popSuspenseHandler(workInProgress);\n workInProgress.memoizedState = null;\n return current;\n}\nfunction updateActivityComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps,\n didSuspend = 0 !== (workInProgress.flags & 128);\n workInProgress.flags &= -129;\n if (null === current) {\n if (isHydrating) {\n if (\"hidden\" === nextProps.mode)\n return (\n (current = mountActivityChildren(workInProgress, nextProps)),\n (workInProgress.lanes = 536870912),\n bailoutOffscreenComponent(null, current)\n );\n pushDehydratedActivitySuspenseHandler(workInProgress);\n (current = nextHydratableInstance)\n ? ((current = canHydrateHydrationBoundary(\n current,\n rootOrSingletonContext\n )),\n (current = null !== current && \"&\" === current.data ? current : null),\n null !== current &&\n ((workInProgress.memoizedState = {\n dehydrated: current,\n treeContext:\n null !== treeContextProvider\n ? { id: treeContextId, overflow: treeContextOverflow }\n : null,\n retryLane: 536870912,\n hydrationErrors: null\n }),\n (renderLanes = createFiberFromDehydratedFragment(current)),\n (renderLanes.return = workInProgress),\n (workInProgress.child = renderLanes),\n (hydrationParentFiber = workInProgress),\n (nextHydratableInstance = null)))\n : (current = null);\n if (null === current) throw throwOnHydrationMismatch(workInProgress);\n workInProgress.lanes = 536870912;\n return null;\n }\n return mountActivityChildren(workInProgress, nextProps);\n }\n var prevState = current.memoizedState;\n if (null !== prevState) {\n var dehydrated = prevState.dehydrated;\n pushDehydratedActivitySuspenseHandler(workInProgress);\n if (didSuspend)\n if (workInProgress.flags & 256)\n (workInProgress.flags &= -257),\n (workInProgress = retryActivityComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n ));\n else if (null !== workInProgress.memoizedState)\n (workInProgress.child = current.child),\n (workInProgress.flags |= 128),\n (workInProgress = null);\n else throw Error(formatProdErrorMessage(558));\n else if (\n (didReceiveUpdate ||\n propagateParentContextChanges(current, workInProgress, renderLanes, !1),\n (didSuspend = 0 !== (renderLanes & current.childLanes)),\n didReceiveUpdate || didSuspend)\n ) {\n nextProps = workInProgressRoot;\n if (\n null !== nextProps &&\n ((dehydrated = getBumpedLaneForHydration(nextProps, renderLanes)),\n 0 !== dehydrated && dehydrated !== prevState.retryLane)\n )\n throw (\n ((prevState.retryLane = dehydrated),\n enqueueConcurrentRenderForLane(current, dehydrated),\n scheduleUpdateOnFiber(nextProps, current, dehydrated),\n SelectiveHydrationException)\n );\n renderDidSuspendDelayIfPossible();\n workInProgress = retryActivityComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n );\n } else\n (current = prevState.treeContext),\n (nextHydratableInstance = getNextHydratable(dehydrated.nextSibling)),\n (hydrationParentFiber = workInProgress),\n (isHydrating = !0),\n (hydrationErrors = null),\n (rootOrSingletonContext = !1),\n null !== current &&\n restoreSuspendedTreeContext(workInProgress, current),\n (workInProgress = mountActivityChildren(workInProgress, nextProps)),\n (workInProgress.flags |= 4096);\n return workInProgress;\n }\n current = createWorkInProgress(current.child, {\n mode: nextProps.mode,\n children: nextProps.children\n });\n current.ref = workInProgress.ref;\n workInProgress.child = current;\n current.return = workInProgress;\n return current;\n}\nfunction markRef(current, workInProgress) {\n var ref = workInProgress.ref;\n if (null === ref)\n null !== current &&\n null !== current.ref &&\n (workInProgress.flags |= 4194816);\n else {\n if (\"function\" !== typeof ref && \"object\" !== typeof ref)\n throw Error(formatProdErrorMessage(284));\n if (null === current || current.ref !== ref)\n workInProgress.flags |= 4194816;\n }\n}\nfunction updateFunctionComponent(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n) {\n prepareToReadContext(workInProgress);\n Component = renderWithHooks(\n current,\n workInProgress,\n Component,\n nextProps,\n void 0,\n renderLanes\n );\n nextProps = checkDidRenderIdHook();\n if (null !== current && !didReceiveUpdate)\n return (\n bailoutHooks(current, workInProgress, renderLanes),\n bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)\n );\n isHydrating && nextProps && pushMaterializedTreeId(workInProgress);\n workInProgress.flags |= 1;\n reconcileChildren(current, workInProgress, Component, renderLanes);\n return workInProgress.child;\n}\nfunction replayFunctionComponent(\n current,\n workInProgress,\n nextProps,\n Component,\n secondArg,\n renderLanes\n) {\n prepareToReadContext(workInProgress);\n workInProgress.updateQueue = null;\n nextProps = renderWithHooksAgain(\n workInProgress,\n Component,\n nextProps,\n secondArg\n );\n finishRenderingHooks(current);\n Component = checkDidRenderIdHook();\n if (null !== current && !didReceiveUpdate)\n return (\n bailoutHooks(current, workInProgress, renderLanes),\n bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)\n );\n isHydrating && Component && pushMaterializedTreeId(workInProgress);\n workInProgress.flags |= 1;\n reconcileChildren(current, workInProgress, nextProps, renderLanes);\n return workInProgress.child;\n}\nfunction updateClassComponent(\n current,\n workInProgress,\n Component,\n nextProps,\n renderLanes\n) {\n prepareToReadContext(workInProgress);\n if (null === workInProgress.stateNode) {\n var context = emptyContextObject,\n contextType = Component.contextType;\n \"object\" === typeof contextType &&\n null !== contextType &&\n (context = readContext(contextType));\n context = new Component(nextProps, context);\n workInProgress.memoizedState =\n null !== context.state && void 0 !== context.state ? context.state : null;\n context.updater = classComponentUpdater;\n workInProgress.stateNode = context;\n context._reactInternals = workInProgress;\n context = workInProgress.stateNode;\n context.props = nextProps;\n context.state = workInProgress.memoizedState;\n context.refs = {};\n initializeUpdateQueue(workInProgress);\n contextType = Component.contextType;\n context.context =\n \"object\" === typeof contextType && null !== contextType\n ? readContext(contextType)\n : emptyContextObject;\n context.state = workInProgress.memoizedState;\n contextType = Component.getDerivedStateFromProps;\n \"function\" === typeof contextType &&\n (applyDerivedStateFromProps(\n workInProgress,\n Component,\n contextType,\n nextProps\n ),\n (context.state = workInProgress.memoizedState));\n \"function\" === typeof Component.getDerivedStateFromProps ||\n \"function\" === typeof context.getSnapshotBeforeUpdate ||\n (\"function\" !== typeof context.UNSAFE_componentWillMount &&\n \"function\" !== typeof context.componentWillMount) ||\n ((contextType = context.state),\n \"function\" === typeof context.componentWillMount &&\n context.componentWillMount(),\n \"function\" === typeof context.UNSAFE_componentWillMount &&\n context.UNSAFE_componentWillMount(),\n contextType !== context.state &&\n classComponentUpdater.enqueueReplaceState(context, context.state, null),\n processUpdateQueue(workInProgress, nextProps, context, renderLanes),\n suspendIfUpdateReadFromEntangledAsyncAction(),\n (context.state = workInProgress.memoizedState));\n \"function\" === typeof context.componentDidMount &&\n (workInProgress.flags |= 4194308);\n nextProps = !0;\n } else if (null === current) {\n context = workInProgress.stateNode;\n var unresolvedOldProps = workInProgress.memoizedProps,\n oldProps = resolveClassComponentProps(Component, unresolvedOldProps);\n context.props = oldProps;\n var oldContext = context.context,\n contextType$jscomp$0 = Component.contextType;\n contextType = emptyContextObject;\n \"object\" === typeof contextType$jscomp$0 &&\n null !== contextType$jscomp$0 &&\n (contextType = readContext(contextType$jscomp$0));\n var getDerivedStateFromProps = Component.getDerivedStateFromProps;\n contextType$jscomp$0 =\n \"function\" === typeof getDerivedStateFromProps ||\n \"function\" === typeof context.getSnapshotBeforeUpdate;\n unresolvedOldProps = workInProgress.pendingProps !== unresolvedOldProps;\n contextType$jscomp$0 ||\n (\"function\" !== typeof context.UNSAFE_componentWillReceiveProps &&\n \"function\" !== typeof context.componentWillReceiveProps) ||\n ((unresolvedOldProps || oldContext !== contextType) &&\n callComponentWillReceiveProps(\n workInProgress,\n context,\n nextProps,\n contextType\n ));\n hasForceUpdate = !1;\n var oldState = workInProgress.memoizedState;\n context.state = oldState;\n processUpdateQueue(workInProgress, nextProps, context, renderLanes);\n suspendIfUpdateReadFromEntangledAsyncAction();\n oldContext = workInProgress.memoizedState;\n unresolvedOldProps || oldState !== oldContext || hasForceUpdate\n ? (\"function\" === typeof getDerivedStateFromProps &&\n (applyDerivedStateFromProps(\n workInProgress,\n Component,\n getDerivedStateFromProps,\n nextProps\n ),\n (oldContext = workInProgress.memoizedState)),\n (oldProps =\n hasForceUpdate ||\n checkShouldComponentUpdate(\n workInProgress,\n Component,\n oldProps,\n nextProps,\n oldState,\n oldContext,\n contextType\n ))\n ? (contextType$jscomp$0 ||\n (\"function\" !== typeof context.UNSAFE_componentWillMount &&\n \"function\" !== typeof context.componentWillMount) ||\n (\"function\" === typeof context.componentWillMount &&\n context.componentWillMount(),\n \"function\" === typeof context.UNSAFE_componentWillMount &&\n context.UNSAFE_componentWillMount()),\n \"function\" === typeof context.componentDidMount &&\n (workInProgress.flags |= 4194308))\n : (\"function\" === typeof context.componentDidMount &&\n (workInProgress.flags |= 4194308),\n (workInProgress.memoizedProps = nextProps),\n (workInProgress.memoizedState = oldContext)),\n (context.props = nextProps),\n (context.state = oldContext),\n (context.context = contextType),\n (nextProps = oldProps))\n : (\"function\" === typeof context.componentDidMount &&\n (workInProgress.flags |= 4194308),\n (nextProps = !1));\n } else {\n context = workInProgress.stateNode;\n cloneUpdateQueue(current, workInProgress);\n contextType = workInProgress.memoizedProps;\n contextType$jscomp$0 = resolveClassComponentProps(Component, contextType);\n context.props = contextType$jscomp$0;\n getDerivedStateFromProps = workInProgress.pendingProps;\n oldState = context.context;\n oldContext = Component.contextType;\n oldProps = emptyContextObject;\n \"object\" === typeof oldContext &&\n null !== oldContext &&\n (oldProps = readContext(oldContext));\n unresolvedOldProps = Component.getDerivedStateFromProps;\n (oldContext =\n \"function\" === typeof unresolvedOldProps ||\n \"function\" === typeof context.getSnapshotBeforeUpdate) ||\n (\"function\" !== typeof context.UNSAFE_componentWillReceiveProps &&\n \"function\" !== typeof context.componentWillReceiveProps) ||\n ((contextType !== getDerivedStateFromProps || oldState !== oldProps) &&\n callComponentWillReceiveProps(\n workInProgress,\n context,\n nextProps,\n oldProps\n ));\n hasForceUpdate = !1;\n oldState = workInProgress.memoizedState;\n context.state = oldState;\n processUpdateQueue(workInProgress, nextProps, context, renderLanes);\n suspendIfUpdateReadFromEntangledAsyncAction();\n var newState = workInProgress.memoizedState;\n contextType !== getDerivedStateFromProps ||\n oldState !== newState ||\n hasForceUpdate ||\n (null !== current &&\n null !== current.dependencies &&\n checkIfContextChanged(current.dependencies))\n ? (\"function\" === typeof unresolvedOldProps &&\n (applyDerivedStateFromProps(\n workInProgress,\n Component,\n unresolvedOldProps,\n nextProps\n ),\n (newState = workInProgress.memoizedState)),\n (contextType$jscomp$0 =\n hasForceUpdate ||\n checkShouldComponentUpdate(\n workInProgress,\n Component,\n contextType$jscomp$0,\n nextProps,\n oldState,\n newState,\n oldProps\n ) ||\n (null !== current &&\n null !== current.dependencies &&\n checkIfContextChanged(current.dependencies)))\n ? (oldContext ||\n (\"function\" !== typeof context.UNSAFE_componentWillUpdate &&\n \"function\" !== typeof context.componentWillUpdate) ||\n (\"function\" === typeof context.componentWillUpdate &&\n context.componentWillUpdate(nextProps, newState, oldProps),\n \"function\" === typeof context.UNSAFE_componentWillUpdate &&\n context.UNSAFE_componentWillUpdate(\n nextProps,\n newState,\n oldProps\n )),\n \"function\" === typeof context.componentDidUpdate &&\n (workInProgress.flags |= 4),\n \"function\" === typeof context.getSnapshotBeforeUpdate &&\n (workInProgress.flags |= 1024))\n : (\"function\" !== typeof context.componentDidUpdate ||\n (contextType === current.memoizedProps &&\n oldState === current.memoizedState) ||\n (workInProgress.flags |= 4),\n \"function\" !== typeof context.getSnapshotBeforeUpdate ||\n (contextType === current.memoizedProps &&\n oldState === current.memoizedState) ||\n (workInProgress.flags |= 1024),\n (workInProgress.memoizedProps = nextProps),\n (workInProgress.memoizedState = newState)),\n (context.props = nextProps),\n (context.state = newState),\n (context.context = oldProps),\n (nextProps = contextType$jscomp$0))\n : (\"function\" !== typeof context.componentDidUpdate ||\n (contextType === current.memoizedProps &&\n oldState === current.memoizedState) ||\n (workInProgress.flags |= 4),\n \"function\" !== typeof context.getSnapshotBeforeUpdate ||\n (contextType === current.memoizedProps &&\n oldState === current.memoizedState) ||\n (workInProgress.flags |= 1024),\n (nextProps = !1));\n }\n context = nextProps;\n markRef(current, workInProgress);\n nextProps = 0 !== (workInProgress.flags & 128);\n context || nextProps\n ? ((context = workInProgress.stateNode),\n (Component =\n nextProps && \"function\" !== typeof Component.getDerivedStateFromError\n ? null\n : context.render()),\n (workInProgress.flags |= 1),\n null !== current && nextProps\n ? ((workInProgress.child = reconcileChildFibers(\n workInProgress,\n current.child,\n null,\n renderLanes\n )),\n (workInProgress.child = reconcileChildFibers(\n workInProgress,\n null,\n Component,\n renderLanes\n )))\n : reconcileChildren(current, workInProgress, Component, renderLanes),\n (workInProgress.memoizedState = context.state),\n (current = workInProgress.child))\n : (current = bailoutOnAlreadyFinishedWork(\n current,\n workInProgress,\n renderLanes\n ));\n return current;\n}\nfunction mountHostRootWithoutHydrating(\n current,\n workInProgress,\n nextChildren,\n renderLanes\n) {\n resetHydrationState();\n workInProgress.flags |= 256;\n reconcileChildren(current, workInProgress, nextChildren, renderLanes);\n return workInProgress.child;\n}\nvar SUSPENDED_MARKER = {\n dehydrated: null,\n treeContext: null,\n retryLane: 0,\n hydrationErrors: null\n};\nfunction mountSuspenseOffscreenState(renderLanes) {\n return { baseLanes: renderLanes, cachePool: getSuspendedCache() };\n}\nfunction getRemainingWorkInPrimaryTree(\n current,\n primaryTreeDidDefer,\n renderLanes\n) {\n current = null !== current ? current.childLanes & ~renderLanes : 0;\n primaryTreeDidDefer && (current |= workInProgressDeferredLane);\n return current;\n}\nfunction updateSuspenseComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps,\n showFallback = !1,\n didSuspend = 0 !== (workInProgress.flags & 128),\n JSCompiler_temp;\n (JSCompiler_temp = didSuspend) ||\n (JSCompiler_temp =\n null !== current && null === current.memoizedState\n ? !1\n : 0 !== (suspenseStackCursor.current & 2));\n JSCompiler_temp && ((showFallback = !0), (workInProgress.flags &= -129));\n JSCompiler_temp = 0 !== (workInProgress.flags & 32);\n workInProgress.flags &= -33;\n if (null === current) {\n if (isHydrating) {\n showFallback\n ? pushPrimaryTreeSuspenseHandler(workInProgress)\n : reuseSuspenseHandlerOnStack(workInProgress);\n (current = nextHydratableInstance)\n ? ((current = canHydrateHydrationBoundary(\n current,\n rootOrSingletonContext\n )),\n (current = null !== current && \"&\" !== current.data ? current : null),\n null !== current &&\n ((workInProgress.memoizedState = {\n dehydrated: current,\n treeContext:\n null !== treeContextProvider\n ? { id: treeContextId, overflow: treeContextOverflow }\n : null,\n retryLane: 536870912,\n hydrationErrors: null\n }),\n (renderLanes = createFiberFromDehydratedFragment(current)),\n (renderLanes.return = workInProgress),\n (workInProgress.child = renderLanes),\n (hydrationParentFiber = workInProgress),\n (nextHydratableInstance = null)))\n : (current = null);\n if (null === current) throw throwOnHydrationMismatch(workInProgress);\n isSuspenseInstanceFallback(current)\n ? (workInProgress.lanes = 32)\n : (workInProgress.lanes = 536870912);\n return null;\n }\n var nextPrimaryChildren = nextProps.children;\n nextProps = nextProps.fallback;\n if (showFallback)\n return (\n reuseSuspenseHandlerOnStack(workInProgress),\n (showFallback = workInProgress.mode),\n (nextPrimaryChildren = mountWorkInProgressOffscreenFiber(\n { mode: \"hidden\", children: nextPrimaryChildren },\n showFallback\n )),\n (nextProps = createFiberFromFragment(\n nextProps,\n showFallback,\n renderLanes,\n null\n )),\n (nextPrimaryChildren.return = workInProgress),\n (nextProps.return = workInProgress),\n (nextPrimaryChildren.sibling = nextProps),\n (workInProgress.child = nextPrimaryChildren),\n (nextProps = workInProgress.child),\n (nextProps.memoizedState = mountSuspenseOffscreenState(renderLanes)),\n (nextProps.childLanes = getRemainingWorkInPrimaryTree(\n current,\n JSCompiler_temp,\n renderLanes\n )),\n (workInProgress.memoizedState = SUSPENDED_MARKER),\n bailoutOffscreenComponent(null, nextProps)\n );\n pushPrimaryTreeSuspenseHandler(workInProgress);\n return mountSuspensePrimaryChildren(workInProgress, nextPrimaryChildren);\n }\n var prevState = current.memoizedState;\n if (\n null !== prevState &&\n ((nextPrimaryChildren = prevState.dehydrated), null !== nextPrimaryChildren)\n ) {\n if (didSuspend)\n workInProgress.flags & 256\n ? (pushPrimaryTreeSuspenseHandler(workInProgress),\n (workInProgress.flags &= -257),\n (workInProgress = retrySuspenseComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n )))\n : null !== workInProgress.memoizedState\n ? (reuseSuspenseHandlerOnStack(workInProgress),\n (workInProgress.child = current.child),\n (workInProgress.flags |= 128),\n (workInProgress = null))\n : (reuseSuspenseHandlerOnStack(workInProgress),\n (nextPrimaryChildren = nextProps.fallback),\n (showFallback = workInProgress.mode),\n (nextProps = mountWorkInProgressOffscreenFiber(\n { mode: \"visible\", children: nextProps.children },\n showFallback\n )),\n (nextPrimaryChildren = createFiberFromFragment(\n nextPrimaryChildren,\n showFallback,\n renderLanes,\n null\n )),\n (nextPrimaryChildren.flags |= 2),\n (nextProps.return = workInProgress),\n (nextPrimaryChildren.return = workInProgress),\n (nextProps.sibling = nextPrimaryChildren),\n (workInProgress.child = nextProps),\n reconcileChildFibers(\n workInProgress,\n current.child,\n null,\n renderLanes\n ),\n (nextProps = workInProgress.child),\n (nextProps.memoizedState =\n mountSuspenseOffscreenState(renderLanes)),\n (nextProps.childLanes = getRemainingWorkInPrimaryTree(\n current,\n JSCompiler_temp,\n renderLanes\n )),\n (workInProgress.memoizedState = SUSPENDED_MARKER),\n (workInProgress = bailoutOffscreenComponent(null, nextProps)));\n else if (\n (pushPrimaryTreeSuspenseHandler(workInProgress),\n isSuspenseInstanceFallback(nextPrimaryChildren))\n ) {\n JSCompiler_temp =\n nextPrimaryChildren.nextSibling &&\n nextPrimaryChildren.nextSibling.dataset;\n if (JSCompiler_temp) var digest = JSCompiler_temp.dgst;\n JSCompiler_temp = digest;\n nextProps = Error(formatProdErrorMessage(419));\n nextProps.stack = \"\";\n nextProps.digest = JSCompiler_temp;\n queueHydrationError({ value: nextProps, source: null, stack: null });\n workInProgress = retrySuspenseComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n );\n } else if (\n (didReceiveUpdate ||\n propagateParentContextChanges(current, workInProgress, renderLanes, !1),\n (JSCompiler_temp = 0 !== (renderLanes & current.childLanes)),\n didReceiveUpdate || JSCompiler_temp)\n ) {\n JSCompiler_temp = workInProgressRoot;\n if (\n null !== JSCompiler_temp &&\n ((nextProps = getBumpedLaneForHydration(JSCompiler_temp, renderLanes)),\n 0 !== nextProps && nextProps !== prevState.retryLane)\n )\n throw (\n ((prevState.retryLane = nextProps),\n enqueueConcurrentRenderForLane(current, nextProps),\n scheduleUpdateOnFiber(JSCompiler_temp, current, nextProps),\n SelectiveHydrationException)\n );\n isSuspenseInstancePending(nextPrimaryChildren) ||\n renderDidSuspendDelayIfPossible();\n workInProgress = retrySuspenseComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n );\n } else\n isSuspenseInstancePending(nextPrimaryChildren)\n ? ((workInProgress.flags |= 192),\n (workInProgress.child = current.child),\n (workInProgress = null))\n : ((current = prevState.treeContext),\n (nextHydratableInstance = getNextHydratable(\n nextPrimaryChildren.nextSibling\n )),\n (hydrationParentFiber = workInProgress),\n (isHydrating = !0),\n (hydrationErrors = null),\n (rootOrSingletonContext = !1),\n null !== current &&\n restoreSuspendedTreeContext(workInProgress, current),\n (workInProgress = mountSuspensePrimaryChildren(\n workInProgress,\n nextProps.children\n )),\n (workInProgress.flags |= 4096));\n return workInProgress;\n }\n if (showFallback)\n return (\n reuseSuspenseHandlerOnStack(workInProgress),\n (nextPrimaryChildren = nextProps.fallback),\n (showFallback = workInProgress.mode),\n (prevState = current.child),\n (digest = prevState.sibling),\n (nextProps = createWorkInProgress(prevState, {\n mode: \"hidden\",\n children: nextProps.children\n })),\n (nextProps.subtreeFlags = prevState.subtreeFlags & 65011712),\n null !== digest\n ? (nextPrimaryChildren = createWorkInProgress(\n digest,\n nextPrimaryChildren\n ))\n : ((nextPrimaryChildren = createFiberFromFragment(\n nextPrimaryChildren,\n showFallback,\n renderLanes,\n null\n )),\n (nextPrimaryChildren.flags |= 2)),\n (nextPrimaryChildren.return = workInProgress),\n (nextProps.return = workInProgress),\n (nextProps.sibling = nextPrimaryChildren),\n (workInProgress.child = nextProps),\n bailoutOffscreenComponent(null, nextProps),\n (nextProps = workInProgress.child),\n (nextPrimaryChildren = current.child.memoizedState),\n null === nextPrimaryChildren\n ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes))\n : ((showFallback = nextPrimaryChildren.cachePool),\n null !== showFallback\n ? ((prevState = CacheContext._currentValue),\n (showFallback =\n showFallback.parent !== prevState\n ? { parent: prevState, pool: prevState }\n : showFallback))\n : (showFallback = getSuspendedCache()),\n (nextPrimaryChildren = {\n baseLanes: nextPrimaryChildren.baseLanes | renderLanes,\n cachePool: showFallback\n })),\n (nextProps.memoizedState = nextPrimaryChildren),\n (nextProps.childLanes = getRemainingWorkInPrimaryTree(\n current,\n JSCompiler_temp,\n renderLanes\n )),\n (workInProgress.memoizedState = SUSPENDED_MARKER),\n bailoutOffscreenComponent(current.child, nextProps)\n );\n pushPrimaryTreeSuspenseHandler(workInProgress);\n renderLanes = current.child;\n current = renderLanes.sibling;\n renderLanes = createWorkInProgress(renderLanes, {\n mode: \"visible\",\n children: nextProps.children\n });\n renderLanes.return = workInProgress;\n renderLanes.sibling = null;\n null !== current &&\n ((JSCompiler_temp = workInProgress.deletions),\n null === JSCompiler_temp\n ? ((workInProgress.deletions = [current]), (workInProgress.flags |= 16))\n : JSCompiler_temp.push(current));\n workInProgress.child = renderLanes;\n workInProgress.memoizedState = null;\n return renderLanes;\n}\nfunction mountSuspensePrimaryChildren(workInProgress, primaryChildren) {\n primaryChildren = mountWorkInProgressOffscreenFiber(\n { mode: \"visible\", children: primaryChildren },\n workInProgress.mode\n );\n primaryChildren.return = workInProgress;\n return (workInProgress.child = primaryChildren);\n}\nfunction mountWorkInProgressOffscreenFiber(offscreenProps, mode) {\n offscreenProps = createFiberImplClass(22, offscreenProps, null, mode);\n offscreenProps.lanes = 0;\n return offscreenProps;\n}\nfunction retrySuspenseComponentWithoutHydrating(\n current,\n workInProgress,\n renderLanes\n) {\n reconcileChildFibers(workInProgress, current.child, null, renderLanes);\n current = mountSuspensePrimaryChildren(\n workInProgress,\n workInProgress.pendingProps.children\n );\n current.flags |= 2;\n workInProgress.memoizedState = null;\n return current;\n}\nfunction scheduleSuspenseWorkOnFiber(fiber, renderLanes, propagationRoot) {\n fiber.lanes |= renderLanes;\n var alternate = fiber.alternate;\n null !== alternate && (alternate.lanes |= renderLanes);\n scheduleContextWorkOnParentPath(fiber.return, renderLanes, propagationRoot);\n}\nfunction initSuspenseListRenderState(\n workInProgress,\n isBackwards,\n tail,\n lastContentRow,\n tailMode,\n treeForkCount\n) {\n var renderState = workInProgress.memoizedState;\n null === renderState\n ? (workInProgress.memoizedState = {\n isBackwards: isBackwards,\n rendering: null,\n renderingStartTime: 0,\n last: lastContentRow,\n tail: tail,\n tailMode: tailMode,\n treeForkCount: treeForkCount\n })\n : ((renderState.isBackwards = isBackwards),\n (renderState.rendering = null),\n (renderState.renderingStartTime = 0),\n (renderState.last = lastContentRow),\n (renderState.tail = tail),\n (renderState.tailMode = tailMode),\n (renderState.treeForkCount = treeForkCount));\n}\nfunction updateSuspenseListComponent(current, workInProgress, renderLanes) {\n var nextProps = workInProgress.pendingProps,\n revealOrder = nextProps.revealOrder,\n tailMode = nextProps.tail;\n nextProps = nextProps.children;\n var suspenseContext = suspenseStackCursor.current,\n shouldForceFallback = 0 !== (suspenseContext & 2);\n shouldForceFallback\n ? ((suspenseContext = (suspenseContext & 1) | 2),\n (workInProgress.flags |= 128))\n : (suspenseContext &= 1);\n push(suspenseStackCursor, suspenseContext);\n reconcileChildren(current, workInProgress, nextProps, renderLanes);\n nextProps = isHydrating ? treeForkCount : 0;\n if (!shouldForceFallback && null !== current && 0 !== (current.flags & 128))\n a: for (current = workInProgress.child; null !== current; ) {\n if (13 === current.tag)\n null !== current.memoizedState &&\n scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);\n else if (19 === current.tag)\n scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);\n else if (null !== current.child) {\n current.child.return = current;\n current = current.child;\n continue;\n }\n if (current === workInProgress) break a;\n for (; null === current.sibling; ) {\n if (null === current.return || current.return === workInProgress)\n break a;\n current = current.return;\n }\n current.sibling.return = current.return;\n current = current.sibling;\n }\n switch (revealOrder) {\n case \"forwards\":\n renderLanes = workInProgress.child;\n for (revealOrder = null; null !== renderLanes; )\n (current = renderLanes.alternate),\n null !== current &&\n null === findFirstSuspended(current) &&\n (revealOrder = renderLanes),\n (renderLanes = renderLanes.sibling);\n renderLanes = revealOrder;\n null === renderLanes\n ? ((revealOrder = workInProgress.child), (workInProgress.child = null))\n : ((revealOrder = renderLanes.sibling), (renderLanes.sibling = null));\n initSuspenseListRenderState(\n workInProgress,\n !1,\n revealOrder,\n renderLanes,\n tailMode,\n nextProps\n );\n break;\n case \"backwards\":\n case \"unstable_legacy-backwards\":\n renderLanes = null;\n revealOrder = workInProgress.child;\n for (workInProgress.child = null; null !== revealOrder; ) {\n current = revealOrder.alternate;\n if (null !== current && null === findFirstSuspended(current)) {\n workInProgress.child = revealOrder;\n break;\n }\n current = revealOrder.sibling;\n revealOrder.sibling = renderLanes;\n renderLanes = revealOrder;\n revealOrder = current;\n }\n initSuspenseListRenderState(\n workInProgress,\n !0,\n renderLanes,\n null,\n tailMode,\n nextProps\n );\n break;\n case \"together\":\n initSuspenseListRenderState(\n workInProgress,\n !1,\n null,\n null,\n void 0,\n nextProps\n );\n break;\n default:\n workInProgress.memoizedState = null;\n }\n return workInProgress.child;\n}\nfunction bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes) {\n null !== current && (workInProgress.dependencies = current.dependencies);\n workInProgressRootSkippedLanes |= workInProgress.lanes;\n if (0 === (renderLanes & workInProgress.childLanes))\n if (null !== current) {\n if (\n (propagateParentContextChanges(\n current,\n workInProgress,\n renderLanes,\n !1\n ),\n 0 === (renderLanes & workInProgress.childLanes))\n )\n return null;\n } else return null;\n if (null !== current && workInProgress.child !== current.child)\n throw Error(formatProdErrorMessage(153));\n if (null !== workInProgress.child) {\n current = workInProgress.child;\n renderLanes = createWorkInProgress(current, current.pendingProps);\n workInProgress.child = renderLanes;\n for (renderLanes.return = workInProgress; null !== current.sibling; )\n (current = current.sibling),\n (renderLanes = renderLanes.sibling =\n createWorkInProgress(current, current.pendingProps)),\n (renderLanes.return = workInProgress);\n renderLanes.sibling = null;\n }\n return workInProgress.child;\n}\nfunction checkScheduledUpdateOrContext(current, renderLanes) {\n if (0 !== (current.lanes & renderLanes)) return !0;\n current = current.dependencies;\n return null !== current && checkIfContextChanged(current) ? !0 : !1;\n}\nfunction attemptEarlyBailoutIfNoScheduledUpdate(\n current,\n workInProgress,\n renderLanes\n) {\n switch (workInProgress.tag) {\n case 3:\n pushHostContainer(workInProgress, workInProgress.stateNode.containerInfo);\n pushProvider(workInProgress, CacheContext, current.memoizedState.cache);\n resetHydrationState();\n break;\n case 27:\n case 5:\n pushHostContext(workInProgress);\n break;\n case 4:\n pushHostContainer(workInProgress, workInProgress.stateNode.containerInfo);\n break;\n case 10:\n pushProvider(\n workInProgress,\n workInProgress.type,\n workInProgress.memoizedProps.value\n );\n break;\n case 31:\n if (null !== workInProgress.memoizedState)\n return (\n (workInProgress.flags |= 128),\n pushDehydratedActivitySuspenseHandler(workInProgress),\n null\n );\n break;\n case 13:\n var state$102 = workInProgress.memoizedState;\n if (null !== state$102) {\n if (null !== state$102.dehydrated)\n return (\n pushPrimaryTreeSuspenseHandler(workInProgress),\n (workInProgress.flags |= 128),\n null\n );\n if (0 !== (renderLanes & workInProgress.child.childLanes))\n return updateSuspenseComponent(current, workInProgress, renderLanes);\n pushPrimaryTreeSuspenseHandler(workInProgress);\n current = bailoutOnAlreadyFinishedWork(\n current,\n workInProgress,\n renderLanes\n );\n return null !== current ? current.sibling : null;\n }\n pushPrimaryTreeSuspenseHandler(workInProgress);\n break;\n case 19:\n var didSuspendBefore = 0 !== (current.flags & 128);\n state$102 = 0 !== (renderLanes & workInProgress.childLanes);\n state$102 ||\n (propagateParentContextChanges(\n current,\n workInProgress,\n renderLanes,\n !1\n ),\n (state$102 = 0 !== (renderLanes & workInProgress.childLanes)));\n if (didSuspendBefore) {\n if (state$102)\n return updateSuspenseListComponent(\n current,\n workInProgress,\n renderLanes\n );\n workInProgress.flags |= 128;\n }\n didSuspendBefore = workInProgress.memoizedState;\n null !== didSuspendBefore &&\n ((didSuspendBefore.rendering = null),\n (didSuspendBefore.tail = null),\n (didSuspendBefore.lastEffect = null));\n push(suspenseStackCursor, suspenseStackCursor.current);\n if (state$102) break;\n else return null;\n case 22:\n return (\n (workInProgress.lanes = 0),\n updateOffscreenComponent(\n current,\n workInProgress,\n renderLanes,\n workInProgress.pendingProps\n )\n );\n case 24:\n pushProvider(workInProgress, CacheContext, current.memoizedState.cache);\n }\n return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);\n}\nfunction beginWork(current, workInProgress, renderLanes) {\n if (null !== current)\n if (current.memoizedProps !== workInProgress.pendingProps)\n didReceiveUpdate = !0;\n else {\n if (\n !checkScheduledUpdateOrContext(current, renderLanes) &&\n 0 === (workInProgress.flags & 128)\n )\n return (\n (didReceiveUpdate = !1),\n attemptEarlyBailoutIfNoScheduledUpdate(\n current,\n workInProgress,\n renderLanes\n )\n );\n didReceiveUpdate = 0 !== (current.flags & 131072) ? !0 : !1;\n }\n else\n (didReceiveUpdate = !1),\n isHydrating &&\n 0 !== (workInProgress.flags & 1048576) &&\n pushTreeId(workInProgress, treeForkCount, workInProgress.index);\n workInProgress.lanes = 0;\n switch (workInProgress.tag) {\n case 16:\n a: {\n var props = workInProgress.pendingProps;\n current = resolveLazy(workInProgress.elementType);\n workInProgress.type = current;\n if (\"function\" === typeof current)\n shouldConstruct(current)\n ? ((props = resolveClassComponentProps(current, props)),\n (workInProgress.tag = 1),\n (workInProgress = updateClassComponent(\n null,\n workInProgress,\n current,\n props,\n renderLanes\n )))\n : ((workInProgress.tag = 0),\n (workInProgress = updateFunctionComponent(\n null,\n workInProgress,\n current,\n props,\n renderLanes\n )));\n else {\n if (void 0 !== current && null !== current) {\n var $$typeof = current.$$typeof;\n if ($$typeof === REACT_FORWARD_REF_TYPE) {\n workInProgress.tag = 11;\n workInProgress = updateForwardRef(\n null,\n workInProgress,\n current,\n props,\n renderLanes\n );\n break a;\n } else if ($$typeof === REACT_MEMO_TYPE) {\n workInProgress.tag = 14;\n workInProgress = updateMemoComponent(\n null,\n workInProgress,\n current,\n props,\n renderLanes\n );\n break a;\n }\n }\n workInProgress = getComponentNameFromType(current) || current;\n throw Error(formatProdErrorMessage(306, workInProgress, \"\"));\n }\n }\n return workInProgress;\n case 0:\n return updateFunctionComponent(\n current,\n workInProgress,\n workInProgress.type,\n workInProgress.pendingProps,\n renderLanes\n );\n case 1:\n return (\n (props = workInProgress.type),\n ($$typeof = resolveClassComponentProps(\n props,\n workInProgress.pendingProps\n )),\n updateClassComponent(\n current,\n workInProgress,\n props,\n $$typeof,\n renderLanes\n )\n );\n case 3:\n a: {\n pushHostContainer(\n workInProgress,\n workInProgress.stateNode.containerInfo\n );\n if (null === current) throw Error(formatProdErrorMessage(387));\n props = workInProgress.pendingProps;\n var prevState = workInProgress.memoizedState;\n $$typeof = prevState.element;\n cloneUpdateQueue(current, workInProgress);\n processUpdateQueue(workInProgress, props, null, renderLanes);\n var nextState = workInProgress.memoizedState;\n props = nextState.cache;\n pushProvider(workInProgress, CacheContext, props);\n props !== prevState.cache &&\n propagateContextChanges(\n workInProgress,\n [CacheContext],\n renderLanes,\n !0\n );\n suspendIfUpdateReadFromEntangledAsyncAction();\n props = nextState.element;\n if (prevState.isDehydrated)\n if (\n ((prevState = {\n element: props,\n isDehydrated: !1,\n cache: nextState.cache\n }),\n (workInProgress.updateQueue.baseState = prevState),\n (workInProgress.memoizedState = prevState),\n workInProgress.flags & 256)\n ) {\n workInProgress = mountHostRootWithoutHydrating(\n current,\n workInProgress,\n props,\n renderLanes\n );\n break a;\n } else if (props !== $$typeof) {\n $$typeof = createCapturedValueAtFiber(\n Error(formatProdErrorMessage(424)),\n workInProgress\n );\n queueHydrationError($$typeof);\n workInProgress = mountHostRootWithoutHydrating(\n current,\n workInProgress,\n props,\n renderLanes\n );\n break a;\n } else {\n current = workInProgress.stateNode.containerInfo;\n switch (current.nodeType) {\n case 9:\n current = current.body;\n break;\n default:\n current =\n \"HTML\" === current.nodeName\n ? current.ownerDocument.body\n : current;\n }\n nextHydratableInstance = getNextHydratable(current.firstChild);\n hydrationParentFiber = workInProgress;\n isHydrating = !0;\n hydrationErrors = null;\n rootOrSingletonContext = !0;\n renderLanes = mountChildFibers(\n workInProgress,\n null,\n props,\n renderLanes\n );\n for (workInProgress.child = renderLanes; renderLanes; )\n (renderLanes.flags = (renderLanes.flags & -3) | 4096),\n (renderLanes = renderLanes.sibling);\n }\n else {\n resetHydrationState();\n if (props === $$typeof) {\n workInProgress = bailoutOnAlreadyFinishedWork(\n current,\n workInProgress,\n renderLanes\n );\n break a;\n }\n reconcileChildren(current, workInProgress, props, renderLanes);\n }\n workInProgress = workInProgress.child;\n }\n return workInProgress;\n case 26:\n return (\n markRef(current, workInProgress),\n null === current\n ? (renderLanes = getResource(\n workInProgress.type,\n null,\n workInProgress.pendingProps,\n null\n ))\n ? (workInProgress.memoizedState = renderLanes)\n : isHydrating ||\n ((renderLanes = workInProgress.type),\n (current = workInProgress.pendingProps),\n (props = getOwnerDocumentFromRootContainer(\n rootInstanceStackCursor.current\n ).createElement(renderLanes)),\n (props[internalInstanceKey] = workInProgress),\n (props[internalPropsKey] = current),\n setInitialProperties(props, renderLanes, current),\n markNodeAsHoistable(props),\n (workInProgress.stateNode = props))\n : (workInProgress.memoizedState = getResource(\n workInProgress.type,\n current.memoizedProps,\n workInProgress.pendingProps,\n current.memoizedState\n )),\n null\n );\n case 27:\n return (\n pushHostContext(workInProgress),\n null === current &&\n isHydrating &&\n ((props = workInProgress.stateNode =\n resolveSingletonInstance(\n workInProgress.type,\n workInProgress.pendingProps,\n rootInstanceStackCursor.current\n )),\n (hydrationParentFiber = workInProgress),\n (rootOrSingletonContext = !0),\n ($$typeof = nextHydratableInstance),\n isSingletonScope(workInProgress.type)\n ? ((previousHydratableOnEnteringScopedSingleton = $$typeof),\n (nextHydratableInstance = getNextHydratable(props.firstChild)))\n : (nextHydratableInstance = $$typeof)),\n reconcileChildren(\n current,\n workInProgress,\n workInProgress.pendingProps.children,\n renderLanes\n ),\n markRef(current, workInProgress),\n null === current && (workInProgress.flags |= 4194304),\n workInProgress.child\n );\n case 5:\n if (null === current && isHydrating) {\n if (($$typeof = props = nextHydratableInstance))\n (props = canHydrateInstance(\n props,\n workInProgress.type,\n workInProgress.pendingProps,\n rootOrSingletonContext\n )),\n null !== props\n ? ((workInProgress.stateNode = props),\n (hydrationParentFiber = workInProgress),\n (nextHydratableInstance = getNextHydratable(props.firstChild)),\n (rootOrSingletonContext = !1),\n ($$typeof = !0))\n : ($$typeof = !1);\n $$typeof || throwOnHydrationMismatch(workInProgress);\n }\n pushHostContext(workInProgress);\n $$typeof = workInProgress.type;\n prevState = workInProgress.pendingProps;\n nextState = null !== current ? current.memoizedProps : null;\n props = prevState.children;\n shouldSetTextContent($$typeof, prevState)\n ? (props = null)\n : null !== nextState &&\n shouldSetTextContent($$typeof, nextState) &&\n (workInProgress.flags |= 32);\n null !== workInProgress.memoizedState &&\n (($$typeof = renderWithHooks(\n current,\n workInProgress,\n TransitionAwareHostComponent,\n null,\n null,\n renderLanes\n )),\n (HostTransitionContext._currentValue = $$typeof));\n markRef(current, workInProgress);\n reconcileChildren(current, workInProgress, props, renderLanes);\n return workInProgress.child;\n case 6:\n if (null === current && isHydrating) {\n if ((current = renderLanes = nextHydratableInstance))\n (renderLanes = canHydrateTextInstance(\n renderLanes,\n workInProgress.pendingProps,\n rootOrSingletonContext\n )),\n null !== renderLanes\n ? ((workInProgress.stateNode = renderLanes),\n (hydrationParentFiber = workInProgress),\n (nextHydratableInstance = null),\n (current = !0))\n : (current = !1);\n current || throwOnHydrationMismatch(workInProgress);\n }\n return null;\n case 13:\n return updateSuspenseComponent(current, workInProgress, renderLanes);\n case 4:\n return (\n pushHostContainer(\n workInProgress,\n workInProgress.stateNode.containerInfo\n ),\n (props = workInProgress.pendingProps),\n null === current\n ? (workInProgress.child = reconcileChildFibers(\n workInProgress,\n null,\n props,\n renderLanes\n ))\n : reconcileChildren(current, workInProgress, props, renderLanes),\n workInProgress.child\n );\n case 11:\n return updateForwardRef(\n current,\n workInProgress,\n workInProgress.type,\n workInProgress.pendingProps,\n renderLanes\n );\n case 7:\n return (\n reconcileChildren(\n current,\n workInProgress,\n workInProgress.pendingProps,\n renderLanes\n ),\n workInProgress.child\n );\n case 8:\n return (\n reconcileChildren(\n current,\n workInProgress,\n workInProgress.pendingProps.children,\n renderLanes\n ),\n workInProgress.child\n );\n case 12:\n return (\n reconcileChildren(\n current,\n workInProgress,\n workInProgress.pendingProps.children,\n renderLanes\n ),\n workInProgress.child\n );\n case 10:\n return (\n (props = workInProgress.pendingProps),\n pushProvider(workInProgress, workInProgress.type, props.value),\n reconcileChildren(current, workInProgress, props.children, renderLanes),\n workInProgress.child\n );\n case 9:\n return (\n ($$typeof = workInProgress.type._context),\n (props = workInProgress.pendingProps.children),\n prepareToReadContext(workInProgress),\n ($$typeof = readContext($$typeof)),\n (props = props($$typeof)),\n (workInProgress.flags |= 1),\n reconcileChildren(current, workInProgress, props, renderLanes),\n workInProgress.child\n );\n case 14:\n return updateMemoComponent(\n current,\n workInProgress,\n workInProgress.type,\n workInProgress.pendingProps,\n renderLanes\n );\n case 15:\n return updateSimpleMemoComponent(\n current,\n workInProgress,\n workInProgress.type,\n workInProgress.pendingProps,\n renderLanes\n );\n case 19:\n return updateSuspenseListComponent(current, workInProgress, renderLanes);\n case 31:\n return updateActivityComponent(current, workInProgress, renderLanes);\n case 22:\n return updateOffscreenComponent(\n current,\n workInProgress,\n renderLanes,\n workInProgress.pendingProps\n );\n case 24:\n return (\n prepareToReadContext(workInProgress),\n (props = readContext(CacheContext)),\n null === current\n ? (($$typeof = peekCacheFromPool()),\n null === $$typeof &&\n (($$typeof = workInProgressRoot),\n (prevState = createCache()),\n ($$typeof.pooledCache = prevState),\n prevState.refCount++,\n null !== prevState && ($$typeof.pooledCacheLanes |= renderLanes),\n ($$typeof = prevState)),\n (workInProgress.memoizedState = { parent: props, cache: $$typeof }),\n initializeUpdateQueue(workInProgress),\n pushProvider(workInProgress, CacheContext, $$typeof))\n : (0 !== (current.lanes & renderLanes) &&\n (cloneUpdateQueue(current, workInProgress),\n processUpdateQueue(workInProgress, null, null, renderLanes),\n suspendIfUpdateReadFromEntangledAsyncAction()),\n ($$typeof = current.memoizedState),\n (prevState = workInProgress.memoizedState),\n $$typeof.parent !== props\n ? (($$typeof = { parent: props, cache: props }),\n (workInProgress.memoizedState = $$typeof),\n 0 === workInProgress.lanes &&\n (workInProgress.memoizedState =\n workInProgress.updateQueue.baseState =\n $$typeof),\n pushProvider(workInProgress, CacheContext, props))\n : ((props = prevState.cache),\n pushProvider(workInProgress, CacheContext, props),\n props !== $$typeof.cache &&\n propagateContextChanges(\n workInProgress,\n [CacheContext],\n renderLanes,\n !0\n ))),\n reconcileChildren(\n current,\n workInProgress,\n workInProgress.pendingProps.children,\n renderLanes\n ),\n workInProgress.child\n );\n case 29:\n throw workInProgress.pendingProps;\n }\n throw Error(formatProdErrorMessage(156, workInProgress.tag));\n}\nfunction markUpdate(workInProgress) {\n workInProgress.flags |= 4;\n}\nfunction preloadInstanceAndSuspendIfNeeded(\n workInProgress,\n type,\n oldProps,\n newProps,\n renderLanes\n) {\n if ((type = 0 !== (workInProgress.mode & 32))) type = !1;\n if (type) {\n if (\n ((workInProgress.flags |= 16777216),\n (renderLanes & 335544128) === renderLanes)\n )\n if (workInProgress.stateNode.complete) workInProgress.flags |= 8192;\n else if (shouldRemainOnPreviousScreen()) workInProgress.flags |= 8192;\n else\n throw (\n ((suspendedThenable = noopSuspenseyCommitThenable),\n SuspenseyCommitException)\n );\n } else workInProgress.flags &= -16777217;\n}\nfunction preloadResourceAndSuspendIfNeeded(workInProgress, resource) {\n if (\"stylesheet\" !== resource.type || 0 !== (resource.state.loading & 4))\n workInProgress.flags &= -16777217;\n else if (((workInProgress.flags |= 16777216), !preloadResource(resource)))\n if (shouldRemainOnPreviousScreen()) workInProgress.flags |= 8192;\n else\n throw (\n ((suspendedThenable = noopSuspenseyCommitThenable),\n SuspenseyCommitException)\n );\n}\nfunction scheduleRetryEffect(workInProgress, retryQueue) {\n null !== retryQueue && (workInProgress.flags |= 4);\n workInProgress.flags & 16384 &&\n ((retryQueue =\n 22 !== workInProgress.tag ? claimNextRetryLane() : 536870912),\n (workInProgress.lanes |= retryQueue),\n (workInProgressSuspendedRetryLanes |= retryQueue));\n}\nfunction cutOffTailIfNeeded(renderState, hasRenderedATailFallback) {\n if (!isHydrating)\n switch (renderState.tailMode) {\n case \"hidden\":\n hasRenderedATailFallback = renderState.tail;\n for (var lastTailNode = null; null !== hasRenderedATailFallback; )\n null !== hasRenderedATailFallback.alternate &&\n (lastTailNode = hasRenderedATailFallback),\n (hasRenderedATailFallback = hasRenderedATailFallback.sibling);\n null === lastTailNode\n ? (renderState.tail = null)\n : (lastTailNode.sibling = null);\n break;\n case \"collapsed\":\n lastTailNode = renderState.tail;\n for (var lastTailNode$106 = null; null !== lastTailNode; )\n null !== lastTailNode.alternate && (lastTailNode$106 = lastTailNode),\n (lastTailNode = lastTailNode.sibling);\n null === lastTailNode$106\n ? hasRenderedATailFallback || null === renderState.tail\n ? (renderState.tail = null)\n : (renderState.tail.sibling = null)\n : (lastTailNode$106.sibling = null);\n }\n}\nfunction bubbleProperties(completedWork) {\n var didBailout =\n null !== completedWork.alternate &&\n completedWork.alternate.child === completedWork.child,\n newChildLanes = 0,\n subtreeFlags = 0;\n if (didBailout)\n for (var child$107 = completedWork.child; null !== child$107; )\n (newChildLanes |= child$107.lanes | child$107.childLanes),\n (subtreeFlags |= child$107.subtreeFlags & 65011712),\n (subtreeFlags |= child$107.flags & 65011712),\n (child$107.return = completedWork),\n (child$107 = child$107.sibling);\n else\n for (child$107 = completedWork.child; null !== child$107; )\n (newChildLanes |= child$107.lanes | child$107.childLanes),\n (subtreeFlags |= child$107.subtreeFlags),\n (subtreeFlags |= child$107.flags),\n (child$107.return = completedWork),\n (child$107 = child$107.sibling);\n completedWork.subtreeFlags |= subtreeFlags;\n completedWork.childLanes = newChildLanes;\n return didBailout;\n}\nfunction completeWork(current, workInProgress, renderLanes) {\n var newProps = workInProgress.pendingProps;\n popTreeContext(workInProgress);\n switch (workInProgress.tag) {\n case 16:\n case 15:\n case 0:\n case 11:\n case 7:\n case 8:\n case 12:\n case 9:\n case 14:\n return bubbleProperties(workInProgress), null;\n case 1:\n return bubbleProperties(workInProgress), null;\n case 3:\n renderLanes = workInProgress.stateNode;\n newProps = null;\n null !== current && (newProps = current.memoizedState.cache);\n workInProgress.memoizedState.cache !== newProps &&\n (workInProgress.flags |= 2048);\n popProvider(CacheContext);\n popHostContainer();\n renderLanes.pendingContext &&\n ((renderLanes.context = renderLanes.pendingContext),\n (renderLanes.pendingContext = null));\n if (null === current || null === current.child)\n popHydrationState(workInProgress)\n ? markUpdate(workInProgress)\n : null === current ||\n (current.memoizedState.isDehydrated &&\n 0 === (workInProgress.flags & 256)) ||\n ((workInProgress.flags |= 1024),\n upgradeHydrationErrorsToRecoverable());\n bubbleProperties(workInProgress);\n return null;\n case 26:\n var type = workInProgress.type,\n nextResource = workInProgress.memoizedState;\n null === current\n ? (markUpdate(workInProgress),\n null !== nextResource\n ? (bubbleProperties(workInProgress),\n preloadResourceAndSuspendIfNeeded(workInProgress, nextResource))\n : (bubbleProperties(workInProgress),\n preloadInstanceAndSuspendIfNeeded(\n workInProgress,\n type,\n null,\n newProps,\n renderLanes\n )))\n : nextResource\n ? nextResource !== current.memoizedState\n ? (markUpdate(workInProgress),\n bubbleProperties(workInProgress),\n preloadResourceAndSuspendIfNeeded(workInProgress, nextResource))\n : (bubbleProperties(workInProgress),\n (workInProgress.flags &= -16777217))\n : ((current = current.memoizedProps),\n current !== newProps && markUpdate(workInProgress),\n bubbleProperties(workInProgress),\n preloadInstanceAndSuspendIfNeeded(\n workInProgress,\n type,\n current,\n newProps,\n renderLanes\n ));\n return null;\n case 27:\n popHostContext(workInProgress);\n renderLanes = rootInstanceStackCursor.current;\n type = workInProgress.type;\n if (null !== current && null != workInProgress.stateNode)\n current.memoizedProps !== newProps && markUpdate(workInProgress);\n else {\n if (!newProps) {\n if (null === workInProgress.stateNode)\n throw Error(formatProdErrorMessage(166));\n bubbleProperties(workInProgress);\n return null;\n }\n current = contextStackCursor.current;\n popHydrationState(workInProgress)\n ? prepareToHydrateHostInstance(workInProgress, current)\n : ((current = resolveSingletonInstance(type, newProps, renderLanes)),\n (workInProgress.stateNode = current),\n markUpdate(workInProgress));\n }\n bubbleProperties(workInProgress);\n return null;\n case 5:\n popHostContext(workInProgress);\n type = workInProgress.type;\n if (null !== current && null != workInProgress.stateNode)\n current.memoizedProps !== newProps && markUpdate(workInProgress);\n else {\n if (!newProps) {\n if (null === workInProgress.stateNode)\n throw Error(formatProdErrorMessage(166));\n bubbleProperties(workInProgress);\n return null;\n }\n nextResource = contextStackCursor.current;\n if (popHydrationState(workInProgress))\n prepareToHydrateHostInstance(workInProgress, nextResource);\n else {\n var ownerDocument = getOwnerDocumentFromRootContainer(\n rootInstanceStackCursor.current\n );\n switch (nextResource) {\n case 1:\n nextResource = ownerDocument.createElementNS(\n \"http://www.w3.org/2000/svg\",\n type\n );\n break;\n case 2:\n nextResource = ownerDocument.createElementNS(\n \"http://www.w3.org/1998/Math/MathML\",\n type\n );\n break;\n default:\n switch (type) {\n case \"svg\":\n nextResource = ownerDocument.createElementNS(\n \"http://www.w3.org/2000/svg\",\n type\n );\n break;\n case \"math\":\n nextResource = ownerDocument.createElementNS(\n \"http://www.w3.org/1998/Math/MathML\",\n type\n );\n break;\n case \"script\":\n nextResource = ownerDocument.createElement(\"div\");\n nextResource.innerHTML = \"<script>\\x3c/script>\";\n nextResource = nextResource.removeChild(\n nextResource.firstChild\n );\n break;\n case \"select\":\n nextResource =\n \"string\" === typeof newProps.is\n ? ownerDocument.createElement(\"select\", {\n is: newProps.is\n })\n : ownerDocument.createElement(\"select\");\n newProps.multiple\n ? (nextResource.multiple = !0)\n : newProps.size && (nextResource.size = newProps.size);\n break;\n default:\n nextResource =\n \"string\" === typeof newProps.is\n ? ownerDocument.createElement(type, { is: newProps.is })\n : ownerDocument.createElement(type);\n }\n }\n nextResource[internalInstanceKey] = workInProgress;\n nextResource[internalPropsKey] = newProps;\n a: for (\n ownerDocument = workInProgress.child;\n null !== ownerDocument;\n\n ) {\n if (5 === ownerDocument.tag || 6 === ownerDocument.tag)\n nextResource.appendChild(ownerDocument.stateNode);\n else if (\n 4 !== ownerDocument.tag &&\n 27 !== ownerDocument.tag &&\n null !== ownerDocument.child\n ) {\n ownerDocument.child.return = ownerDocument;\n ownerDocument = ownerDocument.child;\n continue;\n }\n if (ownerDocument === workInProgress) break a;\n for (; null === ownerDocument.sibling; ) {\n if (\n null === ownerDocument.return ||\n ownerDocument.return === workInProgress\n )\n break a;\n ownerDocument = ownerDocument.return;\n }\n ownerDocument.sibling.return = ownerDocument.return;\n ownerDocument = ownerDocument.sibling;\n }\n workInProgress.stateNode = nextResource;\n a: switch (\n (setInitialProperties(nextResource, type, newProps), type)\n ) {\n case \"button\":\n case \"input\":\n case \"select\":\n case \"textarea\":\n newProps = !!newProps.autoFocus;\n break a;\n case \"img\":\n newProps = !0;\n break a;\n default:\n newProps = !1;\n }\n newProps && markUpdate(workInProgress);\n }\n }\n bubbleProperties(workInProgress);\n preloadInstanceAndSuspendIfNeeded(\n workInProgress,\n workInProgress.type,\n null === current ? null : current.memoizedProps,\n workInProgress.pendingProps,\n renderLanes\n );\n return null;\n case 6:\n if (current && null != workInProgress.stateNode)\n current.memoizedProps !== newProps && markUpdate(workInProgress);\n else {\n if (\"string\" !== typeof newProps && null === workInProgress.stateNode)\n throw Error(formatProdErrorMessage(166));\n current = rootInstanceStackCursor.current;\n if (popHydrationState(workInProgress)) {\n current = workInProgress.stateNode;\n renderLanes = workInProgress.memoizedProps;\n newProps = null;\n type = hydrationParentFiber;\n if (null !== type)\n switch (type.tag) {\n case 27:\n case 5:\n newProps = type.memoizedProps;\n }\n current[internalInstanceKey] = workInProgress;\n current =\n current.nodeValue === renderLanes ||\n (null !== newProps && !0 === newProps.suppressHydrationWarning) ||\n checkForUnmatchedText(current.nodeValue, renderLanes)\n ? !0\n : !1;\n current || throwOnHydrationMismatch(workInProgress, !0);\n } else\n (current =\n getOwnerDocumentFromRootContainer(current).createTextNode(\n newProps\n )),\n (current[internalInstanceKey] = workInProgress),\n (workInProgress.stateNode = current);\n }\n bubbleProperties(workInProgress);\n return null;\n case 31:\n renderLanes = workInProgress.memoizedState;\n if (null === current || null !== current.memoizedState) {\n newProps = popHydrationState(workInProgress);\n if (null !== renderLanes) {\n if (null === current) {\n if (!newProps) throw Error(formatProdErrorMessage(318));\n current = workInProgress.memoizedState;\n current = null !== current ? current.dehydrated : null;\n if (!current) throw Error(formatProdErrorMessage(557));\n current[internalInstanceKey] = workInProgress;\n } else\n resetHydrationState(),\n 0 === (workInProgress.flags & 128) &&\n (workInProgress.memoizedState = null),\n (workInProgress.flags |= 4);\n bubbleProperties(workInProgress);\n current = !1;\n } else\n (renderLanes = upgradeHydrationErrorsToRecoverable()),\n null !== current &&\n null !== current.memoizedState &&\n (current.memoizedState.hydrationErrors = renderLanes),\n (current = !0);\n if (!current) {\n if (workInProgress.flags & 256)\n return popSuspenseHandler(workInProgress), workInProgress;\n popSuspenseHandler(workInProgress);\n return null;\n }\n if (0 !== (workInProgress.flags & 128))\n throw Error(formatProdErrorMessage(558));\n }\n bubbleProperties(workInProgress);\n return null;\n case 13:\n newProps = workInProgress.memoizedState;\n if (\n null === current ||\n (null !== current.memoizedState &&\n null !== current.memoizedState.dehydrated)\n ) {\n type = popHydrationState(workInProgress);\n if (null !== newProps && null !== newProps.dehydrated) {\n if (null === current) {\n if (!type) throw Error(formatProdErrorMessage(318));\n type = workInProgress.memoizedState;\n type = null !== type ? type.dehydrated : null;\n if (!type) throw Error(formatProdErrorMessage(317));\n type[internalInstanceKey] = workInProgress;\n } else\n resetHydrationState(),\n 0 === (workInProgress.flags & 128) &&\n (workInProgress.memoizedState = null),\n (workInProgress.flags |= 4);\n bubbleProperties(workInProgress);\n type = !1;\n } else\n (type = upgradeHydrationErrorsToRecoverable()),\n null !== current &&\n null !== current.memoizedState &&\n (current.memoizedState.hydrationErrors = type),\n (type = !0);\n if (!type) {\n if (workInProgress.flags & 256)\n return popSuspenseHandler(workInProgress), workInProgress;\n popSuspenseHandler(workInProgress);\n return null;\n }\n }\n popSuspenseHandler(workInProgress);\n if (0 !== (workInProgress.flags & 128))\n return (workInProgress.lanes = renderLanes), workInProgress;\n renderLanes = null !== newProps;\n current = null !== current && null !== current.memoizedState;\n renderLanes &&\n ((newProps = workInProgress.child),\n (type = null),\n null !== newProps.alternate &&\n null !== newProps.alternate.memoizedState &&\n null !== newProps.alternate.memoizedState.cachePool &&\n (type = newProps.alternate.memoizedState.cachePool.pool),\n (nextResource = null),\n null !== newProps.memoizedState &&\n null !== newProps.memoizedState.cachePool &&\n (nextResource = newProps.memoizedState.cachePool.pool),\n nextResource !== type && (newProps.flags |= 2048));\n renderLanes !== current &&\n renderLanes &&\n (workInProgress.child.flags |= 8192);\n scheduleRetryEffect(workInProgress, workInProgress.updateQueue);\n bubbleProperties(workInProgress);\n return null;\n case 4:\n return (\n popHostContainer(),\n null === current &&\n listenToAllSupportedEvents(workInProgress.stateNode.containerInfo),\n bubbleProperties(workInProgress),\n null\n );\n case 10:\n return (\n popProvider(workInProgress.type), bubbleProperties(workInProgress), null\n );\n case 19:\n pop(suspenseStackCursor);\n newProps = workInProgress.memoizedState;\n if (null === newProps) return bubbleProperties(workInProgress), null;\n type = 0 !== (workInProgress.flags & 128);\n nextResource = newProps.rendering;\n if (null === nextResource)\n if (type) cutOffTailIfNeeded(newProps, !1);\n else {\n if (\n 0 !== workInProgressRootExitStatus ||\n (null !== current && 0 !== (current.flags & 128))\n )\n for (current = workInProgress.child; null !== current; ) {\n nextResource = findFirstSuspended(current);\n if (null !== nextResource) {\n workInProgress.flags |= 128;\n cutOffTailIfNeeded(newProps, !1);\n current = nextResource.updateQueue;\n workInProgress.updateQueue = current;\n scheduleRetryEffect(workInProgress, current);\n workInProgress.subtreeFlags = 0;\n current = renderLanes;\n for (renderLanes = workInProgress.child; null !== renderLanes; )\n resetWorkInProgress(renderLanes, current),\n (renderLanes = renderLanes.sibling);\n push(\n suspenseStackCursor,\n (suspenseStackCursor.current & 1) | 2\n );\n isHydrating &&\n pushTreeFork(workInProgress, newProps.treeForkCount);\n return workInProgress.child;\n }\n current = current.sibling;\n }\n null !== newProps.tail &&\n now() > workInProgressRootRenderTargetTime &&\n ((workInProgress.flags |= 128),\n (type = !0),\n cutOffTailIfNeeded(newProps, !1),\n (workInProgress.lanes = 4194304));\n }\n else {\n if (!type)\n if (\n ((current = findFirstSuspended(nextResource)), null !== current)\n ) {\n if (\n ((workInProgress.flags |= 128),\n (type = !0),\n (current = current.updateQueue),\n (workInProgress.updateQueue = current),\n scheduleRetryEffect(workInProgress, current),\n cutOffTailIfNeeded(newProps, !0),\n null === newProps.tail &&\n \"hidden\" === newProps.tailMode &&\n !nextResource.alternate &&\n !isHydrating)\n )\n return bubbleProperties(workInProgress), null;\n } else\n 2 * now() - newProps.renderingStartTime >\n workInProgressRootRenderTargetTime &&\n 536870912 !== renderLanes &&\n ((workInProgress.flags |= 128),\n (type = !0),\n cutOffTailIfNeeded(newProps, !1),\n (workInProgress.lanes = 4194304));\n newProps.isBackwards\n ? ((nextResource.sibling = workInProgress.child),\n (workInProgress.child = nextResource))\n : ((current = newProps.last),\n null !== current\n ? (current.sibling = nextResource)\n : (workInProgress.child = nextResource),\n (newProps.last = nextResource));\n }\n if (null !== newProps.tail)\n return (\n (current = newProps.tail),\n (newProps.rendering = current),\n (newProps.tail = current.sibling),\n (newProps.renderingStartTime = now()),\n (current.sibling = null),\n (renderLanes = suspenseStackCursor.current),\n push(\n suspenseStackCursor,\n type ? (renderLanes & 1) | 2 : renderLanes & 1\n ),\n isHydrating && pushTreeFork(workInProgress, newProps.treeForkCount),\n current\n );\n bubbleProperties(workInProgress);\n return null;\n case 22:\n case 23:\n return (\n popSuspenseHandler(workInProgress),\n popHiddenContext(),\n (newProps = null !== workInProgress.memoizedState),\n null !== current\n ? (null !== current.memoizedState) !== newProps &&\n (workInProgress.flags |= 8192)\n : newProps && (workInProgress.flags |= 8192),\n newProps\n ? 0 !== (renderLanes & 536870912) &&\n 0 === (workInProgress.flags & 128) &&\n (bubbleProperties(workInProgress),\n workInProgress.subtreeFlags & 6 && (workInProgress.flags |= 8192))\n : bubbleProperties(workInProgress),\n (renderLanes = workInProgress.updateQueue),\n null !== renderLanes &&\n scheduleRetryEffect(workInProgress, renderLanes.retryQueue),\n (renderLanes = null),\n null !== current &&\n null !== current.memoizedState &&\n null !== current.memoizedState.cachePool &&\n (renderLanes = current.memoizedState.cachePool.pool),\n (newProps = null),\n null !== workInProgress.memoizedState &&\n null !== workInProgress.memoizedState.cachePool &&\n (newProps = workInProgress.memoizedState.cachePool.pool),\n newProps !== renderLanes && (workInProgress.flags |= 2048),\n null !== current && pop(resumedCache),\n null\n );\n case 24:\n return (\n (renderLanes = null),\n null !== current && (renderLanes = current.memoizedState.cache),\n workInProgress.memoizedState.cache !== renderLanes &&\n (workInProgress.flags |= 2048),\n popProvider(CacheContext),\n bubbleProperties(workInProgress),\n null\n );\n case 25:\n return null;\n case 30:\n return null;\n }\n throw Error(formatProdErrorMessage(156, workInProgress.tag));\n}\nfunction unwindWork(current, workInProgress) {\n popTreeContext(workInProgress);\n switch (workInProgress.tag) {\n case 1:\n return (\n (current = workInProgress.flags),\n current & 65536\n ? ((workInProgress.flags = (current & -65537) | 128), workInProgress)\n : null\n );\n case 3:\n return (\n popProvider(CacheContext),\n popHostContainer(),\n (current = workInProgress.flags),\n 0 !== (current & 65536) && 0 === (current & 128)\n ? ((workInProgress.flags = (current & -65537) | 128), workInProgress)\n : null\n );\n case 26:\n case 27:\n case 5:\n return popHostContext(workInProgress), null;\n case 31:\n if (null !== workInProgress.memoizedState) {\n popSuspenseHandler(workInProgress);\n if (null === workInProgress.alternate)\n throw Error(formatProdErrorMessage(340));\n resetHydrationState();\n }\n current = workInProgress.flags;\n return current & 65536\n ? ((workInProgress.flags = (current & -65537) | 128), workInProgress)\n : null;\n case 13:\n popSuspenseHandler(workInProgress);\n current = workInProgress.memoizedState;\n if (null !== current && null !== current.dehydrated) {\n if (null === workInProgress.alternate)\n throw Error(formatProdErrorMessage(340));\n resetHydrationState();\n }\n current = workInProgress.flags;\n return current & 65536\n ? ((workInProgress.flags = (current & -65537) | 128), workInProgress)\n : null;\n case 19:\n return pop(suspenseStackCursor), null;\n case 4:\n return popHostContainer(), null;\n case 10:\n return popProvider(workInProgress.type), null;\n case 22:\n case 23:\n return (\n popSuspenseHandler(workInProgress),\n popHiddenContext(),\n null !== current && pop(resumedCache),\n (current = workInProgress.flags),\n current & 65536\n ? ((workInProgress.flags = (current & -65537) | 128), workInProgress)\n : null\n );\n case 24:\n return popProvider(CacheContext), null;\n case 25:\n return null;\n default:\n return null;\n }\n}\nfunction unwindInterruptedWork(current, interruptedWork) {\n popTreeContext(interruptedWork);\n switch (interruptedWork.tag) {\n case 3:\n popProvider(CacheContext);\n popHostContainer();\n break;\n case 26:\n case 27:\n case 5:\n popHostContext(interruptedWork);\n break;\n case 4:\n popHostContainer();\n break;\n case 31:\n null !== interruptedWork.memoizedState &&\n popSuspenseHandler(interruptedWork);\n break;\n case 13:\n popSuspenseHandler(interruptedWork);\n break;\n case 19:\n pop(suspenseStackCursor);\n break;\n case 10:\n popProvider(interruptedWork.type);\n break;\n case 22:\n case 23:\n popSuspenseHandler(interruptedWork);\n popHiddenContext();\n null !== current && pop(resumedCache);\n break;\n case 24:\n popProvider(CacheContext);\n }\n}\nfunction commitHookEffectListMount(flags, finishedWork) {\n try {\n var updateQueue = finishedWork.updateQueue,\n lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;\n if (null !== lastEffect) {\n var firstEffect = lastEffect.next;\n updateQueue = firstEffect;\n do {\n if ((updateQueue.tag & flags) === flags) {\n lastEffect = void 0;\n var create = updateQueue.create,\n inst = updateQueue.inst;\n lastEffect = create();\n inst.destroy = lastEffect;\n }\n updateQueue = updateQueue.next;\n } while (updateQueue !== firstEffect);\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nfunction commitHookEffectListUnmount(\n flags,\n finishedWork,\n nearestMountedAncestor$jscomp$0\n) {\n try {\n var updateQueue = finishedWork.updateQueue,\n lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;\n if (null !== lastEffect) {\n var firstEffect = lastEffect.next;\n updateQueue = firstEffect;\n do {\n if ((updateQueue.tag & flags) === flags) {\n var inst = updateQueue.inst,\n destroy = inst.destroy;\n if (void 0 !== destroy) {\n inst.destroy = void 0;\n lastEffect = finishedWork;\n var nearestMountedAncestor = nearestMountedAncestor$jscomp$0,\n destroy_ = destroy;\n try {\n destroy_();\n } catch (error) {\n captureCommitPhaseError(\n lastEffect,\n nearestMountedAncestor,\n error\n );\n }\n }\n }\n updateQueue = updateQueue.next;\n } while (updateQueue !== firstEffect);\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nfunction commitClassCallbacks(finishedWork) {\n var updateQueue = finishedWork.updateQueue;\n if (null !== updateQueue) {\n var instance = finishedWork.stateNode;\n try {\n commitCallbacks(updateQueue, instance);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n}\nfunction safelyCallComponentWillUnmount(\n current,\n nearestMountedAncestor,\n instance\n) {\n instance.props = resolveClassComponentProps(\n current.type,\n current.memoizedProps\n );\n instance.state = current.memoizedState;\n try {\n instance.componentWillUnmount();\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n}\nfunction safelyAttachRef(current, nearestMountedAncestor) {\n try {\n var ref = current.ref;\n if (null !== ref) {\n switch (current.tag) {\n case 26:\n case 27:\n case 5:\n var instanceToUse = current.stateNode;\n break;\n case 30:\n instanceToUse = current.stateNode;\n break;\n default:\n instanceToUse = current.stateNode;\n }\n \"function\" === typeof ref\n ? (current.refCleanup = ref(instanceToUse))\n : (ref.current = instanceToUse);\n }\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n }\n}\nfunction safelyDetachRef(current, nearestMountedAncestor) {\n var ref = current.ref,\n refCleanup = current.refCleanup;\n if (null !== ref)\n if (\"function\" === typeof refCleanup)\n try {\n refCleanup();\n } catch (error) {\n captureCommitPhaseError(current, nearestMountedAncestor, error);\n } finally {\n (current.refCleanup = null),\n (current = current.alternate),\n null != current && (current.refCleanup = null);\n }\n else if (\"function\" === typeof ref)\n try {\n ref(null);\n } catch (error$140) {\n captureCommitPhaseError(current, nearestMountedAncestor, error$140);\n }\n else ref.current = null;\n}\nfunction commitHostMount(finishedWork) {\n var type = finishedWork.type,\n props = finishedWork.memoizedProps,\n instance = finishedWork.stateNode;\n try {\n a: switch (type) {\n case \"button\":\n case \"input\":\n case \"select\":\n case \"textarea\":\n props.autoFocus && instance.focus();\n break a;\n case \"img\":\n props.src\n ? (instance.src = props.src)\n : props.srcSet && (instance.srcset = props.srcSet);\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nfunction commitHostUpdate(finishedWork, newProps, oldProps) {\n try {\n var domElement = finishedWork.stateNode;\n updateProperties(domElement, finishedWork.type, oldProps, newProps);\n domElement[internalPropsKey] = newProps;\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nfunction isHostParent(fiber) {\n return (\n 5 === fiber.tag ||\n 3 === fiber.tag ||\n 26 === fiber.tag ||\n (27 === fiber.tag && isSingletonScope(fiber.type)) ||\n 4 === fiber.tag\n );\n}\nfunction getHostSibling(fiber) {\n a: for (;;) {\n for (; null === fiber.sibling; ) {\n if (null === fiber.return || isHostParent(fiber.return)) return null;\n fiber = fiber.return;\n }\n fiber.sibling.return = fiber.return;\n for (\n fiber = fiber.sibling;\n 5 !== fiber.tag && 6 !== fiber.tag && 18 !== fiber.tag;\n\n ) {\n if (27 === fiber.tag && isSingletonScope(fiber.type)) continue a;\n if (fiber.flags & 2) continue a;\n if (null === fiber.child || 4 === fiber.tag) continue a;\n else (fiber.child.return = fiber), (fiber = fiber.child);\n }\n if (!(fiber.flags & 2)) return fiber.stateNode;\n }\n}\nfunction insertOrAppendPlacementNodeIntoContainer(node, before, parent) {\n var tag = node.tag;\n if (5 === tag || 6 === tag)\n (node = node.stateNode),\n before\n ? (9 === parent.nodeType\n ? parent.body\n : \"HTML\" === parent.nodeName\n ? parent.ownerDocument.body\n : parent\n ).insertBefore(node, before)\n : ((before =\n 9 === parent.nodeType\n ? parent.body\n : \"HTML\" === parent.nodeName\n ? parent.ownerDocument.body\n : parent),\n before.appendChild(node),\n (parent = parent._reactRootContainer),\n (null !== parent && void 0 !== parent) ||\n null !== before.onclick ||\n (before.onclick = noop$1));\n else if (\n 4 !== tag &&\n (27 === tag &&\n isSingletonScope(node.type) &&\n ((parent = node.stateNode), (before = null)),\n (node = node.child),\n null !== node)\n )\n for (\n insertOrAppendPlacementNodeIntoContainer(node, before, parent),\n node = node.sibling;\n null !== node;\n\n )\n insertOrAppendPlacementNodeIntoContainer(node, before, parent),\n (node = node.sibling);\n}\nfunction insertOrAppendPlacementNode(node, before, parent) {\n var tag = node.tag;\n if (5 === tag || 6 === tag)\n (node = node.stateNode),\n before ? parent.insertBefore(node, before) : parent.appendChild(node);\n else if (\n 4 !== tag &&\n (27 === tag && isSingletonScope(node.type) && (parent = node.stateNode),\n (node = node.child),\n null !== node)\n )\n for (\n insertOrAppendPlacementNode(node, before, parent), node = node.sibling;\n null !== node;\n\n )\n insertOrAppendPlacementNode(node, before, parent), (node = node.sibling);\n}\nfunction commitHostSingletonAcquisition(finishedWork) {\n var singleton = finishedWork.stateNode,\n props = finishedWork.memoizedProps;\n try {\n for (\n var type = finishedWork.type, attributes = singleton.attributes;\n attributes.length;\n\n )\n singleton.removeAttributeNode(attributes[0]);\n setInitialProperties(singleton, type, props);\n singleton[internalInstanceKey] = finishedWork;\n singleton[internalPropsKey] = props;\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nvar offscreenSubtreeIsHidden = !1,\n offscreenSubtreeWasHidden = !1,\n needsFormReset = !1,\n PossiblyWeakSet = \"function\" === typeof WeakSet ? WeakSet : Set,\n nextEffect = null;\nfunction commitBeforeMutationEffects(root, firstChild) {\n root = root.containerInfo;\n eventsEnabled = _enabled;\n root = getActiveElementDeep(root);\n if (hasSelectionCapabilities(root)) {\n if (\"selectionStart\" in root)\n var JSCompiler_temp = {\n start: root.selectionStart,\n end: root.selectionEnd\n };\n else\n a: {\n JSCompiler_temp =\n ((JSCompiler_temp = root.ownerDocument) &&\n JSCompiler_temp.defaultView) ||\n window;\n var selection =\n JSCompiler_temp.getSelection && JSCompiler_temp.getSelection();\n if (selection && 0 !== selection.rangeCount) {\n JSCompiler_temp = selection.anchorNode;\n var anchorOffset = selection.anchorOffset,\n focusNode = selection.focusNode;\n selection = selection.focusOffset;\n try {\n JSCompiler_temp.nodeType, focusNode.nodeType;\n } catch (e$20) {\n JSCompiler_temp = null;\n break a;\n }\n var length = 0,\n start = -1,\n end = -1,\n indexWithinAnchor = 0,\n indexWithinFocus = 0,\n node = root,\n parentNode = null;\n b: for (;;) {\n for (var next; ; ) {\n node !== JSCompiler_temp ||\n (0 !== anchorOffset && 3 !== node.nodeType) ||\n (start = length + anchorOffset);\n node !== focusNode ||\n (0 !== selection && 3 !== node.nodeType) ||\n (end = length + selection);\n 3 === node.nodeType && (length += node.nodeValue.length);\n if (null === (next = node.firstChild)) break;\n parentNode = node;\n node = next;\n }\n for (;;) {\n if (node === root) break b;\n parentNode === JSCompiler_temp &&\n ++indexWithinAnchor === anchorOffset &&\n (start = length);\n parentNode === focusNode &&\n ++indexWithinFocus === selection &&\n (end = length);\n if (null !== (next = node.nextSibling)) break;\n node = parentNode;\n parentNode = node.parentNode;\n }\n node = next;\n }\n JSCompiler_temp =\n -1 === start || -1 === end ? null : { start: start, end: end };\n } else JSCompiler_temp = null;\n }\n JSCompiler_temp = JSCompiler_temp || { start: 0, end: 0 };\n } else JSCompiler_temp = null;\n selectionInformation = { focusedElem: root, selectionRange: JSCompiler_temp };\n _enabled = !1;\n for (nextEffect = firstChild; null !== nextEffect; )\n if (\n ((firstChild = nextEffect),\n (root = firstChild.child),\n 0 !== (firstChild.subtreeFlags & 1028) && null !== root)\n )\n (root.return = firstChild), (nextEffect = root);\n else\n for (; null !== nextEffect; ) {\n firstChild = nextEffect;\n focusNode = firstChild.alternate;\n root = firstChild.flags;\n switch (firstChild.tag) {\n case 0:\n if (\n 0 !== (root & 4) &&\n ((root = firstChild.updateQueue),\n (root = null !== root ? root.events : null),\n null !== root)\n )\n for (\n JSCompiler_temp = 0;\n JSCompiler_temp < root.length;\n JSCompiler_temp++\n )\n (anchorOffset = root[JSCompiler_temp]),\n (anchorOffset.ref.impl = anchorOffset.nextImpl);\n break;\n case 11:\n case 15:\n break;\n case 1:\n if (0 !== (root & 1024) && null !== focusNode) {\n root = void 0;\n JSCompiler_temp = firstChild;\n anchorOffset = focusNode.memoizedProps;\n focusNode = focusNode.memoizedState;\n selection = JSCompiler_temp.stateNode;\n try {\n var resolvedPrevProps = resolveClassComponentProps(\n JSCompiler_temp.type,\n anchorOffset\n );\n root = selection.getSnapshotBeforeUpdate(\n resolvedPrevProps,\n focusNode\n );\n selection.__reactInternalSnapshotBeforeUpdate = root;\n } catch (error) {\n captureCommitPhaseError(\n JSCompiler_temp,\n JSCompiler_temp.return,\n error\n );\n }\n }\n break;\n case 3:\n if (0 !== (root & 1024))\n if (\n ((root = firstChild.stateNode.containerInfo),\n (JSCompiler_temp = root.nodeType),\n 9 === JSCompiler_temp)\n )\n clearContainerSparingly(root);\n else if (1 === JSCompiler_temp)\n switch (root.nodeName) {\n case \"HEAD\":\n case \"HTML\":\n case \"BODY\":\n clearContainerSparingly(root);\n break;\n default:\n root.textContent = \"\";\n }\n break;\n case 5:\n case 26:\n case 27:\n case 6:\n case 4:\n case 17:\n break;\n default:\n if (0 !== (root & 1024)) throw Error(formatProdErrorMessage(163));\n }\n root = firstChild.sibling;\n if (null !== root) {\n root.return = firstChild.return;\n nextEffect = root;\n break;\n }\n nextEffect = firstChild.return;\n }\n}\nfunction commitLayoutEffectOnFiber(finishedRoot, current, finishedWork) {\n var flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 15:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n flags & 4 && commitHookEffectListMount(5, finishedWork);\n break;\n case 1:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n if (flags & 4)\n if (((finishedRoot = finishedWork.stateNode), null === current))\n try {\n finishedRoot.componentDidMount();\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n else {\n var prevProps = resolveClassComponentProps(\n finishedWork.type,\n current.memoizedProps\n );\n current = current.memoizedState;\n try {\n finishedRoot.componentDidUpdate(\n prevProps,\n current,\n finishedRoot.__reactInternalSnapshotBeforeUpdate\n );\n } catch (error$139) {\n captureCommitPhaseError(\n finishedWork,\n finishedWork.return,\n error$139\n );\n }\n }\n flags & 64 && commitClassCallbacks(finishedWork);\n flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);\n break;\n case 3:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n if (\n flags & 64 &&\n ((finishedRoot = finishedWork.updateQueue), null !== finishedRoot)\n ) {\n current = null;\n if (null !== finishedWork.child)\n switch (finishedWork.child.tag) {\n case 27:\n case 5:\n current = finishedWork.child.stateNode;\n break;\n case 1:\n current = finishedWork.child.stateNode;\n }\n try {\n commitCallbacks(finishedRoot, current);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n break;\n case 27:\n null === current &&\n flags & 4 &&\n commitHostSingletonAcquisition(finishedWork);\n case 26:\n case 5:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n null === current && flags & 4 && commitHostMount(finishedWork);\n flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);\n break;\n case 12:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n break;\n case 31:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n flags & 4 && commitActivityHydrationCallbacks(finishedRoot, finishedWork);\n break;\n case 13:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n flags & 4 && commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);\n flags & 64 &&\n ((finishedRoot = finishedWork.memoizedState),\n null !== finishedRoot &&\n ((finishedRoot = finishedRoot.dehydrated),\n null !== finishedRoot &&\n ((finishedWork = retryDehydratedSuspenseBoundary.bind(\n null,\n finishedWork\n )),\n registerSuspenseInstanceRetry(finishedRoot, finishedWork))));\n break;\n case 22:\n flags = null !== finishedWork.memoizedState || offscreenSubtreeIsHidden;\n if (!flags) {\n current =\n (null !== current && null !== current.memoizedState) ||\n offscreenSubtreeWasHidden;\n prevProps = offscreenSubtreeIsHidden;\n var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;\n offscreenSubtreeIsHidden = flags;\n (offscreenSubtreeWasHidden = current) && !prevOffscreenSubtreeWasHidden\n ? recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n 0 !== (finishedWork.subtreeFlags & 8772)\n )\n : recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n offscreenSubtreeIsHidden = prevProps;\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;\n }\n break;\n case 30:\n break;\n default:\n recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);\n }\n}\nfunction detachFiberAfterEffects(fiber) {\n var alternate = fiber.alternate;\n null !== alternate &&\n ((fiber.alternate = null), detachFiberAfterEffects(alternate));\n fiber.child = null;\n fiber.deletions = null;\n fiber.sibling = null;\n 5 === fiber.tag &&\n ((alternate = fiber.stateNode),\n null !== alternate && detachDeletedInstance(alternate));\n fiber.stateNode = null;\n fiber.return = null;\n fiber.dependencies = null;\n fiber.memoizedProps = null;\n fiber.memoizedState = null;\n fiber.pendingProps = null;\n fiber.stateNode = null;\n fiber.updateQueue = null;\n}\nvar hostParent = null,\n hostParentIsContainer = !1;\nfunction recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n parent\n) {\n for (parent = parent.child; null !== parent; )\n commitDeletionEffectsOnFiber(finishedRoot, nearestMountedAncestor, parent),\n (parent = parent.sibling);\n}\nfunction commitDeletionEffectsOnFiber(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n) {\n if (injectedHook && \"function\" === typeof injectedHook.onCommitFiberUnmount)\n try {\n injectedHook.onCommitFiberUnmount(rendererID, deletedFiber);\n } catch (err) {}\n switch (deletedFiber.tag) {\n case 26:\n offscreenSubtreeWasHidden ||\n safelyDetachRef(deletedFiber, nearestMountedAncestor);\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n deletedFiber.memoizedState\n ? deletedFiber.memoizedState.count--\n : deletedFiber.stateNode &&\n ((deletedFiber = deletedFiber.stateNode),\n deletedFiber.parentNode.removeChild(deletedFiber));\n break;\n case 27:\n offscreenSubtreeWasHidden ||\n safelyDetachRef(deletedFiber, nearestMountedAncestor);\n var prevHostParent = hostParent,\n prevHostParentIsContainer = hostParentIsContainer;\n isSingletonScope(deletedFiber.type) &&\n ((hostParent = deletedFiber.stateNode), (hostParentIsContainer = !1));\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n releaseSingletonInstance(deletedFiber.stateNode);\n hostParent = prevHostParent;\n hostParentIsContainer = prevHostParentIsContainer;\n break;\n case 5:\n offscreenSubtreeWasHidden ||\n safelyDetachRef(deletedFiber, nearestMountedAncestor);\n case 6:\n prevHostParent = hostParent;\n prevHostParentIsContainer = hostParentIsContainer;\n hostParent = null;\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n hostParent = prevHostParent;\n hostParentIsContainer = prevHostParentIsContainer;\n if (null !== hostParent)\n if (hostParentIsContainer)\n try {\n (9 === hostParent.nodeType\n ? hostParent.body\n : \"HTML\" === hostParent.nodeName\n ? hostParent.ownerDocument.body\n : hostParent\n ).removeChild(deletedFiber.stateNode);\n } catch (error) {\n captureCommitPhaseError(\n deletedFiber,\n nearestMountedAncestor,\n error\n );\n }\n else\n try {\n hostParent.removeChild(deletedFiber.stateNode);\n } catch (error) {\n captureCommitPhaseError(\n deletedFiber,\n nearestMountedAncestor,\n error\n );\n }\n break;\n case 18:\n null !== hostParent &&\n (hostParentIsContainer\n ? ((finishedRoot = hostParent),\n clearHydrationBoundary(\n 9 === finishedRoot.nodeType\n ? finishedRoot.body\n : \"HTML\" === finishedRoot.nodeName\n ? finishedRoot.ownerDocument.body\n : finishedRoot,\n deletedFiber.stateNode\n ),\n retryIfBlockedOn(finishedRoot))\n : clearHydrationBoundary(hostParent, deletedFiber.stateNode));\n break;\n case 4:\n prevHostParent = hostParent;\n prevHostParentIsContainer = hostParentIsContainer;\n hostParent = deletedFiber.stateNode.containerInfo;\n hostParentIsContainer = !0;\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n hostParent = prevHostParent;\n hostParentIsContainer = prevHostParentIsContainer;\n break;\n case 0:\n case 11:\n case 14:\n case 15:\n commitHookEffectListUnmount(2, deletedFiber, nearestMountedAncestor);\n offscreenSubtreeWasHidden ||\n commitHookEffectListUnmount(4, deletedFiber, nearestMountedAncestor);\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n break;\n case 1:\n offscreenSubtreeWasHidden ||\n (safelyDetachRef(deletedFiber, nearestMountedAncestor),\n (prevHostParent = deletedFiber.stateNode),\n \"function\" === typeof prevHostParent.componentWillUnmount &&\n safelyCallComponentWillUnmount(\n deletedFiber,\n nearestMountedAncestor,\n prevHostParent\n ));\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n break;\n case 21:\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n break;\n case 22:\n offscreenSubtreeWasHidden =\n (prevHostParent = offscreenSubtreeWasHidden) ||\n null !== deletedFiber.memoizedState;\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n offscreenSubtreeWasHidden = prevHostParent;\n break;\n default:\n recursivelyTraverseDeletionEffects(\n finishedRoot,\n nearestMountedAncestor,\n deletedFiber\n );\n }\n}\nfunction commitActivityHydrationCallbacks(finishedRoot, finishedWork) {\n if (\n null === finishedWork.memoizedState &&\n ((finishedRoot = finishedWork.alternate),\n null !== finishedRoot &&\n ((finishedRoot = finishedRoot.memoizedState), null !== finishedRoot))\n ) {\n finishedRoot = finishedRoot.dehydrated;\n try {\n retryIfBlockedOn(finishedRoot);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n}\nfunction commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {\n if (\n null === finishedWork.memoizedState &&\n ((finishedRoot = finishedWork.alternate),\n null !== finishedRoot &&\n ((finishedRoot = finishedRoot.memoizedState),\n null !== finishedRoot &&\n ((finishedRoot = finishedRoot.dehydrated), null !== finishedRoot)))\n )\n try {\n retryIfBlockedOn(finishedRoot);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n}\nfunction getRetryCache(finishedWork) {\n switch (finishedWork.tag) {\n case 31:\n case 13:\n case 19:\n var retryCache = finishedWork.stateNode;\n null === retryCache &&\n (retryCache = finishedWork.stateNode = new PossiblyWeakSet());\n return retryCache;\n case 22:\n return (\n (finishedWork = finishedWork.stateNode),\n (retryCache = finishedWork._retryCache),\n null === retryCache &&\n (retryCache = finishedWork._retryCache = new PossiblyWeakSet()),\n retryCache\n );\n default:\n throw Error(formatProdErrorMessage(435, finishedWork.tag));\n }\n}\nfunction attachSuspenseRetryListeners(finishedWork, wakeables) {\n var retryCache = getRetryCache(finishedWork);\n wakeables.forEach(function (wakeable) {\n if (!retryCache.has(wakeable)) {\n retryCache.add(wakeable);\n var retry = resolveRetryWakeable.bind(null, finishedWork, wakeable);\n wakeable.then(retry, retry);\n }\n });\n}\nfunction recursivelyTraverseMutationEffects(root$jscomp$0, parentFiber) {\n var deletions = parentFiber.deletions;\n if (null !== deletions)\n for (var i = 0; i < deletions.length; i++) {\n var childToDelete = deletions[i],\n root = root$jscomp$0,\n returnFiber = parentFiber,\n parent = returnFiber;\n a: for (; null !== parent; ) {\n switch (parent.tag) {\n case 27:\n if (isSingletonScope(parent.type)) {\n hostParent = parent.stateNode;\n hostParentIsContainer = !1;\n break a;\n }\n break;\n case 5:\n hostParent = parent.stateNode;\n hostParentIsContainer = !1;\n break a;\n case 3:\n case 4:\n hostParent = parent.stateNode.containerInfo;\n hostParentIsContainer = !0;\n break a;\n }\n parent = parent.return;\n }\n if (null === hostParent) throw Error(formatProdErrorMessage(160));\n commitDeletionEffectsOnFiber(root, returnFiber, childToDelete);\n hostParent = null;\n hostParentIsContainer = !1;\n root = childToDelete.alternate;\n null !== root && (root.return = null);\n childToDelete.return = null;\n }\n if (parentFiber.subtreeFlags & 13886)\n for (parentFiber = parentFiber.child; null !== parentFiber; )\n commitMutationEffectsOnFiber(parentFiber, root$jscomp$0),\n (parentFiber = parentFiber.sibling);\n}\nvar currentHoistableRoot = null;\nfunction commitMutationEffectsOnFiber(finishedWork, root) {\n var current = finishedWork.alternate,\n flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 14:\n case 15:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 4 &&\n (commitHookEffectListUnmount(3, finishedWork, finishedWork.return),\n commitHookEffectListMount(3, finishedWork),\n commitHookEffectListUnmount(5, finishedWork, finishedWork.return));\n break;\n case 1:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 512 &&\n (offscreenSubtreeWasHidden ||\n null === current ||\n safelyDetachRef(current, current.return));\n flags & 64 &&\n offscreenSubtreeIsHidden &&\n ((finishedWork = finishedWork.updateQueue),\n null !== finishedWork &&\n ((flags = finishedWork.callbacks),\n null !== flags &&\n ((current = finishedWork.shared.hiddenCallbacks),\n (finishedWork.shared.hiddenCallbacks =\n null === current ? flags : current.concat(flags)))));\n break;\n case 26:\n var hoistableRoot = currentHoistableRoot;\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 512 &&\n (offscreenSubtreeWasHidden ||\n null === current ||\n safelyDetachRef(current, current.return));\n if (flags & 4) {\n var currentResource = null !== current ? current.memoizedState : null;\n flags = finishedWork.memoizedState;\n if (null === current)\n if (null === flags)\n if (null === finishedWork.stateNode) {\n a: {\n flags = finishedWork.type;\n current = finishedWork.memoizedProps;\n hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;\n b: switch (flags) {\n case \"title\":\n currentResource =\n hoistableRoot.getElementsByTagName(\"title\")[0];\n if (\n !currentResource ||\n currentResource[internalHoistableMarker] ||\n currentResource[internalInstanceKey] ||\n \"http://www.w3.org/2000/svg\" ===\n currentResource.namespaceURI ||\n currentResource.hasAttribute(\"itemprop\")\n )\n (currentResource = hoistableRoot.createElement(flags)),\n hoistableRoot.head.insertBefore(\n currentResource,\n hoistableRoot.querySelector(\"head > title\")\n );\n setInitialProperties(currentResource, flags, current);\n currentResource[internalInstanceKey] = finishedWork;\n markNodeAsHoistable(currentResource);\n flags = currentResource;\n break a;\n case \"link\":\n var maybeNodes = getHydratableHoistableCache(\n \"link\",\n \"href\",\n hoistableRoot\n ).get(flags + (current.href || \"\"));\n if (maybeNodes)\n for (var i = 0; i < maybeNodes.length; i++)\n if (\n ((currentResource = maybeNodes[i]),\n currentResource.getAttribute(\"href\") ===\n (null == current.href || \"\" === current.href\n ? null\n : current.href) &&\n currentResource.getAttribute(\"rel\") ===\n (null == current.rel ? null : current.rel) &&\n currentResource.getAttribute(\"title\") ===\n (null == current.title ? null : current.title) &&\n currentResource.getAttribute(\"crossorigin\") ===\n (null == current.crossOrigin\n ? null\n : current.crossOrigin))\n ) {\n maybeNodes.splice(i, 1);\n break b;\n }\n currentResource = hoistableRoot.createElement(flags);\n setInitialProperties(currentResource, flags, current);\n hoistableRoot.head.appendChild(currentResource);\n break;\n case \"meta\":\n if (\n (maybeNodes = getHydratableHoistableCache(\n \"meta\",\n \"content\",\n hoistableRoot\n ).get(flags + (current.content || \"\")))\n )\n for (i = 0; i < maybeNodes.length; i++)\n if (\n ((currentResource = maybeNodes[i]),\n currentResource.getAttribute(\"content\") ===\n (null == current.content\n ? null\n : \"\" + current.content) &&\n currentResource.getAttribute(\"name\") ===\n (null == current.name ? null : current.name) &&\n currentResource.getAttribute(\"property\") ===\n (null == current.property\n ? null\n : current.property) &&\n currentResource.getAttribute(\"http-equiv\") ===\n (null == current.httpEquiv\n ? null\n : current.httpEquiv) &&\n currentResource.getAttribute(\"charset\") ===\n (null == current.charSet\n ? null\n : current.charSet))\n ) {\n maybeNodes.splice(i, 1);\n break b;\n }\n currentResource = hoistableRoot.createElement(flags);\n setInitialProperties(currentResource, flags, current);\n hoistableRoot.head.appendChild(currentResource);\n break;\n default:\n throw Error(formatProdErrorMessage(468, flags));\n }\n currentResource[internalInstanceKey] = finishedWork;\n markNodeAsHoistable(currentResource);\n flags = currentResource;\n }\n finishedWork.stateNode = flags;\n } else\n mountHoistable(\n hoistableRoot,\n finishedWork.type,\n finishedWork.stateNode\n );\n else\n finishedWork.stateNode = acquireResource(\n hoistableRoot,\n flags,\n finishedWork.memoizedProps\n );\n else\n currentResource !== flags\n ? (null === currentResource\n ? null !== current.stateNode &&\n ((current = current.stateNode),\n current.parentNode.removeChild(current))\n : currentResource.count--,\n null === flags\n ? mountHoistable(\n hoistableRoot,\n finishedWork.type,\n finishedWork.stateNode\n )\n : acquireResource(\n hoistableRoot,\n flags,\n finishedWork.memoizedProps\n ))\n : null === flags &&\n null !== finishedWork.stateNode &&\n commitHostUpdate(\n finishedWork,\n finishedWork.memoizedProps,\n current.memoizedProps\n );\n }\n break;\n case 27:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 512 &&\n (offscreenSubtreeWasHidden ||\n null === current ||\n safelyDetachRef(current, current.return));\n null !== current &&\n flags & 4 &&\n commitHostUpdate(\n finishedWork,\n finishedWork.memoizedProps,\n current.memoizedProps\n );\n break;\n case 5:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 512 &&\n (offscreenSubtreeWasHidden ||\n null === current ||\n safelyDetachRef(current, current.return));\n if (finishedWork.flags & 32) {\n hoistableRoot = finishedWork.stateNode;\n try {\n setTextContent(hoistableRoot, \"\");\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n flags & 4 &&\n null != finishedWork.stateNode &&\n ((hoistableRoot = finishedWork.memoizedProps),\n commitHostUpdate(\n finishedWork,\n hoistableRoot,\n null !== current ? current.memoizedProps : hoistableRoot\n ));\n flags & 1024 && (needsFormReset = !0);\n break;\n case 6:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n if (flags & 4) {\n if (null === finishedWork.stateNode)\n throw Error(formatProdErrorMessage(162));\n flags = finishedWork.memoizedProps;\n current = finishedWork.stateNode;\n try {\n current.nodeValue = flags;\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n }\n break;\n case 3:\n tagCaches = null;\n hoistableRoot = currentHoistableRoot;\n currentHoistableRoot = getHoistableRoot(root.containerInfo);\n recursivelyTraverseMutationEffects(root, finishedWork);\n currentHoistableRoot = hoistableRoot;\n commitReconciliationEffects(finishedWork);\n if (flags & 4 && null !== current && current.memoizedState.isDehydrated)\n try {\n retryIfBlockedOn(root.containerInfo);\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n needsFormReset &&\n ((needsFormReset = !1), recursivelyResetForms(finishedWork));\n break;\n case 4:\n flags = currentHoistableRoot;\n currentHoistableRoot = getHoistableRoot(\n finishedWork.stateNode.containerInfo\n );\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n currentHoistableRoot = flags;\n break;\n case 12:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n break;\n case 31:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 4 &&\n ((flags = finishedWork.updateQueue),\n null !== flags &&\n ((finishedWork.updateQueue = null),\n attachSuspenseRetryListeners(finishedWork, flags)));\n break;\n case 13:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n finishedWork.child.flags & 8192 &&\n (null !== finishedWork.memoizedState) !==\n (null !== current && null !== current.memoizedState) &&\n (globalMostRecentFallbackTime = now());\n flags & 4 &&\n ((flags = finishedWork.updateQueue),\n null !== flags &&\n ((finishedWork.updateQueue = null),\n attachSuspenseRetryListeners(finishedWork, flags)));\n break;\n case 22:\n hoistableRoot = null !== finishedWork.memoizedState;\n var wasHidden = null !== current && null !== current.memoizedState,\n prevOffscreenSubtreeIsHidden = offscreenSubtreeIsHidden,\n prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;\n offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden || hoistableRoot;\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden || wasHidden;\n recursivelyTraverseMutationEffects(root, finishedWork);\n offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;\n offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden;\n commitReconciliationEffects(finishedWork);\n if (flags & 8192)\n a: for (\n root = finishedWork.stateNode,\n root._visibility = hoistableRoot\n ? root._visibility & -2\n : root._visibility | 1,\n hoistableRoot &&\n (null === current ||\n wasHidden ||\n offscreenSubtreeIsHidden ||\n offscreenSubtreeWasHidden ||\n recursivelyTraverseDisappearLayoutEffects(finishedWork)),\n current = null,\n root = finishedWork;\n ;\n\n ) {\n if (5 === root.tag || 26 === root.tag) {\n if (null === current) {\n wasHidden = current = root;\n try {\n if (((currentResource = wasHidden.stateNode), hoistableRoot))\n (maybeNodes = currentResource.style),\n \"function\" === typeof maybeNodes.setProperty\n ? maybeNodes.setProperty(\"display\", \"none\", \"important\")\n : (maybeNodes.display = \"none\");\n else {\n i = wasHidden.stateNode;\n var styleProp = wasHidden.memoizedProps.style,\n display =\n void 0 !== styleProp &&\n null !== styleProp &&\n styleProp.hasOwnProperty(\"display\")\n ? styleProp.display\n : null;\n i.style.display =\n null == display || \"boolean\" === typeof display\n ? \"\"\n : (\"\" + display).trim();\n }\n } catch (error) {\n captureCommitPhaseError(wasHidden, wasHidden.return, error);\n }\n }\n } else if (6 === root.tag) {\n if (null === current) {\n wasHidden = root;\n try {\n wasHidden.stateNode.nodeValue = hoistableRoot\n ? \"\"\n : wasHidden.memoizedProps;\n } catch (error) {\n captureCommitPhaseError(wasHidden, wasHidden.return, error);\n }\n }\n } else if (18 === root.tag) {\n if (null === current) {\n wasHidden = root;\n try {\n var instance = wasHidden.stateNode;\n hoistableRoot\n ? hideOrUnhideDehydratedBoundary(instance, !0)\n : hideOrUnhideDehydratedBoundary(wasHidden.stateNode, !1);\n } catch (error) {\n captureCommitPhaseError(wasHidden, wasHidden.return, error);\n }\n }\n } else if (\n ((22 !== root.tag && 23 !== root.tag) ||\n null === root.memoizedState ||\n root === finishedWork) &&\n null !== root.child\n ) {\n root.child.return = root;\n root = root.child;\n continue;\n }\n if (root === finishedWork) break a;\n for (; null === root.sibling; ) {\n if (null === root.return || root.return === finishedWork) break a;\n current === root && (current = null);\n root = root.return;\n }\n current === root && (current = null);\n root.sibling.return = root.return;\n root = root.sibling;\n }\n flags & 4 &&\n ((flags = finishedWork.updateQueue),\n null !== flags &&\n ((current = flags.retryQueue),\n null !== current &&\n ((flags.retryQueue = null),\n attachSuspenseRetryListeners(finishedWork, current))));\n break;\n case 19:\n recursivelyTraverseMutationEffects(root, finishedWork);\n commitReconciliationEffects(finishedWork);\n flags & 4 &&\n ((flags = finishedWork.updateQueue),\n null !== flags &&\n ((finishedWork.updateQueue = null),\n attachSuspenseRetryListeners(finishedWork, flags)));\n break;\n case 30:\n break;\n case 21:\n break;\n default:\n recursivelyTraverseMutationEffects(root, finishedWork),\n commitReconciliationEffects(finishedWork);\n }\n}\nfunction commitReconciliationEffects(finishedWork) {\n var flags = finishedWork.flags;\n if (flags & 2) {\n try {\n for (\n var hostParentFiber, parentFiber = finishedWork.return;\n null !== parentFiber;\n\n ) {\n if (isHostParent(parentFiber)) {\n hostParentFiber = parentFiber;\n break;\n }\n parentFiber = parentFiber.return;\n }\n if (null == hostParentFiber) throw Error(formatProdErrorMessage(160));\n switch (hostParentFiber.tag) {\n case 27:\n var parent = hostParentFiber.stateNode,\n before = getHostSibling(finishedWork);\n insertOrAppendPlacementNode(finishedWork, before, parent);\n break;\n case 5:\n var parent$141 = hostParentFiber.stateNode;\n hostParentFiber.flags & 32 &&\n (setTextContent(parent$141, \"\"), (hostParentFiber.flags &= -33));\n var before$142 = getHostSibling(finishedWork);\n insertOrAppendPlacementNode(finishedWork, before$142, parent$141);\n break;\n case 3:\n case 4:\n var parent$143 = hostParentFiber.stateNode.containerInfo,\n before$144 = getHostSibling(finishedWork);\n insertOrAppendPlacementNodeIntoContainer(\n finishedWork,\n before$144,\n parent$143\n );\n break;\n default:\n throw Error(formatProdErrorMessage(161));\n }\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n finishedWork.flags &= -3;\n }\n flags & 4096 && (finishedWork.flags &= -4097);\n}\nfunction recursivelyResetForms(parentFiber) {\n if (parentFiber.subtreeFlags & 1024)\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n var fiber = parentFiber;\n recursivelyResetForms(fiber);\n 5 === fiber.tag && fiber.flags & 1024 && fiber.stateNode.reset();\n parentFiber = parentFiber.sibling;\n }\n}\nfunction recursivelyTraverseLayoutEffects(root, parentFiber) {\n if (parentFiber.subtreeFlags & 8772)\n for (parentFiber = parentFiber.child; null !== parentFiber; )\n commitLayoutEffectOnFiber(root, parentFiber.alternate, parentFiber),\n (parentFiber = parentFiber.sibling);\n}\nfunction recursivelyTraverseDisappearLayoutEffects(parentFiber) {\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n var finishedWork = parentFiber;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 14:\n case 15:\n commitHookEffectListUnmount(4, finishedWork, finishedWork.return);\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n break;\n case 1:\n safelyDetachRef(finishedWork, finishedWork.return);\n var instance = finishedWork.stateNode;\n \"function\" === typeof instance.componentWillUnmount &&\n safelyCallComponentWillUnmount(\n finishedWork,\n finishedWork.return,\n instance\n );\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n break;\n case 27:\n releaseSingletonInstance(finishedWork.stateNode);\n case 26:\n case 5:\n safelyDetachRef(finishedWork, finishedWork.return);\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n break;\n case 22:\n null === finishedWork.memoizedState &&\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n break;\n case 30:\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n break;\n default:\n recursivelyTraverseDisappearLayoutEffects(finishedWork);\n }\n parentFiber = parentFiber.sibling;\n }\n}\nfunction recursivelyTraverseReappearLayoutEffects(\n finishedRoot$jscomp$0,\n parentFiber,\n includeWorkInProgressEffects\n) {\n includeWorkInProgressEffects =\n includeWorkInProgressEffects && 0 !== (parentFiber.subtreeFlags & 8772);\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n var current = parentFiber.alternate,\n finishedRoot = finishedRoot$jscomp$0,\n finishedWork = parentFiber,\n flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 15:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n commitHookEffectListMount(4, finishedWork);\n break;\n case 1:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n current = finishedWork;\n finishedRoot = current.stateNode;\n if (\"function\" === typeof finishedRoot.componentDidMount)\n try {\n finishedRoot.componentDidMount();\n } catch (error) {\n captureCommitPhaseError(current, current.return, error);\n }\n current = finishedWork;\n finishedRoot = current.updateQueue;\n if (null !== finishedRoot) {\n var instance = current.stateNode;\n try {\n var hiddenCallbacks = finishedRoot.shared.hiddenCallbacks;\n if (null !== hiddenCallbacks)\n for (\n finishedRoot.shared.hiddenCallbacks = null, finishedRoot = 0;\n finishedRoot < hiddenCallbacks.length;\n finishedRoot++\n )\n callCallback(hiddenCallbacks[finishedRoot], instance);\n } catch (error) {\n captureCommitPhaseError(current, current.return, error);\n }\n }\n includeWorkInProgressEffects &&\n flags & 64 &&\n commitClassCallbacks(finishedWork);\n safelyAttachRef(finishedWork, finishedWork.return);\n break;\n case 27:\n commitHostSingletonAcquisition(finishedWork);\n case 26:\n case 5:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n includeWorkInProgressEffects &&\n null === current &&\n flags & 4 &&\n commitHostMount(finishedWork);\n safelyAttachRef(finishedWork, finishedWork.return);\n break;\n case 12:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n break;\n case 31:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n includeWorkInProgressEffects &&\n flags & 4 &&\n commitActivityHydrationCallbacks(finishedRoot, finishedWork);\n break;\n case 13:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n includeWorkInProgressEffects &&\n flags & 4 &&\n commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);\n break;\n case 22:\n null === finishedWork.memoizedState &&\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n safelyAttachRef(finishedWork, finishedWork.return);\n break;\n case 30:\n break;\n default:\n recursivelyTraverseReappearLayoutEffects(\n finishedRoot,\n finishedWork,\n includeWorkInProgressEffects\n );\n }\n parentFiber = parentFiber.sibling;\n }\n}\nfunction commitOffscreenPassiveMountEffects(current, finishedWork) {\n var previousCache = null;\n null !== current &&\n null !== current.memoizedState &&\n null !== current.memoizedState.cachePool &&\n (previousCache = current.memoizedState.cachePool.pool);\n current = null;\n null !== finishedWork.memoizedState &&\n null !== finishedWork.memoizedState.cachePool &&\n (current = finishedWork.memoizedState.cachePool.pool);\n current !== previousCache &&\n (null != current && current.refCount++,\n null != previousCache && releaseCache(previousCache));\n}\nfunction commitCachePassiveMountEffect(current, finishedWork) {\n current = null;\n null !== finishedWork.alternate &&\n (current = finishedWork.alternate.memoizedState.cache);\n finishedWork = finishedWork.memoizedState.cache;\n finishedWork !== current &&\n (finishedWork.refCount++, null != current && releaseCache(current));\n}\nfunction recursivelyTraversePassiveMountEffects(\n root,\n parentFiber,\n committedLanes,\n committedTransitions\n) {\n if (parentFiber.subtreeFlags & 10256)\n for (parentFiber = parentFiber.child; null !== parentFiber; )\n commitPassiveMountOnFiber(\n root,\n parentFiber,\n committedLanes,\n committedTransitions\n ),\n (parentFiber = parentFiber.sibling);\n}\nfunction commitPassiveMountOnFiber(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n) {\n var flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 15:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n flags & 2048 && commitHookEffectListMount(9, finishedWork);\n break;\n case 1:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n break;\n case 3:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n flags & 2048 &&\n ((finishedRoot = null),\n null !== finishedWork.alternate &&\n (finishedRoot = finishedWork.alternate.memoizedState.cache),\n (finishedWork = finishedWork.memoizedState.cache),\n finishedWork !== finishedRoot &&\n (finishedWork.refCount++,\n null != finishedRoot && releaseCache(finishedRoot)));\n break;\n case 12:\n if (flags & 2048) {\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n finishedRoot = finishedWork.stateNode;\n try {\n var _finishedWork$memoize2 = finishedWork.memoizedProps,\n id = _finishedWork$memoize2.id,\n onPostCommit = _finishedWork$memoize2.onPostCommit;\n \"function\" === typeof onPostCommit &&\n onPostCommit(\n id,\n null === finishedWork.alternate ? \"mount\" : \"update\",\n finishedRoot.passiveEffectDuration,\n -0\n );\n } catch (error) {\n captureCommitPhaseError(finishedWork, finishedWork.return, error);\n }\n } else\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n break;\n case 31:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n break;\n case 13:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n break;\n case 23:\n break;\n case 22:\n _finishedWork$memoize2 = finishedWork.stateNode;\n id = finishedWork.alternate;\n null !== finishedWork.memoizedState\n ? _finishedWork$memoize2._visibility & 2\n ? recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n )\n : recursivelyTraverseAtomicPassiveEffects(finishedRoot, finishedWork)\n : _finishedWork$memoize2._visibility & 2\n ? recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n )\n : ((_finishedWork$memoize2._visibility |= 2),\n recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n 0 !== (finishedWork.subtreeFlags & 10256) || !1\n ));\n flags & 2048 && commitOffscreenPassiveMountEffects(id, finishedWork);\n break;\n case 24:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n flags & 2048 &&\n commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);\n break;\n default:\n recursivelyTraversePassiveMountEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions\n );\n }\n}\nfunction recursivelyTraverseReconnectPassiveEffects(\n finishedRoot$jscomp$0,\n parentFiber,\n committedLanes$jscomp$0,\n committedTransitions$jscomp$0,\n includeWorkInProgressEffects\n) {\n includeWorkInProgressEffects =\n includeWorkInProgressEffects &&\n (0 !== (parentFiber.subtreeFlags & 10256) || !1);\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n var finishedRoot = finishedRoot$jscomp$0,\n finishedWork = parentFiber,\n committedLanes = committedLanes$jscomp$0,\n committedTransitions = committedTransitions$jscomp$0,\n flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 15:\n recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n includeWorkInProgressEffects\n );\n commitHookEffectListMount(8, finishedWork);\n break;\n case 23:\n break;\n case 22:\n var instance = finishedWork.stateNode;\n null !== finishedWork.memoizedState\n ? instance._visibility & 2\n ? recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n includeWorkInProgressEffects\n )\n : recursivelyTraverseAtomicPassiveEffects(\n finishedRoot,\n finishedWork\n )\n : ((instance._visibility |= 2),\n recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n includeWorkInProgressEffects\n ));\n includeWorkInProgressEffects &&\n flags & 2048 &&\n commitOffscreenPassiveMountEffects(\n finishedWork.alternate,\n finishedWork\n );\n break;\n case 24:\n recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n includeWorkInProgressEffects\n );\n includeWorkInProgressEffects &&\n flags & 2048 &&\n commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);\n break;\n default:\n recursivelyTraverseReconnectPassiveEffects(\n finishedRoot,\n finishedWork,\n committedLanes,\n committedTransitions,\n includeWorkInProgressEffects\n );\n }\n parentFiber = parentFiber.sibling;\n }\n}\nfunction recursivelyTraverseAtomicPassiveEffects(\n finishedRoot$jscomp$0,\n parentFiber\n) {\n if (parentFiber.subtreeFlags & 10256)\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n var finishedRoot = finishedRoot$jscomp$0,\n finishedWork = parentFiber,\n flags = finishedWork.flags;\n switch (finishedWork.tag) {\n case 22:\n recursivelyTraverseAtomicPassiveEffects(finishedRoot, finishedWork);\n flags & 2048 &&\n commitOffscreenPassiveMountEffects(\n finishedWork.alternate,\n finishedWork\n );\n break;\n case 24:\n recursivelyTraverseAtomicPassiveEffects(finishedRoot, finishedWork);\n flags & 2048 &&\n commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);\n break;\n default:\n recursivelyTraverseAtomicPassiveEffects(finishedRoot, finishedWork);\n }\n parentFiber = parentFiber.sibling;\n }\n}\nvar suspenseyCommitFlag = 8192;\nfunction recursivelyAccumulateSuspenseyCommit(\n parentFiber,\n committedLanes,\n suspendedState\n) {\n if (parentFiber.subtreeFlags & suspenseyCommitFlag)\n for (parentFiber = parentFiber.child; null !== parentFiber; )\n accumulateSuspenseyCommitOnFiber(\n parentFiber,\n committedLanes,\n suspendedState\n ),\n (parentFiber = parentFiber.sibling);\n}\nfunction accumulateSuspenseyCommitOnFiber(\n fiber,\n committedLanes,\n suspendedState\n) {\n switch (fiber.tag) {\n case 26:\n recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n );\n fiber.flags & suspenseyCommitFlag &&\n null !== fiber.memoizedState &&\n suspendResource(\n suspendedState,\n currentHoistableRoot,\n fiber.memoizedState,\n fiber.memoizedProps\n );\n break;\n case 5:\n recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n );\n break;\n case 3:\n case 4:\n var previousHoistableRoot = currentHoistableRoot;\n currentHoistableRoot = getHoistableRoot(fiber.stateNode.containerInfo);\n recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n );\n currentHoistableRoot = previousHoistableRoot;\n break;\n case 22:\n null === fiber.memoizedState &&\n ((previousHoistableRoot = fiber.alternate),\n null !== previousHoistableRoot &&\n null !== previousHoistableRoot.memoizedState\n ? ((previousHoistableRoot = suspenseyCommitFlag),\n (suspenseyCommitFlag = 16777216),\n recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n ),\n (suspenseyCommitFlag = previousHoistableRoot))\n : recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n ));\n break;\n default:\n recursivelyAccumulateSuspenseyCommit(\n fiber,\n committedLanes,\n suspendedState\n );\n }\n}\nfunction detachAlternateSiblings(parentFiber) {\n var previousFiber = parentFiber.alternate;\n if (\n null !== previousFiber &&\n ((parentFiber = previousFiber.child), null !== parentFiber)\n ) {\n previousFiber.child = null;\n do\n (previousFiber = parentFiber.sibling),\n (parentFiber.sibling = null),\n (parentFiber = previousFiber);\n while (null !== parentFiber);\n }\n}\nfunction recursivelyTraversePassiveUnmountEffects(parentFiber) {\n var deletions = parentFiber.deletions;\n if (0 !== (parentFiber.flags & 16)) {\n if (null !== deletions)\n for (var i = 0; i < deletions.length; i++) {\n var childToDelete = deletions[i];\n nextEffect = childToDelete;\n commitPassiveUnmountEffectsInsideOfDeletedTree_begin(\n childToDelete,\n parentFiber\n );\n }\n detachAlternateSiblings(parentFiber);\n }\n if (parentFiber.subtreeFlags & 10256)\n for (parentFiber = parentFiber.child; null !== parentFiber; )\n commitPassiveUnmountOnFiber(parentFiber),\n (parentFiber = parentFiber.sibling);\n}\nfunction commitPassiveUnmountOnFiber(finishedWork) {\n switch (finishedWork.tag) {\n case 0:\n case 11:\n case 15:\n recursivelyTraversePassiveUnmountEffects(finishedWork);\n finishedWork.flags & 2048 &&\n commitHookEffectListUnmount(9, finishedWork, finishedWork.return);\n break;\n case 3:\n recursivelyTraversePassiveUnmountEffects(finishedWork);\n break;\n case 12:\n recursivelyTraversePassiveUnmountEffects(finishedWork);\n break;\n case 22:\n var instance = finishedWork.stateNode;\n null !== finishedWork.memoizedState &&\n instance._visibility & 2 &&\n (null === finishedWork.return || 13 !== finishedWork.return.tag)\n ? ((instance._visibility &= -3),\n recursivelyTraverseDisconnectPassiveEffects(finishedWork))\n : recursivelyTraversePassiveUnmountEffects(finishedWork);\n break;\n default:\n recursivelyTraversePassiveUnmountEffects(finishedWork);\n }\n}\nfunction recursivelyTraverseDisconnectPassiveEffects(parentFiber) {\n var deletions = parentFiber.deletions;\n if (0 !== (parentFiber.flags & 16)) {\n if (null !== deletions)\n for (var i = 0; i < deletions.length; i++) {\n var childToDelete = deletions[i];\n nextEffect = childToDelete;\n commitPassiveUnmountEffectsInsideOfDeletedTree_begin(\n childToDelete,\n parentFiber\n );\n }\n detachAlternateSiblings(parentFiber);\n }\n for (parentFiber = parentFiber.child; null !== parentFiber; ) {\n deletions = parentFiber;\n switch (deletions.tag) {\n case 0:\n case 11:\n case 15:\n commitHookEffectListUnmount(8, deletions, deletions.return);\n recursivelyTraverseDisconnectPassiveEffects(deletions);\n break;\n case 22:\n i = deletions.stateNode;\n i._visibility & 2 &&\n ((i._visibility &= -3),\n recursivelyTraverseDisconnectPassiveEffects(deletions));\n break;\n default:\n recursivelyTraverseDisconnectPassiveEffects(deletions);\n }\n parentFiber = parentFiber.sibling;\n }\n}\nfunction commitPassiveUnmountEffectsInsideOfDeletedTree_begin(\n deletedSubtreeRoot,\n nearestMountedAncestor\n) {\n for (; null !== nextEffect; ) {\n var fiber = nextEffect;\n switch (fiber.tag) {\n case 0:\n case 11:\n case 15:\n commitHookEffectListUnmount(8, fiber, nearestMountedAncestor);\n break;\n case 23:\n case 22:\n if (\n null !== fiber.memoizedState &&\n null !== fiber.memoizedState.cachePool\n ) {\n var cache = fiber.memoizedState.cachePool.pool;\n null != cache && cache.refCount++;\n }\n break;\n case 24:\n releaseCache(fiber.memoizedState.cache);\n }\n cache = fiber.child;\n if (null !== cache) (cache.return = fiber), (nextEffect = cache);\n else\n a: for (fiber = deletedSubtreeRoot; null !== nextEffect; ) {\n cache = nextEffect;\n var sibling = cache.sibling,\n returnFiber = cache.return;\n detachFiberAfterEffects(cache);\n if (cache === fiber) {\n nextEffect = null;\n break a;\n }\n if (null !== sibling) {\n sibling.return = returnFiber;\n nextEffect = sibling;\n break a;\n }\n nextEffect = returnFiber;\n }\n }\n}\nvar DefaultAsyncDispatcher = {\n getCacheForType: function (resourceType) {\n var cache = readContext(CacheContext),\n cacheForType = cache.data.get(resourceType);\n void 0 === cacheForType &&\n ((cacheForType = resourceType()),\n cache.data.set(resourceType, cacheForType));\n return cacheForType;\n },\n cacheSignal: function () {\n return readContext(CacheContext).controller.signal;\n }\n },\n PossiblyWeakMap = \"function\" === typeof WeakMap ? WeakMap : Map,\n executionContext = 0,\n workInProgressRoot = null,\n workInProgress = null,\n workInProgressRootRenderLanes = 0,\n workInProgressSuspendedReason = 0,\n workInProgressThrownValue = null,\n workInProgressRootDidSkipSuspendedSiblings = !1,\n workInProgressRootIsPrerendering = !1,\n workInProgressRootDidAttachPingListener = !1,\n entangledRenderLanes = 0,\n workInProgressRootExitStatus = 0,\n workInProgressRootSkippedLanes = 0,\n workInProgressRootInterleavedUpdatedLanes = 0,\n workInProgressRootPingedLanes = 0,\n workInProgressDeferredLane = 0,\n workInProgressSuspendedRetryLanes = 0,\n workInProgressRootConcurrentErrors = null,\n workInProgressRootRecoverableErrors = null,\n workInProgressRootDidIncludeRecursiveRenderUpdate = !1,\n globalMostRecentFallbackTime = 0,\n globalMostRecentTransitionTime = 0,\n workInProgressRootRenderTargetTime = Infinity,\n workInProgressTransitions = null,\n legacyErrorBoundariesThatAlreadyFailed = null,\n pendingEffectsStatus = 0,\n pendingEffectsRoot = null,\n pendingFinishedWork = null,\n pendingEffectsLanes = 0,\n pendingEffectsRemainingLanes = 0,\n pendingPassiveTransitions = null,\n pendingRecoverableErrors = null,\n nestedUpdateCount = 0,\n rootWithNestedUpdates = null;\nfunction requestUpdateLane() {\n return 0 !== (executionContext & 2) && 0 !== workInProgressRootRenderLanes\n ? workInProgressRootRenderLanes & -workInProgressRootRenderLanes\n : null !== ReactSharedInternals.T\n ? requestTransitionLane()\n : resolveUpdatePriority();\n}\nfunction requestDeferredLane() {\n if (0 === workInProgressDeferredLane)\n if (0 === (workInProgressRootRenderLanes & 536870912) || isHydrating) {\n var lane = nextTransitionDeferredLane;\n nextTransitionDeferredLane <<= 1;\n 0 === (nextTransitionDeferredLane & 3932160) &&\n (nextTransitionDeferredLane = 262144);\n workInProgressDeferredLane = lane;\n } else workInProgressDeferredLane = 536870912;\n lane = suspenseHandlerStackCursor.current;\n null !== lane && (lane.flags |= 32);\n return workInProgressDeferredLane;\n}\nfunction scheduleUpdateOnFiber(root, fiber, lane) {\n if (\n (root === workInProgressRoot &&\n (2 === workInProgressSuspendedReason ||\n 9 === workInProgressSuspendedReason)) ||\n null !== root.cancelPendingCommit\n )\n prepareFreshStack(root, 0),\n markRootSuspended(\n root,\n workInProgressRootRenderLanes,\n workInProgressDeferredLane,\n !1\n );\n markRootUpdated$1(root, lane);\n if (0 === (executionContext & 2) || root !== workInProgressRoot)\n root === workInProgressRoot &&\n (0 === (executionContext & 2) &&\n (workInProgressRootInterleavedUpdatedLanes |= lane),\n 4 === workInProgressRootExitStatus &&\n markRootSuspended(\n root,\n workInProgressRootRenderLanes,\n workInProgressDeferredLane,\n !1\n )),\n ensureRootIsScheduled(root);\n}\nfunction performWorkOnRoot(root$jscomp$0, lanes, forceSync) {\n if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327));\n var shouldTimeSlice =\n (!forceSync &&\n 0 === (lanes & 127) &&\n 0 === (lanes & root$jscomp$0.expiredLanes)) ||\n checkIfRootIsPrerendering(root$jscomp$0, lanes),\n exitStatus = shouldTimeSlice\n ? renderRootConcurrent(root$jscomp$0, lanes)\n : renderRootSync(root$jscomp$0, lanes, !0),\n renderWasConcurrent = shouldTimeSlice;\n do {\n if (0 === exitStatus) {\n workInProgressRootIsPrerendering &&\n !shouldTimeSlice &&\n markRootSuspended(root$jscomp$0, lanes, 0, !1);\n break;\n } else {\n forceSync = root$jscomp$0.current.alternate;\n if (\n renderWasConcurrent &&\n !isRenderConsistentWithExternalStores(forceSync)\n ) {\n exitStatus = renderRootSync(root$jscomp$0, lanes, !1);\n renderWasConcurrent = !1;\n continue;\n }\n if (2 === exitStatus) {\n renderWasConcurrent = lanes;\n if (root$jscomp$0.errorRecoveryDisabledLanes & renderWasConcurrent)\n var JSCompiler_inline_result = 0;\n else\n (JSCompiler_inline_result = root$jscomp$0.pendingLanes & -536870913),\n (JSCompiler_inline_result =\n 0 !== JSCompiler_inline_result\n ? JSCompiler_inline_result\n : JSCompiler_inline_result & 536870912\n ? 536870912\n : 0);\n if (0 !== JSCompiler_inline_result) {\n lanes = JSCompiler_inline_result;\n a: {\n var root = root$jscomp$0;\n exitStatus = workInProgressRootConcurrentErrors;\n var wasRootDehydrated = root.current.memoizedState.isDehydrated;\n wasRootDehydrated &&\n (prepareFreshStack(root, JSCompiler_inline_result).flags |= 256);\n JSCompiler_inline_result = renderRootSync(\n root,\n JSCompiler_inline_result,\n !1\n );\n if (2 !== JSCompiler_inline_result) {\n if (\n workInProgressRootDidAttachPingListener &&\n !wasRootDehydrated\n ) {\n root.errorRecoveryDisabledLanes |= renderWasConcurrent;\n workInProgressRootInterleavedUpdatedLanes |=\n renderWasConcurrent;\n exitStatus = 4;\n break a;\n }\n renderWasConcurrent = workInProgressRootRecoverableErrors;\n workInProgressRootRecoverableErrors = exitStatus;\n null !== renderWasConcurrent &&\n (null === workInProgressRootRecoverableErrors\n ? (workInProgressRootRecoverableErrors = renderWasConcurrent)\n : workInProgressRootRecoverableErrors.push.apply(\n workInProgressRootRecoverableErrors,\n renderWasConcurrent\n ));\n }\n exitStatus = JSCompiler_inline_result;\n }\n renderWasConcurrent = !1;\n if (2 !== exitStatus) continue;\n }\n }\n if (1 === exitStatus) {\n prepareFreshStack(root$jscomp$0, 0);\n markRootSuspended(root$jscomp$0, lanes, 0, !0);\n break;\n }\n a: {\n shouldTimeSlice = root$jscomp$0;\n renderWasConcurrent = exitStatus;\n switch (renderWasConcurrent) {\n case 0:\n case 1:\n throw Error(formatProdErrorMessage(345));\n case 4:\n if ((lanes & 4194048) !== lanes) break;\n case 6:\n markRootSuspended(\n shouldTimeSlice,\n lanes,\n workInProgressDeferredLane,\n !workInProgressRootDidSkipSuspendedSiblings\n );\n break a;\n case 2:\n workInProgressRootRecoverableErrors = null;\n break;\n case 3:\n case 5:\n break;\n default:\n throw Error(formatProdErrorMessage(329));\n }\n if (\n (lanes & 62914560) === lanes &&\n ((exitStatus = globalMostRecentFallbackTime + 300 - now()),\n 10 < exitStatus)\n ) {\n markRootSuspended(\n shouldTimeSlice,\n lanes,\n workInProgressDeferredLane,\n !workInProgressRootDidSkipSuspendedSiblings\n );\n if (0 !== getNextLanes(shouldTimeSlice, 0, !0)) break a;\n pendingEffectsLanes = lanes;\n shouldTimeSlice.timeoutHandle = scheduleTimeout(\n commitRootWhenReady.bind(\n null,\n shouldTimeSlice,\n forceSync,\n workInProgressRootRecoverableErrors,\n workInProgressTransitions,\n workInProgressRootDidIncludeRecursiveRenderUpdate,\n lanes,\n workInProgressDeferredLane,\n workInProgressRootInterleavedUpdatedLanes,\n workInProgressSuspendedRetryLanes,\n workInProgressRootDidSkipSuspendedSiblings,\n renderWasConcurrent,\n \"Throttled\",\n -0,\n 0\n ),\n exitStatus\n );\n break a;\n }\n commitRootWhenReady(\n shouldTimeSlice,\n forceSync,\n workInProgressRootRecoverableErrors,\n workInProgressTransitions,\n workInProgressRootDidIncludeRecursiveRenderUpdate,\n lanes,\n workInProgressDeferredLane,\n workInProgressRootInterleavedUpdatedLanes,\n workInProgressSuspendedRetryLanes,\n workInProgressRootDidSkipSuspendedSiblings,\n renderWasConcurrent,\n null,\n -0,\n 0\n );\n }\n }\n break;\n } while (1);\n ensureRootIsScheduled(root$jscomp$0);\n}\nfunction commitRootWhenReady(\n root,\n finishedWork,\n recoverableErrors,\n transitions,\n didIncludeRenderPhaseUpdate,\n lanes,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes,\n didSkipSuspendedSiblings,\n exitStatus,\n suspendedCommitReason,\n completedRenderStartTime,\n completedRenderEndTime\n) {\n root.timeoutHandle = -1;\n suspendedCommitReason = finishedWork.subtreeFlags;\n if (\n suspendedCommitReason & 8192 ||\n 16785408 === (suspendedCommitReason & 16785408)\n ) {\n suspendedCommitReason = {\n stylesheets: null,\n count: 0,\n imgCount: 0,\n imgBytes: 0,\n suspenseyImages: [],\n waitingForImages: !0,\n waitingForViewTransition: !1,\n unsuspend: noop$1\n };\n accumulateSuspenseyCommitOnFiber(\n finishedWork,\n lanes,\n suspendedCommitReason\n );\n var timeoutOffset =\n (lanes & 62914560) === lanes\n ? globalMostRecentFallbackTime - now()\n : (lanes & 4194048) === lanes\n ? globalMostRecentTransitionTime - now()\n : 0;\n timeoutOffset = waitForCommitToBeReady(\n suspendedCommitReason,\n timeoutOffset\n );\n if (null !== timeoutOffset) {\n pendingEffectsLanes = lanes;\n root.cancelPendingCommit = timeoutOffset(\n commitRoot.bind(\n null,\n root,\n finishedWork,\n lanes,\n recoverableErrors,\n transitions,\n didIncludeRenderPhaseUpdate,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes,\n exitStatus,\n suspendedCommitReason,\n null,\n completedRenderStartTime,\n completedRenderEndTime\n )\n );\n markRootSuspended(root, lanes, spawnedLane, !didSkipSuspendedSiblings);\n return;\n }\n }\n commitRoot(\n root,\n finishedWork,\n lanes,\n recoverableErrors,\n transitions,\n didIncludeRenderPhaseUpdate,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes\n );\n}\nfunction isRenderConsistentWithExternalStores(finishedWork) {\n for (var node = finishedWork; ; ) {\n var tag = node.tag;\n if (\n (0 === tag || 11 === tag || 15 === tag) &&\n node.flags & 16384 &&\n ((tag = node.updateQueue),\n null !== tag && ((tag = tag.stores), null !== tag))\n )\n for (var i = 0; i < tag.length; i++) {\n var check = tag[i],\n getSnapshot = check.getSnapshot;\n check = check.value;\n try {\n if (!objectIs(getSnapshot(), check)) return !1;\n } catch (error) {\n return !1;\n }\n }\n tag = node.child;\n if (node.subtreeFlags & 16384 && null !== tag)\n (tag.return = node), (node = tag);\n else {\n if (node === finishedWork) break;\n for (; null === node.sibling; ) {\n if (null === node.return || node.return === finishedWork) return !0;\n node = node.return;\n }\n node.sibling.return = node.return;\n node = node.sibling;\n }\n }\n return !0;\n}\nfunction markRootSuspended(\n root,\n suspendedLanes,\n spawnedLane,\n didAttemptEntireTree\n) {\n suspendedLanes &= ~workInProgressRootPingedLanes;\n suspendedLanes &= ~workInProgressRootInterleavedUpdatedLanes;\n root.suspendedLanes |= suspendedLanes;\n root.pingedLanes &= ~suspendedLanes;\n didAttemptEntireTree && (root.warmLanes |= suspendedLanes);\n didAttemptEntireTree = root.expirationTimes;\n for (var lanes = suspendedLanes; 0 < lanes; ) {\n var index$6 = 31 - clz32(lanes),\n lane = 1 << index$6;\n didAttemptEntireTree[index$6] = -1;\n lanes &= ~lane;\n }\n 0 !== spawnedLane &&\n markSpawnedDeferredLane(root, spawnedLane, suspendedLanes);\n}\nfunction flushSyncWork$1() {\n return 0 === (executionContext & 6)\n ? (flushSyncWorkAcrossRoots_impl(0, !1), !1)\n : !0;\n}\nfunction resetWorkInProgressStack() {\n if (null !== workInProgress) {\n if (0 === workInProgressSuspendedReason)\n var interruptedWork = workInProgress.return;\n else\n (interruptedWork = workInProgress),\n (lastContextDependency = currentlyRenderingFiber$1 = null),\n resetHooksOnUnwind(interruptedWork),\n (thenableState$1 = null),\n (thenableIndexCounter$1 = 0),\n (interruptedWork = workInProgress);\n for (; null !== interruptedWork; )\n unwindInterruptedWork(interruptedWork.alternate, interruptedWork),\n (interruptedWork = interruptedWork.return);\n workInProgress = null;\n }\n}\nfunction prepareFreshStack(root, lanes) {\n var timeoutHandle = root.timeoutHandle;\n -1 !== timeoutHandle &&\n ((root.timeoutHandle = -1), cancelTimeout(timeoutHandle));\n timeoutHandle = root.cancelPendingCommit;\n null !== timeoutHandle &&\n ((root.cancelPendingCommit = null), timeoutHandle());\n pendingEffectsLanes = 0;\n resetWorkInProgressStack();\n workInProgressRoot = root;\n workInProgress = timeoutHandle = createWorkInProgress(root.current, null);\n workInProgressRootRenderLanes = lanes;\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n workInProgressRootDidSkipSuspendedSiblings = !1;\n workInProgressRootIsPrerendering = checkIfRootIsPrerendering(root, lanes);\n workInProgressRootDidAttachPingListener = !1;\n workInProgressSuspendedRetryLanes =\n workInProgressDeferredLane =\n workInProgressRootPingedLanes =\n workInProgressRootInterleavedUpdatedLanes =\n workInProgressRootSkippedLanes =\n workInProgressRootExitStatus =\n 0;\n workInProgressRootRecoverableErrors = workInProgressRootConcurrentErrors =\n null;\n workInProgressRootDidIncludeRecursiveRenderUpdate = !1;\n 0 !== (lanes & 8) && (lanes |= lanes & 32);\n var allEntangledLanes = root.entangledLanes;\n if (0 !== allEntangledLanes)\n for (\n root = root.entanglements, allEntangledLanes &= lanes;\n 0 < allEntangledLanes;\n\n ) {\n var index$4 = 31 - clz32(allEntangledLanes),\n lane = 1 << index$4;\n lanes |= root[index$4];\n allEntangledLanes &= ~lane;\n }\n entangledRenderLanes = lanes;\n finishQueueingConcurrentUpdates();\n return timeoutHandle;\n}\nfunction handleThrow(root, thrownValue) {\n currentlyRenderingFiber = null;\n ReactSharedInternals.H = ContextOnlyDispatcher;\n thrownValue === SuspenseException || thrownValue === SuspenseActionException\n ? ((thrownValue = getSuspendedThenable()),\n (workInProgressSuspendedReason = 3))\n : thrownValue === SuspenseyCommitException\n ? ((thrownValue = getSuspendedThenable()),\n (workInProgressSuspendedReason = 4))\n : (workInProgressSuspendedReason =\n thrownValue === SelectiveHydrationException\n ? 8\n : null !== thrownValue &&\n \"object\" === typeof thrownValue &&\n \"function\" === typeof thrownValue.then\n ? 6\n : 1);\n workInProgressThrownValue = thrownValue;\n null === workInProgress &&\n ((workInProgressRootExitStatus = 1),\n logUncaughtError(\n root,\n createCapturedValueAtFiber(thrownValue, root.current)\n ));\n}\nfunction shouldRemainOnPreviousScreen() {\n var handler = suspenseHandlerStackCursor.current;\n return null === handler\n ? !0\n : (workInProgressRootRenderLanes & 4194048) ===\n workInProgressRootRenderLanes\n ? null === shellBoundary\n ? !0\n : !1\n : (workInProgressRootRenderLanes & 62914560) ===\n workInProgressRootRenderLanes ||\n 0 !== (workInProgressRootRenderLanes & 536870912)\n ? handler === shellBoundary\n : !1;\n}\nfunction pushDispatcher() {\n var prevDispatcher = ReactSharedInternals.H;\n ReactSharedInternals.H = ContextOnlyDispatcher;\n return null === prevDispatcher ? ContextOnlyDispatcher : prevDispatcher;\n}\nfunction pushAsyncDispatcher() {\n var prevAsyncDispatcher = ReactSharedInternals.A;\n ReactSharedInternals.A = DefaultAsyncDispatcher;\n return prevAsyncDispatcher;\n}\nfunction renderDidSuspendDelayIfPossible() {\n workInProgressRootExitStatus = 4;\n workInProgressRootDidSkipSuspendedSiblings ||\n ((workInProgressRootRenderLanes & 4194048) !==\n workInProgressRootRenderLanes &&\n null !== suspenseHandlerStackCursor.current) ||\n (workInProgressRootIsPrerendering = !0);\n (0 === (workInProgressRootSkippedLanes & 134217727) &&\n 0 === (workInProgressRootInterleavedUpdatedLanes & 134217727)) ||\n null === workInProgressRoot ||\n markRootSuspended(\n workInProgressRoot,\n workInProgressRootRenderLanes,\n workInProgressDeferredLane,\n !1\n );\n}\nfunction renderRootSync(root, lanes, shouldYieldForPrerendering) {\n var prevExecutionContext = executionContext;\n executionContext |= 2;\n var prevDispatcher = pushDispatcher(),\n prevAsyncDispatcher = pushAsyncDispatcher();\n if (workInProgressRoot !== root || workInProgressRootRenderLanes !== lanes)\n (workInProgressTransitions = null), prepareFreshStack(root, lanes);\n lanes = !1;\n var exitStatus = workInProgressRootExitStatus;\n a: do\n try {\n if (0 !== workInProgressSuspendedReason && null !== workInProgress) {\n var unitOfWork = workInProgress,\n thrownValue = workInProgressThrownValue;\n switch (workInProgressSuspendedReason) {\n case 8:\n resetWorkInProgressStack();\n exitStatus = 6;\n break a;\n case 3:\n case 2:\n case 9:\n case 6:\n null === suspenseHandlerStackCursor.current && (lanes = !0);\n var reason = workInProgressSuspendedReason;\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n throwAndUnwindWorkLoop(root, unitOfWork, thrownValue, reason);\n if (\n shouldYieldForPrerendering &&\n workInProgressRootIsPrerendering\n ) {\n exitStatus = 0;\n break a;\n }\n break;\n default:\n (reason = workInProgressSuspendedReason),\n (workInProgressSuspendedReason = 0),\n (workInProgressThrownValue = null),\n throwAndUnwindWorkLoop(root, unitOfWork, thrownValue, reason);\n }\n }\n workLoopSync();\n exitStatus = workInProgressRootExitStatus;\n break;\n } catch (thrownValue$165) {\n handleThrow(root, thrownValue$165);\n }\n while (1);\n lanes && root.shellSuspendCounter++;\n lastContextDependency = currentlyRenderingFiber$1 = null;\n executionContext = prevExecutionContext;\n ReactSharedInternals.H = prevDispatcher;\n ReactSharedInternals.A = prevAsyncDispatcher;\n null === workInProgress &&\n ((workInProgressRoot = null),\n (workInProgressRootRenderLanes = 0),\n finishQueueingConcurrentUpdates());\n return exitStatus;\n}\nfunction workLoopSync() {\n for (; null !== workInProgress; ) performUnitOfWork(workInProgress);\n}\nfunction renderRootConcurrent(root, lanes) {\n var prevExecutionContext = executionContext;\n executionContext |= 2;\n var prevDispatcher = pushDispatcher(),\n prevAsyncDispatcher = pushAsyncDispatcher();\n workInProgressRoot !== root || workInProgressRootRenderLanes !== lanes\n ? ((workInProgressTransitions = null),\n (workInProgressRootRenderTargetTime = now() + 500),\n prepareFreshStack(root, lanes))\n : (workInProgressRootIsPrerendering = checkIfRootIsPrerendering(\n root,\n lanes\n ));\n a: do\n try {\n if (0 !== workInProgressSuspendedReason && null !== workInProgress) {\n lanes = workInProgress;\n var thrownValue = workInProgressThrownValue;\n b: switch (workInProgressSuspendedReason) {\n case 1:\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n throwAndUnwindWorkLoop(root, lanes, thrownValue, 1);\n break;\n case 2:\n case 9:\n if (isThenableResolved(thrownValue)) {\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n replaySuspendedUnitOfWork(lanes);\n break;\n }\n lanes = function () {\n (2 !== workInProgressSuspendedReason &&\n 9 !== workInProgressSuspendedReason) ||\n workInProgressRoot !== root ||\n (workInProgressSuspendedReason = 7);\n ensureRootIsScheduled(root);\n };\n thrownValue.then(lanes, lanes);\n break a;\n case 3:\n workInProgressSuspendedReason = 7;\n break a;\n case 4:\n workInProgressSuspendedReason = 5;\n break a;\n case 7:\n isThenableResolved(thrownValue)\n ? ((workInProgressSuspendedReason = 0),\n (workInProgressThrownValue = null),\n replaySuspendedUnitOfWork(lanes))\n : ((workInProgressSuspendedReason = 0),\n (workInProgressThrownValue = null),\n throwAndUnwindWorkLoop(root, lanes, thrownValue, 7));\n break;\n case 5:\n var resource = null;\n switch (workInProgress.tag) {\n case 26:\n resource = workInProgress.memoizedState;\n case 5:\n case 27:\n var hostFiber = workInProgress;\n if (\n resource\n ? preloadResource(resource)\n : hostFiber.stateNode.complete\n ) {\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n var sibling = hostFiber.sibling;\n if (null !== sibling) workInProgress = sibling;\n else {\n var returnFiber = hostFiber.return;\n null !== returnFiber\n ? ((workInProgress = returnFiber),\n completeUnitOfWork(returnFiber))\n : (workInProgress = null);\n }\n break b;\n }\n }\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n throwAndUnwindWorkLoop(root, lanes, thrownValue, 5);\n break;\n case 6:\n workInProgressSuspendedReason = 0;\n workInProgressThrownValue = null;\n throwAndUnwindWorkLoop(root, lanes, thrownValue, 6);\n break;\n case 8:\n resetWorkInProgressStack();\n workInProgressRootExitStatus = 6;\n break a;\n default:\n throw Error(formatProdErrorMessage(462));\n }\n }\n workLoopConcurrentByScheduler();\n break;\n } catch (thrownValue$167) {\n handleThrow(root, thrownValue$167);\n }\n while (1);\n lastContextDependency = currentlyRenderingFiber$1 = null;\n ReactSharedInternals.H = prevDispatcher;\n ReactSharedInternals.A = prevAsyncDispatcher;\n executionContext = prevExecutionContext;\n if (null !== workInProgress) return 0;\n workInProgressRoot = null;\n workInProgressRootRenderLanes = 0;\n finishQueueingConcurrentUpdates();\n return workInProgressRootExitStatus;\n}\nfunction workLoopConcurrentByScheduler() {\n for (; null !== workInProgress && !shouldYield(); )\n performUnitOfWork(workInProgress);\n}\nfunction performUnitOfWork(unitOfWork) {\n var next = beginWork(unitOfWork.alternate, unitOfWork, entangledRenderLanes);\n unitOfWork.memoizedProps = unitOfWork.pendingProps;\n null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);\n}\nfunction replaySuspendedUnitOfWork(unitOfWork) {\n var next = unitOfWork;\n var current = next.alternate;\n switch (next.tag) {\n case 15:\n case 0:\n next = replayFunctionComponent(\n current,\n next,\n next.pendingProps,\n next.type,\n void 0,\n workInProgressRootRenderLanes\n );\n break;\n case 11:\n next = replayFunctionComponent(\n current,\n next,\n next.pendingProps,\n next.type.render,\n next.ref,\n workInProgressRootRenderLanes\n );\n break;\n case 5:\n resetHooksOnUnwind(next);\n default:\n unwindInterruptedWork(current, next),\n (next = workInProgress =\n resetWorkInProgress(next, entangledRenderLanes)),\n (next = beginWork(current, next, entangledRenderLanes));\n }\n unitOfWork.memoizedProps = unitOfWork.pendingProps;\n null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);\n}\nfunction throwAndUnwindWorkLoop(\n root,\n unitOfWork,\n thrownValue,\n suspendedReason\n) {\n lastContextDependency = currentlyRenderingFiber$1 = null;\n resetHooksOnUnwind(unitOfWork);\n thenableState$1 = null;\n thenableIndexCounter$1 = 0;\n var returnFiber = unitOfWork.return;\n try {\n if (\n throwException(\n root,\n returnFiber,\n unitOfWork,\n thrownValue,\n workInProgressRootRenderLanes\n )\n ) {\n workInProgressRootExitStatus = 1;\n logUncaughtError(\n root,\n createCapturedValueAtFiber(thrownValue, root.current)\n );\n workInProgress = null;\n return;\n }\n } catch (error) {\n if (null !== returnFiber) throw ((workInProgress = returnFiber), error);\n workInProgressRootExitStatus = 1;\n logUncaughtError(\n root,\n createCapturedValueAtFiber(thrownValue, root.current)\n );\n workInProgress = null;\n return;\n }\n if (unitOfWork.flags & 32768) {\n if (isHydrating || 1 === suspendedReason) root = !0;\n else if (\n workInProgressRootIsPrerendering ||\n 0 !== (workInProgressRootRenderLanes & 536870912)\n )\n root = !1;\n else if (\n ((workInProgressRootDidSkipSuspendedSiblings = root = !0),\n 2 === suspendedReason ||\n 9 === suspendedReason ||\n 3 === suspendedReason ||\n 6 === suspendedReason)\n )\n (suspendedReason = suspenseHandlerStackCursor.current),\n null !== suspendedReason &&\n 13 === suspendedReason.tag &&\n (suspendedReason.flags |= 16384);\n unwindUnitOfWork(unitOfWork, root);\n } else completeUnitOfWork(unitOfWork);\n}\nfunction completeUnitOfWork(unitOfWork) {\n var completedWork = unitOfWork;\n do {\n if (0 !== (completedWork.flags & 32768)) {\n unwindUnitOfWork(\n completedWork,\n workInProgressRootDidSkipSuspendedSiblings\n );\n return;\n }\n unitOfWork = completedWork.return;\n var next = completeWork(\n completedWork.alternate,\n completedWork,\n entangledRenderLanes\n );\n if (null !== next) {\n workInProgress = next;\n return;\n }\n completedWork = completedWork.sibling;\n if (null !== completedWork) {\n workInProgress = completedWork;\n return;\n }\n workInProgress = completedWork = unitOfWork;\n } while (null !== completedWork);\n 0 === workInProgressRootExitStatus && (workInProgressRootExitStatus = 5);\n}\nfunction unwindUnitOfWork(unitOfWork, skipSiblings) {\n do {\n var next = unwindWork(unitOfWork.alternate, unitOfWork);\n if (null !== next) {\n next.flags &= 32767;\n workInProgress = next;\n return;\n }\n next = unitOfWork.return;\n null !== next &&\n ((next.flags |= 32768), (next.subtreeFlags = 0), (next.deletions = null));\n if (\n !skipSiblings &&\n ((unitOfWork = unitOfWork.sibling), null !== unitOfWork)\n ) {\n workInProgress = unitOfWork;\n return;\n }\n workInProgress = unitOfWork = next;\n } while (null !== unitOfWork);\n workInProgressRootExitStatus = 6;\n workInProgress = null;\n}\nfunction commitRoot(\n root,\n finishedWork,\n lanes,\n recoverableErrors,\n transitions,\n didIncludeRenderPhaseUpdate,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes\n) {\n root.cancelPendingCommit = null;\n do flushPendingEffects();\n while (0 !== pendingEffectsStatus);\n if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(327));\n if (null !== finishedWork) {\n if (finishedWork === root.current) throw Error(formatProdErrorMessage(177));\n didIncludeRenderPhaseUpdate = finishedWork.lanes | finishedWork.childLanes;\n didIncludeRenderPhaseUpdate |= concurrentlyUpdatedLanes;\n markRootFinished(\n root,\n lanes,\n didIncludeRenderPhaseUpdate,\n spawnedLane,\n updatedLanes,\n suspendedRetryLanes\n );\n root === workInProgressRoot &&\n ((workInProgress = workInProgressRoot = null),\n (workInProgressRootRenderLanes = 0));\n pendingFinishedWork = finishedWork;\n pendingEffectsRoot = root;\n pendingEffectsLanes = lanes;\n pendingEffectsRemainingLanes = didIncludeRenderPhaseUpdate;\n pendingPassiveTransitions = transitions;\n pendingRecoverableErrors = recoverableErrors;\n 0 !== (finishedWork.subtreeFlags & 10256) ||\n 0 !== (finishedWork.flags & 10256)\n ? ((root.callbackNode = null),\n (root.callbackPriority = 0),\n scheduleCallback$1(NormalPriority$1, function () {\n flushPassiveEffects();\n return null;\n }))\n : ((root.callbackNode = null), (root.callbackPriority = 0));\n recoverableErrors = 0 !== (finishedWork.flags & 13878);\n if (0 !== (finishedWork.subtreeFlags & 13878) || recoverableErrors) {\n recoverableErrors = ReactSharedInternals.T;\n ReactSharedInternals.T = null;\n transitions = ReactDOMSharedInternals.p;\n ReactDOMSharedInternals.p = 2;\n spawnedLane = executionContext;\n executionContext |= 4;\n try {\n commitBeforeMutationEffects(root, finishedWork, lanes);\n } finally {\n (executionContext = spawnedLane),\n (ReactDOMSharedInternals.p = transitions),\n (ReactSharedInternals.T = recoverableErrors);\n }\n }\n pendingEffectsStatus = 1;\n flushMutationEffects();\n flushLayoutEffects();\n flushSpawnedWork();\n }\n}\nfunction flushMutationEffects() {\n if (1 === pendingEffectsStatus) {\n pendingEffectsStatus = 0;\n var root = pendingEffectsRoot,\n finishedWork = pendingFinishedWork,\n rootMutationHasEffect = 0 !== (finishedWork.flags & 13878);\n if (0 !== (finishedWork.subtreeFlags & 13878) || rootMutationHasEffect) {\n rootMutationHasEffect = ReactSharedInternals.T;\n ReactSharedInternals.T = null;\n var previousPriority = ReactDOMSharedInternals.p;\n ReactDOMSharedInternals.p = 2;\n var prevExecutionContext = executionContext;\n executionContext |= 4;\n try {\n commitMutationEffectsOnFiber(finishedWork, root);\n var priorSelectionInformation = selectionInformation,\n curFocusedElem = getActiveElementDeep(root.containerInfo),\n priorFocusedElem = priorSelectionInformation.focusedElem,\n priorSelectionRange = priorSelectionInformation.selectionRange;\n if (\n curFocusedElem !== priorFocusedElem &&\n priorFocusedElem &&\n priorFocusedElem.ownerDocument &&\n containsNode(\n priorFocusedElem.ownerDocument.documentElement,\n priorFocusedElem\n )\n ) {\n if (\n null !== priorSelectionRange &&\n hasSelectionCapabilities(priorFocusedElem)\n ) {\n var start = priorSelectionRange.start,\n end = priorSelectionRange.end;\n void 0 === end && (end = start);\n if (\"selectionStart\" in priorFocusedElem)\n (priorFocusedElem.selectionStart = start),\n (priorFocusedElem.selectionEnd = Math.min(\n end,\n priorFocusedElem.value.length\n ));\n else {\n var doc = priorFocusedElem.ownerDocument || document,\n win = (doc && doc.defaultView) || window;\n if (win.getSelection) {\n var selection = win.getSelection(),\n length = priorFocusedElem.textContent.length,\n start$jscomp$0 = Math.min(priorSelectionRange.start, length),\n end$jscomp$0 =\n void 0 === priorSelectionRange.end\n ? start$jscomp$0\n : Math.min(priorSelectionRange.end, length);\n !selection.extend &&\n start$jscomp$0 > end$jscomp$0 &&\n ((curFocusedElem = end$jscomp$0),\n (end$jscomp$0 = start$jscomp$0),\n (start$jscomp$0 = curFocusedElem));\n var startMarker = getNodeForCharacterOffset(\n priorFocusedElem,\n start$jscomp$0\n ),\n endMarker = getNodeForCharacterOffset(\n priorFocusedElem,\n end$jscomp$0\n );\n if (\n startMarker &&\n endMarker &&\n (1 !== selection.rangeCount ||\n selection.anchorNode !== startMarker.node ||\n selection.anchorOffset !== startMarker.offset ||\n selection.focusNode !== endMarker.node ||\n selection.focusOffset !== endMarker.offset)\n ) {\n var range = doc.createRange();\n range.setStart(startMarker.node, startMarker.offset);\n selection.removeAllRanges();\n start$jscomp$0 > end$jscomp$0\n ? (selection.addRange(range),\n selection.extend(endMarker.node, endMarker.offset))\n : (range.setEnd(endMarker.node, endMarker.offset),\n selection.addRange(range));\n }\n }\n }\n }\n doc = [];\n for (\n selection = priorFocusedElem;\n (selection = selection.parentNode);\n\n )\n 1 === selection.nodeType &&\n doc.push({\n element: selection,\n left: selection.scrollLeft,\n top: selection.scrollTop\n });\n \"function\" === typeof priorFocusedElem.focus &&\n priorFocusedElem.focus();\n for (\n priorFocusedElem = 0;\n priorFocusedElem < doc.length;\n priorFocusedElem++\n ) {\n var info = doc[priorFocusedElem];\n info.element.scrollLeft = info.left;\n info.element.scrollTop = info.top;\n }\n }\n _enabled = !!eventsEnabled;\n selectionInformation = eventsEnabled = null;\n } finally {\n (executionContext = prevExecutionContext),\n (ReactDOMSharedInternals.p = previousPriority),\n (ReactSharedInternals.T = rootMutationHasEffect);\n }\n }\n root.current = finishedWork;\n pendingEffectsStatus = 2;\n }\n}\nfunction flushLayoutEffects() {\n if (2 === pendingEffectsStatus) {\n pendingEffectsStatus = 0;\n var root = pendingEffectsRoot,\n finishedWork = pendingFinishedWork,\n rootHasLayoutEffect = 0 !== (finishedWork.flags & 8772);\n if (0 !== (finishedWork.subtreeFlags & 8772) || rootHasLayoutEffect) {\n rootHasLayoutEffect = ReactSharedInternals.T;\n ReactSharedInternals.T = null;\n var previousPriority = ReactDOMSharedInternals.p;\n ReactDOMSharedInternals.p = 2;\n var prevExecutionContext = executionContext;\n executionContext |= 4;\n try {\n commitLayoutEffectOnFiber(root, finishedWork.alternate, finishedWork);\n } finally {\n (executionContext = prevExecutionContext),\n (ReactDOMSharedInternals.p = previousPriority),\n (ReactSharedInternals.T = rootHasLayoutEffect);\n }\n }\n pendingEffectsStatus = 3;\n }\n}\nfunction flushSpawnedWork() {\n if (4 === pendingEffectsStatus || 3 === pendingEffectsStatus) {\n pendingEffectsStatus = 0;\n requestPaint();\n var root = pendingEffectsRoot,\n finishedWork = pendingFinishedWork,\n lanes = pendingEffectsLanes,\n recoverableErrors = pendingRecoverableErrors;\n 0 !== (finishedWork.subtreeFlags & 10256) ||\n 0 !== (finishedWork.flags & 10256)\n ? (pendingEffectsStatus = 5)\n : ((pendingEffectsStatus = 0),\n (pendingFinishedWork = pendingEffectsRoot = null),\n releaseRootPooledCache(root, root.pendingLanes));\n var remainingLanes = root.pendingLanes;\n 0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null);\n lanesToEventPriority(lanes);\n finishedWork = finishedWork.stateNode;\n if (injectedHook && \"function\" === typeof injectedHook.onCommitFiberRoot)\n try {\n injectedHook.onCommitFiberRoot(\n rendererID,\n finishedWork,\n void 0,\n 128 === (finishedWork.current.flags & 128)\n );\n } catch (err) {}\n if (null !== recoverableErrors) {\n finishedWork = ReactSharedInternals.T;\n remainingLanes = ReactDOMSharedInternals.p;\n ReactDOMSharedInternals.p = 2;\n ReactSharedInternals.T = null;\n try {\n for (\n var onRecoverableError = root.onRecoverableError, i = 0;\n i < recoverableErrors.length;\n i++\n ) {\n var recoverableError = recoverableErrors[i];\n onRecoverableError(recoverableError.value, {\n componentStack: recoverableError.stack\n });\n }\n } finally {\n (ReactSharedInternals.T = finishedWork),\n (ReactDOMSharedInternals.p = remainingLanes);\n }\n }\n 0 !== (pendingEffectsLanes & 3) && flushPendingEffects();\n ensureRootIsScheduled(root);\n remainingLanes = root.pendingLanes;\n 0 !== (lanes & 261930) && 0 !== (remainingLanes & 42)\n ? root === rootWithNestedUpdates\n ? nestedUpdateCount++\n : ((nestedUpdateCount = 0), (rootWithNestedUpdates = root))\n : (nestedUpdateCount = 0);\n flushSyncWorkAcrossRoots_impl(0, !1);\n }\n}\nfunction releaseRootPooledCache(root, remainingLanes) {\n 0 === (root.pooledCacheLanes &= remainingLanes) &&\n ((remainingLanes = root.pooledCache),\n null != remainingLanes &&\n ((root.pooledCache = null), releaseCache(remainingLanes)));\n}\nfunction flushPendingEffects() {\n flushMutationEffects();\n flushLayoutEffects();\n flushSpawnedWork();\n return flushPassiveEffects();\n}\nfunction flushPassiveEffects() {\n if (5 !== pendingEffectsStatus) return !1;\n var root = pendingEffectsRoot,\n remainingLanes = pendingEffectsRemainingLanes;\n pendingEffectsRemainingLanes = 0;\n var renderPriority = lanesToEventPriority(pendingEffectsLanes),\n prevTransition = ReactSharedInternals.T,\n previousPriority = ReactDOMSharedInternals.p;\n try {\n ReactDOMSharedInternals.p = 32 > renderPriority ? 32 : renderPriority;\n ReactSharedInternals.T = null;\n renderPriority = pendingPassiveTransitions;\n pendingPassiveTransitions = null;\n var root$jscomp$0 = pendingEffectsRoot,\n lanes = pendingEffectsLanes;\n pendingEffectsStatus = 0;\n pendingFinishedWork = pendingEffectsRoot = null;\n pendingEffectsLanes = 0;\n if (0 !== (executionContext & 6)) throw Error(formatProdErrorMessage(331));\n var prevExecutionContext = executionContext;\n executionContext |= 4;\n commitPassiveUnmountOnFiber(root$jscomp$0.current);\n commitPassiveMountOnFiber(\n root$jscomp$0,\n root$jscomp$0.current,\n lanes,\n renderPriority\n );\n executionContext = prevExecutionContext;\n flushSyncWorkAcrossRoots_impl(0, !1);\n if (\n injectedHook &&\n \"function\" === typeof injectedHook.onPostCommitFiberRoot\n )\n try {\n injectedHook.onPostCommitFiberRoot(rendererID, root$jscomp$0);\n } catch (err) {}\n return !0;\n } finally {\n (ReactDOMSharedInternals.p = previousPriority),\n (ReactSharedInternals.T = prevTransition),\n releaseRootPooledCache(root, remainingLanes);\n }\n}\nfunction captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) {\n sourceFiber = createCapturedValueAtFiber(error, sourceFiber);\n sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2);\n rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2);\n null !== rootFiber &&\n (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber));\n}\nfunction captureCommitPhaseError(sourceFiber, nearestMountedAncestor, error) {\n if (3 === sourceFiber.tag)\n captureCommitPhaseErrorOnRoot(sourceFiber, sourceFiber, error);\n else\n for (; null !== nearestMountedAncestor; ) {\n if (3 === nearestMountedAncestor.tag) {\n captureCommitPhaseErrorOnRoot(\n nearestMountedAncestor,\n sourceFiber,\n error\n );\n break;\n } else if (1 === nearestMountedAncestor.tag) {\n var instance = nearestMountedAncestor.stateNode;\n if (\n \"function\" ===\n typeof nearestMountedAncestor.type.getDerivedStateFromError ||\n (\"function\" === typeof instance.componentDidCatch &&\n (null === legacyErrorBoundariesThatAlreadyFailed ||\n !legacyErrorBoundariesThatAlreadyFailed.has(instance)))\n ) {\n sourceFiber = createCapturedValueAtFiber(error, sourceFiber);\n error = createClassErrorUpdate(2);\n instance = enqueueUpdate(nearestMountedAncestor, error, 2);\n null !== instance &&\n (initializeClassErrorUpdate(\n error,\n instance,\n nearestMountedAncestor,\n sourceFiber\n ),\n markRootUpdated$1(instance, 2),\n ensureRootIsScheduled(instance));\n break;\n }\n }\n nearestMountedAncestor = nearestMountedAncestor.return;\n }\n}\nfunction attachPingListener(root, wakeable, lanes) {\n var pingCache = root.pingCache;\n if (null === pingCache) {\n pingCache = root.pingCache = new PossiblyWeakMap();\n var threadIDs = new Set();\n pingCache.set(wakeable, threadIDs);\n } else\n (threadIDs = pingCache.get(wakeable)),\n void 0 === threadIDs &&\n ((threadIDs = new Set()), pingCache.set(wakeable, threadIDs));\n threadIDs.has(lanes) ||\n ((workInProgressRootDidAttachPingListener = !0),\n threadIDs.add(lanes),\n (root = pingSuspendedRoot.bind(null, root, wakeable, lanes)),\n wakeable.then(root, root));\n}\nfunction pingSuspendedRoot(root, wakeable, pingedLanes) {\n var pingCache = root.pingCache;\n null !== pingCache && pingCache.delete(wakeable);\n root.pingedLanes |= root.suspendedLanes & pingedLanes;\n root.warmLanes &= ~pingedLanes;\n workInProgressRoot === root &&\n (workInProgressRootRenderLanes & pingedLanes) === pingedLanes &&\n (4 === workInProgressRootExitStatus ||\n (3 === workInProgressRootExitStatus &&\n (workInProgressRootRenderLanes & 62914560) ===\n workInProgressRootRenderLanes &&\n 300 > now() - globalMostRecentFallbackTime)\n ? 0 === (executionContext & 2) && prepareFreshStack(root, 0)\n : (workInProgressRootPingedLanes |= pingedLanes),\n workInProgressSuspendedRetryLanes === workInProgressRootRenderLanes &&\n (workInProgressSuspendedRetryLanes = 0));\n ensureRootIsScheduled(root);\n}\nfunction retryTimedOutBoundary(boundaryFiber, retryLane) {\n 0 === retryLane && (retryLane = claimNextRetryLane());\n boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane);\n null !== boundaryFiber &&\n (markRootUpdated$1(boundaryFiber, retryLane),\n ensureRootIsScheduled(boundaryFiber));\n}\nfunction retryDehydratedSuspenseBoundary(boundaryFiber) {\n var suspenseState = boundaryFiber.memoizedState,\n retryLane = 0;\n null !== suspenseState && (retryLane = suspenseState.retryLane);\n retryTimedOutBoundary(boundaryFiber, retryLane);\n}\nfunction resolveRetryWakeable(boundaryFiber, wakeable) {\n var retryLane = 0;\n switch (boundaryFiber.tag) {\n case 31:\n case 13:\n var retryCache = boundaryFiber.stateNode;\n var suspenseState = boundaryFiber.memoizedState;\n null !== suspenseState && (retryLane = suspenseState.retryLane);\n break;\n case 19:\n retryCache = boundaryFiber.stateNode;\n break;\n case 22:\n retryCache = boundaryFiber.stateNode._retryCache;\n break;\n default:\n throw Error(formatProdErrorMessage(314));\n }\n null !== retryCache && retryCache.delete(wakeable);\n retryTimedOutBoundary(boundaryFiber, retryLane);\n}\nfunction scheduleCallback$1(priorityLevel, callback) {\n return scheduleCallback$3(priorityLevel, callback);\n}\nvar firstScheduledRoot = null,\n lastScheduledRoot = null,\n didScheduleMicrotask = !1,\n mightHavePendingSyncWork = !1,\n isFlushingWork = !1,\n currentEventTransitionLane = 0;\nfunction ensureRootIsScheduled(root) {\n root !== lastScheduledRoot &&\n null === root.next &&\n (null === lastScheduledRoot\n ? (firstScheduledRoot = lastScheduledRoot = root)\n : (lastScheduledRoot = lastScheduledRoot.next = root));\n mightHavePendingSyncWork = !0;\n didScheduleMicrotask ||\n ((didScheduleMicrotask = !0), scheduleImmediateRootScheduleTask());\n}\nfunction flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) {\n if (!isFlushingWork && mightHavePendingSyncWork) {\n isFlushingWork = !0;\n do {\n var didPerformSomeWork = !1;\n for (var root$170 = firstScheduledRoot; null !== root$170; ) {\n if (!onlyLegacy)\n if (0 !== syncTransitionLanes) {\n var pendingLanes = root$170.pendingLanes;\n if (0 === pendingLanes) var JSCompiler_inline_result = 0;\n else {\n var suspendedLanes = root$170.suspendedLanes,\n pingedLanes = root$170.pingedLanes;\n JSCompiler_inline_result =\n (1 << (31 - clz32(42 | syncTransitionLanes) + 1)) - 1;\n JSCompiler_inline_result &=\n pendingLanes & ~(suspendedLanes & ~pingedLanes);\n JSCompiler_inline_result =\n JSCompiler_inline_result & 201326741\n ? (JSCompiler_inline_result & 201326741) | 1\n : JSCompiler_inline_result\n ? JSCompiler_inline_result | 2\n : 0;\n }\n 0 !== JSCompiler_inline_result &&\n ((didPerformSomeWork = !0),\n performSyncWorkOnRoot(root$170, JSCompiler_inline_result));\n } else\n (JSCompiler_inline_result = workInProgressRootRenderLanes),\n (JSCompiler_inline_result = getNextLanes(\n root$170,\n root$170 === workInProgressRoot ? JSCompiler_inline_result : 0,\n null !== root$170.cancelPendingCommit ||\n -1 !== root$170.timeoutHandle\n )),\n 0 === (JSCompiler_inline_result & 3) ||\n checkIfRootIsPrerendering(root$170, JSCompiler_inline_result) ||\n ((didPerformSomeWork = !0),\n performSyncWorkOnRoot(root$170, JSCompiler_inline_result));\n root$170 = root$170.next;\n }\n } while (didPerformSomeWork);\n isFlushingWork = !1;\n }\n}\nfunction processRootScheduleInImmediateTask() {\n processRootScheduleInMicrotask();\n}\nfunction processRootScheduleInMicrotask() {\n mightHavePendingSyncWork = didScheduleMicrotask = !1;\n var syncTransitionLanes = 0;\n 0 !== currentEventTransitionLane &&\n shouldAttemptEagerTransition() &&\n (syncTransitionLanes = currentEventTransitionLane);\n for (\n var currentTime = now(), prev = null, root = firstScheduledRoot;\n null !== root;\n\n ) {\n var next = root.next,\n nextLanes = scheduleTaskForRootDuringMicrotask(root, currentTime);\n if (0 === nextLanes)\n (root.next = null),\n null === prev ? (firstScheduledRoot = next) : (prev.next = next),\n null === next && (lastScheduledRoot = prev);\n else if (\n ((prev = root), 0 !== syncTransitionLanes || 0 !== (nextLanes & 3))\n )\n mightHavePendingSyncWork = !0;\n root = next;\n }\n (0 !== pendingEffectsStatus && 5 !== pendingEffectsStatus) ||\n flushSyncWorkAcrossRoots_impl(syncTransitionLanes, !1);\n 0 !== currentEventTransitionLane && (currentEventTransitionLane = 0);\n}\nfunction scheduleTaskForRootDuringMicrotask(root, currentTime) {\n for (\n var suspendedLanes = root.suspendedLanes,\n pingedLanes = root.pingedLanes,\n expirationTimes = root.expirationTimes,\n lanes = root.pendingLanes & -62914561;\n 0 < lanes;\n\n ) {\n var index$5 = 31 - clz32(lanes),\n lane = 1 << index$5,\n expirationTime = expirationTimes[index$5];\n if (-1 === expirationTime) {\n if (0 === (lane & suspendedLanes) || 0 !== (lane & pingedLanes))\n expirationTimes[index$5] = computeExpirationTime(lane, currentTime);\n } else expirationTime <= currentTime && (root.expiredLanes |= lane);\n lanes &= ~lane;\n }\n currentTime = workInProgressRoot;\n suspendedLanes = workInProgressRootRenderLanes;\n suspendedLanes = getNextLanes(\n root,\n root === currentTime ? suspendedLanes : 0,\n null !== root.cancelPendingCommit || -1 !== root.timeoutHandle\n );\n pingedLanes = root.callbackNode;\n if (\n 0 === suspendedLanes ||\n (root === currentTime &&\n (2 === workInProgressSuspendedReason ||\n 9 === workInProgressSuspendedReason)) ||\n null !== root.cancelPendingCommit\n )\n return (\n null !== pingedLanes &&\n null !== pingedLanes &&\n cancelCallback$1(pingedLanes),\n (root.callbackNode = null),\n (root.callbackPriority = 0)\n );\n if (\n 0 === (suspendedLanes & 3) ||\n checkIfRootIsPrerendering(root, suspendedLanes)\n ) {\n currentTime = suspendedLanes & -suspendedLanes;\n if (currentTime === root.callbackPriority) return currentTime;\n null !== pingedLanes && cancelCallback$1(pingedLanes);\n switch (lanesToEventPriority(suspendedLanes)) {\n case 2:\n case 8:\n suspendedLanes = UserBlockingPriority;\n break;\n case 32:\n suspendedLanes = NormalPriority$1;\n break;\n case 268435456:\n suspendedLanes = IdlePriority;\n break;\n default:\n suspendedLanes = NormalPriority$1;\n }\n pingedLanes = performWorkOnRootViaSchedulerTask.bind(null, root);\n suspendedLanes = scheduleCallback$3(suspendedLanes, pingedLanes);\n root.callbackPriority = currentTime;\n root.callbackNode = suspendedLanes;\n return currentTime;\n }\n null !== pingedLanes && null !== pingedLanes && cancelCallback$1(pingedLanes);\n root.callbackPriority = 2;\n root.callbackNode = null;\n return 2;\n}\nfunction performWorkOnRootViaSchedulerTask(root, didTimeout) {\n if (0 !== pendingEffectsStatus && 5 !== pendingEffectsStatus)\n return (root.callbackNode = null), (root.callbackPriority = 0), null;\n var originalCallbackNode = root.callbackNode;\n if (flushPendingEffects() && root.callbackNode !== originalCallbackNode)\n return null;\n var workInProgressRootRenderLanes$jscomp$0 = workInProgressRootRenderLanes;\n workInProgressRootRenderLanes$jscomp$0 = getNextLanes(\n root,\n root === workInProgressRoot ? workInProgressRootRenderLanes$jscomp$0 : 0,\n null !== root.cancelPendingCommit || -1 !== root.timeoutHandle\n );\n if (0 === workInProgressRootRenderLanes$jscomp$0) return null;\n performWorkOnRoot(root, workInProgressRootRenderLanes$jscomp$0, didTimeout);\n scheduleTaskForRootDuringMicrotask(root, now());\n return null != root.callbackNode && root.callbackNode === originalCallbackNode\n ? performWorkOnRootViaSchedulerTask.bind(null, root)\n : null;\n}\nfunction performSyncWorkOnRoot(root, lanes) {\n if (flushPendingEffects()) return null;\n performWorkOnRoot(root, lanes, !0);\n}\nfunction scheduleImmediateRootScheduleTask() {\n scheduleMicrotask(function () {\n 0 !== (executionContext & 6)\n ? scheduleCallback$3(\n ImmediatePriority,\n processRootScheduleInImmediateTask\n )\n : processRootScheduleInMicrotask();\n });\n}\nfunction requestTransitionLane() {\n if (0 === currentEventTransitionLane) {\n var actionScopeLane = currentEntangledLane;\n 0 === actionScopeLane &&\n ((actionScopeLane = nextTransitionUpdateLane),\n (nextTransitionUpdateLane <<= 1),\n 0 === (nextTransitionUpdateLane & 261888) &&\n (nextTransitionUpdateLane = 256));\n currentEventTransitionLane = actionScopeLane;\n }\n return currentEventTransitionLane;\n}\nfunction coerceFormActionProp(actionProp) {\n return null == actionProp ||\n \"symbol\" === typeof actionProp ||\n \"boolean\" === typeof actionProp\n ? null\n : \"function\" === typeof actionProp\n ? actionProp\n : sanitizeURL(\"\" + actionProp);\n}\nfunction createFormDataWithSubmitter(form, submitter) {\n var temp = submitter.ownerDocument.createElement(\"input\");\n temp.name = submitter.name;\n temp.value = submitter.value;\n form.id && temp.setAttribute(\"form\", form.id);\n submitter.parentNode.insertBefore(temp, submitter);\n form = new FormData(form);\n temp.parentNode.removeChild(temp);\n return form;\n}\nfunction extractEvents$1(\n dispatchQueue,\n domEventName,\n maybeTargetInst,\n nativeEvent,\n nativeEventTarget\n) {\n if (\n \"submit\" === domEventName &&\n maybeTargetInst &&\n maybeTargetInst.stateNode === nativeEventTarget\n ) {\n var action = coerceFormActionProp(\n (nativeEventTarget[internalPropsKey] || null).action\n ),\n submitter = nativeEvent.submitter;\n submitter &&\n ((domEventName = (domEventName = submitter[internalPropsKey] || null)\n ? coerceFormActionProp(domEventName.formAction)\n : submitter.getAttribute(\"formAction\")),\n null !== domEventName && ((action = domEventName), (submitter = null)));\n var event = new SyntheticEvent(\n \"action\",\n \"action\",\n null,\n nativeEvent,\n nativeEventTarget\n );\n dispatchQueue.push({\n event: event,\n listeners: [\n {\n instance: null,\n listener: function () {\n if (nativeEvent.defaultPrevented) {\n if (0 !== currentEventTransitionLane) {\n var formData = submitter\n ? createFormDataWithSubmitter(nativeEventTarget, submitter)\n : new FormData(nativeEventTarget);\n startHostTransition(\n maybeTargetInst,\n {\n pending: !0,\n data: formData,\n method: nativeEventTarget.method,\n action: action\n },\n null,\n formData\n );\n }\n } else\n \"function\" === typeof action &&\n (event.preventDefault(),\n (formData = submitter\n ? createFormDataWithSubmitter(nativeEventTarget, submitter)\n : new FormData(nativeEventTarget)),\n startHostTransition(\n maybeTargetInst,\n {\n pending: !0,\n data: formData,\n method: nativeEventTarget.method,\n action: action\n },\n action,\n formData\n ));\n },\n currentTarget: nativeEventTarget\n }\n ]\n });\n }\n}\nfor (\n var i$jscomp$inline_1577 = 0;\n i$jscomp$inline_1577 < simpleEventPluginEvents.length;\n i$jscomp$inline_1577++\n) {\n var eventName$jscomp$inline_1578 =\n simpleEventPluginEvents[i$jscomp$inline_1577],\n domEventName$jscomp$inline_1579 =\n eventName$jscomp$inline_1578.toLowerCase(),\n capitalizedEvent$jscomp$inline_1580 =\n eventName$jscomp$inline_1578[0].toUpperCase() +\n eventName$jscomp$inline_1578.slice(1);\n registerSimpleEvent(\n domEventName$jscomp$inline_1579,\n \"on\" + capitalizedEvent$jscomp$inline_1580\n );\n}\nregisterSimpleEvent(ANIMATION_END, \"onAnimationEnd\");\nregisterSimpleEvent(ANIMATION_ITERATION, \"onAnimationIteration\");\nregisterSimpleEvent(ANIMATION_START, \"onAnimationStart\");\nregisterSimpleEvent(\"dblclick\", \"onDoubleClick\");\nregisterSimpleEvent(\"focusin\", \"onFocus\");\nregisterSimpleEvent(\"focusout\", \"onBlur\");\nregisterSimpleEvent(TRANSITION_RUN, \"onTransitionRun\");\nregisterSimpleEvent(TRANSITION_START, \"onTransitionStart\");\nregisterSimpleEvent(TRANSITION_CANCEL, \"onTransitionCancel\");\nregisterSimpleEvent(TRANSITION_END, \"onTransitionEnd\");\nregisterDirectEvent(\"onMouseEnter\", [\"mouseout\", \"mouseover\"]);\nregisterDirectEvent(\"onMouseLeave\", [\"mouseout\", \"mouseover\"]);\nregisterDirectEvent(\"onPointerEnter\", [\"pointerout\", \"pointerover\"]);\nregisterDirectEvent(\"onPointerLeave\", [\"pointerout\", \"pointerover\"]);\nregisterTwoPhaseEvent(\n \"onChange\",\n \"change click focusin focusout input keydown keyup selectionchange\".split(\" \")\n);\nregisterTwoPhaseEvent(\n \"onSelect\",\n \"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\n \" \"\n )\n);\nregisterTwoPhaseEvent(\"onBeforeInput\", [\n \"compositionend\",\n \"keypress\",\n \"textInput\",\n \"paste\"\n]);\nregisterTwoPhaseEvent(\n \"onCompositionEnd\",\n \"compositionend focusout keydown keypress keyup mousedown\".split(\" \")\n);\nregisterTwoPhaseEvent(\n \"onCompositionStart\",\n \"compositionstart focusout keydown keypress keyup mousedown\".split(\" \")\n);\nregisterTwoPhaseEvent(\n \"onCompositionUpdate\",\n \"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \")\n);\nvar mediaEventTypes =\n \"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting\".split(\n \" \"\n ),\n nonDelegatedEvents = new Set(\n \"beforetoggle cancel close invalid load scroll scrollend toggle\"\n .split(\" \")\n .concat(mediaEventTypes)\n );\nfunction processDispatchQueue(dispatchQueue, eventSystemFlags) {\n eventSystemFlags = 0 !== (eventSystemFlags & 4);\n for (var i = 0; i < dispatchQueue.length; i++) {\n var _dispatchQueue$i = dispatchQueue[i],\n event = _dispatchQueue$i.event;\n _dispatchQueue$i = _dispatchQueue$i.listeners;\n a: {\n var previousInstance = void 0;\n if (eventSystemFlags)\n for (\n var i$jscomp$0 = _dispatchQueue$i.length - 1;\n 0 <= i$jscomp$0;\n i$jscomp$0--\n ) {\n var _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0],\n instance = _dispatchListeners$i.instance,\n currentTarget = _dispatchListeners$i.currentTarget;\n _dispatchListeners$i = _dispatchListeners$i.listener;\n if (instance !== previousInstance && event.isPropagationStopped())\n break a;\n previousInstance = _dispatchListeners$i;\n event.currentTarget = currentTarget;\n try {\n previousInstance(event);\n } catch (error) {\n reportGlobalError(error);\n }\n event.currentTarget = null;\n previousInstance = instance;\n }\n else\n for (\n i$jscomp$0 = 0;\n i$jscomp$0 < _dispatchQueue$i.length;\n i$jscomp$0++\n ) {\n _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0];\n instance = _dispatchListeners$i.instance;\n currentTarget = _dispatchListeners$i.currentTarget;\n _dispatchListeners$i = _dispatchListeners$i.listener;\n if (instance !== previousInstance && event.isPropagationStopped())\n break a;\n previousInstance = _dispatchListeners$i;\n event.currentTarget = currentTarget;\n try {\n previousInstance(event);\n } catch (error) {\n reportGlobalError(error);\n }\n event.currentTarget = null;\n previousInstance = instance;\n }\n }\n }\n}\nfunction listenToNonDelegatedEvent(domEventName, targetElement) {\n var JSCompiler_inline_result = targetElement[internalEventHandlersKey];\n void 0 === JSCompiler_inline_result &&\n (JSCompiler_inline_result = targetElement[internalEventHandlersKey] =\n new Set());\n var listenerSetKey = domEventName + \"__bubble\";\n JSCompiler_inline_result.has(listenerSetKey) ||\n (addTrappedEventListener(targetElement, domEventName, 2, !1),\n JSCompiler_inline_result.add(listenerSetKey));\n}\nfunction listenToNativeEvent(domEventName, isCapturePhaseListener, target) {\n var eventSystemFlags = 0;\n isCapturePhaseListener && (eventSystemFlags |= 4);\n addTrappedEventListener(\n target,\n domEventName,\n eventSystemFlags,\n isCapturePhaseListener\n );\n}\nvar listeningMarker = \"_reactListening\" + Math.random().toString(36).slice(2);\nfunction listenToAllSupportedEvents(rootContainerElement) {\n if (!rootContainerElement[listeningMarker]) {\n rootContainerElement[listeningMarker] = !0;\n allNativeEvents.forEach(function (domEventName) {\n \"selectionchange\" !== domEventName &&\n (nonDelegatedEvents.has(domEventName) ||\n listenToNativeEvent(domEventName, !1, rootContainerElement),\n listenToNativeEvent(domEventName, !0, rootContainerElement));\n });\n var ownerDocument =\n 9 === rootContainerElement.nodeType\n ? rootContainerElement\n : rootContainerElement.ownerDocument;\n null === ownerDocument ||\n ownerDocument[listeningMarker] ||\n ((ownerDocument[listeningMarker] = !0),\n listenToNativeEvent(\"selectionchange\", !1, ownerDocument));\n }\n}\nfunction addTrappedEventListener(\n targetContainer,\n domEventName,\n eventSystemFlags,\n isCapturePhaseListener\n) {\n switch (getEventPriority(domEventName)) {\n case 2:\n var listenerWrapper = dispatchDiscreteEvent;\n break;\n case 8:\n listenerWrapper = dispatchContinuousEvent;\n break;\n default:\n listenerWrapper = dispatchEvent;\n }\n eventSystemFlags = listenerWrapper.bind(\n null,\n domEventName,\n eventSystemFlags,\n targetContainer\n );\n listenerWrapper = void 0;\n !passiveBrowserEventsSupported ||\n (\"touchstart\" !== domEventName &&\n \"touchmove\" !== domEventName &&\n \"wheel\" !== domEventName) ||\n (listenerWrapper = !0);\n isCapturePhaseListener\n ? void 0 !== listenerWrapper\n ? targetContainer.addEventListener(domEventName, eventSystemFlags, {\n capture: !0,\n passive: listenerWrapper\n })\n : targetContainer.addEventListener(domEventName, eventSystemFlags, !0)\n : void 0 !== listenerWrapper\n ? targetContainer.addEventListener(domEventName, eventSystemFlags, {\n passive: listenerWrapper\n })\n : targetContainer.addEventListener(domEventName, eventSystemFlags, !1);\n}\nfunction dispatchEventForPluginEventSystem(\n domEventName,\n eventSystemFlags,\n nativeEvent,\n targetInst$jscomp$0,\n targetContainer\n) {\n var ancestorInst = targetInst$jscomp$0;\n if (\n 0 === (eventSystemFlags & 1) &&\n 0 === (eventSystemFlags & 2) &&\n null !== targetInst$jscomp$0\n )\n a: for (;;) {\n if (null === targetInst$jscomp$0) return;\n var nodeTag = targetInst$jscomp$0.tag;\n if (3 === nodeTag || 4 === nodeTag) {\n var container = targetInst$jscomp$0.stateNode.containerInfo;\n if (container === targetContainer) break;\n if (4 === nodeTag)\n for (nodeTag = targetInst$jscomp$0.return; null !== nodeTag; ) {\n var grandTag = nodeTag.tag;\n if (\n (3 === grandTag || 4 === grandTag) &&\n nodeTag.stateNode.containerInfo === targetContainer\n )\n return;\n nodeTag = nodeTag.return;\n }\n for (; null !== container; ) {\n nodeTag = getClosestInstanceFromNode(container);\n if (null === nodeTag) return;\n grandTag = nodeTag.tag;\n if (\n 5 === grandTag ||\n 6 === grandTag ||\n 26 === grandTag ||\n 27 === grandTag\n ) {\n targetInst$jscomp$0 = ancestorInst = nodeTag;\n continue a;\n }\n container = container.parentNode;\n }\n }\n targetInst$jscomp$0 = targetInst$jscomp$0.return;\n }\n batchedUpdates$1(function () {\n var targetInst = ancestorInst,\n nativeEventTarget = getEventTarget(nativeEvent),\n dispatchQueue = [];\n a: {\n var reactName = topLevelEventsToReactNames.get(domEventName);\n if (void 0 !== reactName) {\n var SyntheticEventCtor = SyntheticEvent,\n reactEventType = domEventName;\n switch (domEventName) {\n case \"keypress\":\n if (0 === getEventCharCode(nativeEvent)) break a;\n case \"keydown\":\n case \"keyup\":\n SyntheticEventCtor = SyntheticKeyboardEvent;\n break;\n case \"focusin\":\n reactEventType = \"focus\";\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n case \"focusout\":\n reactEventType = \"blur\";\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n case \"beforeblur\":\n case \"afterblur\":\n SyntheticEventCtor = SyntheticFocusEvent;\n break;\n case \"click\":\n if (2 === nativeEvent.button) break a;\n case \"auxclick\":\n case \"dblclick\":\n case \"mousedown\":\n case \"mousemove\":\n case \"mouseup\":\n case \"mouseout\":\n case \"mouseover\":\n case \"contextmenu\":\n SyntheticEventCtor = SyntheticMouseEvent;\n break;\n case \"drag\":\n case \"dragend\":\n case \"dragenter\":\n case \"dragexit\":\n case \"dragleave\":\n case \"dragover\":\n case \"dragstart\":\n case \"drop\":\n SyntheticEventCtor = SyntheticDragEvent;\n break;\n case \"touchcancel\":\n case \"touchend\":\n case \"touchmove\":\n case \"touchstart\":\n SyntheticEventCtor = SyntheticTouchEvent;\n break;\n case ANIMATION_END:\n case ANIMATION_ITERATION:\n case ANIMATION_START:\n SyntheticEventCtor = SyntheticAnimationEvent;\n break;\n case TRANSITION_END:\n SyntheticEventCtor = SyntheticTransitionEvent;\n break;\n case \"scroll\":\n case \"scrollend\":\n SyntheticEventCtor = SyntheticUIEvent;\n break;\n case \"wheel\":\n SyntheticEventCtor = SyntheticWheelEvent;\n break;\n case \"copy\":\n case \"cut\":\n case \"paste\":\n SyntheticEventCtor = SyntheticClipboardEvent;\n break;\n case \"gotpointercapture\":\n case \"lostpointercapture\":\n case \"pointercancel\":\n case \"pointerdown\":\n case \"pointermove\":\n case \"pointerout\":\n case \"pointerover\":\n case \"pointerup\":\n SyntheticEventCtor = SyntheticPointerEvent;\n break;\n case \"toggle\":\n case \"beforetoggle\":\n SyntheticEventCtor = SyntheticToggleEvent;\n }\n var inCapturePhase = 0 !== (eventSystemFlags & 4),\n accumulateTargetOnly =\n !inCapturePhase &&\n (\"scroll\" === domEventName || \"scrollend\" === domEventName),\n reactEventName = inCapturePhase\n ? null !== reactName\n ? reactName + \"Capture\"\n : null\n : reactName;\n inCapturePhase = [];\n for (\n var instance = targetInst, lastHostComponent;\n null !== instance;\n\n ) {\n var _instance = instance;\n lastHostComponent = _instance.stateNode;\n _instance = _instance.tag;\n (5 !== _instance && 26 !== _instance && 27 !== _instance) ||\n null === lastHostComponent ||\n null === reactEventName ||\n ((_instance = getListener(instance, reactEventName)),\n null != _instance &&\n inCapturePhase.push(\n createDispatchListener(instance, _instance, lastHostComponent)\n ));\n if (accumulateTargetOnly) break;\n instance = instance.return;\n }\n 0 < inCapturePhase.length &&\n ((reactName = new SyntheticEventCtor(\n reactName,\n reactEventType,\n null,\n nativeEvent,\n nativeEventTarget\n )),\n dispatchQueue.push({ event: reactName, listeners: inCapturePhase }));\n }\n }\n if (0 === (eventSystemFlags & 7)) {\n a: {\n reactName =\n \"mouseover\" === domEventName || \"pointerover\" === domEventName;\n SyntheticEventCtor =\n \"mouseout\" === domEventName || \"pointerout\" === domEventName;\n if (\n reactName &&\n nativeEvent !== currentReplayingEvent &&\n (reactEventType =\n nativeEvent.relatedTarget || nativeEvent.fromElement) &&\n (getClosestInstanceFromNode(reactEventType) ||\n reactEventType[internalContainerInstanceKey])\n )\n break a;\n if (SyntheticEventCtor || reactName) {\n reactName =\n nativeEventTarget.window === nativeEventTarget\n ? nativeEventTarget\n : (reactName = nativeEventTarget.ownerDocument)\n ? reactName.defaultView || reactName.parentWindow\n : window;\n if (SyntheticEventCtor) {\n if (\n ((reactEventType =\n nativeEvent.relatedTarget || nativeEvent.toElement),\n (SyntheticEventCtor = targetInst),\n (reactEventType = reactEventType\n ? getClosestInstanceFromNode(reactEventType)\n : null),\n null !== reactEventType &&\n ((accumulateTargetOnly =\n getNearestMountedFiber(reactEventType)),\n (inCapturePhase = reactEventType.tag),\n reactEventType !== accumulateTargetOnly ||\n (5 !== inCapturePhase &&\n 27 !== inCapturePhase &&\n 6 !== inCapturePhase)))\n )\n reactEventType = null;\n } else (SyntheticEventCtor = null), (reactEventType = targetInst);\n if (SyntheticEventCtor !== reactEventType) {\n inCapturePhase = SyntheticMouseEvent;\n _instance = \"onMouseLeave\";\n reactEventName = \"onMouseEnter\";\n instance = \"mouse\";\n if (\"pointerout\" === domEventName || \"pointerover\" === domEventName)\n (inCapturePhase = SyntheticPointerEvent),\n (_instance = \"onPointerLeave\"),\n (reactEventName = \"onPointerEnter\"),\n (instance = \"pointer\");\n accumulateTargetOnly =\n null == SyntheticEventCtor\n ? reactName\n : getNodeFromInstance(SyntheticEventCtor);\n lastHostComponent =\n null == reactEventType\n ? reactName\n : getNodeFromInstance(reactEventType);\n reactName = new inCapturePhase(\n _instance,\n instance + \"leave\",\n SyntheticEventCtor,\n nativeEvent,\n nativeEventTarget\n );\n reactName.target = accumulateTargetOnly;\n reactName.relatedTarget = lastHostComponent;\n _instance = null;\n getClosestInstanceFromNode(nativeEventTarget) === targetInst &&\n ((inCapturePhase = new inCapturePhase(\n reactEventName,\n instance + \"enter\",\n reactEventType,\n nativeEvent,\n nativeEventTarget\n )),\n (inCapturePhase.target = lastHostComponent),\n (inCapturePhase.relatedTarget = accumulateTargetOnly),\n (_instance = inCapturePhase));\n accumulateTargetOnly = _instance;\n if (SyntheticEventCtor && reactEventType)\n b: {\n inCapturePhase = getParent;\n reactEventName = SyntheticEventCtor;\n instance = reactEventType;\n lastHostComponent = 0;\n for (\n _instance = reactEventName;\n _instance;\n _instance = inCapturePhase(_instance)\n )\n lastHostComponent++;\n _instance = 0;\n for (var tempB = instance; tempB; tempB = inCapturePhase(tempB))\n _instance++;\n for (; 0 < lastHostComponent - _instance; )\n (reactEventName = inCapturePhase(reactEventName)),\n lastHostComponent--;\n for (; 0 < _instance - lastHostComponent; )\n (instance = inCapturePhase(instance)), _instance--;\n for (; lastHostComponent--; ) {\n if (\n reactEventName === instance ||\n (null !== instance && reactEventName === instance.alternate)\n ) {\n inCapturePhase = reactEventName;\n break b;\n }\n reactEventName = inCapturePhase(reactEventName);\n instance = inCapturePhase(instance);\n }\n inCapturePhase = null;\n }\n else inCapturePhase = null;\n null !== SyntheticEventCtor &&\n accumulateEnterLeaveListenersForEvent(\n dispatchQueue,\n reactName,\n SyntheticEventCtor,\n inCapturePhase,\n !1\n );\n null !== reactEventType &&\n null !== accumulateTargetOnly &&\n accumulateEnterLeaveListenersForEvent(\n dispatchQueue,\n accumulateTargetOnly,\n reactEventType,\n inCapturePhase,\n !0\n );\n }\n }\n }\n a: {\n reactName = targetInst ? getNodeFromInstance(targetInst) : window;\n SyntheticEventCtor =\n reactName.nodeName && reactName.nodeName.toLowerCase();\n if (\n \"select\" === SyntheticEventCtor ||\n (\"input\" === SyntheticEventCtor && \"file\" === reactName.type)\n )\n var getTargetInstFunc = getTargetInstForChangeEvent;\n else if (isTextInputElement(reactName))\n if (isInputEventSupported)\n getTargetInstFunc = getTargetInstForInputOrChangeEvent;\n else {\n getTargetInstFunc = getTargetInstForInputEventPolyfill;\n var handleEventFunc = handleEventsForInputEventPolyfill;\n }\n else\n (SyntheticEventCtor = reactName.nodeName),\n !SyntheticEventCtor ||\n \"input\" !== SyntheticEventCtor.toLowerCase() ||\n (\"checkbox\" !== reactName.type && \"radio\" !== reactName.type)\n ? targetInst &&\n isCustomElement(targetInst.elementType) &&\n (getTargetInstFunc = getTargetInstForChangeEvent)\n : (getTargetInstFunc = getTargetInstForClickEvent);\n if (\n getTargetInstFunc &&\n (getTargetInstFunc = getTargetInstFunc(domEventName, targetInst))\n ) {\n createAndAccumulateChangeEvent(\n dispatchQueue,\n getTargetInstFunc,\n nativeEvent,\n nativeEventTarget\n );\n break a;\n }\n handleEventFunc && handleEventFunc(domEventName, reactName, targetInst);\n \"focusout\" === domEventName &&\n targetInst &&\n \"number\" === reactName.type &&\n null != targetInst.memoizedProps.value &&\n setDefaultValue(reactName, \"number\", reactName.value);\n }\n handleEventFunc = targetInst ? getNodeFromInstance(targetInst) : window;\n switch (domEventName) {\n case \"focusin\":\n if (\n isTextInputElement(handleEventFunc) ||\n \"true\" === handleEventFunc.contentEditable\n )\n (activeElement = handleEventFunc),\n (activeElementInst = targetInst),\n (lastSelection = null);\n break;\n case \"focusout\":\n lastSelection = activeElementInst = activeElement = null;\n break;\n case \"mousedown\":\n mouseDown = !0;\n break;\n case \"contextmenu\":\n case \"mouseup\":\n case \"dragend\":\n mouseDown = !1;\n constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);\n break;\n case \"selectionchange\":\n if (skipSelectionChangeEvent) break;\n case \"keydown\":\n case \"keyup\":\n constructSelectEvent(dispatchQueue, nativeEvent, nativeEventTarget);\n }\n var fallbackData;\n if (canUseCompositionEvent)\n b: {\n switch (domEventName) {\n case \"compositionstart\":\n var eventType = \"onCompositionStart\";\n break b;\n case \"compositionend\":\n eventType = \"onCompositionEnd\";\n break b;\n case \"compositionupdate\":\n eventType = \"onCompositionUpdate\";\n break b;\n }\n eventType = void 0;\n }\n else\n isComposing\n ? isFallbackCompositionEnd(domEventName, nativeEvent) &&\n (eventType = \"onCompositionEnd\")\n : \"keydown\" === domEventName &&\n 229 === nativeEvent.keyCode &&\n (eventType = \"onCompositionStart\");\n eventType &&\n (useFallbackCompositionData &&\n \"ko\" !== nativeEvent.locale &&\n (isComposing || \"onCompositionStart\" !== eventType\n ? \"onCompositionEnd\" === eventType &&\n isComposing &&\n (fallbackData = getData())\n : ((root = nativeEventTarget),\n (startText = \"value\" in root ? root.value : root.textContent),\n (isComposing = !0))),\n (handleEventFunc = accumulateTwoPhaseListeners(targetInst, eventType)),\n 0 < handleEventFunc.length &&\n ((eventType = new SyntheticCompositionEvent(\n eventType,\n domEventName,\n null,\n nativeEvent,\n nativeEventTarget\n )),\n dispatchQueue.push({ event: eventType, listeners: handleEventFunc }),\n fallbackData\n ? (eventType.data = fallbackData)\n : ((fallbackData = getDataFromCustomEvent(nativeEvent)),\n null !== fallbackData && (eventType.data = fallbackData))));\n if (\n (fallbackData = canUseTextInputEvent\n ? getNativeBeforeInputChars(domEventName, nativeEvent)\n : getFallbackBeforeInputChars(domEventName, nativeEvent))\n )\n (eventType = accumulateTwoPhaseListeners(targetInst, \"onBeforeInput\")),\n 0 < eventType.length &&\n ((handleEventFunc = new SyntheticCompositionEvent(\n \"onBeforeInput\",\n \"beforeinput\",\n null,\n nativeEvent,\n nativeEventTarget\n )),\n dispatchQueue.push({\n event: handleEventFunc,\n listeners: eventType\n }),\n (handleEventFunc.data = fallbackData));\n extractEvents$1(\n dispatchQueue,\n domEventName,\n targetInst,\n nativeEvent,\n nativeEventTarget\n );\n }\n processDispatchQueue(dispatchQueue, eventSystemFlags);\n });\n}\nfunction createDispatchListener(instance, listener, currentTarget) {\n return {\n instance: instance,\n listener: listener,\n currentTarget: currentTarget\n };\n}\nfunction accumulateTwoPhaseListeners(targetFiber, reactName) {\n for (\n var captureName = reactName + \"Capture\", listeners = [];\n null !== targetFiber;\n\n ) {\n var _instance2 = targetFiber,\n stateNode = _instance2.stateNode;\n _instance2 = _instance2.tag;\n (5 !== _instance2 && 26 !== _instance2 && 27 !== _instance2) ||\n null === stateNode ||\n ((_instance2 = getListener(targetFiber, captureName)),\n null != _instance2 &&\n listeners.unshift(\n createDispatchListener(targetFiber, _instance2, stateNode)\n ),\n (_instance2 = getListener(targetFiber, reactName)),\n null != _instance2 &&\n listeners.push(\n createDispatchListener(targetFiber, _instance2, stateNode)\n ));\n if (3 === targetFiber.tag) return listeners;\n targetFiber = targetFiber.return;\n }\n return [];\n}\nfunction getParent(inst) {\n if (null === inst) return null;\n do inst = inst.return;\n while (inst && 5 !== inst.tag && 27 !== inst.tag);\n return inst ? inst : null;\n}\nfunction accumulateEnterLeaveListenersForEvent(\n dispatchQueue,\n event,\n target,\n common,\n inCapturePhase\n) {\n for (\n var registrationName = event._reactName, listeners = [];\n null !== target && target !== common;\n\n ) {\n var _instance3 = target,\n alternate = _instance3.alternate,\n stateNode = _instance3.stateNode;\n _instance3 = _instance3.tag;\n if (null !== alternate && alternate === common) break;\n (5 !== _instance3 && 26 !== _instance3 && 27 !== _instance3) ||\n null === stateNode ||\n ((alternate = stateNode),\n inCapturePhase\n ? ((stateNode = getListener(target, registrationName)),\n null != stateNode &&\n listeners.unshift(\n createDispatchListener(target, stateNode, alternate)\n ))\n : inCapturePhase ||\n ((stateNode = getListener(target, registrationName)),\n null != stateNode &&\n listeners.push(\n createDispatchListener(target, stateNode, alternate)\n )));\n target = target.return;\n }\n 0 !== listeners.length &&\n dispatchQueue.push({ event: event, listeners: listeners });\n}\nvar NORMALIZE_NEWLINES_REGEX = /\\r\\n?/g,\n NORMALIZE_NULL_AND_REPLACEMENT_REGEX = /\\u0000|\\uFFFD/g;\nfunction normalizeMarkupForTextOrAttribute(markup) {\n return (\"string\" === typeof markup ? markup : \"\" + markup)\n .replace(NORMALIZE_NEWLINES_REGEX, \"\\n\")\n .replace(NORMALIZE_NULL_AND_REPLACEMENT_REGEX, \"\");\n}\nfunction checkForUnmatchedText(serverText, clientText) {\n clientText = normalizeMarkupForTextOrAttribute(clientText);\n return normalizeMarkupForTextOrAttribute(serverText) === clientText ? !0 : !1;\n}\nfunction setProp(domElement, tag, key, value, props, prevValue) {\n switch (key) {\n case \"children\":\n \"string\" === typeof value\n ? \"body\" === tag ||\n (\"textarea\" === tag && \"\" === value) ||\n setTextContent(domElement, value)\n : (\"number\" === typeof value || \"bigint\" === typeof value) &&\n \"body\" !== tag &&\n setTextContent(domElement, \"\" + value);\n break;\n case \"className\":\n setValueForKnownAttribute(domElement, \"class\", value);\n break;\n case \"tabIndex\":\n setValueForKnownAttribute(domElement, \"tabindex\", value);\n break;\n case \"dir\":\n case \"role\":\n case \"viewBox\":\n case \"width\":\n case \"height\":\n setValueForKnownAttribute(domElement, key, value);\n break;\n case \"style\":\n setValueForStyles(domElement, value, prevValue);\n break;\n case \"data\":\n if (\"object\" !== tag) {\n setValueForKnownAttribute(domElement, \"data\", value);\n break;\n }\n case \"src\":\n case \"href\":\n if (\"\" === value && (\"a\" !== tag || \"href\" !== key)) {\n domElement.removeAttribute(key);\n break;\n }\n if (\n null == value ||\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n ) {\n domElement.removeAttribute(key);\n break;\n }\n value = sanitizeURL(\"\" + value);\n domElement.setAttribute(key, value);\n break;\n case \"action\":\n case \"formAction\":\n if (\"function\" === typeof value) {\n domElement.setAttribute(\n key,\n \"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')\"\n );\n break;\n } else\n \"function\" === typeof prevValue &&\n (\"formAction\" === key\n ? (\"input\" !== tag &&\n setProp(domElement, tag, \"name\", props.name, props, null),\n setProp(\n domElement,\n tag,\n \"formEncType\",\n props.formEncType,\n props,\n null\n ),\n setProp(\n domElement,\n tag,\n \"formMethod\",\n props.formMethod,\n props,\n null\n ),\n setProp(\n domElement,\n tag,\n \"formTarget\",\n props.formTarget,\n props,\n null\n ))\n : (setProp(domElement, tag, \"encType\", props.encType, props, null),\n setProp(domElement, tag, \"method\", props.method, props, null),\n setProp(domElement, tag, \"target\", props.target, props, null)));\n if (\n null == value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n ) {\n domElement.removeAttribute(key);\n break;\n }\n value = sanitizeURL(\"\" + value);\n domElement.setAttribute(key, value);\n break;\n case \"onClick\":\n null != value && (domElement.onclick = noop$1);\n break;\n case \"onScroll\":\n null != value && listenToNonDelegatedEvent(\"scroll\", domElement);\n break;\n case \"onScrollEnd\":\n null != value && listenToNonDelegatedEvent(\"scrollend\", domElement);\n break;\n case \"dangerouslySetInnerHTML\":\n if (null != value) {\n if (\"object\" !== typeof value || !(\"__html\" in value))\n throw Error(formatProdErrorMessage(61));\n key = value.__html;\n if (null != key) {\n if (null != props.children) throw Error(formatProdErrorMessage(60));\n domElement.innerHTML = key;\n }\n }\n break;\n case \"multiple\":\n domElement.multiple =\n value && \"function\" !== typeof value && \"symbol\" !== typeof value;\n break;\n case \"muted\":\n domElement.muted =\n value && \"function\" !== typeof value && \"symbol\" !== typeof value;\n break;\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"defaultValue\":\n case \"defaultChecked\":\n case \"innerHTML\":\n case \"ref\":\n break;\n case \"autoFocus\":\n break;\n case \"xlinkHref\":\n if (\n null == value ||\n \"function\" === typeof value ||\n \"boolean\" === typeof value ||\n \"symbol\" === typeof value\n ) {\n domElement.removeAttribute(\"xlink:href\");\n break;\n }\n key = sanitizeURL(\"\" + value);\n domElement.setAttributeNS(\n \"http://www.w3.org/1999/xlink\",\n \"xlink:href\",\n key\n );\n break;\n case \"contentEditable\":\n case \"spellCheck\":\n case \"draggable\":\n case \"value\":\n case \"autoReverse\":\n case \"externalResourcesRequired\":\n case \"focusable\":\n case \"preserveAlpha\":\n null != value && \"function\" !== typeof value && \"symbol\" !== typeof value\n ? domElement.setAttribute(key, \"\" + value)\n : domElement.removeAttribute(key);\n break;\n case \"inert\":\n case \"allowFullScreen\":\n case \"async\":\n case \"autoPlay\":\n case \"controls\":\n case \"default\":\n case \"defer\":\n case \"disabled\":\n case \"disablePictureInPicture\":\n case \"disableRemotePlayback\":\n case \"formNoValidate\":\n case \"hidden\":\n case \"loop\":\n case \"noModule\":\n case \"noValidate\":\n case \"open\":\n case \"playsInline\":\n case \"readOnly\":\n case \"required\":\n case \"reversed\":\n case \"scoped\":\n case \"seamless\":\n case \"itemScope\":\n value && \"function\" !== typeof value && \"symbol\" !== typeof value\n ? domElement.setAttribute(key, \"\")\n : domElement.removeAttribute(key);\n break;\n case \"capture\":\n case \"download\":\n !0 === value\n ? domElement.setAttribute(key, \"\")\n : !1 !== value &&\n null != value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value\n ? domElement.setAttribute(key, value)\n : domElement.removeAttribute(key);\n break;\n case \"cols\":\n case \"rows\":\n case \"size\":\n case \"span\":\n null != value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n !isNaN(value) &&\n 1 <= value\n ? domElement.setAttribute(key, value)\n : domElement.removeAttribute(key);\n break;\n case \"rowSpan\":\n case \"start\":\n null == value ||\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n isNaN(value)\n ? domElement.removeAttribute(key)\n : domElement.setAttribute(key, value);\n break;\n case \"popover\":\n listenToNonDelegatedEvent(\"beforetoggle\", domElement);\n listenToNonDelegatedEvent(\"toggle\", domElement);\n setValueForAttribute(domElement, \"popover\", value);\n break;\n case \"xlinkActuate\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:actuate\",\n value\n );\n break;\n case \"xlinkArcrole\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:arcrole\",\n value\n );\n break;\n case \"xlinkRole\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:role\",\n value\n );\n break;\n case \"xlinkShow\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:show\",\n value\n );\n break;\n case \"xlinkTitle\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:title\",\n value\n );\n break;\n case \"xlinkType\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/1999/xlink\",\n \"xlink:type\",\n value\n );\n break;\n case \"xmlBase\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/XML/1998/namespace\",\n \"xml:base\",\n value\n );\n break;\n case \"xmlLang\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/XML/1998/namespace\",\n \"xml:lang\",\n value\n );\n break;\n case \"xmlSpace\":\n setValueForNamespacedAttribute(\n domElement,\n \"http://www.w3.org/XML/1998/namespace\",\n \"xml:space\",\n value\n );\n break;\n case \"is\":\n setValueForAttribute(domElement, \"is\", value);\n break;\n case \"innerText\":\n case \"textContent\":\n break;\n default:\n if (\n !(2 < key.length) ||\n (\"o\" !== key[0] && \"O\" !== key[0]) ||\n (\"n\" !== key[1] && \"N\" !== key[1])\n )\n (key = aliases.get(key) || key),\n setValueForAttribute(domElement, key, value);\n }\n}\nfunction setPropOnCustomElement(domElement, tag, key, value, props, prevValue) {\n switch (key) {\n case \"style\":\n setValueForStyles(domElement, value, prevValue);\n break;\n case \"dangerouslySetInnerHTML\":\n if (null != value) {\n if (\"object\" !== typeof value || !(\"__html\" in value))\n throw Error(formatProdErrorMessage(61));\n key = value.__html;\n if (null != key) {\n if (null != props.children) throw Error(formatProdErrorMessage(60));\n domElement.innerHTML = key;\n }\n }\n break;\n case \"children\":\n \"string\" === typeof value\n ? setTextContent(domElement, value)\n : (\"number\" === typeof value || \"bigint\" === typeof value) &&\n setTextContent(domElement, \"\" + value);\n break;\n case \"onScroll\":\n null != value && listenToNonDelegatedEvent(\"scroll\", domElement);\n break;\n case \"onScrollEnd\":\n null != value && listenToNonDelegatedEvent(\"scrollend\", domElement);\n break;\n case \"onClick\":\n null != value && (domElement.onclick = noop$1);\n break;\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"innerHTML\":\n case \"ref\":\n break;\n case \"innerText\":\n case \"textContent\":\n break;\n default:\n if (!registrationNameDependencies.hasOwnProperty(key))\n a: {\n if (\n \"o\" === key[0] &&\n \"n\" === key[1] &&\n ((props = key.endsWith(\"Capture\")),\n (tag = key.slice(2, props ? key.length - 7 : void 0)),\n (prevValue = domElement[internalPropsKey] || null),\n (prevValue = null != prevValue ? prevValue[key] : null),\n \"function\" === typeof prevValue &&\n domElement.removeEventListener(tag, prevValue, props),\n \"function\" === typeof value)\n ) {\n \"function\" !== typeof prevValue &&\n null !== prevValue &&\n (key in domElement\n ? (domElement[key] = null)\n : domElement.hasAttribute(key) &&\n domElement.removeAttribute(key));\n domElement.addEventListener(tag, value, props);\n break a;\n }\n key in domElement\n ? (domElement[key] = value)\n : !0 === value\n ? domElement.setAttribute(key, \"\")\n : setValueForAttribute(domElement, key, value);\n }\n }\n}\nfunction setInitialProperties(domElement, tag, props) {\n switch (tag) {\n case \"div\":\n case \"span\":\n case \"svg\":\n case \"path\":\n case \"a\":\n case \"g\":\n case \"p\":\n case \"li\":\n break;\n case \"img\":\n listenToNonDelegatedEvent(\"error\", domElement);\n listenToNonDelegatedEvent(\"load\", domElement);\n var hasSrc = !1,\n hasSrcSet = !1,\n propKey;\n for (propKey in props)\n if (props.hasOwnProperty(propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"src\":\n hasSrc = !0;\n break;\n case \"srcSet\":\n hasSrcSet = !0;\n break;\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(137, tag));\n default:\n setProp(domElement, tag, propKey, propValue, props, null);\n }\n }\n hasSrcSet &&\n setProp(domElement, tag, \"srcSet\", props.srcSet, props, null);\n hasSrc && setProp(domElement, tag, \"src\", props.src, props, null);\n return;\n case \"input\":\n listenToNonDelegatedEvent(\"invalid\", domElement);\n var defaultValue = (propKey = propValue = hasSrcSet = null),\n checked = null,\n defaultChecked = null;\n for (hasSrc in props)\n if (props.hasOwnProperty(hasSrc)) {\n var propValue$184 = props[hasSrc];\n if (null != propValue$184)\n switch (hasSrc) {\n case \"name\":\n hasSrcSet = propValue$184;\n break;\n case \"type\":\n propValue = propValue$184;\n break;\n case \"checked\":\n checked = propValue$184;\n break;\n case \"defaultChecked\":\n defaultChecked = propValue$184;\n break;\n case \"value\":\n propKey = propValue$184;\n break;\n case \"defaultValue\":\n defaultValue = propValue$184;\n break;\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n if (null != propValue$184)\n throw Error(formatProdErrorMessage(137, tag));\n break;\n default:\n setProp(domElement, tag, hasSrc, propValue$184, props, null);\n }\n }\n initInput(\n domElement,\n propKey,\n defaultValue,\n checked,\n defaultChecked,\n propValue,\n hasSrcSet,\n !1\n );\n return;\n case \"select\":\n listenToNonDelegatedEvent(\"invalid\", domElement);\n hasSrc = propValue = propKey = null;\n for (hasSrcSet in props)\n if (\n props.hasOwnProperty(hasSrcSet) &&\n ((defaultValue = props[hasSrcSet]), null != defaultValue)\n )\n switch (hasSrcSet) {\n case \"value\":\n propKey = defaultValue;\n break;\n case \"defaultValue\":\n propValue = defaultValue;\n break;\n case \"multiple\":\n hasSrc = defaultValue;\n default:\n setProp(domElement, tag, hasSrcSet, defaultValue, props, null);\n }\n tag = propKey;\n props = propValue;\n domElement.multiple = !!hasSrc;\n null != tag\n ? updateOptions(domElement, !!hasSrc, tag, !1)\n : null != props && updateOptions(domElement, !!hasSrc, props, !0);\n return;\n case \"textarea\":\n listenToNonDelegatedEvent(\"invalid\", domElement);\n propKey = hasSrcSet = hasSrc = null;\n for (propValue in props)\n if (\n props.hasOwnProperty(propValue) &&\n ((defaultValue = props[propValue]), null != defaultValue)\n )\n switch (propValue) {\n case \"value\":\n hasSrc = defaultValue;\n break;\n case \"defaultValue\":\n hasSrcSet = defaultValue;\n break;\n case \"children\":\n propKey = defaultValue;\n break;\n case \"dangerouslySetInnerHTML\":\n if (null != defaultValue) throw Error(formatProdErrorMessage(91));\n break;\n default:\n setProp(domElement, tag, propValue, defaultValue, props, null);\n }\n initTextarea(domElement, hasSrc, hasSrcSet, propKey);\n return;\n case \"option\":\n for (checked in props)\n if (\n props.hasOwnProperty(checked) &&\n ((hasSrc = props[checked]), null != hasSrc)\n )\n switch (checked) {\n case \"selected\":\n domElement.selected =\n hasSrc &&\n \"function\" !== typeof hasSrc &&\n \"symbol\" !== typeof hasSrc;\n break;\n default:\n setProp(domElement, tag, checked, hasSrc, props, null);\n }\n return;\n case \"dialog\":\n listenToNonDelegatedEvent(\"beforetoggle\", domElement);\n listenToNonDelegatedEvent(\"toggle\", domElement);\n listenToNonDelegatedEvent(\"cancel\", domElement);\n listenToNonDelegatedEvent(\"close\", domElement);\n break;\n case \"iframe\":\n case \"object\":\n listenToNonDelegatedEvent(\"load\", domElement);\n break;\n case \"video\":\n case \"audio\":\n for (hasSrc = 0; hasSrc < mediaEventTypes.length; hasSrc++)\n listenToNonDelegatedEvent(mediaEventTypes[hasSrc], domElement);\n break;\n case \"image\":\n listenToNonDelegatedEvent(\"error\", domElement);\n listenToNonDelegatedEvent(\"load\", domElement);\n break;\n case \"details\":\n listenToNonDelegatedEvent(\"toggle\", domElement);\n break;\n case \"embed\":\n case \"source\":\n case \"link\":\n listenToNonDelegatedEvent(\"error\", domElement),\n listenToNonDelegatedEvent(\"load\", domElement);\n case \"area\":\n case \"base\":\n case \"br\":\n case \"col\":\n case \"hr\":\n case \"keygen\":\n case \"meta\":\n case \"param\":\n case \"track\":\n case \"wbr\":\n case \"menuitem\":\n for (defaultChecked in props)\n if (\n props.hasOwnProperty(defaultChecked) &&\n ((hasSrc = props[defaultChecked]), null != hasSrc)\n )\n switch (defaultChecked) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(137, tag));\n default:\n setProp(domElement, tag, defaultChecked, hasSrc, props, null);\n }\n return;\n default:\n if (isCustomElement(tag)) {\n for (propValue$184 in props)\n props.hasOwnProperty(propValue$184) &&\n ((hasSrc = props[propValue$184]),\n void 0 !== hasSrc &&\n setPropOnCustomElement(\n domElement,\n tag,\n propValue$184,\n hasSrc,\n props,\n void 0\n ));\n return;\n }\n }\n for (defaultValue in props)\n props.hasOwnProperty(defaultValue) &&\n ((hasSrc = props[defaultValue]),\n null != hasSrc &&\n setProp(domElement, tag, defaultValue, hasSrc, props, null));\n}\nfunction updateProperties(domElement, tag, lastProps, nextProps) {\n switch (tag) {\n case \"div\":\n case \"span\":\n case \"svg\":\n case \"path\":\n case \"a\":\n case \"g\":\n case \"p\":\n case \"li\":\n break;\n case \"input\":\n var name = null,\n type = null,\n value = null,\n defaultValue = null,\n lastDefaultValue = null,\n checked = null,\n defaultChecked = null;\n for (propKey in lastProps) {\n var lastProp = lastProps[propKey];\n if (lastProps.hasOwnProperty(propKey) && null != lastProp)\n switch (propKey) {\n case \"checked\":\n break;\n case \"value\":\n break;\n case \"defaultValue\":\n lastDefaultValue = lastProp;\n default:\n nextProps.hasOwnProperty(propKey) ||\n setProp(domElement, tag, propKey, null, nextProps, lastProp);\n }\n }\n for (var propKey$201 in nextProps) {\n var propKey = nextProps[propKey$201];\n lastProp = lastProps[propKey$201];\n if (\n nextProps.hasOwnProperty(propKey$201) &&\n (null != propKey || null != lastProp)\n )\n switch (propKey$201) {\n case \"type\":\n type = propKey;\n break;\n case \"name\":\n name = propKey;\n break;\n case \"checked\":\n checked = propKey;\n break;\n case \"defaultChecked\":\n defaultChecked = propKey;\n break;\n case \"value\":\n value = propKey;\n break;\n case \"defaultValue\":\n defaultValue = propKey;\n break;\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n if (null != propKey)\n throw Error(formatProdErrorMessage(137, tag));\n break;\n default:\n propKey !== lastProp &&\n setProp(\n domElement,\n tag,\n propKey$201,\n propKey,\n nextProps,\n lastProp\n );\n }\n }\n updateInput(\n domElement,\n value,\n defaultValue,\n lastDefaultValue,\n checked,\n defaultChecked,\n type,\n name\n );\n return;\n case \"select\":\n propKey = value = defaultValue = propKey$201 = null;\n for (type in lastProps)\n if (\n ((lastDefaultValue = lastProps[type]),\n lastProps.hasOwnProperty(type) && null != lastDefaultValue)\n )\n switch (type) {\n case \"value\":\n break;\n case \"multiple\":\n propKey = lastDefaultValue;\n default:\n nextProps.hasOwnProperty(type) ||\n setProp(\n domElement,\n tag,\n type,\n null,\n nextProps,\n lastDefaultValue\n );\n }\n for (name in nextProps)\n if (\n ((type = nextProps[name]),\n (lastDefaultValue = lastProps[name]),\n nextProps.hasOwnProperty(name) &&\n (null != type || null != lastDefaultValue))\n )\n switch (name) {\n case \"value\":\n propKey$201 = type;\n break;\n case \"defaultValue\":\n defaultValue = type;\n break;\n case \"multiple\":\n value = type;\n default:\n type !== lastDefaultValue &&\n setProp(\n domElement,\n tag,\n name,\n type,\n nextProps,\n lastDefaultValue\n );\n }\n tag = defaultValue;\n lastProps = value;\n nextProps = propKey;\n null != propKey$201\n ? updateOptions(domElement, !!lastProps, propKey$201, !1)\n : !!nextProps !== !!lastProps &&\n (null != tag\n ? updateOptions(domElement, !!lastProps, tag, !0)\n : updateOptions(domElement, !!lastProps, lastProps ? [] : \"\", !1));\n return;\n case \"textarea\":\n propKey = propKey$201 = null;\n for (defaultValue in lastProps)\n if (\n ((name = lastProps[defaultValue]),\n lastProps.hasOwnProperty(defaultValue) &&\n null != name &&\n !nextProps.hasOwnProperty(defaultValue))\n )\n switch (defaultValue) {\n case \"value\":\n break;\n case \"children\":\n break;\n default:\n setProp(domElement, tag, defaultValue, null, nextProps, name);\n }\n for (value in nextProps)\n if (\n ((name = nextProps[value]),\n (type = lastProps[value]),\n nextProps.hasOwnProperty(value) && (null != name || null != type))\n )\n switch (value) {\n case \"value\":\n propKey$201 = name;\n break;\n case \"defaultValue\":\n propKey = name;\n break;\n case \"children\":\n break;\n case \"dangerouslySetInnerHTML\":\n if (null != name) throw Error(formatProdErrorMessage(91));\n break;\n default:\n name !== type &&\n setProp(domElement, tag, value, name, nextProps, type);\n }\n updateTextarea(domElement, propKey$201, propKey);\n return;\n case \"option\":\n for (var propKey$217 in lastProps)\n if (\n ((propKey$201 = lastProps[propKey$217]),\n lastProps.hasOwnProperty(propKey$217) &&\n null != propKey$201 &&\n !nextProps.hasOwnProperty(propKey$217))\n )\n switch (propKey$217) {\n case \"selected\":\n domElement.selected = !1;\n break;\n default:\n setProp(\n domElement,\n tag,\n propKey$217,\n null,\n nextProps,\n propKey$201\n );\n }\n for (lastDefaultValue in nextProps)\n if (\n ((propKey$201 = nextProps[lastDefaultValue]),\n (propKey = lastProps[lastDefaultValue]),\n nextProps.hasOwnProperty(lastDefaultValue) &&\n propKey$201 !== propKey &&\n (null != propKey$201 || null != propKey))\n )\n switch (lastDefaultValue) {\n case \"selected\":\n domElement.selected =\n propKey$201 &&\n \"function\" !== typeof propKey$201 &&\n \"symbol\" !== typeof propKey$201;\n break;\n default:\n setProp(\n domElement,\n tag,\n lastDefaultValue,\n propKey$201,\n nextProps,\n propKey\n );\n }\n return;\n case \"img\":\n case \"link\":\n case \"area\":\n case \"base\":\n case \"br\":\n case \"col\":\n case \"embed\":\n case \"hr\":\n case \"keygen\":\n case \"meta\":\n case \"param\":\n case \"source\":\n case \"track\":\n case \"wbr\":\n case \"menuitem\":\n for (var propKey$222 in lastProps)\n (propKey$201 = lastProps[propKey$222]),\n lastProps.hasOwnProperty(propKey$222) &&\n null != propKey$201 &&\n !nextProps.hasOwnProperty(propKey$222) &&\n setProp(domElement, tag, propKey$222, null, nextProps, propKey$201);\n for (checked in nextProps)\n if (\n ((propKey$201 = nextProps[checked]),\n (propKey = lastProps[checked]),\n nextProps.hasOwnProperty(checked) &&\n propKey$201 !== propKey &&\n (null != propKey$201 || null != propKey))\n )\n switch (checked) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n if (null != propKey$201)\n throw Error(formatProdErrorMessage(137, tag));\n break;\n default:\n setProp(\n domElement,\n tag,\n checked,\n propKey$201,\n nextProps,\n propKey\n );\n }\n return;\n default:\n if (isCustomElement(tag)) {\n for (var propKey$227 in lastProps)\n (propKey$201 = lastProps[propKey$227]),\n lastProps.hasOwnProperty(propKey$227) &&\n void 0 !== propKey$201 &&\n !nextProps.hasOwnProperty(propKey$227) &&\n setPropOnCustomElement(\n domElement,\n tag,\n propKey$227,\n void 0,\n nextProps,\n propKey$201\n );\n for (defaultChecked in nextProps)\n (propKey$201 = nextProps[defaultChecked]),\n (propKey = lastProps[defaultChecked]),\n !nextProps.hasOwnProperty(defaultChecked) ||\n propKey$201 === propKey ||\n (void 0 === propKey$201 && void 0 === propKey) ||\n setPropOnCustomElement(\n domElement,\n tag,\n defaultChecked,\n propKey$201,\n nextProps,\n propKey\n );\n return;\n }\n }\n for (var propKey$232 in lastProps)\n (propKey$201 = lastProps[propKey$232]),\n lastProps.hasOwnProperty(propKey$232) &&\n null != propKey$201 &&\n !nextProps.hasOwnProperty(propKey$232) &&\n setProp(domElement, tag, propKey$232, null, nextProps, propKey$201);\n for (lastProp in nextProps)\n (propKey$201 = nextProps[lastProp]),\n (propKey = lastProps[lastProp]),\n !nextProps.hasOwnProperty(lastProp) ||\n propKey$201 === propKey ||\n (null == propKey$201 && null == propKey) ||\n setProp(domElement, tag, lastProp, propKey$201, nextProps, propKey);\n}\nfunction isLikelyStaticResource(initiatorType) {\n switch (initiatorType) {\n case \"css\":\n case \"script\":\n case \"font\":\n case \"img\":\n case \"image\":\n case \"input\":\n case \"link\":\n return !0;\n default:\n return !1;\n }\n}\nfunction estimateBandwidth() {\n if (\"function\" === typeof performance.getEntriesByType) {\n for (\n var count = 0,\n bits = 0,\n resourceEntries = performance.getEntriesByType(\"resource\"),\n i = 0;\n i < resourceEntries.length;\n i++\n ) {\n var entry = resourceEntries[i],\n transferSize = entry.transferSize,\n initiatorType = entry.initiatorType,\n duration = entry.duration;\n if (transferSize && duration && isLikelyStaticResource(initiatorType)) {\n initiatorType = 0;\n duration = entry.responseEnd;\n for (i += 1; i < resourceEntries.length; i++) {\n var overlapEntry = resourceEntries[i],\n overlapStartTime = overlapEntry.startTime;\n if (overlapStartTime > duration) break;\n var overlapTransferSize = overlapEntry.transferSize,\n overlapInitiatorType = overlapEntry.initiatorType;\n overlapTransferSize &&\n isLikelyStaticResource(overlapInitiatorType) &&\n ((overlapEntry = overlapEntry.responseEnd),\n (initiatorType +=\n overlapTransferSize *\n (overlapEntry < duration\n ? 1\n : (duration - overlapStartTime) /\n (overlapEntry - overlapStartTime))));\n }\n --i;\n bits += (8 * (transferSize + initiatorType)) / (entry.duration / 1e3);\n count++;\n if (10 < count) break;\n }\n }\n if (0 < count) return bits / count / 1e6;\n }\n return navigator.connection &&\n ((count = navigator.connection.downlink), \"number\" === typeof count)\n ? count\n : 5;\n}\nvar eventsEnabled = null,\n selectionInformation = null;\nfunction getOwnerDocumentFromRootContainer(rootContainerElement) {\n return 9 === rootContainerElement.nodeType\n ? rootContainerElement\n : rootContainerElement.ownerDocument;\n}\nfunction getOwnHostContext(namespaceURI) {\n switch (namespaceURI) {\n case \"http://www.w3.org/2000/svg\":\n return 1;\n case \"http://www.w3.org/1998/Math/MathML\":\n return 2;\n default:\n return 0;\n }\n}\nfunction getChildHostContextProd(parentNamespace, type) {\n if (0 === parentNamespace)\n switch (type) {\n case \"svg\":\n return 1;\n case \"math\":\n return 2;\n default:\n return 0;\n }\n return 1 === parentNamespace && \"foreignObject\" === type\n ? 0\n : parentNamespace;\n}\nfunction shouldSetTextContent(type, props) {\n return (\n \"textarea\" === type ||\n \"noscript\" === type ||\n \"string\" === typeof props.children ||\n \"number\" === typeof props.children ||\n \"bigint\" === typeof props.children ||\n (\"object\" === typeof props.dangerouslySetInnerHTML &&\n null !== props.dangerouslySetInnerHTML &&\n null != props.dangerouslySetInnerHTML.__html)\n );\n}\nvar currentPopstateTransitionEvent = null;\nfunction shouldAttemptEagerTransition() {\n var event = window.event;\n if (event && \"popstate\" === event.type) {\n if (event === currentPopstateTransitionEvent) return !1;\n currentPopstateTransitionEvent = event;\n return !0;\n }\n currentPopstateTransitionEvent = null;\n return !1;\n}\nvar scheduleTimeout = \"function\" === typeof setTimeout ? setTimeout : void 0,\n cancelTimeout = \"function\" === typeof clearTimeout ? clearTimeout : void 0,\n localPromise = \"function\" === typeof Promise ? Promise : void 0,\n scheduleMicrotask =\n \"function\" === typeof queueMicrotask\n ? queueMicrotask\n : \"undefined\" !== typeof localPromise\n ? function (callback) {\n return localPromise\n .resolve(null)\n .then(callback)\n .catch(handleErrorInNextTick);\n }\n : scheduleTimeout;\nfunction handleErrorInNextTick(error) {\n setTimeout(function () {\n throw error;\n });\n}\nfunction isSingletonScope(type) {\n return \"head\" === type;\n}\nfunction clearHydrationBoundary(parentInstance, hydrationInstance) {\n var node = hydrationInstance,\n depth = 0;\n do {\n var nextNode = node.nextSibling;\n parentInstance.removeChild(node);\n if (nextNode && 8 === nextNode.nodeType)\n if (((node = nextNode.data), \"/$\" === node || \"/&\" === node)) {\n if (0 === depth) {\n parentInstance.removeChild(nextNode);\n retryIfBlockedOn(hydrationInstance);\n return;\n }\n depth--;\n } else if (\n \"$\" === node ||\n \"$?\" === node ||\n \"$~\" === node ||\n \"$!\" === node ||\n \"&\" === node\n )\n depth++;\n else if (\"html\" === node)\n releaseSingletonInstance(parentInstance.ownerDocument.documentElement);\n else if (\"head\" === node) {\n node = parentInstance.ownerDocument.head;\n releaseSingletonInstance(node);\n for (var node$jscomp$0 = node.firstChild; node$jscomp$0; ) {\n var nextNode$jscomp$0 = node$jscomp$0.nextSibling,\n nodeName = node$jscomp$0.nodeName;\n node$jscomp$0[internalHoistableMarker] ||\n \"SCRIPT\" === nodeName ||\n \"STYLE\" === nodeName ||\n (\"LINK\" === nodeName &&\n \"stylesheet\" === node$jscomp$0.rel.toLowerCase()) ||\n node.removeChild(node$jscomp$0);\n node$jscomp$0 = nextNode$jscomp$0;\n }\n } else\n \"body\" === node &&\n releaseSingletonInstance(parentInstance.ownerDocument.body);\n node = nextNode;\n } while (node);\n retryIfBlockedOn(hydrationInstance);\n}\nfunction hideOrUnhideDehydratedBoundary(suspenseInstance, isHidden) {\n var node = suspenseInstance;\n suspenseInstance = 0;\n do {\n var nextNode = node.nextSibling;\n 1 === node.nodeType\n ? isHidden\n ? ((node._stashedDisplay = node.style.display),\n (node.style.display = \"none\"))\n : ((node.style.display = node._stashedDisplay || \"\"),\n \"\" === node.getAttribute(\"style\") && node.removeAttribute(\"style\"))\n : 3 === node.nodeType &&\n (isHidden\n ? ((node._stashedText = node.nodeValue), (node.nodeValue = \"\"))\n : (node.nodeValue = node._stashedText || \"\"));\n if (nextNode && 8 === nextNode.nodeType)\n if (((node = nextNode.data), \"/$\" === node))\n if (0 === suspenseInstance) break;\n else suspenseInstance--;\n else\n (\"$\" !== node && \"$?\" !== node && \"$~\" !== node && \"$!\" !== node) ||\n suspenseInstance++;\n node = nextNode;\n } while (node);\n}\nfunction clearContainerSparingly(container) {\n var nextNode = container.firstChild;\n nextNode && 10 === nextNode.nodeType && (nextNode = nextNode.nextSibling);\n for (; nextNode; ) {\n var node = nextNode;\n nextNode = nextNode.nextSibling;\n switch (node.nodeName) {\n case \"HTML\":\n case \"HEAD\":\n case \"BODY\":\n clearContainerSparingly(node);\n detachDeletedInstance(node);\n continue;\n case \"SCRIPT\":\n case \"STYLE\":\n continue;\n case \"LINK\":\n if (\"stylesheet\" === node.rel.toLowerCase()) continue;\n }\n container.removeChild(node);\n }\n}\nfunction canHydrateInstance(instance, type, props, inRootOrSingleton) {\n for (; 1 === instance.nodeType; ) {\n var anyProps = props;\n if (instance.nodeName.toLowerCase() !== type.toLowerCase()) {\n if (\n !inRootOrSingleton &&\n (\"INPUT\" !== instance.nodeName || \"hidden\" !== instance.type)\n )\n break;\n } else if (!inRootOrSingleton)\n if (\"input\" === type && \"hidden\" === instance.type) {\n var name = null == anyProps.name ? null : \"\" + anyProps.name;\n if (\n \"hidden\" === anyProps.type &&\n instance.getAttribute(\"name\") === name\n )\n return instance;\n } else return instance;\n else if (!instance[internalHoistableMarker])\n switch (type) {\n case \"meta\":\n if (!instance.hasAttribute(\"itemprop\")) break;\n return instance;\n case \"link\":\n name = instance.getAttribute(\"rel\");\n if (\"stylesheet\" === name && instance.hasAttribute(\"data-precedence\"))\n break;\n else if (\n name !== anyProps.rel ||\n instance.getAttribute(\"href\") !==\n (null == anyProps.href || \"\" === anyProps.href\n ? null\n : anyProps.href) ||\n instance.getAttribute(\"crossorigin\") !==\n (null == anyProps.crossOrigin ? null : anyProps.crossOrigin) ||\n instance.getAttribute(\"title\") !==\n (null == anyProps.title ? null : anyProps.title)\n )\n break;\n return instance;\n case \"style\":\n if (instance.hasAttribute(\"data-precedence\")) break;\n return instance;\n case \"script\":\n name = instance.getAttribute(\"src\");\n if (\n (name !== (null == anyProps.src ? null : anyProps.src) ||\n instance.getAttribute(\"type\") !==\n (null == anyProps.type ? null : anyProps.type) ||\n instance.getAttribute(\"crossorigin\") !==\n (null == anyProps.crossOrigin ? null : anyProps.crossOrigin)) &&\n name &&\n instance.hasAttribute(\"async\") &&\n !instance.hasAttribute(\"itemprop\")\n )\n break;\n return instance;\n default:\n return instance;\n }\n instance = getNextHydratable(instance.nextSibling);\n if (null === instance) break;\n }\n return null;\n}\nfunction canHydrateTextInstance(instance, text, inRootOrSingleton) {\n if (\"\" === text) return null;\n for (; 3 !== instance.nodeType; ) {\n if (\n (1 !== instance.nodeType ||\n \"INPUT\" !== instance.nodeName ||\n \"hidden\" !== instance.type) &&\n !inRootOrSingleton\n )\n return null;\n instance = getNextHydratable(instance.nextSibling);\n if (null === instance) return null;\n }\n return instance;\n}\nfunction canHydrateHydrationBoundary(instance, inRootOrSingleton) {\n for (; 8 !== instance.nodeType; ) {\n if (\n (1 !== instance.nodeType ||\n \"INPUT\" !== instance.nodeName ||\n \"hidden\" !== instance.type) &&\n !inRootOrSingleton\n )\n return null;\n instance = getNextHydratable(instance.nextSibling);\n if (null === instance) return null;\n }\n return instance;\n}\nfunction isSuspenseInstancePending(instance) {\n return \"$?\" === instance.data || \"$~\" === instance.data;\n}\nfunction isSuspenseInstanceFallback(instance) {\n return (\n \"$!\" === instance.data ||\n (\"$?\" === instance.data && \"loading\" !== instance.ownerDocument.readyState)\n );\n}\nfunction registerSuspenseInstanceRetry(instance, callback) {\n var ownerDocument = instance.ownerDocument;\n if (\"$~\" === instance.data) instance._reactRetry = callback;\n else if (\"$?\" !== instance.data || \"loading\" !== ownerDocument.readyState)\n callback();\n else {\n var listener = function () {\n callback();\n ownerDocument.removeEventListener(\"DOMContentLoaded\", listener);\n };\n ownerDocument.addEventListener(\"DOMContentLoaded\", listener);\n instance._reactRetry = listener;\n }\n}\nfunction getNextHydratable(node) {\n for (; null != node; node = node.nextSibling) {\n var nodeType = node.nodeType;\n if (1 === nodeType || 3 === nodeType) break;\n if (8 === nodeType) {\n nodeType = node.data;\n if (\n \"$\" === nodeType ||\n \"$!\" === nodeType ||\n \"$?\" === nodeType ||\n \"$~\" === nodeType ||\n \"&\" === nodeType ||\n \"F!\" === nodeType ||\n \"F\" === nodeType\n )\n break;\n if (\"/$\" === nodeType || \"/&\" === nodeType) return null;\n }\n }\n return node;\n}\nvar previousHydratableOnEnteringScopedSingleton = null;\nfunction getNextHydratableInstanceAfterHydrationBoundary(hydrationInstance) {\n hydrationInstance = hydrationInstance.nextSibling;\n for (var depth = 0; hydrationInstance; ) {\n if (8 === hydrationInstance.nodeType) {\n var data = hydrationInstance.data;\n if (\"/$\" === data || \"/&\" === data) {\n if (0 === depth)\n return getNextHydratable(hydrationInstance.nextSibling);\n depth--;\n } else\n (\"$\" !== data &&\n \"$!\" !== data &&\n \"$?\" !== data &&\n \"$~\" !== data &&\n \"&\" !== data) ||\n depth++;\n }\n hydrationInstance = hydrationInstance.nextSibling;\n }\n return null;\n}\nfunction getParentHydrationBoundary(targetInstance) {\n targetInstance = targetInstance.previousSibling;\n for (var depth = 0; targetInstance; ) {\n if (8 === targetInstance.nodeType) {\n var data = targetInstance.data;\n if (\n \"$\" === data ||\n \"$!\" === data ||\n \"$?\" === data ||\n \"$~\" === data ||\n \"&\" === data\n ) {\n if (0 === depth) return targetInstance;\n depth--;\n } else (\"/$\" !== data && \"/&\" !== data) || depth++;\n }\n targetInstance = targetInstance.previousSibling;\n }\n return null;\n}\nfunction resolveSingletonInstance(type, props, rootContainerInstance) {\n props = getOwnerDocumentFromRootContainer(rootContainerInstance);\n switch (type) {\n case \"html\":\n type = props.documentElement;\n if (!type) throw Error(formatProdErrorMessage(452));\n return type;\n case \"head\":\n type = props.head;\n if (!type) throw Error(formatProdErrorMessage(453));\n return type;\n case \"body\":\n type = props.body;\n if (!type) throw Error(formatProdErrorMessage(454));\n return type;\n default:\n throw Error(formatProdErrorMessage(451));\n }\n}\nfunction releaseSingletonInstance(instance) {\n for (var attributes = instance.attributes; attributes.length; )\n instance.removeAttributeNode(attributes[0]);\n detachDeletedInstance(instance);\n}\nvar preloadPropsMap = new Map(),\n preconnectsSet = new Set();\nfunction getHoistableRoot(container) {\n return \"function\" === typeof container.getRootNode\n ? container.getRootNode()\n : 9 === container.nodeType\n ? container\n : container.ownerDocument;\n}\nvar previousDispatcher = ReactDOMSharedInternals.d;\nReactDOMSharedInternals.d = {\n f: flushSyncWork,\n r: requestFormReset,\n D: prefetchDNS,\n C: preconnect,\n L: preload,\n m: preloadModule,\n X: preinitScript,\n S: preinitStyle,\n M: preinitModuleScript\n};\nfunction flushSyncWork() {\n var previousWasRendering = previousDispatcher.f(),\n wasRendering = flushSyncWork$1();\n return previousWasRendering || wasRendering;\n}\nfunction requestFormReset(form) {\n var formInst = getInstanceFromNode(form);\n null !== formInst && 5 === formInst.tag && \"form\" === formInst.type\n ? requestFormReset$1(formInst)\n : previousDispatcher.r(form);\n}\nvar globalDocument = \"undefined\" === typeof document ? null : document;\nfunction preconnectAs(rel, href, crossOrigin) {\n var ownerDocument = globalDocument;\n if (ownerDocument && \"string\" === typeof href && href) {\n var limitedEscapedHref =\n escapeSelectorAttributeValueInsideDoubleQuotes(href);\n limitedEscapedHref =\n 'link[rel=\"' + rel + '\"][href=\"' + limitedEscapedHref + '\"]';\n \"string\" === typeof crossOrigin &&\n (limitedEscapedHref += '[crossorigin=\"' + crossOrigin + '\"]');\n preconnectsSet.has(limitedEscapedHref) ||\n (preconnectsSet.add(limitedEscapedHref),\n (rel = { rel: rel, crossOrigin: crossOrigin, href: href }),\n null === ownerDocument.querySelector(limitedEscapedHref) &&\n ((href = ownerDocument.createElement(\"link\")),\n setInitialProperties(href, \"link\", rel),\n markNodeAsHoistable(href),\n ownerDocument.head.appendChild(href)));\n }\n}\nfunction prefetchDNS(href) {\n previousDispatcher.D(href);\n preconnectAs(\"dns-prefetch\", href, null);\n}\nfunction preconnect(href, crossOrigin) {\n previousDispatcher.C(href, crossOrigin);\n preconnectAs(\"preconnect\", href, crossOrigin);\n}\nfunction preload(href, as, options) {\n previousDispatcher.L(href, as, options);\n var ownerDocument = globalDocument;\n if (ownerDocument && href && as) {\n var preloadSelector =\n 'link[rel=\"preload\"][as=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(as) +\n '\"]';\n \"image\" === as\n ? options && options.imageSrcSet\n ? ((preloadSelector +=\n '[imagesrcset=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(\n options.imageSrcSet\n ) +\n '\"]'),\n \"string\" === typeof options.imageSizes &&\n (preloadSelector +=\n '[imagesizes=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(\n options.imageSizes\n ) +\n '\"]'))\n : (preloadSelector +=\n '[href=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(href) +\n '\"]')\n : (preloadSelector +=\n '[href=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(href) +\n '\"]');\n var key = preloadSelector;\n switch (as) {\n case \"style\":\n key = getStyleKey(href);\n break;\n case \"script\":\n key = getScriptKey(href);\n }\n preloadPropsMap.has(key) ||\n ((href = assign(\n {\n rel: \"preload\",\n href:\n \"image\" === as && options && options.imageSrcSet ? void 0 : href,\n as: as\n },\n options\n )),\n preloadPropsMap.set(key, href),\n null !== ownerDocument.querySelector(preloadSelector) ||\n (\"style\" === as &&\n ownerDocument.querySelector(getStylesheetSelectorFromKey(key))) ||\n (\"script\" === as &&\n ownerDocument.querySelector(getScriptSelectorFromKey(key))) ||\n ((as = ownerDocument.createElement(\"link\")),\n setInitialProperties(as, \"link\", href),\n markNodeAsHoistable(as),\n ownerDocument.head.appendChild(as)));\n }\n}\nfunction preloadModule(href, options) {\n previousDispatcher.m(href, options);\n var ownerDocument = globalDocument;\n if (ownerDocument && href) {\n var as = options && \"string\" === typeof options.as ? options.as : \"script\",\n preloadSelector =\n 'link[rel=\"modulepreload\"][as=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(as) +\n '\"][href=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(href) +\n '\"]',\n key = preloadSelector;\n switch (as) {\n case \"audioworklet\":\n case \"paintworklet\":\n case \"serviceworker\":\n case \"sharedworker\":\n case \"worker\":\n case \"script\":\n key = getScriptKey(href);\n }\n if (\n !preloadPropsMap.has(key) &&\n ((href = assign({ rel: \"modulepreload\", href: href }, options)),\n preloadPropsMap.set(key, href),\n null === ownerDocument.querySelector(preloadSelector))\n ) {\n switch (as) {\n case \"audioworklet\":\n case \"paintworklet\":\n case \"serviceworker\":\n case \"sharedworker\":\n case \"worker\":\n case \"script\":\n if (ownerDocument.querySelector(getScriptSelectorFromKey(key)))\n return;\n }\n as = ownerDocument.createElement(\"link\");\n setInitialProperties(as, \"link\", href);\n markNodeAsHoistable(as);\n ownerDocument.head.appendChild(as);\n }\n }\n}\nfunction preinitStyle(href, precedence, options) {\n previousDispatcher.S(href, precedence, options);\n var ownerDocument = globalDocument;\n if (ownerDocument && href) {\n var styles = getResourcesFromRoot(ownerDocument).hoistableStyles,\n key = getStyleKey(href);\n precedence = precedence || \"default\";\n var resource = styles.get(key);\n if (!resource) {\n var state = { loading: 0, preload: null };\n if (\n (resource = ownerDocument.querySelector(\n getStylesheetSelectorFromKey(key)\n ))\n )\n state.loading = 5;\n else {\n href = assign(\n { rel: \"stylesheet\", href: href, \"data-precedence\": precedence },\n options\n );\n (options = preloadPropsMap.get(key)) &&\n adoptPreloadPropsForStylesheet(href, options);\n var link = (resource = ownerDocument.createElement(\"link\"));\n markNodeAsHoistable(link);\n setInitialProperties(link, \"link\", href);\n link._p = new Promise(function (resolve, reject) {\n link.onload = resolve;\n link.onerror = reject;\n });\n link.addEventListener(\"load\", function () {\n state.loading |= 1;\n });\n link.addEventListener(\"error\", function () {\n state.loading |= 2;\n });\n state.loading |= 4;\n insertStylesheet(resource, precedence, ownerDocument);\n }\n resource = {\n type: \"stylesheet\",\n instance: resource,\n count: 1,\n state: state\n };\n styles.set(key, resource);\n }\n }\n}\nfunction preinitScript(src, options) {\n previousDispatcher.X(src, options);\n var ownerDocument = globalDocument;\n if (ownerDocument && src) {\n var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts,\n key = getScriptKey(src),\n resource = scripts.get(key);\n resource ||\n ((resource = ownerDocument.querySelector(getScriptSelectorFromKey(key))),\n resource ||\n ((src = assign({ src: src, async: !0 }, options)),\n (options = preloadPropsMap.get(key)) &&\n adoptPreloadPropsForScript(src, options),\n (resource = ownerDocument.createElement(\"script\")),\n markNodeAsHoistable(resource),\n setInitialProperties(resource, \"link\", src),\n ownerDocument.head.appendChild(resource)),\n (resource = {\n type: \"script\",\n instance: resource,\n count: 1,\n state: null\n }),\n scripts.set(key, resource));\n }\n}\nfunction preinitModuleScript(src, options) {\n previousDispatcher.M(src, options);\n var ownerDocument = globalDocument;\n if (ownerDocument && src) {\n var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts,\n key = getScriptKey(src),\n resource = scripts.get(key);\n resource ||\n ((resource = ownerDocument.querySelector(getScriptSelectorFromKey(key))),\n resource ||\n ((src = assign({ src: src, async: !0, type: \"module\" }, options)),\n (options = preloadPropsMap.get(key)) &&\n adoptPreloadPropsForScript(src, options),\n (resource = ownerDocument.createElement(\"script\")),\n markNodeAsHoistable(resource),\n setInitialProperties(resource, \"link\", src),\n ownerDocument.head.appendChild(resource)),\n (resource = {\n type: \"script\",\n instance: resource,\n count: 1,\n state: null\n }),\n scripts.set(key, resource));\n }\n}\nfunction getResource(type, currentProps, pendingProps, currentResource) {\n var JSCompiler_inline_result = (JSCompiler_inline_result =\n rootInstanceStackCursor.current)\n ? getHoistableRoot(JSCompiler_inline_result)\n : null;\n if (!JSCompiler_inline_result) throw Error(formatProdErrorMessage(446));\n switch (type) {\n case \"meta\":\n case \"title\":\n return null;\n case \"style\":\n return \"string\" === typeof pendingProps.precedence &&\n \"string\" === typeof pendingProps.href\n ? ((currentProps = getStyleKey(pendingProps.href)),\n (pendingProps = getResourcesFromRoot(\n JSCompiler_inline_result\n ).hoistableStyles),\n (currentResource = pendingProps.get(currentProps)),\n currentResource ||\n ((currentResource = {\n type: \"style\",\n instance: null,\n count: 0,\n state: null\n }),\n pendingProps.set(currentProps, currentResource)),\n currentResource)\n : { type: \"void\", instance: null, count: 0, state: null };\n case \"link\":\n if (\n \"stylesheet\" === pendingProps.rel &&\n \"string\" === typeof pendingProps.href &&\n \"string\" === typeof pendingProps.precedence\n ) {\n type = getStyleKey(pendingProps.href);\n var styles$243 = getResourcesFromRoot(\n JSCompiler_inline_result\n ).hoistableStyles,\n resource$244 = styles$243.get(type);\n resource$244 ||\n ((JSCompiler_inline_result =\n JSCompiler_inline_result.ownerDocument || JSCompiler_inline_result),\n (resource$244 = {\n type: \"stylesheet\",\n instance: null,\n count: 0,\n state: { loading: 0, preload: null }\n }),\n styles$243.set(type, resource$244),\n (styles$243 = JSCompiler_inline_result.querySelector(\n getStylesheetSelectorFromKey(type)\n )) &&\n !styles$243._p &&\n ((resource$244.instance = styles$243),\n (resource$244.state.loading = 5)),\n preloadPropsMap.has(type) ||\n ((pendingProps = {\n rel: \"preload\",\n as: \"style\",\n href: pendingProps.href,\n crossOrigin: pendingProps.crossOrigin,\n integrity: pendingProps.integrity,\n media: pendingProps.media,\n hrefLang: pendingProps.hrefLang,\n referrerPolicy: pendingProps.referrerPolicy\n }),\n preloadPropsMap.set(type, pendingProps),\n styles$243 ||\n preloadStylesheet(\n JSCompiler_inline_result,\n type,\n pendingProps,\n resource$244.state\n )));\n if (currentProps && null === currentResource)\n throw Error(formatProdErrorMessage(528, \"\"));\n return resource$244;\n }\n if (currentProps && null !== currentResource)\n throw Error(formatProdErrorMessage(529, \"\"));\n return null;\n case \"script\":\n return (\n (currentProps = pendingProps.async),\n (pendingProps = pendingProps.src),\n \"string\" === typeof pendingProps &&\n currentProps &&\n \"function\" !== typeof currentProps &&\n \"symbol\" !== typeof currentProps\n ? ((currentProps = getScriptKey(pendingProps)),\n (pendingProps = getResourcesFromRoot(\n JSCompiler_inline_result\n ).hoistableScripts),\n (currentResource = pendingProps.get(currentProps)),\n currentResource ||\n ((currentResource = {\n type: \"script\",\n instance: null,\n count: 0,\n state: null\n }),\n pendingProps.set(currentProps, currentResource)),\n currentResource)\n : { type: \"void\", instance: null, count: 0, state: null }\n );\n default:\n throw Error(formatProdErrorMessage(444, type));\n }\n}\nfunction getStyleKey(href) {\n return 'href=\"' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '\"';\n}\nfunction getStylesheetSelectorFromKey(key) {\n return 'link[rel=\"stylesheet\"][' + key + \"]\";\n}\nfunction stylesheetPropsFromRawProps(rawProps) {\n return assign({}, rawProps, {\n \"data-precedence\": rawProps.precedence,\n precedence: null\n });\n}\nfunction preloadStylesheet(ownerDocument, key, preloadProps, state) {\n ownerDocument.querySelector('link[rel=\"preload\"][as=\"style\"][' + key + \"]\")\n ? (state.loading = 1)\n : ((key = ownerDocument.createElement(\"link\")),\n (state.preload = key),\n key.addEventListener(\"load\", function () {\n return (state.loading |= 1);\n }),\n key.addEventListener(\"error\", function () {\n return (state.loading |= 2);\n }),\n setInitialProperties(key, \"link\", preloadProps),\n markNodeAsHoistable(key),\n ownerDocument.head.appendChild(key));\n}\nfunction getScriptKey(src) {\n return '[src=\"' + escapeSelectorAttributeValueInsideDoubleQuotes(src) + '\"]';\n}\nfunction getScriptSelectorFromKey(key) {\n return \"script[async]\" + key;\n}\nfunction acquireResource(hoistableRoot, resource, props) {\n resource.count++;\n if (null === resource.instance)\n switch (resource.type) {\n case \"style\":\n var instance = hoistableRoot.querySelector(\n 'style[data-href~=\"' +\n escapeSelectorAttributeValueInsideDoubleQuotes(props.href) +\n '\"]'\n );\n if (instance)\n return (\n (resource.instance = instance),\n markNodeAsHoistable(instance),\n instance\n );\n var styleProps = assign({}, props, {\n \"data-href\": props.href,\n \"data-precedence\": props.precedence,\n href: null,\n precedence: null\n });\n instance = (hoistableRoot.ownerDocument || hoistableRoot).createElement(\n \"style\"\n );\n markNodeAsHoistable(instance);\n setInitialProperties(instance, \"style\", styleProps);\n insertStylesheet(instance, props.precedence, hoistableRoot);\n return (resource.instance = instance);\n case \"stylesheet\":\n styleProps = getStyleKey(props.href);\n var instance$249 = hoistableRoot.querySelector(\n getStylesheetSelectorFromKey(styleProps)\n );\n if (instance$249)\n return (\n (resource.state.loading |= 4),\n (resource.instance = instance$249),\n markNodeAsHoistable(instance$249),\n instance$249\n );\n instance = stylesheetPropsFromRawProps(props);\n (styleProps = preloadPropsMap.get(styleProps)) &&\n adoptPreloadPropsForStylesheet(instance, styleProps);\n instance$249 = (\n hoistableRoot.ownerDocument || hoistableRoot\n ).createElement(\"link\");\n markNodeAsHoistable(instance$249);\n var linkInstance = instance$249;\n linkInstance._p = new Promise(function (resolve, reject) {\n linkInstance.onload = resolve;\n linkInstance.onerror = reject;\n });\n setInitialProperties(instance$249, \"link\", instance);\n resource.state.loading |= 4;\n insertStylesheet(instance$249, props.precedence, hoistableRoot);\n return (resource.instance = instance$249);\n case \"script\":\n instance$249 = getScriptKey(props.src);\n if (\n (styleProps = hoistableRoot.querySelector(\n getScriptSelectorFromKey(instance$249)\n ))\n )\n return (\n (resource.instance = styleProps),\n markNodeAsHoistable(styleProps),\n styleProps\n );\n instance = props;\n if ((styleProps = preloadPropsMap.get(instance$249)))\n (instance = assign({}, props)),\n adoptPreloadPropsForScript(instance, styleProps);\n hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;\n styleProps = hoistableRoot.createElement(\"script\");\n markNodeAsHoistable(styleProps);\n setInitialProperties(styleProps, \"link\", instance);\n hoistableRoot.head.appendChild(styleProps);\n return (resource.instance = styleProps);\n case \"void\":\n return null;\n default:\n throw Error(formatProdErrorMessage(443, resource.type));\n }\n else\n \"stylesheet\" === resource.type &&\n 0 === (resource.state.loading & 4) &&\n ((instance = resource.instance),\n (resource.state.loading |= 4),\n insertStylesheet(instance, props.precedence, hoistableRoot));\n return resource.instance;\n}\nfunction insertStylesheet(instance, precedence, root) {\n for (\n var nodes = root.querySelectorAll(\n 'link[rel=\"stylesheet\"][data-precedence],style[data-precedence]'\n ),\n last = nodes.length ? nodes[nodes.length - 1] : null,\n prior = last,\n i = 0;\n i < nodes.length;\n i++\n ) {\n var node = nodes[i];\n if (node.dataset.precedence === precedence) prior = node;\n else if (prior !== last) break;\n }\n prior\n ? prior.parentNode.insertBefore(instance, prior.nextSibling)\n : ((precedence = 9 === root.nodeType ? root.head : root),\n precedence.insertBefore(instance, precedence.firstChild));\n}\nfunction adoptPreloadPropsForStylesheet(stylesheetProps, preloadProps) {\n null == stylesheetProps.crossOrigin &&\n (stylesheetProps.crossOrigin = preloadProps.crossOrigin);\n null == stylesheetProps.referrerPolicy &&\n (stylesheetProps.referrerPolicy = preloadProps.referrerPolicy);\n null == stylesheetProps.title && (stylesheetProps.title = preloadProps.title);\n}\nfunction adoptPreloadPropsForScript(scriptProps, preloadProps) {\n null == scriptProps.crossOrigin &&\n (scriptProps.crossOrigin = preloadProps.crossOrigin);\n null == scriptProps.referrerPolicy &&\n (scriptProps.referrerPolicy = preloadProps.referrerPolicy);\n null == scriptProps.integrity &&\n (scriptProps.integrity = preloadProps.integrity);\n}\nvar tagCaches = null;\nfunction getHydratableHoistableCache(type, keyAttribute, ownerDocument) {\n if (null === tagCaches) {\n var cache = new Map();\n var caches = (tagCaches = new Map());\n caches.set(ownerDocument, cache);\n } else\n (caches = tagCaches),\n (cache = caches.get(ownerDocument)),\n cache || ((cache = new Map()), caches.set(ownerDocument, cache));\n if (cache.has(type)) return cache;\n cache.set(type, null);\n ownerDocument = ownerDocument.getElementsByTagName(type);\n for (caches = 0; caches < ownerDocument.length; caches++) {\n var node = ownerDocument[caches];\n if (\n !(\n node[internalHoistableMarker] ||\n node[internalInstanceKey] ||\n (\"link\" === type && \"stylesheet\" === node.getAttribute(\"rel\"))\n ) &&\n \"http://www.w3.org/2000/svg\" !== node.namespaceURI\n ) {\n var nodeKey = node.getAttribute(keyAttribute) || \"\";\n nodeKey = type + nodeKey;\n var existing = cache.get(nodeKey);\n existing ? existing.push(node) : cache.set(nodeKey, [node]);\n }\n }\n return cache;\n}\nfunction mountHoistable(hoistableRoot, type, instance) {\n hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;\n hoistableRoot.head.insertBefore(\n instance,\n \"title\" === type ? hoistableRoot.querySelector(\"head > title\") : null\n );\n}\nfunction isHostHoistableType(type, props, hostContext) {\n if (1 === hostContext || null != props.itemProp) return !1;\n switch (type) {\n case \"meta\":\n case \"title\":\n return !0;\n case \"style\":\n if (\n \"string\" !== typeof props.precedence ||\n \"string\" !== typeof props.href ||\n \"\" === props.href\n )\n break;\n return !0;\n case \"link\":\n if (\n \"string\" !== typeof props.rel ||\n \"string\" !== typeof props.href ||\n \"\" === props.href ||\n props.onLoad ||\n props.onError\n )\n break;\n switch (props.rel) {\n case \"stylesheet\":\n return (\n (type = props.disabled),\n \"string\" === typeof props.precedence && null == type\n );\n default:\n return !0;\n }\n case \"script\":\n if (\n props.async &&\n \"function\" !== typeof props.async &&\n \"symbol\" !== typeof props.async &&\n !props.onLoad &&\n !props.onError &&\n props.src &&\n \"string\" === typeof props.src\n )\n return !0;\n }\n return !1;\n}\nfunction preloadResource(resource) {\n return \"stylesheet\" === resource.type && 0 === (resource.state.loading & 3)\n ? !1\n : !0;\n}\nfunction suspendResource(state, hoistableRoot, resource, props) {\n if (\n \"stylesheet\" === resource.type &&\n (\"string\" !== typeof props.media ||\n !1 !== matchMedia(props.media).matches) &&\n 0 === (resource.state.loading & 4)\n ) {\n if (null === resource.instance) {\n var key = getStyleKey(props.href),\n instance = hoistableRoot.querySelector(\n getStylesheetSelectorFromKey(key)\n );\n if (instance) {\n hoistableRoot = instance._p;\n null !== hoistableRoot &&\n \"object\" === typeof hoistableRoot &&\n \"function\" === typeof hoistableRoot.then &&\n (state.count++,\n (state = onUnsuspend.bind(state)),\n hoistableRoot.then(state, state));\n resource.state.loading |= 4;\n resource.instance = instance;\n markNodeAsHoistable(instance);\n return;\n }\n instance = hoistableRoot.ownerDocument || hoistableRoot;\n props = stylesheetPropsFromRawProps(props);\n (key = preloadPropsMap.get(key)) &&\n adoptPreloadPropsForStylesheet(props, key);\n instance = instance.createElement(\"link\");\n markNodeAsHoistable(instance);\n var linkInstance = instance;\n linkInstance._p = new Promise(function (resolve, reject) {\n linkInstance.onload = resolve;\n linkInstance.onerror = reject;\n });\n setInitialProperties(instance, \"link\", props);\n resource.instance = instance;\n }\n null === state.stylesheets && (state.stylesheets = new Map());\n state.stylesheets.set(resource, hoistableRoot);\n (hoistableRoot = resource.state.preload) &&\n 0 === (resource.state.loading & 3) &&\n (state.count++,\n (resource = onUnsuspend.bind(state)),\n hoistableRoot.addEventListener(\"load\", resource),\n hoistableRoot.addEventListener(\"error\", resource));\n }\n}\nvar estimatedBytesWithinLimit = 0;\nfunction waitForCommitToBeReady(state, timeoutOffset) {\n state.stylesheets &&\n 0 === state.count &&\n insertSuspendedStylesheets(state, state.stylesheets);\n return 0 < state.count || 0 < state.imgCount\n ? function (commit) {\n var stylesheetTimer = setTimeout(function () {\n state.stylesheets &&\n insertSuspendedStylesheets(state, state.stylesheets);\n if (state.unsuspend) {\n var unsuspend = state.unsuspend;\n state.unsuspend = null;\n unsuspend();\n }\n }, 6e4 + timeoutOffset);\n 0 < state.imgBytes &&\n 0 === estimatedBytesWithinLimit &&\n (estimatedBytesWithinLimit = 62500 * estimateBandwidth());\n var imgTimer = setTimeout(\n function () {\n state.waitingForImages = !1;\n if (\n 0 === state.count &&\n (state.stylesheets &&\n insertSuspendedStylesheets(state, state.stylesheets),\n state.unsuspend)\n ) {\n var unsuspend = state.unsuspend;\n state.unsuspend = null;\n unsuspend();\n }\n },\n (state.imgBytes > estimatedBytesWithinLimit ? 50 : 800) +\n timeoutOffset\n );\n state.unsuspend = commit;\n return function () {\n state.unsuspend = null;\n clearTimeout(stylesheetTimer);\n clearTimeout(imgTimer);\n };\n }\n : null;\n}\nfunction onUnsuspend() {\n this.count--;\n if (0 === this.count && (0 === this.imgCount || !this.waitingForImages))\n if (this.stylesheets) insertSuspendedStylesheets(this, this.stylesheets);\n else if (this.unsuspend) {\n var unsuspend = this.unsuspend;\n this.unsuspend = null;\n unsuspend();\n }\n}\nvar precedencesByRoot = null;\nfunction insertSuspendedStylesheets(state, resources) {\n state.stylesheets = null;\n null !== state.unsuspend &&\n (state.count++,\n (precedencesByRoot = new Map()),\n resources.forEach(insertStylesheetIntoRoot, state),\n (precedencesByRoot = null),\n onUnsuspend.call(state));\n}\nfunction insertStylesheetIntoRoot(root, resource) {\n if (!(resource.state.loading & 4)) {\n var precedences = precedencesByRoot.get(root);\n if (precedences) var last = precedences.get(null);\n else {\n precedences = new Map();\n precedencesByRoot.set(root, precedences);\n for (\n var nodes = root.querySelectorAll(\n \"link[data-precedence],style[data-precedence]\"\n ),\n i = 0;\n i < nodes.length;\n i++\n ) {\n var node = nodes[i];\n if (\n \"LINK\" === node.nodeName ||\n \"not all\" !== node.getAttribute(\"media\")\n )\n precedences.set(node.dataset.precedence, node), (last = node);\n }\n last && precedences.set(null, last);\n }\n nodes = resource.instance;\n node = nodes.getAttribute(\"data-precedence\");\n i = precedences.get(node) || last;\n i === last && precedences.set(null, nodes);\n precedences.set(node, nodes);\n this.count++;\n last = onUnsuspend.bind(this);\n nodes.addEventListener(\"load\", last);\n nodes.addEventListener(\"error\", last);\n i\n ? i.parentNode.insertBefore(nodes, i.nextSibling)\n : ((root = 9 === root.nodeType ? root.head : root),\n root.insertBefore(nodes, root.firstChild));\n resource.state.loading |= 4;\n }\n}\nvar HostTransitionContext = {\n $$typeof: REACT_CONTEXT_TYPE,\n Provider: null,\n Consumer: null,\n _currentValue: sharedNotPendingObject,\n _currentValue2: sharedNotPendingObject,\n _threadCount: 0\n};\nfunction FiberRootNode(\n containerInfo,\n tag,\n hydrate,\n identifierPrefix,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n onDefaultTransitionIndicator,\n formState\n) {\n this.tag = 1;\n this.containerInfo = containerInfo;\n this.pingCache = this.current = this.pendingChildren = null;\n this.timeoutHandle = -1;\n this.callbackNode =\n this.next =\n this.pendingContext =\n this.context =\n this.cancelPendingCommit =\n null;\n this.callbackPriority = 0;\n this.expirationTimes = createLaneMap(-1);\n this.entangledLanes =\n this.shellSuspendCounter =\n this.errorRecoveryDisabledLanes =\n this.expiredLanes =\n this.warmLanes =\n this.pingedLanes =\n this.suspendedLanes =\n this.pendingLanes =\n 0;\n this.entanglements = createLaneMap(0);\n this.hiddenUpdates = createLaneMap(null);\n this.identifierPrefix = identifierPrefix;\n this.onUncaughtError = onUncaughtError;\n this.onCaughtError = onCaughtError;\n this.onRecoverableError = onRecoverableError;\n this.pooledCache = null;\n this.pooledCacheLanes = 0;\n this.formState = formState;\n this.incompleteTransitions = new Map();\n}\nfunction createFiberRoot(\n containerInfo,\n tag,\n hydrate,\n initialChildren,\n hydrationCallbacks,\n isStrictMode,\n identifierPrefix,\n formState,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n onDefaultTransitionIndicator\n) {\n containerInfo = new FiberRootNode(\n containerInfo,\n tag,\n hydrate,\n identifierPrefix,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n onDefaultTransitionIndicator,\n formState\n );\n tag = 1;\n !0 === isStrictMode && (tag |= 24);\n isStrictMode = createFiberImplClass(3, null, null, tag);\n containerInfo.current = isStrictMode;\n isStrictMode.stateNode = containerInfo;\n tag = createCache();\n tag.refCount++;\n containerInfo.pooledCache = tag;\n tag.refCount++;\n isStrictMode.memoizedState = {\n element: initialChildren,\n isDehydrated: hydrate,\n cache: tag\n };\n initializeUpdateQueue(isStrictMode);\n return containerInfo;\n}\nfunction getContextForSubtree(parentComponent) {\n if (!parentComponent) return emptyContextObject;\n parentComponent = emptyContextObject;\n return parentComponent;\n}\nfunction updateContainerImpl(\n rootFiber,\n lane,\n element,\n container,\n parentComponent,\n callback\n) {\n parentComponent = getContextForSubtree(parentComponent);\n null === container.context\n ? (container.context = parentComponent)\n : (container.pendingContext = parentComponent);\n container = createUpdate(lane);\n container.payload = { element: element };\n callback = void 0 === callback ? null : callback;\n null !== callback && (container.callback = callback);\n element = enqueueUpdate(rootFiber, container, lane);\n null !== element &&\n (scheduleUpdateOnFiber(element, rootFiber, lane),\n entangleTransitions(element, rootFiber, lane));\n}\nfunction markRetryLaneImpl(fiber, retryLane) {\n fiber = fiber.memoizedState;\n if (null !== fiber && null !== fiber.dehydrated) {\n var a = fiber.retryLane;\n fiber.retryLane = 0 !== a && a < retryLane ? a : retryLane;\n }\n}\nfunction markRetryLaneIfNotHydrated(fiber, retryLane) {\n markRetryLaneImpl(fiber, retryLane);\n (fiber = fiber.alternate) && markRetryLaneImpl(fiber, retryLane);\n}\nfunction attemptContinuousHydration(fiber) {\n if (13 === fiber.tag || 31 === fiber.tag) {\n var root = enqueueConcurrentRenderForLane(fiber, 67108864);\n null !== root && scheduleUpdateOnFiber(root, fiber, 67108864);\n markRetryLaneIfNotHydrated(fiber, 67108864);\n }\n}\nfunction attemptHydrationAtCurrentPriority(fiber) {\n if (13 === fiber.tag || 31 === fiber.tag) {\n var lane = requestUpdateLane();\n lane = getBumpedLaneForHydrationByLane(lane);\n var root = enqueueConcurrentRenderForLane(fiber, lane);\n null !== root && scheduleUpdateOnFiber(root, fiber, lane);\n markRetryLaneIfNotHydrated(fiber, lane);\n }\n}\nvar _enabled = !0;\nfunction dispatchDiscreteEvent(\n domEventName,\n eventSystemFlags,\n container,\n nativeEvent\n) {\n var prevTransition = ReactSharedInternals.T;\n ReactSharedInternals.T = null;\n var previousPriority = ReactDOMSharedInternals.p;\n try {\n (ReactDOMSharedInternals.p = 2),\n dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);\n } finally {\n (ReactDOMSharedInternals.p = previousPriority),\n (ReactSharedInternals.T = prevTransition);\n }\n}\nfunction dispatchContinuousEvent(\n domEventName,\n eventSystemFlags,\n container,\n nativeEvent\n) {\n var prevTransition = ReactSharedInternals.T;\n ReactSharedInternals.T = null;\n var previousPriority = ReactDOMSharedInternals.p;\n try {\n (ReactDOMSharedInternals.p = 8),\n dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);\n } finally {\n (ReactDOMSharedInternals.p = previousPriority),\n (ReactSharedInternals.T = prevTransition);\n }\n}\nfunction dispatchEvent(\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n) {\n if (_enabled) {\n var blockedOn = findInstanceBlockingEvent(nativeEvent);\n if (null === blockedOn)\n dispatchEventForPluginEventSystem(\n domEventName,\n eventSystemFlags,\n nativeEvent,\n return_targetInst,\n targetContainer\n ),\n clearIfContinuousEvent(domEventName, nativeEvent);\n else if (\n queueIfContinuousEvent(\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )\n )\n nativeEvent.stopPropagation();\n else if (\n (clearIfContinuousEvent(domEventName, nativeEvent),\n eventSystemFlags & 4 &&\n -1 < discreteReplayableEvents.indexOf(domEventName))\n ) {\n for (; null !== blockedOn; ) {\n var fiber = getInstanceFromNode(blockedOn);\n if (null !== fiber)\n switch (fiber.tag) {\n case 3:\n fiber = fiber.stateNode;\n if (fiber.current.memoizedState.isDehydrated) {\n var lanes = getHighestPriorityLanes(fiber.pendingLanes);\n if (0 !== lanes) {\n var root = fiber;\n root.pendingLanes |= 2;\n for (root.entangledLanes |= 2; lanes; ) {\n var lane = 1 << (31 - clz32(lanes));\n root.entanglements[1] |= lane;\n lanes &= ~lane;\n }\n ensureRootIsScheduled(fiber);\n 0 === (executionContext & 6) &&\n ((workInProgressRootRenderTargetTime = now() + 500),\n flushSyncWorkAcrossRoots_impl(0, !1));\n }\n }\n break;\n case 31:\n case 13:\n (root = enqueueConcurrentRenderForLane(fiber, 2)),\n null !== root && scheduleUpdateOnFiber(root, fiber, 2),\n flushSyncWork$1(),\n markRetryLaneIfNotHydrated(fiber, 2);\n }\n fiber = findInstanceBlockingEvent(nativeEvent);\n null === fiber &&\n dispatchEventForPluginEventSystem(\n domEventName,\n eventSystemFlags,\n nativeEvent,\n return_targetInst,\n targetContainer\n );\n if (fiber === blockedOn) break;\n blockedOn = fiber;\n }\n null !== blockedOn && nativeEvent.stopPropagation();\n } else\n dispatchEventForPluginEventSystem(\n domEventName,\n eventSystemFlags,\n nativeEvent,\n null,\n targetContainer\n );\n }\n}\nfunction findInstanceBlockingEvent(nativeEvent) {\n nativeEvent = getEventTarget(nativeEvent);\n return findInstanceBlockingTarget(nativeEvent);\n}\nvar return_targetInst = null;\nfunction findInstanceBlockingTarget(targetNode) {\n return_targetInst = null;\n targetNode = getClosestInstanceFromNode(targetNode);\n if (null !== targetNode) {\n var nearestMounted = getNearestMountedFiber(targetNode);\n if (null === nearestMounted) targetNode = null;\n else {\n var tag = nearestMounted.tag;\n if (13 === tag) {\n targetNode = getSuspenseInstanceFromFiber(nearestMounted);\n if (null !== targetNode) return targetNode;\n targetNode = null;\n } else if (31 === tag) {\n targetNode = getActivityInstanceFromFiber(nearestMounted);\n if (null !== targetNode) return targetNode;\n targetNode = null;\n } else if (3 === tag) {\n if (nearestMounted.stateNode.current.memoizedState.isDehydrated)\n return 3 === nearestMounted.tag\n ? nearestMounted.stateNode.containerInfo\n : null;\n targetNode = null;\n } else nearestMounted !== targetNode && (targetNode = null);\n }\n }\n return_targetInst = targetNode;\n return null;\n}\nfunction getEventPriority(domEventName) {\n switch (domEventName) {\n case \"beforetoggle\":\n case \"cancel\":\n case \"click\":\n case \"close\":\n case \"contextmenu\":\n case \"copy\":\n case \"cut\":\n case \"auxclick\":\n case \"dblclick\":\n case \"dragend\":\n case \"dragstart\":\n case \"drop\":\n case \"focusin\":\n case \"focusout\":\n case \"input\":\n case \"invalid\":\n case \"keydown\":\n case \"keypress\":\n case \"keyup\":\n case \"mousedown\":\n case \"mouseup\":\n case \"paste\":\n case \"pause\":\n case \"play\":\n case \"pointercancel\":\n case \"pointerdown\":\n case \"pointerup\":\n case \"ratechange\":\n case \"reset\":\n case \"resize\":\n case \"seeked\":\n case \"submit\":\n case \"toggle\":\n case \"touchcancel\":\n case \"touchend\":\n case \"touchstart\":\n case \"volumechange\":\n case \"change\":\n case \"selectionchange\":\n case \"textInput\":\n case \"compositionstart\":\n case \"compositionend\":\n case \"compositionupdate\":\n case \"beforeblur\":\n case \"afterblur\":\n case \"beforeinput\":\n case \"blur\":\n case \"fullscreenchange\":\n case \"focus\":\n case \"hashchange\":\n case \"popstate\":\n case \"select\":\n case \"selectstart\":\n return 2;\n case \"drag\":\n case \"dragenter\":\n case \"dragexit\":\n case \"dragleave\":\n case \"dragover\":\n case \"mousemove\":\n case \"mouseout\":\n case \"mouseover\":\n case \"pointermove\":\n case \"pointerout\":\n case \"pointerover\":\n case \"scroll\":\n case \"touchmove\":\n case \"wheel\":\n case \"mouseenter\":\n case \"mouseleave\":\n case \"pointerenter\":\n case \"pointerleave\":\n return 8;\n case \"message\":\n switch (getCurrentPriorityLevel()) {\n case ImmediatePriority:\n return 2;\n case UserBlockingPriority:\n return 8;\n case NormalPriority$1:\n case LowPriority:\n return 32;\n case IdlePriority:\n return 268435456;\n default:\n return 32;\n }\n default:\n return 32;\n }\n}\nvar hasScheduledReplayAttempt = !1,\n queuedFocus = null,\n queuedDrag = null,\n queuedMouse = null,\n queuedPointers = new Map(),\n queuedPointerCaptures = new Map(),\n queuedExplicitHydrationTargets = [],\n discreteReplayableEvents =\n \"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset\".split(\n \" \"\n );\nfunction clearIfContinuousEvent(domEventName, nativeEvent) {\n switch (domEventName) {\n case \"focusin\":\n case \"focusout\":\n queuedFocus = null;\n break;\n case \"dragenter\":\n case \"dragleave\":\n queuedDrag = null;\n break;\n case \"mouseover\":\n case \"mouseout\":\n queuedMouse = null;\n break;\n case \"pointerover\":\n case \"pointerout\":\n queuedPointers.delete(nativeEvent.pointerId);\n break;\n case \"gotpointercapture\":\n case \"lostpointercapture\":\n queuedPointerCaptures.delete(nativeEvent.pointerId);\n }\n}\nfunction accumulateOrCreateContinuousQueuedReplayableEvent(\n existingQueuedEvent,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n) {\n if (\n null === existingQueuedEvent ||\n existingQueuedEvent.nativeEvent !== nativeEvent\n )\n return (\n (existingQueuedEvent = {\n blockedOn: blockedOn,\n domEventName: domEventName,\n eventSystemFlags: eventSystemFlags,\n nativeEvent: nativeEvent,\n targetContainers: [targetContainer]\n }),\n null !== blockedOn &&\n ((blockedOn = getInstanceFromNode(blockedOn)),\n null !== blockedOn && attemptContinuousHydration(blockedOn)),\n existingQueuedEvent\n );\n existingQueuedEvent.eventSystemFlags |= eventSystemFlags;\n blockedOn = existingQueuedEvent.targetContainers;\n null !== targetContainer &&\n -1 === blockedOn.indexOf(targetContainer) &&\n blockedOn.push(targetContainer);\n return existingQueuedEvent;\n}\nfunction queueIfContinuousEvent(\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n) {\n switch (domEventName) {\n case \"focusin\":\n return (\n (queuedFocus = accumulateOrCreateContinuousQueuedReplayableEvent(\n queuedFocus,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )),\n !0\n );\n case \"dragenter\":\n return (\n (queuedDrag = accumulateOrCreateContinuousQueuedReplayableEvent(\n queuedDrag,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )),\n !0\n );\n case \"mouseover\":\n return (\n (queuedMouse = accumulateOrCreateContinuousQueuedReplayableEvent(\n queuedMouse,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )),\n !0\n );\n case \"pointerover\":\n var pointerId = nativeEvent.pointerId;\n queuedPointers.set(\n pointerId,\n accumulateOrCreateContinuousQueuedReplayableEvent(\n queuedPointers.get(pointerId) || null,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )\n );\n return !0;\n case \"gotpointercapture\":\n return (\n (pointerId = nativeEvent.pointerId),\n queuedPointerCaptures.set(\n pointerId,\n accumulateOrCreateContinuousQueuedReplayableEvent(\n queuedPointerCaptures.get(pointerId) || null,\n blockedOn,\n domEventName,\n eventSystemFlags,\n targetContainer,\n nativeEvent\n )\n ),\n !0\n );\n }\n return !1;\n}\nfunction attemptExplicitHydrationTarget(queuedTarget) {\n var targetInst = getClosestInstanceFromNode(queuedTarget.target);\n if (null !== targetInst) {\n var nearestMounted = getNearestMountedFiber(targetInst);\n if (null !== nearestMounted)\n if (((targetInst = nearestMounted.tag), 13 === targetInst)) {\n if (\n ((targetInst = getSuspenseInstanceFromFiber(nearestMounted)),\n null !== targetInst)\n ) {\n queuedTarget.blockedOn = targetInst;\n runWithPriority(queuedTarget.priority, function () {\n attemptHydrationAtCurrentPriority(nearestMounted);\n });\n return;\n }\n } else if (31 === targetInst) {\n if (\n ((targetInst = getActivityInstanceFromFiber(nearestMounted)),\n null !== targetInst)\n ) {\n queuedTarget.blockedOn = targetInst;\n runWithPriority(queuedTarget.priority, function () {\n attemptHydrationAtCurrentPriority(nearestMounted);\n });\n return;\n }\n } else if (\n 3 === targetInst &&\n nearestMounted.stateNode.current.memoizedState.isDehydrated\n ) {\n queuedTarget.blockedOn =\n 3 === nearestMounted.tag\n ? nearestMounted.stateNode.containerInfo\n : null;\n return;\n }\n }\n queuedTarget.blockedOn = null;\n}\nfunction attemptReplayContinuousQueuedEvent(queuedEvent) {\n if (null !== queuedEvent.blockedOn) return !1;\n for (\n var targetContainers = queuedEvent.targetContainers;\n 0 < targetContainers.length;\n\n ) {\n var nextBlockedOn = findInstanceBlockingEvent(queuedEvent.nativeEvent);\n if (null === nextBlockedOn) {\n nextBlockedOn = queuedEvent.nativeEvent;\n var nativeEventClone = new nextBlockedOn.constructor(\n nextBlockedOn.type,\n nextBlockedOn\n );\n currentReplayingEvent = nativeEventClone;\n nextBlockedOn.target.dispatchEvent(nativeEventClone);\n currentReplayingEvent = null;\n } else\n return (\n (targetContainers = getInstanceFromNode(nextBlockedOn)),\n null !== targetContainers &&\n attemptContinuousHydration(targetContainers),\n (queuedEvent.blockedOn = nextBlockedOn),\n !1\n );\n targetContainers.shift();\n }\n return !0;\n}\nfunction attemptReplayContinuousQueuedEventInMap(queuedEvent, key, map) {\n attemptReplayContinuousQueuedEvent(queuedEvent) && map.delete(key);\n}\nfunction replayUnblockedEvents() {\n hasScheduledReplayAttempt = !1;\n null !== queuedFocus &&\n attemptReplayContinuousQueuedEvent(queuedFocus) &&\n (queuedFocus = null);\n null !== queuedDrag &&\n attemptReplayContinuousQueuedEvent(queuedDrag) &&\n (queuedDrag = null);\n null !== queuedMouse &&\n attemptReplayContinuousQueuedEvent(queuedMouse) &&\n (queuedMouse = null);\n queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap);\n queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap);\n}\nfunction scheduleCallbackIfUnblocked(queuedEvent, unblocked) {\n queuedEvent.blockedOn === unblocked &&\n ((queuedEvent.blockedOn = null),\n hasScheduledReplayAttempt ||\n ((hasScheduledReplayAttempt = !0),\n Scheduler.unstable_scheduleCallback(\n Scheduler.unstable_NormalPriority,\n replayUnblockedEvents\n )));\n}\nvar lastScheduledReplayQueue = null;\nfunction scheduleReplayQueueIfNeeded(formReplayingQueue) {\n lastScheduledReplayQueue !== formReplayingQueue &&\n ((lastScheduledReplayQueue = formReplayingQueue),\n Scheduler.unstable_scheduleCallback(\n Scheduler.unstable_NormalPriority,\n function () {\n lastScheduledReplayQueue === formReplayingQueue &&\n (lastScheduledReplayQueue = null);\n for (var i = 0; i < formReplayingQueue.length; i += 3) {\n var form = formReplayingQueue[i],\n submitterOrAction = formReplayingQueue[i + 1],\n formData = formReplayingQueue[i + 2];\n if (\"function\" !== typeof submitterOrAction)\n if (null === findInstanceBlockingTarget(submitterOrAction || form))\n continue;\n else break;\n var formInst = getInstanceFromNode(form);\n null !== formInst &&\n (formReplayingQueue.splice(i, 3),\n (i -= 3),\n startHostTransition(\n formInst,\n {\n pending: !0,\n data: formData,\n method: form.method,\n action: submitterOrAction\n },\n submitterOrAction,\n formData\n ));\n }\n }\n ));\n}\nfunction retryIfBlockedOn(unblocked) {\n function unblock(queuedEvent) {\n return scheduleCallbackIfUnblocked(queuedEvent, unblocked);\n }\n null !== queuedFocus && scheduleCallbackIfUnblocked(queuedFocus, unblocked);\n null !== queuedDrag && scheduleCallbackIfUnblocked(queuedDrag, unblocked);\n null !== queuedMouse && scheduleCallbackIfUnblocked(queuedMouse, unblocked);\n queuedPointers.forEach(unblock);\n queuedPointerCaptures.forEach(unblock);\n for (var i = 0; i < queuedExplicitHydrationTargets.length; i++) {\n var queuedTarget = queuedExplicitHydrationTargets[i];\n queuedTarget.blockedOn === unblocked && (queuedTarget.blockedOn = null);\n }\n for (\n ;\n 0 < queuedExplicitHydrationTargets.length &&\n ((i = queuedExplicitHydrationTargets[0]), null === i.blockedOn);\n\n )\n attemptExplicitHydrationTarget(i),\n null === i.blockedOn && queuedExplicitHydrationTargets.shift();\n i = (unblocked.ownerDocument || unblocked).$$reactFormReplay;\n if (null != i)\n for (queuedTarget = 0; queuedTarget < i.length; queuedTarget += 3) {\n var form = i[queuedTarget],\n submitterOrAction = i[queuedTarget + 1],\n formProps = form[internalPropsKey] || null;\n if (\"function\" === typeof submitterOrAction)\n formProps || scheduleReplayQueueIfNeeded(i);\n else if (formProps) {\n var action = null;\n if (submitterOrAction && submitterOrAction.hasAttribute(\"formAction\"))\n if (\n ((form = submitterOrAction),\n (formProps = submitterOrAction[internalPropsKey] || null))\n )\n action = formProps.formAction;\n else {\n if (null !== findInstanceBlockingTarget(form)) continue;\n }\n else action = formProps.action;\n \"function\" === typeof action\n ? (i[queuedTarget + 1] = action)\n : (i.splice(queuedTarget, 3), (queuedTarget -= 3));\n scheduleReplayQueueIfNeeded(i);\n }\n }\n}\nfunction defaultOnDefaultTransitionIndicator() {\n function handleNavigate(event) {\n event.canIntercept &&\n \"react-transition\" === event.info &&\n event.intercept({\n handler: function () {\n return new Promise(function (resolve) {\n return (pendingResolve = resolve);\n });\n },\n focusReset: \"manual\",\n scroll: \"manual\"\n });\n }\n function handleNavigateComplete() {\n null !== pendingResolve && (pendingResolve(), (pendingResolve = null));\n isCancelled || setTimeout(startFakeNavigation, 20);\n }\n function startFakeNavigation() {\n if (!isCancelled && !navigation.transition) {\n var currentEntry = navigation.currentEntry;\n currentEntry &&\n null != currentEntry.url &&\n navigation.navigate(currentEntry.url, {\n state: currentEntry.getState(),\n info: \"react-transition\",\n history: \"replace\"\n });\n }\n }\n if (\"object\" === typeof navigation) {\n var isCancelled = !1,\n pendingResolve = null;\n navigation.addEventListener(\"navigate\", handleNavigate);\n navigation.addEventListener(\"navigatesuccess\", handleNavigateComplete);\n navigation.addEventListener(\"navigateerror\", handleNavigateComplete);\n setTimeout(startFakeNavigation, 100);\n return function () {\n isCancelled = !0;\n navigation.removeEventListener(\"navigate\", handleNavigate);\n navigation.removeEventListener(\"navigatesuccess\", handleNavigateComplete);\n navigation.removeEventListener(\"navigateerror\", handleNavigateComplete);\n null !== pendingResolve && (pendingResolve(), (pendingResolve = null));\n };\n }\n}\nfunction ReactDOMRoot(internalRoot) {\n this._internalRoot = internalRoot;\n}\nReactDOMHydrationRoot.prototype.render = ReactDOMRoot.prototype.render =\n function (children) {\n var root = this._internalRoot;\n if (null === root) throw Error(formatProdErrorMessage(409));\n var current = root.current,\n lane = requestUpdateLane();\n updateContainerImpl(current, lane, children, root, null, null);\n };\nReactDOMHydrationRoot.prototype.unmount = ReactDOMRoot.prototype.unmount =\n function () {\n var root = this._internalRoot;\n if (null !== root) {\n this._internalRoot = null;\n var container = root.containerInfo;\n updateContainerImpl(root.current, 2, null, root, null, null);\n flushSyncWork$1();\n container[internalContainerInstanceKey] = null;\n }\n };\nfunction ReactDOMHydrationRoot(internalRoot) {\n this._internalRoot = internalRoot;\n}\nReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (target) {\n if (target) {\n var updatePriority = resolveUpdatePriority();\n target = { blockedOn: null, target: target, priority: updatePriority };\n for (\n var i = 0;\n i < queuedExplicitHydrationTargets.length &&\n 0 !== updatePriority &&\n updatePriority < queuedExplicitHydrationTargets[i].priority;\n i++\n );\n queuedExplicitHydrationTargets.splice(i, 0, target);\n 0 === i && attemptExplicitHydrationTarget(target);\n }\n};\nvar isomorphicReactPackageVersion$jscomp$inline_1840 = React.version;\nif (\n \"19.2.8\" !==\n isomorphicReactPackageVersion$jscomp$inline_1840\n)\n throw Error(\n formatProdErrorMessage(\n 527,\n isomorphicReactPackageVersion$jscomp$inline_1840,\n \"19.2.8\"\n )\n );\nReactDOMSharedInternals.findDOMNode = function (componentOrElement) {\n var fiber = componentOrElement._reactInternals;\n if (void 0 === fiber) {\n if (\"function\" === typeof componentOrElement.render)\n throw Error(formatProdErrorMessage(188));\n componentOrElement = Object.keys(componentOrElement).join(\",\");\n throw Error(formatProdErrorMessage(268, componentOrElement));\n }\n componentOrElement = findCurrentFiberUsingSlowPath(fiber);\n componentOrElement =\n null !== componentOrElement\n ? findCurrentHostFiberImpl(componentOrElement)\n : null;\n componentOrElement =\n null === componentOrElement ? null : componentOrElement.stateNode;\n return componentOrElement;\n};\nvar internals$jscomp$inline_2347 = {\n bundleType: 0,\n version: \"19.2.8\",\n rendererPackageName: \"react-dom\",\n currentDispatcherRef: ReactSharedInternals,\n reconcilerVersion: \"19.2.8\"\n};\nif (\"undefined\" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {\n var hook$jscomp$inline_2348 = __REACT_DEVTOOLS_GLOBAL_HOOK__;\n if (\n !hook$jscomp$inline_2348.isDisabled &&\n hook$jscomp$inline_2348.supportsFiber\n )\n try {\n (rendererID = hook$jscomp$inline_2348.inject(\n internals$jscomp$inline_2347\n )),\n (injectedHook = hook$jscomp$inline_2348);\n } catch (err) {}\n}\nexports.createRoot = function (container, options) {\n if (!isValidContainer(container)) throw Error(formatProdErrorMessage(299));\n var isStrictMode = !1,\n identifierPrefix = \"\",\n onUncaughtError = defaultOnUncaughtError,\n onCaughtError = defaultOnCaughtError,\n onRecoverableError = defaultOnRecoverableError;\n null !== options &&\n void 0 !== options &&\n (!0 === options.unstable_strictMode && (isStrictMode = !0),\n void 0 !== options.identifierPrefix &&\n (identifierPrefix = options.identifierPrefix),\n void 0 !== options.onUncaughtError &&\n (onUncaughtError = options.onUncaughtError),\n void 0 !== options.onCaughtError && (onCaughtError = options.onCaughtError),\n void 0 !== options.onRecoverableError &&\n (onRecoverableError = options.onRecoverableError));\n options = createFiberRoot(\n container,\n 1,\n !1,\n null,\n null,\n isStrictMode,\n identifierPrefix,\n null,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n defaultOnDefaultTransitionIndicator\n );\n container[internalContainerInstanceKey] = options.current;\n listenToAllSupportedEvents(container);\n return new ReactDOMRoot(options);\n};\nexports.hydrateRoot = function (container, initialChildren, options) {\n if (!isValidContainer(container)) throw Error(formatProdErrorMessage(299));\n var isStrictMode = !1,\n identifierPrefix = \"\",\n onUncaughtError = defaultOnUncaughtError,\n onCaughtError = defaultOnCaughtError,\n onRecoverableError = defaultOnRecoverableError,\n formState = null;\n null !== options &&\n void 0 !== options &&\n (!0 === options.unstable_strictMode && (isStrictMode = !0),\n void 0 !== options.identifierPrefix &&\n (identifierPrefix = options.identifierPrefix),\n void 0 !== options.onUncaughtError &&\n (onUncaughtError = options.onUncaughtError),\n void 0 !== options.onCaughtError && (onCaughtError = options.onCaughtError),\n void 0 !== options.onRecoverableError &&\n (onRecoverableError = options.onRecoverableError),\n void 0 !== options.formState && (formState = options.formState));\n initialChildren = createFiberRoot(\n container,\n 1,\n !0,\n initialChildren,\n null != options ? options : null,\n isStrictMode,\n identifierPrefix,\n formState,\n onUncaughtError,\n onCaughtError,\n onRecoverableError,\n defaultOnDefaultTransitionIndicator\n );\n initialChildren.context = getContextForSubtree(null);\n options = initialChildren.current;\n isStrictMode = requestUpdateLane();\n isStrictMode = getBumpedLaneForHydrationByLane(isStrictMode);\n identifierPrefix = createUpdate(isStrictMode);\n identifierPrefix.callback = null;\n enqueueUpdate(options, identifierPrefix, isStrictMode);\n options = isStrictMode;\n initialChildren.current.lanes = options;\n markRootUpdated$1(initialChildren, options);\n ensureRootIsScheduled(initialChildren);\n container[internalContainerInstanceKey] = initialChildren.current;\n listenToAllSupportedEvents(container);\n return new ReactDOMHydrationRoot(initialChildren);\n};\nexports.version = \"19.2.8\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom-client.production.js');\n} else {\n module.exports = require('./cjs/react-dom-client.development.js');\n}\n","import { Domain0Error, Domain0ProtocolError, Domain0TransportError } from '../client'\nimport {\n Domain0ConnectErrorEventSchema,\n type Connection,\n type Domain0ConnectError,\n type Domain0ConnectErrorEvent,\n type Domain0ConnectEvent,\n type Domain0ConnectStep,\n} from '../contracts'\n\ntype Domain0ConnectErrorPayload = Omit<Domain0ConnectErrorEvent, 'type'>\n\nexport interface Domain0ConnectEventSink {\n onEvent?: (event: Domain0ConnectEvent) => void\n onError?: (event: Domain0ConnectErrorPayload) => void\n}\n\nexport function createDomain0ConnectError(\n cause: unknown,\n source?: 'configuration',\n): Domain0ConnectError {\n if (source === 'configuration') {\n return {\n source: 'configuration',\n code: 'invalid_configuration',\n retryable: false,\n }\n }\n if (cause instanceof Domain0Error) {\n return {\n source: 'api',\n code: cause.response.error.code,\n retryable: cause.response.error.retryable,\n requestId: cause.response.error.requestId,\n }\n }\n if (cause instanceof Domain0TransportError) {\n return { source: 'transport', code: 'transport_error', retryable: true }\n }\n if (cause instanceof Domain0ProtocolError) {\n return { source: 'protocol', code: 'protocol_error', retryable: false }\n }\n return { source: 'unexpected', code: 'unexpected_error', retryable: false }\n}\n\nexport function emitDomain0ConnectError(\n sink: Domain0ConnectEventSink,\n cause: unknown,\n context: {\n connection?: Connection\n step?: Domain0ConnectStep\n source?: 'configuration'\n } = {},\n): Domain0ConnectError {\n const connectError = createDomain0ConnectError(cause, context.source)\n const event = Domain0ConnectErrorEventSchema.parse({\n type: 'error',\n error: connectError,\n connection: context.connection,\n step: context.step,\n })\n sink.onEvent?.(event)\n sink.onError?.(eventPayload(event))\n return connectError\n}\n\nfunction eventPayload<TEvent extends { readonly type: string }>(\n event: TEvent,\n): Omit<TEvent, 'type'> {\n const { type: _, ...payload } = event\n return payload\n}\n","import type { Domain0Messages } from '../localization'\n\nexport const spanishMessages = {\n triggerConnectDomain: 'Conectar dominio',\n headingConnectDomain: 'Conecte su dominio',\n headingConnectDomains: 'Conecte sus dominios',\n initialSubtitle: 'Elija su proveedor de DNS. Domain0 mostrará la ruta de conexión verificada disponible.',\n cancelConnection: 'Cancelar conexión',\n close: 'Cerrar',\n loadingConnection: 'Cargando los detalles de la conexión…',\n detectingProvider: 'Detectando su proveedor de DNS…',\n checkingDomain: (domain: string) => `Comprobando ${domain}`,\n nameserverDetectionGuidance: 'Consultando los servidores de nombres para identificar quién gestiona el DNS de este dominio.',\n resolvingNameservers: 'Resolviendo servidores de nombres',\n detectionUnavailable: 'La detección automática del proveedor no está disponible temporalmente. Elija su proveedor de DNS a continuación.',\n connectionStatus: (state: string) => `Estado de la conexión: ${state}.`,\n manualInstructionsReady: 'Las instrucciones guiadas de DNS manual están listas.',\n forcedManualBlocked: 'Esta conexión ya inició un flujo automático del proveedor. El modo manual forzado no puede reanudarlo ni continuarlo. Cancele esta conexión y cree una nueva conexión manual.',\n forcedManualIncompatible: 'La conexión existente no es compatible con la configuración manual forzada',\n missingConfirmationPlan: 'El servidor devolvió un estado de confirmación sin un plan de cambios',\n missingApplyingPlan: 'El servidor devolvió un estado de aplicación sin un plan confirmado',\n missingFailureDetails: 'El servidor devolvió un estado reintentable sin detalles del error',\n successDescription: (domain: string) => `${domain} está conectado y sus registros requeridos se han propagado.`,\n connectedHeading: (domain: string) => `${domain} está conectado`,\n verifiedEveryNameserver: 'Verificado en todos los servidores de nombres',\n successRecordsUntouched: 'Estos registros están activos. No se modificó nada más en el dominio.',\n backToApplication: (application: string) => `Volver a ${application}`,\n dkimHeading: 'Proteja el correo saliente con DKIM',\n dkimCheckingProvider: 'Comprobando los registros MX públicos y los registros DNS DKIM de selectores específicos…',\n dkimGuidanceUnavailable: 'La detección del proveedor de correo no está disponible temporalmente. No se realizó ningún cambio de DNS.',\n dkimDomainMismatch: 'El servidor devolvió instrucciones DKIM para otro dominio',\n dkimProviderDetected: (provider: string) => `Se detectó ${provider} mediante los registros MX públicos.`,\n dkimProviderAmbiguous: 'Los registros MX apuntan a más de un proveedor de correo compatible. Revise el enrutamiento del correo antes de cambiar DKIM.',\n dkimProviderUnknown: 'Domain0 no pudo identificar Google Workspace, Microsoft 365 ni Zoho Mail mediante los registros MX públicos.',\n dkimRecordObserved: (selectors: string) => `Se observó un registro DNS DKIM para los selectores comprobados: ${selectors}.`,\n dkimNoRecordObserved: (selectors: string) => `No se observó ningún registro DNS DKIM para los selectores comprobados: ${selectors}. Esto no demuestra que DKIM esté desactivado.`,\n dkimNotChecked: 'Este proveedor usa un selector DKIM definido por la cuenta, por lo que no se comprobó automáticamente ningún registro de selector.',\n dkimLookupUnavailable: 'La consulta DNS específica del selector no estuvo disponible temporalmente.',\n dkimEvidenceBoundary: 'Un registro DNS publicado no demuestra que el correo saliente se esté firmando. Verifique el estado final de DKIM en la administración del proveedor de correo.',\n dkimOpenGuide: (provider: string) => `Abrir la guía oficial de configuración de DKIM de ${provider}`,\n cancelledDescription: (domain: string) => `Se canceló la conexión de ${domain}. No se aplicarán más cambios de DNS.`,\n selectedProvider: (provider: string, support: string) => `${provider} seleccionado. ${support}`,\n connectAnotherWay: 'Conectar de otra manera',\n currentState: (state: string) => `Esta conexión está actualmente ${state}. Actualice para cargar su estado más reciente.`,\n refreshConnection: 'Actualizar conexión',\n domainConnectHeading: 'Conectar mediante Domain Connect',\n domainConnectGuidance: 'Su proveedor de DNS mostrará la plantilla de servicio exacta y solicitará su consentimiento antes de aplicarla.',\n domainConnectResumeUnavailable: 'Esta aplicación anfitriona debe proporcionar la misma plantilla de servicio de Domain Connect para reanudar esta transferencia.',\n domainConnectUnavailable: 'Esta aplicación anfitriona no configuró su plantilla de servicio de Domain Connect. La configuración manual guiada sigue disponible.',\n continueSecurely: (provider: string) => `Continuar de forma segura con ${provider}`,\n continueSecurelyNewTab: (provider: string) => `Continuar de forma segura con ${provider} en una pestaña nueva`,\n completedDomainConnect: 'He completado Domain Connect',\n preparingAuthoritativeVerification: 'Preparando la verificación de DNS autoritativo…',\n readyToVerifyPropagation: 'Listo para verificar la propagación de DNS.',\n resumeDomainConnect: (provider: string) => `Reanudar Domain Connect con ${provider}`,\n connectWithProvider: (provider: string) => `Conectar con ${provider}`,\n checkingDomainConnectTemplate: 'Comprobando que su proveedor de DNS admita esta plantilla de servicio exacta…',\n domainConnectReady: 'Domain Connect está listo. Continúe con su proveedor de DNS en una pestaña nueva.',\n followProviderGuide: (provider: string) => `Seguir la guía paso a paso de ${provider}`,\n openApplicationManualSetupGuide: 'Abrir la guía paso a paso de DNS de esta aplicación',\n requestManualSetupHelp: 'Obtener ayuda paso a paso con DNS',\n openProviderReference: (provider: string) => `Guía de DNS de ${provider}`,\n opensInNewTab: (label: string) => `${label} en una pestaña nueva`,\n sharedFlowHeading: 'Pedir a otra persona que termine la configuración',\n sharedFlowGuidance: 'Copie un enlace de duración limitada para una persona de confianza que pueda actualizar este dominio. El enlace solo concede acceso a esta conexión.',\n copySecureSetupLink: 'Copiar enlace seguro de configuración',\n creatingSecureSetupLink: 'Creando un enlace seguro de configuración…',\n secureSetupLinkCopied: 'Enlace seguro de configuración copiado.',\n copySetupLinkAgain: 'Volver a copiar el enlace de configuración',\n expiredSharedFlow: 'La aplicación anfitriona devolvió una invitación de flujo compartido caducada',\n clipboardUnavailable: 'El acceso al portapapeles no está disponible; configure sharedFlowGateway.copy',\n oauthHeading: 'Autorizar de forma segura con el proveedor',\n oauthGuidance: 'Domain0 usa OAuth con PKCE. Su contraseña del proveedor nunca se comparte con Domain0.',\n continueToProvider: (provider: string) => `Continuar a ${provider}`,\n authorizationExpires: 'Este enlace de autorización caduca el {DATE}.',\n completedAuthorization: 'He completado la autorización',\n resumeAuthorization: (provider: string) => `Reanudar la autorización con ${provider}`,\n authorizeWithProvider: (provider: string) => `Continuar con ${provider}`,\n authorizeProviderCredentials: (provider: string) => `Autorizar ${provider}`,\n preparingAuthorizationLink: 'Preparando un enlace seguro de autorización del proveedor…',\n authorizationLinkReady: 'El enlace de autorización está listo. Continúe con el proveedor en una pestaña nueva.',\n credentialGuidance: 'Use una credencial del proveedor con el alcance mínimo necesario. Domain0 la cifra en el servidor y nunca la devuelve al navegador.',\n credentialHeadingApiToken: 'Autorizar con un token de API',\n credentialHeadingAccessKey: 'Autorizar con claves de API',\n credentialHeadingUsernamePassword: 'Autorizar con credenciales del proveedor',\n credentialHeadingAccountToken: 'Autorizar con un token de cuenta',\n credentialHeadingUsernameToken: 'Autorizar con un token de usuario',\n credentialHeadingOvh: 'Autorizar con credenciales de la API de OVH',\n credentialHeadingPrivateKey: 'Autorizar con una clave privada',\n credentialHeadingAwsSession: 'Autorizar con una sesión temporal de AWS',\n credentialHeadingCpanel: 'Autorizar con un token de API de cPanel',\n credentialHeadingClientCredentials: 'Autorizar con credenciales de OpenSRS Storefront',\n fieldApiToken: 'Token de API',\n fieldAccessKeyId: 'ID de clave de acceso',\n fieldApiSecret: 'Secreto de API',\n fieldUsername: 'Nombre de usuario',\n fieldPassword: 'Contraseña',\n fieldAccountId: 'ID de cuenta',\n fieldOvhRegion: 'Región de la API de OVH',\n fieldApplicationKey: 'Clave de aplicación',\n fieldApplicationSecret: 'Secreto de aplicación',\n fieldConsumerKey: 'Clave de consumidor',\n fieldProviderLogin: 'Inicio de sesión del proveedor',\n fieldPemPrivateKey: 'Clave privada PEM',\n fieldAwsAccessKeyId: 'ID de clave de acceso de AWS',\n fieldAwsSecretAccessKey: 'Clave de acceso secreta de AWS',\n fieldAwsSessionToken: 'Token de sesión de AWS',\n fieldRoute53ZoneId: 'ID de zona alojada de Route 53',\n fieldSessionExpiration: 'Caducidad de la sesión',\n fieldCpanelEndpoint: 'Punto de conexión HTTPS de cPanel',\n fieldCpanelUsername: 'Nombre de usuario de cPanel',\n fieldCpanelApiToken: 'Token de API de cPanel',\n fieldStorefrontClientId: 'ID de cliente de Storefront',\n fieldStorefrontClientSecret: 'Secreto de cliente de Storefront',\n regionOvhEurope: 'OVH Europa',\n regionOvhUnitedStates: 'OVH Estados Unidos',\n regionOvhCanada: 'OVH Canadá',\n regionKimsufiEurope: 'Kimsufi Europa',\n regionKimsufiCanada: 'Kimsufi Canadá',\n regionSoYouStartEurope: 'So You Start Europa',\n regionSoYouStartCanada: 'So You Start Canadá',\n authorizeApiToken: 'Autorizar token de API',\n encryptingAuthorization: 'Cifrando y validando la autorización del proveedor…',\n authorizationCompleted: 'Autorización del proveedor completada.',\n existingRecordPolicy: 'Política para registros DNS existentes',\n existingRecordPolicyHelp: 'Conservar es la opción más segura. Las políticas de reemplazo pueden proponer cambios destructivos que requieren confirmación por separado.',\n preserveExistingRecords: 'Conservar los registros existentes',\n replaceSameNameAndType: 'Reemplazar registros con el mismo host y tipo',\n replaceAllAtName: 'Reemplazar todos los registros en conflicto del host',\n replaceSpf: 'Reemplazar una política SPF existente en lugar de combinarla',\n replaceSpfHelp: 'Combinar es la opción segura predeterminada. Reemplazar elimina los mecanismos SPF actuales del proveedor y siempre requiere confirmar el cambio destructivo.',\n readingRecords: 'Leyendo los registros actuales del proveedor y preparando un plan de cambios…',\n recordsAlreadyExist: 'Los registros DNS requeridos ya existen. Listo para verificar la propagación.',\n reviewChanges: 'Revise los cambios de DNS propuestos antes de confirmarlos.',\n reviewDnsChanges: 'Revisar cambios de DNS',\n recalculateChangePlan: 'Volver a calcular el plan de cambios',\n proposedChangesRegion: 'Cambios de DNS propuestos',\n proposedChangesCaption: (domain: string) => `Cambios de DNS propuestos para ${domain}`,\n columnAction: 'Acción',\n columnCurrentRecord: 'Registro actual',\n columnResultingRecord: 'Registro resultante',\n columnRisk: 'Riesgo',\n changeCreate: 'Crear',\n changeUpdate: 'Actualizar',\n changeDelete: 'Eliminar',\n destructive: 'Destructivo',\n nonDestructive: 'No destructivo',\n planWarnings: 'Advertencias del plan',\n planWarningSpfPolicyReplaced: 'La política SPF existente será reemplazada por la política SPF solicitada.',\n planWarningSpfPolicyMerged: 'La política SPF existente se combinó con el registro SPF solicitado.',\n planExpires: 'Este plan caduca el {DATE}.',\n destructiveAcknowledgement: 'Entiendo que los registros DNS existentes marcados serán reemplazados o eliminados.',\n confirmChangePlan: 'Confirmar plan de cambios',\n confirmingChangePlan: 'Confirmando este plan de cambios exacto…',\n planConfirmed: 'Plan confirmado. Los cambios de DNS todavía no se han aplicado.',\n applyDnsChanges: 'Aplicar cambios de DNS',\n applyingDnsChanges: 'Aplicando los cambios de DNS confirmados…',\n applyingVerifiedChanges: 'Aplicando cambios verificados',\n connectingDomain: (domain: string) => `Conectando ${domain}`,\n applyingProgressGuidance: 'Domain0 actualiza únicamente los registros DNS solicitados. Puede dejar esta ventana abierta.',\n waitingForProvider: 'Esperando al proveedor',\n dnsChangesApplied: 'Los cambios de DNS se aplicaron. Listo para verificar la propagación autoritativa.',\n detectionReasonNoStablePublicProviderIdentity: 'Este proveedor no publica una identidad pública estable que Domain0 pueda detectar de forma segura mediante DNS.',\n manualGuidance: 'Use la configuración manual guiada para añadir los registros DNS requeridos exactos sin compartir credenciales del proveedor.',\n manualSetupLabel: 'Configuración manual',\n manualSetupUnavailableHeading: 'Configuración manual no disponible',\n manualSetupUnavailableDescription: 'Esta aplicación desactivó la configuración manual de DNS. Use otra ruta verificada disponible o cancele o cierre esta conexión.',\n showDnsRecords: 'Mostrar registros DNS',\n preparingDnsInstructions: 'Preparando las instrucciones de DNS…',\n dnsInstructionsReady: 'Las instrucciones de DNS están listas.',\n addResolvedRecords: 'Añada estos registros resueltos en su proveedor de DNS y continúe.',\n authoritativeRecordGuidance: 'Domain0 comprueba estos registros directamente en cada servidor de nombres autoritativo.',\n dnsRecordsRegion: 'Registros DNS',\n dnsRecordsCaption: (domain: string) => `Registros DNS para ${domain}`,\n thisDomain: 'este dominio',\n columnType: 'Tipo',\n columnHost: 'Host',\n columnValue: 'Valor',\n columnTtl: 'TTL',\n columnPriority: 'Prioridad',\n columnRequirement: 'Requisito',\n optional: 'Opcional',\n required: 'Requerido',\n noRecordChanges: 'La política de DNS existente satisface esta solicitud. No se requiere ningún cambio de registros DNS.',\n addedRecords: 'He añadido estos registros',\n continue: 'Continuar',\n savingConfirmation: 'Guardando su confirmación…',\n verifyDnsRecords: 'Verificar registros DNS',\n finishConnection: 'Finalizar conexión',\n checkingNameservers: 'Comprobando los servidores de nombres autoritativos…',\n requiredRecordsActive: 'Los registros DNS requeridos están activos.',\n propagationPending: 'Los cambios de DNS aún no han llegado a todos los servidores de nombres autoritativos. Puede volver a comprobarlos.',\n providerFailureHeading: 'La operación del proveedor requiere atención',\n needsAttention: 'Requiere atención',\n connectionNeedsAttention: (domain: string) => `${domain} requiere atención`,\n snapshotTimeout: 'Domain0 agotó el tiempo de espera al leer los registros DNS del proveedor. No se realizó ningún cambio de DNS. Reintentar restaura el paso de revisión anterior para que pueda solicitar una nueva instantánea.',\n applyTimeout: 'El proveedor no confirmó la actualización de DNS antes del límite, por lo que el resultado es ambiguo. Reintentar restaura el paso de aplicación confirmado; Domain0 concilia los registros actuales del proveedor antes de otra escritura.',\n timeoutRecorded: 'El tiempo de espera se agotó el {DATE}.',\n retryConnection: 'Reintentar conexión',\n restoringConnection: 'Restaurando la conexión a su estado anterior al error…',\n connectionRestored: (state: string) => `Conexión restaurada a ${state}. Continúe cuando esté listo.`,\n cancelHeading: '¿Cancelar esta conexión?',\n cancelGuidance: 'La cancelación detiene este flujo de Domain0. No elimina los registros DNS que ya se hayan aplicado.',\n keepConnection: 'Mantener conexión',\n confirmCancellation: 'Confirmar cancelación',\n cancellingConnection: 'Cancelando conexión…',\n connectionCancelled: 'Conexión cancelada.',\n dnsProvider: 'Proveedor de DNS',\n providerHelp: 'Seleccione la empresa donde administra los registros DNS de este dominio.',\n detectedProviderHelp: 'Domain0 encontró posibles proveedores mediante información pública de DNS. Confirme la empresa donde administra los registros DNS.',\n chooseProvider: 'Elegir un proveedor',\n suggestedFromDns: 'Sugerido por DNS',\n allOtherProviders: 'Todos los demás proveedores',\n continueWithProvider: 'Continuar con el proveedor',\n savingProviderSelection: 'Guardando la selección del proveedor…',\n preparingProviderSelection: 'Preparando la selección del proveedor…',\n providerDetected: (provider: string) => `${provider} detectado.`,\n providerSelected: (provider: string) => `${provider} seleccionado.`,\n detectedFromNameservers: 'Detectado por los servidores de nombres',\n providerSelectedEyebrow: 'Proveedor seleccionado',\n providerConnectHeading: (provider: string) => `Conecta tu dominio con ${provider}`,\n hostApplication: 'Esta aplicación',\n providerApprovalGuidance: (provider: string, application: string) =>\n `Apruebas el acceso dentro de ${provider}. ${application} nunca ve tu contraseña del proveedor.`,\n preparingManualInstructions: 'Preparando las instrucciones guiadas de DNS manual…',\n manualSetupNotEntered: 'El servidor no inició la configuración manual guiada',\n noProviderDetected: 'No se identificó ningún proveedor automáticamente. Elija su proveedor de DNS a continuación.',\n possibleProviderFound: 'Se encontró 1 posible proveedor de DNS. Confirme su proveedor a continuación.',\n possibleProvidersFound: (count: string) => `Se encontraron ${count} posibles proveedores de DNS. Confirme su proveedor a continuación.`,\n supportAutomatic: 'automático',\n supportDomainConnect: 'Domain Connect',\n supportManual: 'manual guiado',\n supportUnverified: 'aún no verificado',\n supportAutomaticDescription: 'Su adaptador automático está verificado; la configuración manual guiada también está disponible.',\n supportDomainConnectDescription: 'Su ruta de Domain Connect está verificada; la configuración manual guiada también está disponible.',\n supportManualDescription: 'Su ruta manual guiada está verificada.',\n supportUnverifiedDescription: 'La automatización específica del proveedor no está verificada; la configuración manual guiada sigue disponible.',\n recordSummary: (type: string, host: string, value: string, ttl: string, priority: string) => `${type} ${host} = ${value}; TTL ${ttl}${priority}`,\n recordPriority: (priority: string) => `; prioridad ${priority}`,\n errorPrefix: (message: string) => `Error: ${message}`,\n unknownError: 'Error desconocido',\n transportError: 'No se pudo acceder a Domain0. Compruebe su conexión e inténtelo de nuevo.',\n protocolError: 'Domain0 devolvió una respuesta no válida. Inténtelo de nuevo o contacte con el operador de la aplicación.',\n apiErrorInvalidRequest: 'La solicitud no es válida.',\n apiErrorUnauthorized: 'La autenticación falló. Vuelva a abrir el flujo de conexión e inténtelo de nuevo.',\n apiErrorForbidden: 'No tiene permiso para realizar esta operación.',\n apiErrorNotFound: 'El recurso de conexión solicitado no se encontró o ha caducado.',\n apiErrorConflict: 'La conexión cambió antes de que terminara esta operación. Actualice e inténtelo de nuevo.',\n apiErrorRateLimited: 'Se realizaron demasiadas solicitudes. Espere un momento e inténtelo de nuevo.',\n apiErrorDnsUnavailable: 'El DNS autoritativo no está disponible temporalmente. Inténtelo de nuevo.',\n apiErrorProviderUnavailable: 'El proveedor de DNS no está disponible temporalmente. Inténtelo de nuevo.',\n apiErrorProviderAuthorizationFailed: 'La autorización del proveedor de DNS falló o caducó.',\n apiErrorProviderLimitation: 'El proveedor seleccionado no puede completar esta operación automáticamente.',\n apiErrorPlanExpired: 'El plan de cambios de DNS caducó. Prepare y revise un plan nuevo.',\n apiErrorPropagationPending: 'Los cambios de DNS aún no han llegado a todos los servidores de nombres autoritativos.',\n apiErrorInternal: 'Domain0 encontró un error inesperado. Inténtelo de nuevo.',\n loadingFlow: 'Cargando el flujo de conexión de dominios…',\n flowNotReady: 'Las conexiones de dominio aún se están preparando. Vuelva a abrir este flujo para reintentarlo.',\n flowStep: (index: string, domain: string) => `${index}. ${domain}`,\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — conectado`,\n allDomainsConnected: (count: string) => `Los ${count} dominios están conectados.`,\n domainProgress: (index: string, total: string, domain: string) => `Dominio ${index} de ${total}: ${domain}`,\n connectionStateRequested: 'solicitada',\n connectionStateDetectingProvider: 'detectando el proveedor',\n connectionStateProviderSelected: 'con el proveedor seleccionado',\n connectionStateDomainConnectPending: 'con Domain Connect pendiente',\n connectionStateAuthorizationPending: 'con la autorización pendiente',\n connectionStateAuthorized: 'autorizada',\n connectionStatePlanning: 'en planificación',\n connectionStateAwaitingConfirmation: 'esperando confirmación',\n connectionStateApplying: 'aplicándose',\n connectionStatePropagationPending: 'con la propagación pendiente',\n connectionStateActive: 'activa',\n connectionStateManualRequired: 'requiere configuración manual',\n connectionStateFailedRetryable: 'con un error temporal',\n connectionStateFailedTerminal: 'con error',\n connectionStateCancelled: 'cancelada',\n} satisfies Domain0Messages\n","import type { Domain0Messages } from '../localization'\n\nexport const frenchMessages = {\n triggerConnectDomain: 'Connecter le domaine',\n headingConnectDomain: 'Connectez votre domaine',\n headingConnectDomains: 'Connectez vos domaines',\n initialSubtitle: 'Choisissez votre fournisseur DNS. Domain0 affichera le parcours de connexion vérifié disponible.',\n cancelConnection: 'Annuler la connexion',\n close: 'Fermer',\n loadingConnection: 'Chargement des détails de la connexion…',\n detectingProvider: 'Détection de votre fournisseur DNS…',\n checkingDomain: (domain: string) => `Vérification de ${domain}`,\n nameserverDetectionGuidance: 'Lecture des serveurs de noms pour identifier qui gère le DNS de ce domaine.',\n resolvingNameservers: 'Résolution des serveurs de noms',\n detectionUnavailable: 'La détection automatique du fournisseur est temporairement indisponible. Choisissez votre fournisseur DNS ci-dessous.',\n connectionStatus: (state: string) => `État de la connexion : ${state}.`,\n manualInstructionsReady: 'Les instructions guidées de configuration DNS manuelle sont prêtes.',\n forcedManualBlocked: 'Cette connexion a déjà démarré un parcours automatique du fournisseur. Le mode manuel forcé ne peut ni le reprendre ni le poursuivre. Annulez cette connexion et créez une nouvelle connexion manuelle.',\n forcedManualIncompatible: 'La connexion existante est incompatible avec la configuration manuelle forcée',\n missingConfirmationPlan: 'Le serveur a renvoyé un état de confirmation sans plan de modification',\n missingApplyingPlan: 'Le serveur a renvoyé un état d’application sans plan confirmé',\n missingFailureDetails: 'Le serveur a renvoyé un état réessayable sans détails sur l’erreur',\n successDescription: (domain: string) => `${domain} est connecté et ses enregistrements requis se sont propagés.`,\n connectedHeading: (domain: string) => `${domain} est connecté`,\n verifiedEveryNameserver: 'Vérifié sur chaque serveur de noms',\n successRecordsUntouched: 'Ces enregistrements sont actifs. Rien d’autre sur le domaine n’a été modifié.',\n backToApplication: (application: string) => `Retour à ${application}`,\n dkimHeading: 'Protégez les e-mails sortants avec DKIM',\n dkimCheckingProvider: 'Vérification des enregistrements MX publics et des enregistrements DNS DKIM propres aux sélecteurs…',\n dkimGuidanceUnavailable: 'La détection du fournisseur de messagerie est temporairement indisponible. Aucune modification DNS n’a été effectuée.',\n dkimDomainMismatch: 'Le serveur a renvoyé des instructions DKIM pour un autre domaine',\n dkimProviderDetected: (provider: string) => `${provider} a été détecté grâce aux enregistrements MX publics.`,\n dkimProviderAmbiguous: 'Les enregistrements MX désignent plusieurs fournisseurs de messagerie compatibles. Vérifiez le routage des e-mails avant de modifier DKIM.',\n dkimProviderUnknown: 'Domain0 n’a pas pu identifier Google Workspace, Microsoft 365 ou Zoho Mail grâce aux enregistrements MX publics.',\n dkimRecordObserved: (selectors: string) => `Un enregistrement DNS DKIM a été observé pour les sélecteurs vérifiés : ${selectors}.`,\n dkimNoRecordObserved: (selectors: string) => `Aucun enregistrement DNS DKIM n’a été observé pour les sélecteurs vérifiés : ${selectors}. Cela ne prouve pas que DKIM est désactivé.`,\n dkimNotChecked: 'Ce fournisseur utilise un sélecteur DKIM défini par le compte. Aucun enregistrement de sélecteur n’a donc été vérifié automatiquement.',\n dkimLookupUnavailable: 'La recherche DNS propre au sélecteur est temporairement indisponible.',\n dkimEvidenceBoundary: 'La publication d’un enregistrement DNS ne prouve pas que les e-mails sortants sont signés. Vérifiez l’état DKIM final dans l’administration du fournisseur de messagerie.',\n dkimOpenGuide: (provider: string) => `Ouvrir le guide officiel de configuration DKIM de ${provider}`,\n cancelledDescription: (domain: string) => `La connexion de ${domain} a été annulée. Aucune autre modification DNS ne sera appliquée.`,\n selectedProvider: (provider: string, support: string) => `${provider} sélectionné. ${support}`,\n connectAnotherWay: 'Se connecter autrement',\n currentState: (state: string) => `Cette connexion est actuellement ${state}. Actualisez pour charger son état le plus récent.`,\n refreshConnection: 'Actualiser la connexion',\n domainConnectHeading: 'Se connecter avec Domain Connect',\n domainConnectGuidance: 'Votre fournisseur DNS affichera le modèle de service exact et demandera votre consentement avant de l’appliquer.',\n domainConnectResumeUnavailable: 'Cette application hôte doit fournir le même modèle de service Domain Connect pour reprendre ce transfert.',\n domainConnectUnavailable: 'Cette application hôte n’a pas configuré son modèle de service Domain Connect. La configuration manuelle guidée reste disponible.',\n continueSecurely: (provider: string) => `Continuer de manière sécurisée avec ${provider}`,\n continueSecurelyNewTab: (provider: string) => `Continuer de manière sécurisée avec ${provider} dans un nouvel onglet`,\n completedDomainConnect: 'J’ai terminé Domain Connect',\n preparingAuthoritativeVerification: 'Préparation de la vérification DNS faisant autorité…',\n readyToVerifyPropagation: 'Prêt à vérifier la propagation DNS.',\n resumeDomainConnect: (provider: string) => `Reprendre Domain Connect avec ${provider}`,\n connectWithProvider: (provider: string) => `Se connecter avec ${provider}`,\n checkingDomainConnectTemplate: 'Vérification de la prise en charge de ce modèle de service exact par votre fournisseur DNS…',\n domainConnectReady: 'Domain Connect est prêt. Continuez auprès de votre fournisseur DNS dans un nouvel onglet.',\n followProviderGuide: (provider: string) => `Suivre le guide pas à pas de ${provider}`,\n openApplicationManualSetupGuide: 'Ouvrir le guide DNS pas à pas de cette application',\n requestManualSetupHelp: 'Obtenir une aide DNS pas à pas',\n openProviderReference: (provider: string) => `Guide DNS ${provider}`,\n opensInNewTab: (label: string) => `${label} dans un nouvel onglet`,\n sharedFlowHeading: 'Demander à une autre personne de terminer la configuration',\n sharedFlowGuidance: 'Copiez un lien à durée limitée pour une personne de confiance capable de mettre à jour ce domaine. Le lien donne uniquement accès à cette connexion.',\n copySecureSetupLink: 'Copier le lien de configuration sécurisé',\n creatingSecureSetupLink: 'Création d’un lien de configuration sécurisé…',\n secureSetupLinkCopied: 'Lien de configuration sécurisé copié.',\n copySetupLinkAgain: 'Copier à nouveau le lien de configuration',\n expiredSharedFlow: 'L’application hôte a renvoyé une invitation de parcours partagé expirée',\n clipboardUnavailable: 'L’accès au presse-papiers est indisponible ; configurez sharedFlowGateway.copy',\n oauthHeading: 'Autoriser le fournisseur de manière sécurisée',\n oauthGuidance: 'Domain0 utilise OAuth avec PKCE. Le mot de passe de votre fournisseur n’est jamais communiqué à Domain0.',\n continueToProvider: (provider: string) => `Continuer vers ${provider}`,\n authorizationExpires: 'Ce lien d’autorisation expire le {DATE}.',\n completedAuthorization: 'J’ai terminé l’autorisation',\n resumeAuthorization: (provider: string) => `Reprendre l’autorisation avec ${provider}`,\n authorizeWithProvider: (provider: string) => `Continuer avec ${provider}`,\n authorizeProviderCredentials: (provider: string) => `Autoriser ${provider}`,\n preparingAuthorizationLink: 'Préparation d’un lien sécurisé d’autorisation du fournisseur…',\n authorizationLinkReady: 'Le lien d’autorisation est prêt. Continuez auprès du fournisseur dans un nouvel onglet.',\n credentialGuidance: 'Utilisez un identifiant du fournisseur avec les droits minimaux nécessaires. Domain0 le chiffre sur le serveur et ne le renvoie jamais au navigateur.',\n credentialHeadingApiToken: 'Autoriser avec un jeton API',\n credentialHeadingAccessKey: 'Autoriser avec des clés API',\n credentialHeadingUsernamePassword: 'Autoriser avec les identifiants du fournisseur',\n credentialHeadingAccountToken: 'Autoriser avec un jeton de compte',\n credentialHeadingUsernameToken: 'Autoriser avec un jeton utilisateur',\n credentialHeadingOvh: 'Autoriser avec les identifiants de l’API OVH',\n credentialHeadingPrivateKey: 'Autoriser avec une clé privée',\n credentialHeadingAwsSession: 'Autoriser avec une session AWS temporaire',\n credentialHeadingCpanel: 'Autoriser avec un jeton API cPanel',\n credentialHeadingClientCredentials: 'Autoriser avec les identifiants OpenSRS Storefront',\n fieldApiToken: 'Jeton API',\n fieldAccessKeyId: 'ID de clé d’accès',\n fieldApiSecret: 'Secret API',\n fieldUsername: 'Nom d’utilisateur',\n fieldPassword: 'Mot de passe',\n fieldAccountId: 'ID du compte',\n fieldOvhRegion: 'Région de l’API OVH',\n fieldApplicationKey: 'Clé d’application',\n fieldApplicationSecret: 'Secret d’application',\n fieldConsumerKey: 'Clé consommateur',\n fieldProviderLogin: 'Identifiant du fournisseur',\n fieldPemPrivateKey: 'Clé privée PEM',\n fieldAwsAccessKeyId: 'ID de clé d’accès AWS',\n fieldAwsSecretAccessKey: 'Clé d’accès secrète AWS',\n fieldAwsSessionToken: 'Jeton de session AWS',\n fieldRoute53ZoneId: 'ID de zone hébergée Route 53',\n fieldSessionExpiration: 'Expiration de la session',\n fieldCpanelEndpoint: 'Point de terminaison HTTPS cPanel',\n fieldCpanelUsername: 'Nom d’utilisateur cPanel',\n fieldCpanelApiToken: 'Jeton API cPanel',\n fieldStorefrontClientId: 'ID client Storefront',\n fieldStorefrontClientSecret: 'Secret client Storefront',\n regionOvhEurope: 'OVH Europe',\n regionOvhUnitedStates: 'OVH États-Unis',\n regionOvhCanada: 'OVH Canada',\n regionKimsufiEurope: 'Kimsufi Europe',\n regionKimsufiCanada: 'Kimsufi Canada',\n regionSoYouStartEurope: 'So You Start Europe',\n regionSoYouStartCanada: 'So You Start Canada',\n authorizeApiToken: 'Autoriser le jeton API',\n encryptingAuthorization: 'Chiffrement et validation de l’autorisation du fournisseur…',\n authorizationCompleted: 'Autorisation du fournisseur terminée.',\n existingRecordPolicy: 'Politique pour les enregistrements DNS existants',\n existingRecordPolicyHelp: 'La conservation est l’option la plus sûre. Les politiques de remplacement peuvent proposer des modifications destructives qui nécessitent une confirmation distincte.',\n preserveExistingRecords: 'Conserver les enregistrements existants',\n replaceSameNameAndType: 'Remplacer les enregistrements ayant le même hôte et le même type',\n replaceAllAtName: 'Remplacer tous les enregistrements en conflit sur l’hôte',\n replaceSpf: 'Remplacer une politique SPF existante au lieu de la fusionner',\n replaceSpfHelp: 'La fusion est l’option sûre par défaut. Le remplacement supprime les mécanismes SPF actuels du fournisseur et exige toujours la confirmation de la modification destructive.',\n readingRecords: 'Lecture des enregistrements actuels du fournisseur et préparation d’un plan de modification…',\n recordsAlreadyExist: 'Les enregistrements DNS requis existent déjà. Prêt à vérifier la propagation.',\n reviewChanges: 'Vérifiez les modifications DNS proposées avant de les confirmer.',\n reviewDnsChanges: 'Vérifier les modifications DNS',\n recalculateChangePlan: 'Recalculer le plan de modification',\n proposedChangesRegion: 'Modifications DNS proposées',\n proposedChangesCaption: (domain: string) => `Modifications DNS proposées pour ${domain}`,\n columnAction: 'Action',\n columnCurrentRecord: 'Enregistrement actuel',\n columnResultingRecord: 'Enregistrement obtenu',\n columnRisk: 'Risque',\n changeCreate: 'Créer',\n changeUpdate: 'Mettre à jour',\n changeDelete: 'Supprimer',\n destructive: 'Destructif',\n nonDestructive: 'Non destructif',\n planWarnings: 'Avertissements du plan',\n planWarningSpfPolicyReplaced: 'La politique SPF existante sera remplacée par la politique SPF demandée.',\n planWarningSpfPolicyMerged: 'La politique SPF existante a été fusionnée avec l’enregistrement SPF demandé.',\n planExpires: 'Ce plan expire le {DATE}.',\n destructiveAcknowledgement: 'Je comprends que les enregistrements DNS existants marqués seront remplacés ou supprimés.',\n confirmChangePlan: 'Confirmer le plan de modification',\n confirmingChangePlan: 'Confirmation de ce plan de modification exact…',\n planConfirmed: 'Plan confirmé. Les modifications DNS n’ont pas encore été appliquées.',\n applyDnsChanges: 'Appliquer les modifications DNS',\n applyingDnsChanges: 'Application des modifications DNS confirmées…',\n applyingVerifiedChanges: 'Application des modifications vérifiées',\n connectingDomain: (domain: string) => `Connexion de ${domain}`,\n applyingProgressGuidance: 'Domain0 met uniquement à jour les enregistrements DNS demandés. Vous pouvez laisser cette fenêtre ouverte.',\n waitingForProvider: 'En attente du fournisseur',\n dnsChangesApplied: 'Les modifications DNS ont été appliquées. Prêt à vérifier la propagation faisant autorité.',\n detectionReasonNoStablePublicProviderIdentity: 'Ce fournisseur ne publie pas d’identité publique stable que Domain0 puisse détecter de manière sûre via DNS.',\n manualGuidance: 'Utilisez la configuration manuelle guidée pour ajouter les enregistrements DNS requis exacts sans communiquer les identifiants du fournisseur.',\n manualSetupLabel: 'Configuration manuelle',\n manualSetupUnavailableHeading: 'Configuration manuelle indisponible',\n manualSetupUnavailableDescription: 'Cette application a désactivé la configuration DNS manuelle. Utilisez un autre parcours vérifié disponible, ou annulez ou fermez cette connexion.',\n showDnsRecords: 'Afficher les enregistrements DNS',\n preparingDnsInstructions: 'Préparation des instructions DNS…',\n dnsInstructionsReady: 'Les instructions DNS sont prêtes.',\n addResolvedRecords: 'Ajoutez ces enregistrements résolus chez votre fournisseur DNS, puis continuez.',\n authoritativeRecordGuidance: 'Domain0 vérifie ces enregistrements directement sur chaque serveur de noms faisant autorité.',\n dnsRecordsRegion: 'Enregistrements DNS',\n dnsRecordsCaption: (domain: string) => `Enregistrements DNS pour ${domain}`,\n thisDomain: 'ce domaine',\n columnType: 'Type',\n columnHost: 'Hôte',\n columnValue: 'Valeur',\n columnTtl: 'TTL',\n columnPriority: 'Priorité',\n columnRequirement: 'Exigence',\n optional: 'Facultatif',\n required: 'Requis',\n noRecordChanges: 'La politique DNS existante répond à cette demande. Aucune modification d’enregistrement DNS n’est nécessaire.',\n addedRecords: 'J’ai ajouté ces enregistrements',\n continue: 'Continuer',\n savingConfirmation: 'Enregistrement de votre confirmation…',\n verifyDnsRecords: 'Vérifier les enregistrements DNS',\n finishConnection: 'Terminer la connexion',\n checkingNameservers: 'Vérification des serveurs de noms faisant autorité…',\n requiredRecordsActive: 'Les enregistrements DNS requis sont actifs.',\n propagationPending: 'Les modifications DNS n’ont pas encore atteint tous les serveurs de noms faisant autorité. Vous pouvez les vérifier à nouveau.',\n providerFailureHeading: 'L’opération du fournisseur nécessite votre attention',\n needsAttention: 'Attention requise',\n connectionNeedsAttention: (domain: string) => `${domain} nécessite votre attention`,\n snapshotTimeout: 'Domain0 a dépassé le délai de lecture des enregistrements DNS du fournisseur. Aucune modification DNS n’a été effectuée. Réessayer restaure l’étape de vérification précédente afin de demander un nouvel instantané.',\n applyTimeout: 'Le fournisseur n’a pas confirmé la mise à jour DNS avant la limite ; le résultat est donc ambigu. Réessayer restaure l’étape d’application confirmée. Domain0 rapproche les enregistrements actuels du fournisseur avant toute nouvelle écriture.',\n timeoutRecorded: 'Le délai a été dépassé le {DATE}.',\n retryConnection: 'Réessayer la connexion',\n restoringConnection: 'Restauration de la connexion à son état antérieur à l’erreur…',\n connectionRestored: (state: string) => `Connexion restaurée à l’état ${state}. Continuez lorsque vous êtes prêt.`,\n cancelHeading: 'Annuler cette connexion ?',\n cancelGuidance: 'L’annulation arrête ce parcours Domain0. Elle ne supprime pas les enregistrements DNS déjà appliqués.',\n keepConnection: 'Conserver la connexion',\n confirmCancellation: 'Confirmer l’annulation',\n cancellingConnection: 'Annulation de la connexion…',\n connectionCancelled: 'Connexion annulée.',\n dnsProvider: 'Fournisseur DNS',\n providerHelp: 'Sélectionnez l’entreprise auprès de laquelle vous gérez les enregistrements DNS de ce domaine.',\n detectedProviderHelp: 'Domain0 a trouvé des fournisseurs possibles grâce aux informations DNS publiques. Confirmez l’entreprise auprès de laquelle vous gérez vos DNS.',\n chooseProvider: 'Choisir un fournisseur',\n suggestedFromDns: 'Suggéré par le DNS',\n allOtherProviders: 'Tous les autres fournisseurs',\n continueWithProvider: 'Continuer avec le fournisseur',\n savingProviderSelection: 'Enregistrement du fournisseur sélectionné…',\n preparingProviderSelection: 'Préparation de la sélection du fournisseur…',\n providerDetected: (provider: string) => `${provider} détecté.`,\n providerSelected: (provider: string) => `${provider} sélectionné.`,\n detectedFromNameservers: 'Détecté depuis les serveurs de noms',\n providerSelectedEyebrow: 'Fournisseur sélectionné',\n providerConnectHeading: (provider: string) => `Connectez votre domaine avec ${provider}`,\n hostApplication: 'Cette application',\n providerApprovalGuidance: (provider: string, application: string) =>\n `Vous approuvez l’accès dans ${provider}. ${application} ne voit jamais votre mot de passe fournisseur.`,\n preparingManualInstructions: 'Préparation des instructions guidées de configuration DNS manuelle…',\n manualSetupNotEntered: 'Le serveur n’a pas démarré la configuration manuelle guidée',\n noProviderDetected: 'Aucun fournisseur n’a été identifié automatiquement. Choisissez votre fournisseur DNS ci-dessous.',\n possibleProviderFound: '1 fournisseur DNS possible a été trouvé. Confirmez votre fournisseur ci-dessous.',\n possibleProvidersFound: (count: string) => `${count} fournisseurs DNS possibles ont été trouvés. Confirmez votre fournisseur ci-dessous.`,\n supportAutomatic: 'automatique',\n supportDomainConnect: 'Domain Connect',\n supportManual: 'manuel guidé',\n supportUnverified: 'pas encore vérifié',\n supportAutomaticDescription: 'Son adaptateur automatique est vérifié ; la configuration manuelle guidée reste également disponible.',\n supportDomainConnectDescription: 'Son parcours Domain Connect est vérifié ; la configuration manuelle guidée reste également disponible.',\n supportManualDescription: 'Son parcours manuel guidé est vérifié.',\n supportUnverifiedDescription: 'L’automatisation propre au fournisseur n’est pas vérifiée ; la configuration manuelle guidée reste disponible.',\n recordSummary: (type: string, host: string, value: string, ttl: string, priority: string) => `${type} ${host} = ${value} ; TTL ${ttl}${priority}`,\n recordPriority: (priority: string) => ` ; priorité ${priority}`,\n errorPrefix: (message: string) => `Erreur : ${message}`,\n unknownError: 'Erreur inconnue',\n transportError: 'Domain0 est inaccessible. Vérifiez votre connexion et réessayez.',\n protocolError: 'Domain0 a renvoyé une réponse non valide. Réessayez ou contactez l’exploitant de l’application.',\n apiErrorInvalidRequest: 'La demande n’est pas valide.',\n apiErrorUnauthorized: 'L’authentification a échoué. Rouvrez le parcours de connexion et réessayez.',\n apiErrorForbidden: 'Vous n’êtes pas autorisé à effectuer cette opération.',\n apiErrorNotFound: 'La ressource de connexion demandée est introuvable ou a expiré.',\n apiErrorConflict: 'La connexion a changé avant la fin de cette opération. Actualisez et réessayez.',\n apiErrorRateLimited: 'Trop de demandes ont été effectuées. Patientez un instant et réessayez.',\n apiErrorDnsUnavailable: 'Le DNS faisant autorité est temporairement indisponible. Réessayez.',\n apiErrorProviderUnavailable: 'Le fournisseur DNS est temporairement indisponible. Réessayez.',\n apiErrorProviderAuthorizationFailed: 'L’autorisation du fournisseur DNS a échoué ou a expiré.',\n apiErrorProviderLimitation: 'Le fournisseur sélectionné ne peut pas effectuer cette opération automatiquement.',\n apiErrorPlanExpired: 'Le plan de modification DNS a expiré. Préparez et vérifiez un nouveau plan.',\n apiErrorPropagationPending: 'Les modifications DNS n’ont pas encore atteint tous les serveurs de noms faisant autorité.',\n apiErrorInternal: 'Domain0 a rencontré une erreur inattendue. Réessayez.',\n loadingFlow: 'Chargement du parcours de connexion des domaines…',\n flowNotReady: 'Les connexions de domaine sont toujours en préparation. Rouvrez ce parcours pour réessayer.',\n flowStep: (index: string, domain: string) => `${index}. ${domain}`,\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — connecté`,\n allDomainsConnected: (count: string) => `Les ${count} domaines sont connectés.`,\n domainProgress: (index: string, total: string, domain: string) => `Domaine ${index} sur ${total} : ${domain}`,\n connectionStateRequested: 'demandée',\n connectionStateDetectingProvider: 'en cours de détection du fournisseur',\n connectionStateProviderSelected: 'avec le fournisseur sélectionné',\n connectionStateDomainConnectPending: 'en attente de Domain Connect',\n connectionStateAuthorizationPending: 'en attente d’autorisation',\n connectionStateAuthorized: 'autorisée',\n connectionStatePlanning: 'en cours de planification',\n connectionStateAwaitingConfirmation: 'en attente de confirmation',\n connectionStateApplying: 'en cours d’application',\n connectionStatePropagationPending: 'en attente de propagation',\n connectionStateActive: 'active',\n connectionStateManualRequired: 'nécessite une configuration manuelle',\n connectionStateFailedRetryable: 'en échec temporaire',\n connectionStateFailedTerminal: 'en échec',\n connectionStateCancelled: 'annulée',\n} satisfies Domain0Messages\n","import type { Domain0Messages } from '../localization'\n\nexport const brazilianPortugueseMessages = {\n triggerConnectDomain: 'Conectar domínio',\n headingConnectDomain: 'Conecte seu domínio',\n headingConnectDomains: 'Conecte seus domínios',\n initialSubtitle: 'Escolha seu provedor de DNS. O Domain0 mostrará o caminho de conexão verificado disponível.',\n cancelConnection: 'Cancelar conexão',\n close: 'Fechar',\n loadingConnection: 'Carregando detalhes da conexão…',\n detectingProvider: 'Detectando seu provedor de DNS…',\n checkingDomain: (domain: string) => `Verificando ${domain}`,\n nameserverDetectionGuidance: 'Consultando os servidores de nomes para identificar quem gerencia o DNS deste domínio.',\n resolvingNameservers: 'Resolvendo servidores de nomes',\n detectionUnavailable: 'A detecção automática do provedor está temporariamente indisponível. Escolha seu provedor de DNS abaixo.',\n connectionStatus: (state: string) => `Status da conexão: ${state}.`,\n manualInstructionsReady: 'As instruções guiadas de DNS manual estão prontas.',\n forcedManualBlocked: 'Esta conexão já entrou em um fluxo automático do provedor. O modo manual forçado não pode retomá-lo nem avançá-lo. Cancele esta conexão e crie uma nova conexão manual.',\n forcedManualIncompatible: 'A conexão existente é incompatível com a configuração manual forçada',\n missingConfirmationPlan: 'O servidor retornou um estado de confirmação sem um plano de alterações',\n missingApplyingPlan: 'O servidor retornou um estado de aplicação sem um plano confirmado',\n missingFailureDetails: 'O servidor retornou um estado que permite nova tentativa sem detalhes da falha',\n successDescription: (domain: string) => `${domain} está conectado e seus registros obrigatórios foram propagados.`,\n connectedHeading: (domain: string) => `${domain} está conectado`,\n verifiedEveryNameserver: 'Verificado em todos os servidores de nomes',\n successRecordsUntouched: 'Estes registros estão ativos. Nada mais no domínio foi alterado.',\n backToApplication: (application: string) => `Voltar para ${application}`,\n dkimHeading: 'Proteja os e-mails enviados com DKIM',\n dkimCheckingProvider: 'Verificando registros MX públicos e registros DNS DKIM dos seletores específicos…',\n dkimGuidanceUnavailable: 'A detecção do provedor de e-mail está temporariamente indisponível. Nenhuma alteração de DNS foi feita.',\n dkimDomainMismatch: 'O servidor retornou orientações de DKIM para outro domínio',\n dkimProviderDetected: (provider: string) => `${provider} foi detectado pelos registros MX públicos.`,\n dkimProviderAmbiguous: 'Os registros MX apontam para mais de um provedor de e-mail compatível. Revise o roteamento de e-mail antes de alterar o DKIM.',\n dkimProviderUnknown: 'O Domain0 não identificou Google Workspace, Microsoft 365 ou Zoho Mail nos registros MX públicos.',\n dkimRecordObserved: (selectors: string) => `Um registro DNS DKIM foi observado para os seletores verificados: ${selectors}.`,\n dkimNoRecordObserved: (selectors: string) => `Nenhum registro DNS DKIM foi observado para os seletores verificados: ${selectors}. Isso não prova que o DKIM esteja desativado.`,\n dkimNotChecked: 'Este provedor usa um seletor DKIM definido pela conta, portanto nenhum registro de seletor foi verificado automaticamente.',\n dkimLookupUnavailable: 'A verificação do DNS DKIM específica do seletor ficou temporariamente indisponível.',\n dkimEvidenceBoundary: 'Um registro DNS publicado não prova que os e-mails enviados estejam sendo assinados. Verifique o status final do DKIM na administração do provedor de e-mail.',\n dkimOpenGuide: (provider: string) => `Abrir o guia oficial de configuração do DKIM do ${provider}`,\n cancelledDescription: (domain: string) => `A conexão de ${domain} foi cancelada. Nenhuma outra alteração de DNS será aplicada.`,\n selectedProvider: (provider: string, support: string) => `${provider} selecionado. ${support}`,\n connectAnotherWay: 'Conectar de outra forma',\n currentState: (state: string) => `Esta conexão está ${state}. Atualize para carregar o estado mais recente.`,\n refreshConnection: 'Atualizar conexão',\n domainConnectHeading: 'Conectar pelo Domain Connect',\n domainConnectGuidance: 'Seu provedor de DNS mostrará o modelo de serviço exato e solicitará seu consentimento antes de aplicá-lo.',\n domainConnectResumeUnavailable: 'Este aplicativo host deve fornecer o mesmo modelo de serviço do Domain Connect para retomar esta transferência.',\n domainConnectUnavailable: 'Este aplicativo host não configurou seu modelo de serviço do Domain Connect. A configuração manual guiada continua disponível.',\n continueSecurely: (provider: string) => `Continuar com segurança com ${provider}`,\n continueSecurelyNewTab: (provider: string) => `Continuar com segurança com ${provider} em uma nova aba`,\n completedDomainConnect: 'Concluí o Domain Connect',\n preparingAuthoritativeVerification: 'Preparando a verificação do DNS autoritativo…',\n readyToVerifyPropagation: 'Pronto para verificar a propagação do DNS.',\n resumeDomainConnect: (provider: string) => `Retomar o Domain Connect com ${provider}`,\n connectWithProvider: (provider: string) => `Conectar com ${provider}`,\n checkingDomainConnectTemplate: 'Verificando se seu provedor de DNS aceita este modelo de serviço exato…',\n domainConnectReady: 'O Domain Connect está pronto. Continue com seu provedor de DNS em uma nova aba.',\n followProviderGuide: (provider: string) => `Seguir o guia passo a passo do ${provider}`,\n openApplicationManualSetupGuide: 'Abrir o guia passo a passo de DNS deste aplicativo',\n requestManualSetupHelp: 'Obter ajuda passo a passo para o DNS',\n openProviderReference: (provider: string) => `Guia de DNS da ${provider}`,\n opensInNewTab: (label: string) => `${label} em uma nova aba`,\n sharedFlowHeading: 'Peça a outra pessoa para concluir a configuração',\n sharedFlowGuidance: 'Copie um link com prazo limitado para uma pessoa de confiança que possa atualizar este domínio. O link concede acesso somente a esta conexão.',\n copySecureSetupLink: 'Copiar link seguro de configuração',\n creatingSecureSetupLink: 'Criando link seguro de configuração…',\n secureSetupLinkCopied: 'Link seguro de configuração copiado.',\n copySetupLinkAgain: 'Copiar o link de configuração novamente',\n expiredSharedFlow: 'O host retornou um convite de fluxo compartilhado expirado',\n clipboardUnavailable: 'O acesso à área de transferência está indisponível; configure sharedFlowGateway.copy',\n oauthHeading: 'Autorize com segurança no provedor',\n oauthGuidance: 'O Domain0 usa OAuth com PKCE. Sua senha do provedor nunca é compartilhada com o Domain0.',\n continueToProvider: (provider: string) => `Continuar para ${provider}`,\n authorizationExpires: 'Este link de autorização expira em {DATE}.',\n completedAuthorization: 'Concluí a autorização',\n resumeAuthorization: (provider: string) => `Retomar a autorização com ${provider}`,\n authorizeWithProvider: (provider: string) => `Continuar com ${provider}`,\n authorizeProviderCredentials: (provider: string) => `Autorizar ${provider}`,\n preparingAuthorizationLink: 'Preparando um link seguro de autorização do provedor…',\n authorizationLinkReady: 'O link de autorização está pronto. Continue com o provedor em uma nova aba.',\n credentialGuidance: 'Use uma credencial do provedor com o menor escopo possível. O Domain0 a criptografa no servidor e nunca a devolve ao navegador.',\n credentialHeadingApiToken: 'Autorizar com um token de API',\n credentialHeadingAccessKey: 'Autorizar com chaves de API',\n credentialHeadingUsernamePassword: 'Autorizar com credenciais do provedor',\n credentialHeadingAccountToken: 'Autorizar com um token de conta',\n credentialHeadingUsernameToken: 'Autorizar com um token de usuário',\n credentialHeadingOvh: 'Autorizar com credenciais da API OVH',\n credentialHeadingPrivateKey: 'Autorizar com uma chave privada',\n credentialHeadingAwsSession: 'Autorizar com uma sessão temporária da AWS',\n credentialHeadingCpanel: 'Autorizar com um token de API do cPanel',\n credentialHeadingClientCredentials: 'Autorizar com credenciais da OpenSRS Storefront',\n fieldApiToken: 'Token de API',\n fieldAccessKeyId: 'ID da chave de acesso',\n fieldApiSecret: 'Segredo da API',\n fieldUsername: 'Nome de usuário',\n fieldPassword: 'Senha',\n fieldAccountId: 'ID da conta',\n fieldOvhRegion: 'Região da API OVH',\n fieldApplicationKey: 'Chave do aplicativo',\n fieldApplicationSecret: 'Segredo do aplicativo',\n fieldConsumerKey: 'Chave do consumidor',\n fieldProviderLogin: 'Login do provedor',\n fieldPemPrivateKey: 'Chave privada PEM',\n fieldAwsAccessKeyId: 'ID da chave de acesso da AWS',\n fieldAwsSecretAccessKey: 'Chave de acesso secreta da AWS',\n fieldAwsSessionToken: 'Token de sessão da AWS',\n fieldRoute53ZoneId: 'ID da zona hospedada do Route 53',\n fieldSessionExpiration: 'Expiração da sessão',\n fieldCpanelEndpoint: 'Endpoint HTTPS do cPanel',\n fieldCpanelUsername: 'Nome de usuário do cPanel',\n fieldCpanelApiToken: 'Token de API do cPanel',\n fieldStorefrontClientId: 'ID do cliente da Storefront',\n fieldStorefrontClientSecret: 'Segredo do cliente da Storefront',\n regionOvhEurope: 'OVH Europa',\n regionOvhUnitedStates: 'OVH Estados Unidos',\n regionOvhCanada: 'OVH Canadá',\n regionKimsufiEurope: 'Kimsufi Europa',\n regionKimsufiCanada: 'Kimsufi Canadá',\n regionSoYouStartEurope: 'So You Start Europa',\n regionSoYouStartCanada: 'So You Start Canadá',\n authorizeApiToken: 'Autorizar token de API',\n encryptingAuthorization: 'Criptografando e validando a autorização do provedor…',\n authorizationCompleted: 'Autorização do provedor concluída.',\n existingRecordPolicy: 'Política para registros DNS existentes',\n existingRecordPolicyHelp: 'Preservar é a opção mais segura. Políticas de substituição podem propor alterações destrutivas que exigem confirmação separada.',\n preserveExistingRecords: 'Preservar registros existentes',\n replaceSameNameAndType: 'Substituir registros com o mesmo host e tipo',\n replaceAllAtName: 'Substituir todos os registros conflitantes no host',\n replaceSpf: 'Substituir uma política SPF existente em vez de combiná-la',\n replaceSpfHelp: 'A combinação é o padrão seguro. A substituição remove os mecanismos SPF atuais do provedor e sempre exige confirmação da alteração destrutiva.',\n readingRecords: 'Lendo os registros atuais do provedor e preparando um plano de alterações…',\n recordsAlreadyExist: 'Os registros DNS obrigatórios já existem. Pronto para verificar a propagação.',\n reviewChanges: 'Revise as alterações de DNS propostas antes de confirmar.',\n reviewDnsChanges: 'Revisar alterações de DNS',\n recalculateChangePlan: 'Recalcular plano de alterações',\n proposedChangesRegion: 'Alterações de DNS propostas',\n proposedChangesCaption: (domain: string) => `Alterações de DNS propostas para ${domain}`,\n columnAction: 'Ação',\n columnCurrentRecord: 'Registro atual',\n columnResultingRecord: 'Registro resultante',\n columnRisk: 'Risco',\n changeCreate: 'Criar',\n changeUpdate: 'Atualizar',\n changeDelete: 'Excluir',\n destructive: 'Destrutiva',\n nonDestructive: 'Não destrutiva',\n planWarnings: 'Avisos do plano',\n planWarningSpfPolicyReplaced: 'A política SPF existente será substituída pela política SPF solicitada.',\n planWarningSpfPolicyMerged: 'A política SPF existente foi combinada com o registro SPF solicitado.',\n planExpires: 'Este plano expira em {DATE}.',\n destructiveAcknowledgement: 'Entendo que os registros DNS existentes marcados serão substituídos ou excluídos.',\n confirmChangePlan: 'Confirmar plano de alterações',\n confirmingChangePlan: 'Confirmando este plano de alterações exato…',\n planConfirmed: 'Plano confirmado. As alterações de DNS ainda não foram aplicadas.',\n applyDnsChanges: 'Aplicar alterações de DNS',\n applyingDnsChanges: 'Aplicando as alterações de DNS confirmadas…',\n applyingVerifiedChanges: 'Aplicando alterações verificadas',\n connectingDomain: (domain: string) => `Conectando ${domain}`,\n applyingProgressGuidance: 'O Domain0 está atualizando apenas os registros DNS solicitados. Você pode deixar esta janela aberta.',\n waitingForProvider: 'Aguardando o provedor',\n dnsChangesApplied: 'As alterações de DNS foram aplicadas. Pronto para verificar a propagação autoritativa.',\n detectionReasonNoStablePublicProviderIdentity: 'Este provedor não publica uma identidade pública estável que o Domain0 possa detectar com segurança pelo DNS.',\n manualGuidance: 'Use a configuração manual guiada para adicionar os registros DNS obrigatórios exatos sem compartilhar credenciais do provedor.',\n manualSetupLabel: 'Configuração manual',\n manualSetupUnavailableHeading: 'Configuração manual indisponível',\n manualSetupUnavailableDescription: 'A configuração manual de DNS foi desativada por este aplicativo. Use outro caminho verificado disponível ou cancele ou feche esta conexão.',\n showDnsRecords: 'Mostrar registros DNS',\n preparingDnsInstructions: 'Preparando instruções de DNS…',\n dnsInstructionsReady: 'As instruções de DNS estão prontas.',\n addResolvedRecords: 'Adicione estes registros resolvidos no seu provedor de DNS e continue.',\n authoritativeRecordGuidance: 'Estes são os registros que o Domain0 verifica diretamente em cada servidor de nomes autoritativo.',\n dnsRecordsRegion: 'Registros DNS',\n dnsRecordsCaption: (domain: string) => `Registros DNS de ${domain}`,\n thisDomain: 'este domínio',\n columnType: 'Tipo',\n columnHost: 'Host',\n columnValue: 'Valor',\n columnTtl: 'TTL',\n columnPriority: 'Prioridade',\n columnRequirement: 'Obrigatoriedade',\n optional: 'Opcional',\n required: 'Obrigatório',\n noRecordChanges: 'A política de DNS existente atende a esta solicitação. Nenhuma alteração de registro DNS é necessária.',\n addedRecords: 'Adicionei estes registros',\n continue: 'Continuar',\n savingConfirmation: 'Salvando sua confirmação…',\n verifyDnsRecords: 'Verificar registros DNS',\n finishConnection: 'Concluir conexão',\n checkingNameservers: 'Verificando servidores de nomes autoritativos…',\n requiredRecordsActive: 'Os registros DNS obrigatórios estão ativos.',\n propagationPending: 'As alterações de DNS ainda não chegaram a todos os servidores de nomes autoritativos. Você pode verificar novamente.',\n providerFailureHeading: 'A operação do provedor precisa de atenção',\n needsAttention: 'Requer atenção',\n connectionNeedsAttention: (domain: string) => `${domain} requer atenção`,\n snapshotTimeout: 'O Domain0 excedeu o tempo limite ao ler os registros DNS do provedor. Nenhuma alteração de DNS foi feita. Uma nova tentativa restaura a etapa de revisão anterior para que você solicite um novo instantâneo.',\n applyTimeout: 'O provedor não confirmou a atualização do DNS antes do prazo, então o resultado é ambíguo. Uma nova tentativa restaura a etapa de aplicação confirmada; o Domain0 reconcilia os registros atuais do provedor antes de outra gravação.',\n timeoutRecorded: 'O tempo limite foi registrado em {DATE}.',\n retryConnection: 'Tentar conexão novamente',\n restoringConnection: 'Restaurando a conexão para o estado anterior à falha…',\n connectionRestored: (state: string) => `Conexão restaurada para ${state}. Continue quando estiver pronto.`,\n cancelHeading: 'Cancelar esta conexão?',\n cancelGuidance: 'O cancelamento interrompe este fluxo do Domain0. Ele não remove registros DNS que já foram aplicados.',\n keepConnection: 'Manter conexão',\n confirmCancellation: 'Confirmar cancelamento',\n cancellingConnection: 'Cancelando conexão…',\n connectionCancelled: 'Conexão cancelada.',\n dnsProvider: 'Provedor de DNS',\n providerHelp: 'Selecione a empresa onde você gerencia os registros DNS deste domínio.',\n detectedProviderHelp: 'O Domain0 encontrou possíveis provedores usando informações públicas do DNS. Confirme a empresa onde você gerencia os registros DNS.',\n chooseProvider: 'Escolher um provedor',\n suggestedFromDns: 'Sugerido pelo DNS',\n allOtherProviders: 'Todos os outros provedores',\n continueWithProvider: 'Continuar com o provedor',\n savingProviderSelection: 'Salvando a seleção do provedor…',\n preparingProviderSelection: 'Preparando a seleção do provedor…',\n providerDetected: (provider: string) => `${provider} detectado.`,\n providerSelected: (provider: string) => `${provider} selecionado.`,\n detectedFromNameservers: 'Detectado pelos servidores de nomes',\n providerSelectedEyebrow: 'Provedor selecionado',\n providerConnectHeading: (provider: string) => `Conecte seu domínio com ${provider}`,\n hostApplication: 'Este aplicativo',\n providerApprovalGuidance: (provider: string, application: string) =>\n `Você aprova o acesso dentro da ${provider}. ${application} nunca vê sua senha do provedor.`,\n preparingManualInstructions: 'Preparando instruções guiadas para a configuração manual de DNS…',\n manualSetupNotEntered: 'O servidor não entrou na configuração manual guiada',\n noProviderDetected: 'Nenhum provedor foi identificado automaticamente. Escolha seu provedor de DNS abaixo.',\n possibleProviderFound: 'Foi encontrado 1 possível provedor de DNS. Confirme seu provedor abaixo.',\n possibleProvidersFound: (count: string) => `Foram encontrados ${count} possíveis provedores de DNS. Confirme seu provedor abaixo.`,\n supportAutomatic: 'automático',\n supportDomainConnect: 'Domain Connect',\n supportManual: 'manual guiado',\n supportUnverified: 'ainda não verificado',\n supportAutomaticDescription: 'O adaptador automático está verificado; a configuração manual guiada também está disponível.',\n supportDomainConnectDescription: 'O caminho do Domain Connect está verificado; a configuração manual guiada também está disponível.',\n supportManualDescription: 'O caminho manual guiado está verificado.',\n supportUnverifiedDescription: 'A automação específica do provedor não está verificada; a configuração manual guiada continua disponível.',\n recordSummary: (type: string, host: string, value: string, ttl: string, priority: string) => `${type} ${host} = ${value}; TTL ${ttl}${priority}`,\n recordPriority: (priority: string) => `; prioridade ${priority}`,\n errorPrefix: (message: string) => `Erro: ${message}`,\n unknownError: 'Erro desconhecido',\n transportError: 'Não foi possível acessar o Domain0. Verifique sua conexão e tente novamente.',\n protocolError: 'O Domain0 retornou uma resposta inválida. Tente novamente ou entre em contato com o operador do aplicativo.',\n apiErrorInvalidRequest: 'A solicitação é inválida.',\n apiErrorUnauthorized: 'A autenticação falhou. Reabra o fluxo de conexão e tente novamente.',\n apiErrorForbidden: 'Você não tem permissão para realizar esta operação.',\n apiErrorNotFound: 'O recurso de conexão solicitado não foi encontrado ou expirou.',\n apiErrorConflict: 'A conexão mudou antes que esta operação fosse concluída. Atualize e tente novamente.',\n apiErrorRateLimited: 'Muitas solicitações foram feitas. Aguarde um pouco e tente novamente.',\n apiErrorDnsUnavailable: 'O DNS autoritativo está temporariamente indisponível. Tente novamente.',\n apiErrorProviderUnavailable: 'O provedor de DNS está temporariamente indisponível. Tente novamente.',\n apiErrorProviderAuthorizationFailed: 'A autorização do provedor de DNS falhou ou expirou.',\n apiErrorProviderLimitation: 'O provedor selecionado não pode concluir esta operação automaticamente.',\n apiErrorPlanExpired: 'O plano de alterações de DNS expirou. Prepare e revise um novo plano.',\n apiErrorPropagationPending: 'As alterações de DNS ainda não chegaram a todos os servidores de nomes autoritativos.',\n apiErrorInternal: 'O Domain0 encontrou um erro inesperado. Tente novamente.',\n loadingFlow: 'Carregando o fluxo de conexão de domínios…',\n flowNotReady: 'As conexões de domínio ainda estão sendo preparadas. Reabra este fluxo para tentar novamente.',\n flowStep: (index: string, domain: string) => `${index}. ${domain}`,\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — conectado`,\n allDomainsConnected: (count: string) => `Todos os ${count} domínios estão conectados.`,\n domainProgress: (index: string, total: string, domain: string) => `Domínio ${index} de ${total}: ${domain}`,\n connectionStateRequested: 'solicitada',\n connectionStateDetectingProvider: 'detectando o provedor',\n connectionStateProviderSelected: 'com o provedor selecionado',\n connectionStateDomainConnectPending: 'aguardando o Domain Connect',\n connectionStateAuthorizationPending: 'aguardando autorização',\n connectionStateAuthorized: 'autorizada',\n connectionStatePlanning: 'em planejamento',\n connectionStateAwaitingConfirmation: 'aguardando confirmação',\n connectionStateApplying: 'em aplicação',\n connectionStatePropagationPending: 'aguardando propagação',\n connectionStateActive: 'ativa',\n connectionStateManualRequired: 'exige configuração manual',\n connectionStateFailedRetryable: 'com falha temporária',\n connectionStateFailedTerminal: 'com falha',\n connectionStateCancelled: 'cancelada',\n} satisfies Domain0Messages\n","import type { Domain0Messages } from '../localization'\nimport { brazilianPortugueseMessages } from './pt-br'\n\nconst europeanPortugueseOverrides = {\n headingConnectDomain: 'Ligue o seu domínio',\n headingConnectDomains: 'Ligue os seus domínios',\n initialSubtitle: 'Escolha o seu fornecedor de DNS. O Domain0 mostrará o caminho de ligação verificado disponível.',\n loadingConnection: 'A carregar os detalhes da ligação…',\n detectingProvider: 'A detetar o seu fornecedor de DNS…',\n checkingDomain: (domain: string) => `A verificar ${domain}`,\n nameserverDetectionGuidance: 'A consultar os servidores de nomes para identificar quem gere o DNS deste domínio.',\n resolvingNameservers: 'A resolver servidores de nomes',\n detectionUnavailable: 'A deteção automática do fornecedor está temporariamente indisponível. Escolha abaixo o seu fornecedor de DNS.',\n connectionStatus: (state: string) => `Estado da ligação: ${state}.`,\n forcedManualBlocked: 'Esta ligação já entrou num fluxo automático do fornecedor. O modo manual forçado não o pode retomar nem avançar. Cancele esta ligação e crie uma nova ligação manual.',\n forcedManualIncompatible: 'A ligação existente é incompatível com a configuração manual forçada',\n successDescription: (domain: string) => `${domain} está ligado e os respetivos registos obrigatórios foram propagados.`,\n connectedHeading: (domain: string) => `${domain} está ligado`,\n verifiedEveryNameserver: 'Verificado em todos os servidores de nomes',\n successRecordsUntouched: 'Estes registos estão ativos. Nada mais no domínio foi alterado.',\n backToApplication: (application: string) => `Voltar a ${application}`,\n cancelledDescription: (domain: string) => `A ligação de ${domain} foi cancelada. Não serão aplicadas mais alterações de DNS.`,\n currentState: (state: string) => `Esta ligação encontra-se ${state}. Atualize para carregar o estado mais recente.`,\n refreshConnection: 'Atualizar ligação',\n continueSecurelyNewTab: (provider: string) => `Continuar em segurança com ${provider} num novo separador`,\n domainConnectReady: 'O Domain Connect está pronto. Continue com o seu fornecedor de DNS num novo separador.',\n opensInNewTab: (label: string) => `${label} num novo separador`,\n sharedFlowGuidance: 'Copie uma ligação com prazo limitado para uma pessoa de confiança que possa atualizar este domínio. A ligação concede acesso apenas a esta ligação de domínio.',\n copySecureSetupLink: 'Copiar ligação segura de configuração',\n creatingSecureSetupLink: 'A criar uma ligação segura de configuração…',\n secureSetupLinkCopied: 'Ligação segura de configuração copiada.',\n copySetupLinkAgain: 'Copiar novamente a ligação de configuração',\n authorizationExpires: 'Esta ligação de autorização expira em {DATE}.',\n preparingAuthorizationLink: 'A preparar uma ligação segura de autorização do fornecedor…',\n authorizationLinkReady: 'A ligação de autorização está pronta. Continue com o fornecedor num novo separador.',\n credentialGuidance: 'Utilize uma credencial do fornecedor com o âmbito mínimo. O Domain0 cifra-a no servidor e nunca a devolve ao navegador.',\n encryptingAuthorization: 'A cifrar e validar a autorização do fornecedor…',\n existingRecordPolicy: 'Política para registos DNS existentes',\n preserveExistingRecords: 'Preservar registos existentes',\n replaceSameNameAndType: 'Substituir registos com o mesmo anfitrião e tipo',\n replaceAllAtName: 'Substituir todos os registos em conflito no anfitrião',\n readingRecords: 'A ler os registos atuais do fornecedor e a preparar um plano de alterações…',\n recordsAlreadyExist: 'Os registos DNS obrigatórios já existem. Pronto para verificar a propagação.',\n reviewDnsChanges: 'Rever alterações de DNS',\n proposedChangesCaption: (domain: string) => `Alterações de DNS propostas para ${domain}`,\n columnCurrentRecord: 'Registo atual',\n columnResultingRecord: 'Registo resultante',\n changeDelete: 'Eliminar',\n planWarningSpfPolicyMerged: 'A política SPF existente foi combinada com o registo SPF solicitado.',\n destructiveAcknowledgement: 'Compreendo que os registos DNS existentes assinalados serão substituídos ou eliminados.',\n applyingDnsChanges: 'A aplicar as alterações de DNS confirmadas…',\n applyingVerifiedChanges: 'A aplicar alterações verificadas',\n connectingDomain: (domain: string) => `A ligar ${domain}`,\n applyingProgressGuidance: 'O Domain0 está a atualizar apenas os registos DNS solicitados. Pode deixar esta janela aberta.',\n waitingForProvider: 'A aguardar o fornecedor',\n manualGuidance: 'Utilize a configuração manual guiada para adicionar os registos DNS obrigatórios exatos sem partilhar credenciais do fornecedor.',\n showDnsRecords: 'Mostrar registos DNS',\n preparingDnsInstructions: 'A preparar instruções de DNS…',\n dnsInstructionsReady: 'As instruções de DNS estão prontas.',\n addResolvedRecords: 'Adicione estes registos resolvidos no seu fornecedor de DNS e continue.',\n authoritativeRecordGuidance: 'Estes são os registos que o Domain0 verifica diretamente em cada servidor de nomes autoritativo.',\n dnsRecordsRegion: 'Registos DNS',\n dnsRecordsCaption: (domain: string) => `Registos DNS de ${domain}`,\n noRecordChanges: 'A política de DNS existente satisfaz este pedido. Não é necessária nenhuma alteração de registo DNS.',\n addedRecords: 'Adicionei estes registos',\n verifyDnsRecords: 'Verificar registos DNS',\n checkingNameservers: 'A verificar os servidores de nomes autoritativos…',\n requiredRecordsActive: 'Os registos DNS obrigatórios estão ativos.',\n propagationPending: 'As alterações de DNS ainda não chegaram a todos os servidores de nomes autoritativos. Pode verificar novamente.',\n snapshotTimeout: 'O Domain0 excedeu o tempo limite ao ler os registos DNS do fornecedor. Não foi feita nenhuma alteração de DNS. Uma nova tentativa restaura a etapa de revisão anterior para que possa pedir um novo instantâneo.',\n needsAttention: 'Requer atenção',\n connectionNeedsAttention: (domain: string) => `${domain} requer atenção`,\n applyTimeout: 'O fornecedor não confirmou a atualização do DNS antes do prazo, pelo que o resultado é ambíguo. Uma nova tentativa restaura a etapa de aplicação confirmada; o Domain0 reconcilia os registos atuais do fornecedor antes de outra escrita.',\n restoringConnection: 'A restaurar a ligação para o estado anterior à falha…',\n connectionRestored: (state: string) => `Ligação restaurada para ${state}. Continue quando estiver pronto.`,\n cancelHeading: 'Cancelar esta ligação?',\n cancelGuidance: 'O cancelamento interrompe este fluxo do Domain0. Não remove registos DNS que já tenham sido aplicados.',\n keepConnection: 'Manter ligação',\n cancellingConnection: 'A cancelar a ligação…',\n connectionCancelled: 'Ligação cancelada.',\n dnsProvider: 'Fornecedor de DNS',\n providerHelp: 'Selecione a empresa onde gere os registos DNS deste domínio.',\n detectedProviderHelp: 'O Domain0 encontrou possíveis fornecedores através de informações públicas de DNS. Confirme a empresa onde gere os registos DNS.',\n chooseProvider: 'Escolher um fornecedor',\n allOtherProviders: 'Todos os outros fornecedores',\n continueWithProvider: 'Continuar com o fornecedor',\n savingProviderSelection: 'A guardar a seleção do fornecedor…',\n preparingProviderSelection: 'A preparar a seleção do fornecedor…',\n providerDetected: (provider: string) => `${provider} detetado.`,\n preparingManualInstructions: 'A preparar instruções guiadas para a configuração manual de DNS…',\n noProviderDetected: 'Nenhum fornecedor foi identificado automaticamente. Escolha abaixo o seu fornecedor de DNS.',\n possibleProviderFound: 'Foi encontrado 1 possível fornecedor de DNS. Confirme abaixo o seu fornecedor.',\n possibleProvidersFound: (count: string) => `Foram encontrados ${count} possíveis fornecedores de DNS. Confirme abaixo o seu fornecedor.`,\n supportAutomaticDescription: 'O adaptador automático está verificado; a configuração manual guiada também está disponível.',\n supportDomainConnectDescription: 'O caminho do Domain Connect está verificado; a configuração manual guiada também está disponível.',\n supportUnverifiedDescription: 'A automatização específica do fornecedor não está verificada; a configuração manual guiada continua disponível.',\n unknownError: 'Erro desconhecido',\n transportError: 'Não foi possível contactar o Domain0. Verifique a sua ligação e tente novamente.',\n protocolError: 'O Domain0 devolveu uma resposta inválida. Tente novamente ou contacte o operador da aplicação.',\n apiErrorInvalidRequest: 'O pedido é inválido.',\n apiErrorUnauthorized: 'A autenticação falhou. Reabra o fluxo de ligação e tente novamente.',\n apiErrorForbidden: 'Não tem permissão para realizar esta operação.',\n apiErrorNotFound: 'O recurso de ligação solicitado não foi encontrado ou expirou.',\n apiErrorConflict: 'A ligação mudou antes de esta operação terminar. Atualize e tente novamente.',\n apiErrorRateLimited: 'Foram feitos demasiados pedidos. Aguarde um pouco e tente novamente.',\n apiErrorProviderUnavailable: 'O fornecedor de DNS está temporariamente indisponível. Tente novamente.',\n apiErrorProviderAuthorizationFailed: 'A autorização do fornecedor de DNS falhou ou expirou.',\n apiErrorProviderLimitation: 'O fornecedor selecionado não pode concluir esta operação automaticamente.',\n apiErrorPropagationPending: 'As alterações de DNS ainda não chegaram a todos os servidores de nomes autoritativos.',\n loadingFlow: 'A carregar o fluxo de ligação de domínios…',\n flowNotReady: 'As ligações de domínio ainda estão a ser preparadas. Reabra este fluxo para tentar novamente.',\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — ligado`,\n allDomainsConnected: (count: string) => `Todos os ${count} domínios estão ligados.`,\n connectionStateRequested: 'solicitada',\n connectionStateDetectingProvider: 'a detetar o fornecedor',\n connectionStateProviderSelected: 'com o fornecedor selecionado',\n connectionStateAuthorizationPending: 'a aguardar autorização',\n connectionStateAuthorized: 'autorizada',\n connectionStatePlanning: 'em planeamento',\n connectionStateAwaitingConfirmation: 'a aguardar confirmação',\n connectionStateApplying: 'em aplicação',\n connectionStatePropagationPending: 'a aguardar propagação',\n connectionStateActive: 'ativa',\n connectionStateManualRequired: 'requer configuração manual',\n connectionStateFailedRetryable: 'com falha temporária',\n connectionStateFailedTerminal: 'com falha',\n connectionStateCancelled: 'cancelada',\n} satisfies Partial<Domain0Messages>\n\nexport const europeanPortugueseMessages = {\n ...brazilianPortugueseMessages,\n ...europeanPortugueseOverrides,\n} satisfies Domain0Messages\n","import type {\n ConnectionState,\n Domain0ErrorCode,\n Domain0Locale,\n PlanWarningCode,\n ProviderDetectionUnavailableReasonCode,\n} from '../contracts'\nimport { Domain0LocaleSchema } from '../contracts'\nimport { spanishMessages } from './locales/es'\nimport { frenchMessages } from './locales/fr'\nimport { brazilianPortugueseMessages } from './locales/pt-br'\nimport { europeanPortugueseMessages } from './locales/pt-pt'\n\nconst englishMessages = {\n triggerConnectDomain: 'Connect domain',\n headingConnectDomain: 'Connect your domain',\n headingConnectDomains: 'Connect your domains',\n initialSubtitle: 'Choose your DNS provider. Domain0 will show the verified connection path available for it.',\n cancelConnection: 'Cancel connection',\n close: 'Close',\n loadingConnection: 'Loading connection details…',\n detectingProvider: 'Detecting your DNS provider…',\n checkingDomain: (domain: string) => `Checking ${domain}`,\n nameserverDetectionGuidance: 'Reading the nameservers to find who runs this domain\\'s DNS.',\n resolvingNameservers: 'Resolving nameservers',\n detectionUnavailable: 'Automatic provider detection is temporarily unavailable. Choose your DNS provider below.',\n connectionStatus: (state: string) => `Connection status: ${state}.`,\n manualInstructionsReady: 'Guided manual DNS instructions are ready.',\n forcedManualBlocked: 'This connection already entered an automatic provider workflow. Forced manual mode will not resume or advance it. Cancel this connection and create a new manual connection.',\n forcedManualIncompatible: 'The existing connection is incompatible with forced manual setup',\n missingConfirmationPlan: 'The server returned a confirmation state without a change plan',\n missingApplyingPlan: 'The server returned an applying state without a confirmed plan',\n missingFailureDetails: 'The server returned a retryable state without failure details',\n successDescription: (domain: string) => `${domain} is connected and its required records have propagated.`,\n connectedHeading: (domain: string) => `${domain} is connected`,\n verifiedEveryNameserver: 'Verified on every nameserver',\n successRecordsUntouched: 'These records are live. Nothing else on the domain was touched.',\n backToApplication: (application: string) => `Back to ${application}`,\n dkimHeading: 'Secure outgoing email with DKIM',\n dkimCheckingProvider: 'Checking public MX and selector-specific DKIM DNS records…',\n dkimGuidanceUnavailable: 'Email-provider detection is temporarily unavailable. No DNS changes were made.',\n dkimDomainMismatch: 'The server returned DKIM guidance for a different domain',\n dkimProviderDetected: (provider: string) => `${provider} was detected from public MX records.`,\n dkimProviderAmbiguous: 'MX records point to more than one supported email provider. Review the mail routing before changing DKIM.',\n dkimProviderUnknown: 'Domain0 could not identify Google Workspace, Microsoft 365, or Zoho Mail from the public MX records.',\n dkimRecordObserved: (selectors: string) => `A DKIM DNS record was observed for the checked selector(s): ${selectors}.`,\n dkimNoRecordObserved: (selectors: string) => `No DKIM DNS record was observed for the checked selector(s): ${selectors}. This does not prove that DKIM is disabled.`,\n dkimNotChecked: 'This provider uses an account-defined DKIM selector, so no selector record was checked automatically.',\n dkimLookupUnavailable: 'The selector-specific DKIM DNS check was temporarily unavailable.',\n dkimEvidenceBoundary: 'A published DNS record does not prove that outgoing mail is being signed. Verify the final DKIM status in the email provider admin.',\n dkimOpenGuide: (provider: string) => `Open the official ${provider} DKIM setup guide`,\n cancelledDescription: (domain: string) => `The connection for ${domain} was cancelled. No further DNS changes will be applied.`,\n selectedProvider: (provider: string, support: string) => `${provider} selected. ${support}`,\n connectAnotherWay: 'Connect another way',\n currentState: (state: string) => `This connection is currently ${state}. Refresh to load its latest state.`,\n refreshConnection: 'Refresh connection',\n domainConnectHeading: 'Connect through Domain Connect',\n domainConnectGuidance: 'Your DNS provider will show the exact service template and ask for consent before applying it.',\n domainConnectResumeUnavailable: 'This host application must provide the same Domain Connect service template to resume this handoff.',\n domainConnectUnavailable: 'This host application has not configured its Domain Connect service template. Guided manual setup remains available.',\n continueSecurely: (provider: string) => `Continue securely with ${provider}`,\n continueSecurelyNewTab: (provider: string) => `Continue securely with ${provider} in a new tab`,\n completedDomainConnect: 'I completed Domain Connect',\n preparingAuthoritativeVerification: 'Preparing authoritative DNS verification…',\n readyToVerifyPropagation: 'Ready to verify DNS propagation.',\n resumeDomainConnect: (provider: string) => `Resume Domain Connect with ${provider}`,\n connectWithProvider: (provider: string) => `Connect with ${provider}`,\n checkingDomainConnectTemplate: 'Checking that your DNS provider supports this exact service template…',\n domainConnectReady: 'Domain Connect is ready. Continue with your DNS provider in a new tab.',\n followProviderGuide: (provider: string) => `Follow the ${provider} step-by-step guide`,\n openApplicationManualSetupGuide: 'Open this application\\'s step-by-step DNS guide',\n requestManualSetupHelp: 'Get step-by-step DNS help',\n openProviderReference: (provider: string) => `${provider} DNS guide`,\n opensInNewTab: (label: string) => `${label} in a new tab`,\n sharedFlowHeading: 'Ask someone else to finish setup',\n sharedFlowGuidance: 'Copy a time-limited link for a trusted person who can update this domain. The link grants access only to this connection.',\n copySecureSetupLink: 'Copy secure setup link',\n creatingSecureSetupLink: 'Creating a secure setup link…',\n secureSetupLinkCopied: 'Secure setup link copied.',\n copySetupLinkAgain: 'Copy setup link again',\n expiredSharedFlow: 'The host returned an expired shared-flow invitation',\n clipboardUnavailable: 'Clipboard access is unavailable; configure sharedFlowGateway.copy',\n oauthHeading: 'Authorize securely with the provider',\n oauthGuidance: 'Domain0 uses OAuth with PKCE. Your provider password is never shared with Domain0.',\n continueToProvider: (provider: string) => `Continue to ${provider}`,\n authorizationExpires: 'This authorization link expires at {DATE}.',\n completedAuthorization: 'I completed authorization',\n resumeAuthorization: (provider: string) => `Resume authorization with ${provider}`,\n authorizeWithProvider: (provider: string) => `Continue with ${provider}`,\n authorizeProviderCredentials: (provider: string) => `Authorize ${provider}`,\n preparingAuthorizationLink: 'Preparing a secure provider authorization link…',\n authorizationLinkReady: 'Authorization link ready. Continue with the provider in a new tab.',\n credentialGuidance: 'Use a minimally scoped provider credential. Domain0 encrypts it server-side and never returns it to the browser.',\n credentialHeadingApiToken: 'Authorize with an API token',\n credentialHeadingAccessKey: 'Authorize with API keys',\n credentialHeadingUsernamePassword: 'Authorize with provider credentials',\n credentialHeadingAccountToken: 'Authorize with an account token',\n credentialHeadingUsernameToken: 'Authorize with a user token',\n credentialHeadingOvh: 'Authorize with OVH API credentials',\n credentialHeadingPrivateKey: 'Authorize with a private key',\n credentialHeadingAwsSession: 'Authorize with a temporary AWS session',\n credentialHeadingCpanel: 'Authorize with a cPanel API token',\n credentialHeadingClientCredentials: 'Authorize with OpenSRS Storefront credentials',\n fieldApiToken: 'API token',\n fieldAccessKeyId: 'Access key ID',\n fieldApiSecret: 'API secret',\n fieldUsername: 'Username',\n fieldPassword: 'Password',\n fieldAccountId: 'Account ID',\n fieldOvhRegion: 'OVH API region',\n fieldApplicationKey: 'Application key',\n fieldApplicationSecret: 'Application secret',\n fieldConsumerKey: 'Consumer key',\n fieldProviderLogin: 'Provider login',\n fieldPemPrivateKey: 'PEM private key',\n fieldAwsAccessKeyId: 'AWS access key ID',\n fieldAwsSecretAccessKey: 'AWS secret access key',\n fieldAwsSessionToken: 'AWS session token',\n fieldRoute53ZoneId: 'Route 53 hosted zone ID',\n fieldSessionExpiration: 'Session expiration',\n fieldCpanelEndpoint: 'cPanel HTTPS endpoint',\n fieldCpanelUsername: 'cPanel username',\n fieldCpanelApiToken: 'cPanel API token',\n fieldStorefrontClientId: 'Storefront client ID',\n fieldStorefrontClientSecret: 'Storefront client secret',\n regionOvhEurope: 'OVH Europe',\n regionOvhUnitedStates: 'OVH United States',\n regionOvhCanada: 'OVH Canada',\n regionKimsufiEurope: 'Kimsufi Europe',\n regionKimsufiCanada: 'Kimsufi Canada',\n regionSoYouStartEurope: 'So You Start Europe',\n regionSoYouStartCanada: 'So You Start Canada',\n authorizeApiToken: 'Authorize API token',\n encryptingAuthorization: 'Encrypting and validating provider authorization…',\n authorizationCompleted: 'Provider authorization completed.',\n existingRecordPolicy: 'Existing DNS record policy',\n existingRecordPolicyHelp: 'Preserve is safest. Replacement policies may propose destructive changes that require separate confirmation.',\n preserveExistingRecords: 'Preserve existing records',\n replaceSameNameAndType: 'Replace records with the same host and type',\n replaceAllAtName: 'Replace all conflicting records at the host',\n replaceSpf: 'Replace an existing SPF policy instead of merging it',\n replaceSpfHelp: 'Merging is the safe default. Replacement removes the provider\\'s current SPF mechanisms and always requires destructive-change confirmation.',\n readingRecords: 'Reading current provider records and preparing a change plan…',\n recordsAlreadyExist: 'The required DNS records already exist. Ready to verify propagation.',\n reviewChanges: 'Review the proposed DNS changes before confirmation.',\n reviewDnsChanges: 'Review DNS changes',\n recalculateChangePlan: 'Recalculate change plan',\n proposedChangesRegion: 'Proposed DNS changes',\n proposedChangesCaption: (domain: string) => `Proposed DNS changes for ${domain}`,\n columnAction: 'Action',\n columnCurrentRecord: 'Current record',\n columnResultingRecord: 'Resulting record',\n columnRisk: 'Risk',\n changeCreate: 'Create',\n changeUpdate: 'Update',\n changeDelete: 'Delete',\n destructive: 'Destructive',\n nonDestructive: 'Non-destructive',\n planWarnings: 'Plan warnings',\n planWarningSpfPolicyReplaced: 'The existing SPF policy will be replaced by the requested SPF policy.',\n planWarningSpfPolicyMerged: 'The existing SPF policy was merged into the requested SPF record.',\n planExpires: 'This plan expires at {DATE}.',\n destructiveAcknowledgement: 'I understand that the marked existing DNS records will be replaced or deleted.',\n confirmChangePlan: 'Confirm change plan',\n confirmingChangePlan: 'Confirming this exact change plan…',\n planConfirmed: 'Plan confirmed. DNS changes have not been applied yet.',\n applyDnsChanges: 'Apply DNS changes',\n applyingDnsChanges: 'Applying the confirmed DNS changes…',\n applyingVerifiedChanges: 'Applying verified changes',\n connectingDomain: (domain: string) => `Connecting ${domain}`,\n applyingProgressGuidance: 'Domain0 is updating only the requested DNS records. You can safely leave this open.',\n waitingForProvider: 'Waiting for provider',\n dnsChangesApplied: 'DNS changes were applied. Ready to verify authoritative propagation.',\n detectionReasonNoStablePublicProviderIdentity: 'This provider does not publish a stable public identity that Domain0 can safely detect from DNS.',\n manualGuidance: 'Use guided manual setup to add the exact required DNS records without sharing provider credentials.',\n manualSetupLabel: 'Manual setup',\n manualSetupUnavailableHeading: 'Manual setup unavailable',\n manualSetupUnavailableDescription: 'Manual DNS setup is disabled by this application. Use another available verified path, or cancel or close this connection.',\n showDnsRecords: 'Show DNS records',\n preparingDnsInstructions: 'Preparing DNS instructions…',\n dnsInstructionsReady: 'DNS instructions are ready.',\n addResolvedRecords: 'Add these resolved records in your DNS provider, then continue.',\n authoritativeRecordGuidance: 'These are the records Domain0 checks directly on every authoritative nameserver.',\n dnsRecordsRegion: 'DNS records',\n dnsRecordsCaption: (domain: string) => `DNS records for ${domain}`,\n thisDomain: 'this domain',\n columnType: 'Type',\n columnHost: 'Host',\n columnValue: 'Value',\n columnTtl: 'TTL',\n columnPriority: 'Priority',\n columnRequirement: 'Requirement',\n optional: 'Optional',\n required: 'Required',\n noRecordChanges: 'The existing DNS policy satisfies this request. No DNS record changes are required.',\n addedRecords: 'I added these records',\n continue: 'Continue',\n savingConfirmation: 'Saving your confirmation…',\n verifyDnsRecords: 'Verify DNS records',\n finishConnection: 'Finish connection',\n checkingNameservers: 'Checking authoritative nameservers…',\n requiredRecordsActive: 'Required DNS records are active.',\n propagationPending: 'DNS changes have not reached every authoritative nameserver yet. You can check again.',\n providerFailureHeading: 'Provider operation needs attention',\n needsAttention: 'Needs attention',\n connectionNeedsAttention: (domain: string) => `${domain} needs attention`,\n snapshotTimeout: 'Domain0 timed out while reading provider DNS records. No DNS changes were made. Retry restores the prior review step so you can request a fresh snapshot.',\n applyTimeout: 'The provider did not confirm the DNS update before the deadline, so the outcome is ambiguous. Retry restores the confirmed application step; Domain0 reconciles current provider records before another write.',\n timeoutRecorded: 'The timeout was recorded at {DATE}.',\n retryConnection: 'Retry connection',\n restoringConnection: 'Restoring the connection to its pre-failure state…',\n connectionRestored: (state: string) => `Connection restored to ${state}. Continue when ready.`,\n cancelHeading: 'Cancel this connection?',\n cancelGuidance: 'Cancellation stops this Domain0 workflow. It does not remove DNS records that were already applied.',\n keepConnection: 'Keep connection',\n confirmCancellation: 'Confirm cancellation',\n cancellingConnection: 'Cancelling connection…',\n connectionCancelled: 'Connection cancelled.',\n dnsProvider: 'DNS provider',\n providerHelp: 'Select the company where you manage DNS records for this domain.',\n detectedProviderHelp: 'Domain0 found possible providers from public DNS information. Confirm the company where you manage DNS records.',\n chooseProvider: 'Choose a provider',\n suggestedFromDns: 'Suggested from DNS',\n allOtherProviders: 'All other providers',\n continueWithProvider: 'Continue with provider',\n savingProviderSelection: 'Saving provider selection…',\n preparingProviderSelection: 'Preparing provider selection…',\n providerDetected: (provider: string) => `${provider} detected.`,\n providerSelected: (provider: string) => `${provider} selected.`,\n detectedFromNameservers: 'Detected from nameservers',\n providerSelectedEyebrow: 'Provider selected',\n providerConnectHeading: (provider: string) => `Connect your ${provider}`,\n hostApplication: 'This application',\n providerApprovalGuidance: (provider: string, application: string) =>\n `You approve access inside ${provider}. ${application} never sees your provider password.`,\n preparingManualInstructions: 'Preparing guided manual DNS instructions…',\n manualSetupNotEntered: 'The server did not enter guided manual setup',\n noProviderDetected: 'No provider was identified automatically. Choose your DNS provider below.',\n possibleProviderFound: '1 possible DNS provider was found. Confirm your provider below.',\n possibleProvidersFound: (count: string) => `${count} possible DNS providers were found. Confirm your provider below.`,\n supportAutomatic: 'automatic',\n supportDomainConnect: 'Domain Connect',\n supportManual: 'guided manual',\n supportUnverified: 'not yet verified',\n supportAutomaticDescription: 'Its automatic adapter is verified; guided manual setup is also available.',\n supportDomainConnectDescription: 'Its Domain Connect path is verified; guided manual setup is also available.',\n supportManualDescription: 'Its guided manual path is verified.',\n supportUnverifiedDescription: 'Provider-specific automation is not verified; guided manual setup remains available.',\n recordSummary: (type: string, host: string, value: string, ttl: string, priority: string) => `${type} ${host} = ${value}; TTL ${ttl}${priority}`,\n recordPriority: (priority: string) => `; priority ${priority}`,\n errorPrefix: (message: string) => `Error: ${message}`,\n unknownError: 'Unknown error',\n transportError: 'Domain0 could not be reached. Check your connection and try again.',\n protocolError: 'Domain0 returned an invalid response. Try again or contact the application operator.',\n apiErrorInvalidRequest: 'The request is invalid.',\n apiErrorUnauthorized: 'Authentication failed. Reopen the connection flow and try again.',\n apiErrorForbidden: 'You are not allowed to perform this operation.',\n apiErrorNotFound: 'The requested connection resource was not found or has expired.',\n apiErrorConflict: 'The connection changed before this operation completed. Refresh and try again.',\n apiErrorRateLimited: 'Too many requests were made. Wait briefly and try again.',\n apiErrorDnsUnavailable: 'Authoritative DNS is temporarily unavailable. Try again.',\n apiErrorProviderUnavailable: 'The DNS provider is temporarily unavailable. Try again.',\n apiErrorProviderAuthorizationFailed: 'The DNS provider authorization failed or expired.',\n apiErrorProviderLimitation: 'The selected provider cannot complete this operation automatically.',\n apiErrorPlanExpired: 'The DNS change plan expired. Prepare and review a new plan.',\n apiErrorPropagationPending: 'The DNS changes have not reached every authoritative nameserver yet.',\n apiErrorInternal: 'Domain0 encountered an unexpected error. Try again.',\n loadingFlow: 'Loading domain connection flow…',\n flowNotReady: 'Domain connections are still being prepared. Reopen this flow to retry.',\n flowStep: (index: string, domain: string) => `${index}. ${domain}`,\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — connected`,\n allDomainsConnected: (count: string) => `All ${count} domains are connected.`,\n domainProgress: (index: string, total: string, domain: string) => `Domain ${index} of ${total}: ${domain}`,\n connectionStateRequested: 'requested',\n connectionStateDetectingProvider: 'detecting provider',\n connectionStateProviderSelected: 'provider selected',\n connectionStateDomainConnectPending: 'Domain Connect pending',\n connectionStateAuthorizationPending: 'authorization pending',\n connectionStateAuthorized: 'authorized',\n connectionStatePlanning: 'planning',\n connectionStateAwaitingConfirmation: 'awaiting confirmation',\n connectionStateApplying: 'applying',\n connectionStatePropagationPending: 'propagation pending',\n connectionStateActive: 'active',\n connectionStateManualRequired: 'manual setup required',\n connectionStateFailedRetryable: 'temporarily failed',\n connectionStateFailedTerminal: 'failed',\n connectionStateCancelled: 'cancelled',\n} as const\n\ntype WidenMessage<T> = T extends (...arguments_: infer Arguments) => string\n ? (...arguments_: Arguments) => string\n : string\n\nexport type Domain0Messages = {\n readonly [Key in keyof typeof englishMessages]: WidenMessage<(typeof englishMessages)[Key]>\n}\n\nconst germanMessages = {\n triggerConnectDomain: 'Domain verbinden',\n headingConnectDomain: 'Domain verbinden',\n headingConnectDomains: 'Domains verbinden',\n initialSubtitle: 'Wählen Sie Ihren DNS-Anbieter. Domain0 zeigt den dafür verfügbaren, verifizierten Verbindungsweg.',\n cancelConnection: 'Verbindung abbrechen',\n close: 'Schließen',\n loadingConnection: 'Verbindungsdetails werden geladen…',\n detectingProvider: 'DNS-Anbieter wird ermittelt…',\n checkingDomain: (domain: string) => `${domain} wird geprüft`,\n nameserverDetectionGuidance: 'Die Nameserver werden gelesen, um den DNS-Anbieter dieser Domain zu ermitteln.',\n resolvingNameservers: 'Nameserver werden aufgelöst',\n detectionUnavailable: 'Die automatische Anbietererkennung ist vorübergehend nicht verfügbar. Wählen Sie unten Ihren DNS-Anbieter aus.',\n connectionStatus: (state: string) => `Verbindungsstatus: ${state}.`,\n manualInstructionsReady: 'Die geführte manuelle DNS-Anleitung ist bereit.',\n forcedManualBlocked: 'Diese Verbindung befindet sich bereits in einem automatischen Anbieterablauf. Der erzwungene manuelle Modus kann ihn weder fortsetzen noch voranbringen. Brechen Sie diese Verbindung ab und erstellen Sie eine neue manuelle Verbindung.',\n forcedManualIncompatible: 'Die bestehende Verbindung ist mit der erzwungenen manuellen Einrichtung nicht kompatibel',\n missingConfirmationPlan: 'Der Server hat einen Bestätigungsstatus ohne Änderungsplan zurückgegeben',\n missingApplyingPlan: 'Der Server hat einen Anwendungsstatus ohne bestätigten Plan zurückgegeben',\n missingFailureDetails: 'Der Server hat einen wiederholbaren Fehlerstatus ohne Fehlerdetails zurückgegeben',\n successDescription: (domain: string) => `${domain} ist verbunden und die erforderlichen Einträge wurden übernommen.`,\n connectedHeading: (domain: string) => `${domain} ist verbunden`,\n verifiedEveryNameserver: 'Auf jedem Nameserver verifiziert',\n successRecordsUntouched: 'Diese Einträge sind aktiv. Sonst wurde an der Domain nichts verändert.',\n backToApplication: (application: string) => `Zurück zu ${application}`,\n dkimHeading: 'Ausgehende E-Mails mit DKIM absichern',\n dkimCheckingProvider: 'Öffentliche MX- und selektorspezifische DKIM-DNS-Einträge werden geprüft…',\n dkimGuidanceUnavailable: 'Die Erkennung des E-Mail-Anbieters ist vorübergehend nicht verfügbar. Es wurden keine DNS-Änderungen vorgenommen.',\n dkimDomainMismatch: 'Der Server hat DKIM-Hinweise für eine andere Domain zurückgegeben',\n dkimProviderDetected: (provider: string) => `${provider} wurde anhand der öffentlichen MX-Einträge erkannt.`,\n dkimProviderAmbiguous: 'Die MX-Einträge verweisen auf mehrere unterstützte E-Mail-Anbieter. Prüfen Sie das Mail-Routing, bevor Sie DKIM ändern.',\n dkimProviderUnknown: 'Domain0 konnte Google Workspace, Microsoft 365 oder Zoho Mail anhand der öffentlichen MX-Einträge nicht erkennen.',\n dkimRecordObserved: (selectors: string) => `Für die geprüften Selektoren wurde ein DKIM-DNS-Eintrag gefunden: ${selectors}.`,\n dkimNoRecordObserved: (selectors: string) => `Für die geprüften Selektoren wurde kein DKIM-DNS-Eintrag gefunden: ${selectors}. Dies beweist nicht, dass DKIM deaktiviert ist.`,\n dkimNotChecked: 'Dieser Anbieter verwendet einen kontospezifischen DKIM-Selektor. Daher wurde kein Selektoreintrag automatisch geprüft.',\n dkimLookupUnavailable: 'Die selektorspezifische DKIM-DNS-Prüfung war vorübergehend nicht verfügbar.',\n dkimEvidenceBoundary: 'Ein veröffentlichter DNS-Eintrag beweist nicht, dass ausgehende E-Mails signiert werden. Prüfen Sie den endgültigen DKIM-Status in der Verwaltung des E-Mail-Anbieters.',\n dkimOpenGuide: (provider: string) => `Offizielle DKIM-Einrichtungsanleitung von ${provider} öffnen`,\n cancelledDescription: (domain: string) => `Die Verbindung für ${domain} wurde abgebrochen. Es werden keine weiteren DNS-Änderungen angewendet.`,\n selectedProvider: (provider: string, support: string) => `${provider} ausgewählt. ${support}`,\n connectAnotherWay: 'Auf andere Weise verbinden',\n currentState: (state: string) => `Diese Verbindung ist derzeit ${state}. Aktualisieren Sie, um den neuesten Status zu laden.`,\n refreshConnection: 'Verbindung aktualisieren',\n domainConnectHeading: 'Über Domain Connect verbinden',\n domainConnectGuidance: 'Ihr DNS-Anbieter zeigt die genaue Dienstvorlage an und bittet vor der Anwendung um Zustimmung.',\n domainConnectResumeUnavailable: 'Die Host-Anwendung muss dieselbe Domain-Connect-Dienstvorlage bereitstellen, um diese Übergabe fortzusetzen.',\n domainConnectUnavailable: 'Die Host-Anwendung hat keine Domain-Connect-Dienstvorlage konfiguriert. Die geführte manuelle Einrichtung bleibt verfügbar.',\n continueSecurely: (provider: string) => `Sicher mit ${provider} fortfahren`,\n continueSecurelyNewTab: (provider: string) => `Sicher mit ${provider} in einem neuen Tab fortfahren`,\n completedDomainConnect: 'Domain Connect abgeschlossen',\n preparingAuthoritativeVerification: 'Verbindliche DNS-Prüfung wird vorbereitet…',\n readyToVerifyPropagation: 'Bereit zur Prüfung der DNS-Übernahme.',\n resumeDomainConnect: (provider: string) => `Domain Connect mit ${provider} fortsetzen`,\n connectWithProvider: (provider: string) => `Mit ${provider} verbinden`,\n checkingDomainConnectTemplate: 'Es wird geprüft, ob Ihr DNS-Anbieter genau diese Dienstvorlage unterstützt…',\n domainConnectReady: 'Domain Connect ist bereit. Fahren Sie in einem neuen Tab mit Ihrem DNS-Anbieter fort.',\n followProviderGuide: (provider: string) => `Schritt-für-Schritt-Anleitung von ${provider} öffnen`,\n openApplicationManualSetupGuide: 'Schritt-für-Schritt-DNS-Anleitung dieser Anwendung öffnen',\n requestManualSetupHelp: 'Schrittweise DNS-Hilfe anfordern',\n openProviderReference: (provider: string) => `${provider}-DNS-Anleitung`,\n opensInNewTab: (label: string) => `${label} (öffnet einen neuen Tab)`,\n sharedFlowHeading: 'Eine andere Person um den Abschluss bitten',\n sharedFlowGuidance: 'Kopieren Sie einen zeitlich begrenzten Link für eine vertrauenswürdige Person, die diese Domain aktualisieren kann. Der Link gewährt nur Zugriff auf diese Verbindung.',\n copySecureSetupLink: 'Sicheren Einrichtungslink kopieren',\n creatingSecureSetupLink: 'Sicherer Einrichtungslink wird erstellt…',\n secureSetupLinkCopied: 'Sicherer Einrichtungslink kopiert.',\n copySetupLinkAgain: 'Einrichtungslink erneut kopieren',\n expiredSharedFlow: 'Die Host-Anwendung hat eine abgelaufene Einladung für den freigegebenen Ablauf zurückgegeben',\n clipboardUnavailable: 'Zwischenablage ist nicht verfügbar; konfigurieren Sie sharedFlowGateway.copy',\n oauthHeading: 'Sicher beim Anbieter autorisieren',\n oauthGuidance: 'Domain0 verwendet OAuth mit PKCE. Ihr Anbieterpasswort wird niemals an Domain0 weitergegeben.',\n continueToProvider: (provider: string) => `Weiter zu ${provider}`,\n authorizationExpires: 'Dieser Autorisierungslink läuft am {DATE} ab.',\n completedAuthorization: 'Autorisierung abgeschlossen',\n resumeAuthorization: (provider: string) => `Autorisierung mit ${provider} fortsetzen`,\n authorizeWithProvider: (provider: string) => `Mit ${provider} fortfahren`,\n authorizeProviderCredentials: (provider: string) => `${provider} autorisieren`,\n preparingAuthorizationLink: 'Sicherer Autorisierungslink für den Anbieter wird vorbereitet…',\n authorizationLinkReady: 'Der Autorisierungslink ist bereit. Fahren Sie in einem neuen Tab mit dem Anbieter fort.',\n credentialGuidance: 'Verwenden Sie Anbieterzugangsdaten mit minimalem Berechtigungsumfang. Domain0 verschlüsselt sie serverseitig und gibt sie niemals an den Browser zurück.',\n credentialHeadingApiToken: 'Mit einem API-Token autorisieren',\n credentialHeadingAccessKey: 'Mit API-Schlüsseln autorisieren',\n credentialHeadingUsernamePassword: 'Mit Anbieterzugangsdaten autorisieren',\n credentialHeadingAccountToken: 'Mit einem Konto-Token autorisieren',\n credentialHeadingUsernameToken: 'Mit einem Benutzer-Token autorisieren',\n credentialHeadingOvh: 'Mit OVH-API-Zugangsdaten autorisieren',\n credentialHeadingPrivateKey: 'Mit einem privaten Schlüssel autorisieren',\n credentialHeadingAwsSession: 'Mit einer temporären AWS-Sitzung autorisieren',\n credentialHeadingCpanel: 'Mit einem cPanel-API-Token autorisieren',\n credentialHeadingClientCredentials: 'Mit OpenSRS-Storefront-Zugangsdaten autorisieren',\n fieldApiToken: 'API-Token',\n fieldAccessKeyId: 'Zugriffsschlüssel-ID',\n fieldApiSecret: 'API-Geheimnis',\n fieldUsername: 'Benutzername',\n fieldPassword: 'Passwort',\n fieldAccountId: 'Konto-ID',\n fieldOvhRegion: 'OVH-API-Region',\n fieldApplicationKey: 'Anwendungsschlüssel',\n fieldApplicationSecret: 'Anwendungsgeheimnis',\n fieldConsumerKey: 'Consumer-Schlüssel',\n fieldProviderLogin: 'Anbieter-Anmeldung',\n fieldPemPrivateKey: 'Privater PEM-Schlüssel',\n fieldAwsAccessKeyId: 'AWS-Zugriffsschlüssel-ID',\n fieldAwsSecretAccessKey: 'Geheimer AWS-Zugriffsschlüssel',\n fieldAwsSessionToken: 'AWS-Sitzungstoken',\n fieldRoute53ZoneId: 'Route-53-Hosted-Zone-ID',\n fieldSessionExpiration: 'Sitzungsablauf',\n fieldCpanelEndpoint: 'cPanel-HTTPS-Endpunkt',\n fieldCpanelUsername: 'cPanel-Benutzername',\n fieldCpanelApiToken: 'cPanel-API-Token',\n fieldStorefrontClientId: 'Storefront-Client-ID',\n fieldStorefrontClientSecret: 'Storefront-Client-Geheimnis',\n regionOvhEurope: 'OVH Europa',\n regionOvhUnitedStates: 'OVH Vereinigte Staaten',\n regionOvhCanada: 'OVH Kanada',\n regionKimsufiEurope: 'Kimsufi Europa',\n regionKimsufiCanada: 'Kimsufi Kanada',\n regionSoYouStartEurope: 'So You Start Europa',\n regionSoYouStartCanada: 'So You Start Kanada',\n authorizeApiToken: 'API-Token autorisieren',\n encryptingAuthorization: 'Anbieterautorisierung wird verschlüsselt und geprüft…',\n authorizationCompleted: 'Anbieterautorisierung abgeschlossen.',\n existingRecordPolicy: 'Richtlinie für bestehende DNS-Einträge',\n existingRecordPolicyHelp: 'Beibehalten ist am sichersten. Ersetzungsrichtlinien können destruktive Änderungen vorschlagen, die separat bestätigt werden müssen.',\n preserveExistingRecords: 'Bestehende Einträge beibehalten',\n replaceSameNameAndType: 'Einträge mit gleichem Host und Typ ersetzen',\n replaceAllAtName: 'Alle konfliktbehafteten Einträge am Host ersetzen',\n replaceSpf: 'Eine bestehende SPF-Richtlinie ersetzen, statt sie zusammenzuführen',\n replaceSpfHelp: 'Zusammenführen ist die sichere Voreinstellung. Ersetzen entfernt die aktuellen SPF-Mechanismen des Anbieters und erfordert immer eine Bestätigung der destruktiven Änderung.',\n readingRecords: 'Aktuelle Anbietereinträge werden gelesen und ein Änderungsplan wird vorbereitet…',\n recordsAlreadyExist: 'Die erforderlichen DNS-Einträge sind bereits vorhanden. Bereit zur Prüfung der Übernahme.',\n reviewChanges: 'Prüfen Sie die vorgeschlagenen DNS-Änderungen vor der Bestätigung.',\n reviewDnsChanges: 'DNS-Änderungen prüfen',\n recalculateChangePlan: 'Änderungsplan neu berechnen',\n proposedChangesRegion: 'Vorgeschlagene DNS-Änderungen',\n proposedChangesCaption: (domain: string) => `Vorgeschlagene DNS-Änderungen für ${domain}`,\n columnAction: 'Aktion',\n columnCurrentRecord: 'Aktueller Eintrag',\n columnResultingRecord: 'Resultierender Eintrag',\n columnRisk: 'Risiko',\n changeCreate: 'Erstellen',\n changeUpdate: 'Ersetzen',\n changeDelete: 'Löschen',\n destructive: 'Destruktiv',\n nonDestructive: 'Nicht destruktiv',\n planWarnings: 'Planwarnungen',\n planWarningSpfPolicyReplaced: 'Die bestehende SPF-Richtlinie wird durch die angeforderte SPF-Richtlinie ersetzt.',\n planWarningSpfPolicyMerged: 'Die bestehende SPF-Richtlinie wurde in den angeforderten SPF-Eintrag übernommen.',\n planExpires: 'Dieser Plan läuft am {DATE} ab.',\n destructiveAcknowledgement: 'Ich verstehe, dass die markierten bestehenden DNS-Einträge ersetzt oder gelöscht werden.',\n confirmChangePlan: 'Änderungsplan bestätigen',\n confirmingChangePlan: 'Dieser genaue Änderungsplan wird bestätigt…',\n planConfirmed: 'Plan bestätigt. DNS-Änderungen wurden noch nicht angewendet.',\n applyDnsChanges: 'DNS-Änderungen anwenden',\n applyingDnsChanges: 'Bestätigte DNS-Änderungen werden angewendet…',\n applyingVerifiedChanges: 'Verifizierte Änderungen werden angewendet',\n connectingDomain: (domain: string) => `${domain} wird verbunden`,\n applyingProgressGuidance: 'Domain0 aktualisiert nur die angeforderten DNS-Einträge. Sie können dieses Fenster geöffnet lassen.',\n waitingForProvider: 'Warten auf den Anbieter',\n dnsChangesApplied: 'DNS-Änderungen wurden angewendet. Bereit zur verbindlichen Übernahmeprüfung.',\n detectionReasonNoStablePublicProviderIdentity: 'Dieser Anbieter veröffentlicht keine stabile öffentliche Identität, die Domain0 sicher anhand des DNS erkennen kann.',\n manualGuidance: 'Verwenden Sie die geführte manuelle Einrichtung, um die genauen erforderlichen DNS-Einträge ohne Weitergabe von Anbieterzugangsdaten hinzuzufügen.',\n manualSetupLabel: 'Manuelle Einrichtung',\n manualSetupUnavailableHeading: 'Manuelle Einrichtung nicht verfügbar',\n manualSetupUnavailableDescription: 'Die manuelle DNS-Einrichtung wurde von dieser Anwendung deaktiviert. Verwenden Sie einen anderen verfügbaren verifizierten Weg oder brechen beziehungsweise schließen Sie diese Verbindung ab.',\n showDnsRecords: 'DNS-Einträge anzeigen',\n preparingDnsInstructions: 'DNS-Anleitung wird vorbereitet…',\n dnsInstructionsReady: 'DNS-Anleitung ist bereit.',\n addResolvedRecords: 'Fügen Sie diese aufgelösten Einträge bei Ihrem DNS-Anbieter hinzu und fahren Sie dann fort.',\n authoritativeRecordGuidance: 'Diese Einträge prüft Domain0 direkt auf jedem verbindlichen Nameserver.',\n dnsRecordsRegion: 'DNS-Einträge',\n dnsRecordsCaption: (domain: string) => `DNS-Einträge für ${domain}`,\n thisDomain: 'diese Domain',\n columnType: 'Typ',\n columnHost: 'Host',\n columnValue: 'Wert',\n columnTtl: 'TTL',\n columnPriority: 'Priorität',\n columnRequirement: 'Anforderung',\n optional: 'Optional',\n required: 'Erforderlich',\n noRecordChanges: 'Die bestehende DNS-Richtlinie erfüllt diese Anfrage. Es sind keine DNS-Änderungen erforderlich.',\n addedRecords: 'Ich habe diese Einträge hinzugefügt',\n continue: 'Fortfahren',\n savingConfirmation: 'Ihre Bestätigung wird gespeichert…',\n verifyDnsRecords: 'DNS-Einträge prüfen',\n finishConnection: 'Verbindung abschließen',\n checkingNameservers: 'Verbindliche Nameserver werden geprüft…',\n requiredRecordsActive: 'Die erforderlichen DNS-Einträge sind aktiv.',\n propagationPending: 'Die DNS-Änderungen haben noch nicht jeden verbindlichen Nameserver erreicht. Sie können erneut prüfen.',\n providerFailureHeading: 'Anbietervorgang erfordert Aufmerksamkeit',\n needsAttention: 'Aktion erforderlich',\n connectionNeedsAttention: (domain: string) => `${domain} erfordert Aufmerksamkeit`,\n snapshotTimeout: 'Beim Lesen der DNS-Einträge des Anbieters hat Domain0 das Zeitlimit überschritten. Es wurden keine DNS-Änderungen vorgenommen. Eine Wiederholung stellt den vorherigen Prüfschritt wieder her, damit Sie einen neuen Schnappschuss anfordern können.',\n applyTimeout: 'Der Anbieter hat die DNS-Aktualisierung nicht vor Ablauf der Frist bestätigt; das Ergebnis ist daher unklar. Eine Wiederholung stellt den bestätigten Anwendungsschritt wieder her. Domain0 gleicht vor einem weiteren Schreibvorgang die aktuellen Anbietereinträge ab.',\n timeoutRecorded: 'Die Zeitüberschreitung wurde am {DATE} erfasst.',\n retryConnection: 'Verbindung erneut versuchen',\n restoringConnection: 'Verbindung wird auf den Zustand vor dem Fehler zurückgesetzt…',\n connectionRestored: (state: string) => `Verbindung auf ${state} zurückgesetzt. Fahren Sie fort, wenn Sie bereit sind.`,\n cancelHeading: 'Diese Verbindung abbrechen?',\n cancelGuidance: 'Der Abbruch beendet diesen Domain0-Ablauf. Bereits angewendete DNS-Einträge werden dadurch nicht entfernt.',\n keepConnection: 'Verbindung beibehalten',\n confirmCancellation: 'Abbruch bestätigen',\n cancellingConnection: 'Verbindung wird abgebrochen…',\n connectionCancelled: 'Verbindung abgebrochen.',\n dnsProvider: 'DNS-Anbieter',\n providerHelp: 'Wählen Sie das Unternehmen, bei dem Sie die DNS-Einträge dieser Domain verwalten.',\n detectedProviderHelp: 'Domain0 hat anhand öffentlicher DNS-Informationen mögliche Anbieter gefunden. Bestätigen Sie Ihren DNS-Anbieter.',\n chooseProvider: 'Anbieter auswählen',\n suggestedFromDns: 'Aus DNS vorgeschlagen',\n allOtherProviders: 'Alle anderen Anbieter',\n continueWithProvider: 'Mit Anbieter fortfahren',\n savingProviderSelection: 'Anbieterauswahl wird gespeichert…',\n preparingProviderSelection: 'Anbieterauswahl wird vorbereitet…',\n providerDetected: (provider: string) => `${provider} erkannt.`,\n providerSelected: (provider: string) => `${provider} ausgewählt.`,\n detectedFromNameservers: 'Anhand der Nameserver erkannt',\n providerSelectedEyebrow: 'Anbieter ausgewählt',\n providerConnectHeading: (provider: string) => `${provider} verbinden`,\n hostApplication: 'Diese Anwendung',\n providerApprovalGuidance: (provider: string, application: string) =>\n `Sie genehmigen den Zugriff direkt bei ${provider}. ${application} sieht Ihr Anbieterpasswort nie.`,\n preparingManualInstructions: 'Geführte manuelle DNS-Anleitung wird vorbereitet…',\n manualSetupNotEntered: 'Der Server hat die geführte manuelle Einrichtung nicht gestartet',\n noProviderDetected: 'Es wurde kein Anbieter automatisch erkannt. Wählen Sie unten Ihren DNS-Anbieter aus.',\n possibleProviderFound: '1 möglicher DNS-Anbieter wurde gefunden. Bestätigen Sie unten Ihren Anbieter.',\n possibleProvidersFound: (count: string) => `${count} mögliche DNS-Anbieter wurden gefunden. Bestätigen Sie unten Ihren Anbieter.`,\n supportAutomatic: 'automatisch',\n supportDomainConnect: 'Domain Connect',\n supportManual: 'geführt manuell',\n supportUnverified: 'noch nicht verifiziert',\n supportAutomaticDescription: 'Der automatische Adapter ist verifiziert; die geführte manuelle Einrichtung ist ebenfalls verfügbar.',\n supportDomainConnectDescription: 'Der Domain-Connect-Pfad ist verifiziert; die geführte manuelle Einrichtung ist ebenfalls verfügbar.',\n supportManualDescription: 'Der geführte manuelle Pfad ist verifiziert.',\n supportUnverifiedDescription: 'Anbieterspezifische Automatisierung ist nicht verifiziert; die geführte manuelle Einrichtung bleibt verfügbar.',\n recordSummary: (type: string, host: string, value: string, ttl: string, priority: string) => `${type} ${host} = ${value}; TTL ${ttl}${priority}`,\n recordPriority: (priority: string) => `; Priorität ${priority}`,\n loadingFlow: 'Domain-Verbindungsablauf wird geladen…',\n flowNotReady: 'Die Domain-Verbindungen werden noch vorbereitet. Öffnen Sie diesen Ablauf erneut, um es noch einmal zu versuchen.',\n flowStep: (index: string, domain: string) => `${index}. ${domain}`,\n flowStepConnected: (index: string, domain: string) => `${index}. ${domain} — verbunden`,\n allDomainsConnected: (count: string) => `Alle ${count} Domains sind verbunden.`,\n domainProgress: (index: string, total: string, domain: string) => `Domain ${index} von ${total}: ${domain}`,\n errorPrefix: (message: string) => `Fehler: ${message}`,\n unknownError: 'Unbekannter Fehler',\n transportError: 'Domain0 ist nicht erreichbar. Prüfen Sie Ihre Verbindung und versuchen Sie es erneut.',\n protocolError: 'Domain0 hat eine ungültige Antwort zurückgegeben. Versuchen Sie es erneut oder wenden Sie sich an den Betreiber der Anwendung.',\n apiErrorInvalidRequest: 'Die Anfrage ist ungültig.',\n apiErrorUnauthorized: 'Die Authentifizierung ist fehlgeschlagen. Öffnen Sie den Verbindungsablauf erneut und versuchen Sie es noch einmal.',\n apiErrorForbidden: 'Sie dürfen diesen Vorgang nicht ausführen.',\n apiErrorNotFound: 'Die angeforderte Verbindungsressource wurde nicht gefunden oder ist abgelaufen.',\n apiErrorConflict: 'Die Verbindung wurde vor Abschluss dieses Vorgangs geändert. Aktualisieren Sie sie und versuchen Sie es erneut.',\n apiErrorRateLimited: 'Es wurden zu viele Anfragen gestellt. Warten Sie kurz und versuchen Sie es erneut.',\n apiErrorDnsUnavailable: 'Das verbindliche DNS ist vorübergehend nicht verfügbar. Versuchen Sie es erneut.',\n apiErrorProviderUnavailable: 'Der DNS-Anbieter ist vorübergehend nicht verfügbar. Versuchen Sie es erneut.',\n apiErrorProviderAuthorizationFailed: 'Die Autorisierung beim DNS-Anbieter ist fehlgeschlagen oder abgelaufen.',\n apiErrorProviderLimitation: 'Der ausgewählte Anbieter kann diesen Vorgang nicht automatisch abschließen.',\n apiErrorPlanExpired: 'Der DNS-Änderungsplan ist abgelaufen. Erstellen und prüfen Sie einen neuen Plan.',\n apiErrorPropagationPending: 'Die DNS-Änderungen haben noch nicht jeden verbindlichen Nameserver erreicht.',\n apiErrorInternal: 'In Domain0 ist ein unerwarteter Fehler aufgetreten. Versuchen Sie es erneut.',\n connectionStateRequested: 'angefordert',\n connectionStateDetectingProvider: 'Anbieter wird ermittelt',\n connectionStateProviderSelected: 'Anbieter ausgewählt',\n connectionStateDomainConnectPending: 'Domain Connect ausstehend',\n connectionStateAuthorizationPending: 'Autorisierung ausstehend',\n connectionStateAuthorized: 'autorisiert',\n connectionStatePlanning: 'in Planung',\n connectionStateAwaitingConfirmation: 'Bestätigung ausstehend',\n connectionStateApplying: 'wird angewendet',\n connectionStatePropagationPending: 'Übernahme ausstehend',\n connectionStateActive: 'aktiv',\n connectionStateManualRequired: 'manuelle Einrichtung erforderlich',\n connectionStateFailedRetryable: 'vorübergehend fehlgeschlagen',\n connectionStateFailedTerminal: 'fehlgeschlagen',\n connectionStateCancelled: 'abgebrochen',\n} satisfies Domain0Messages\n\nexport const domain0TranslatedLocales = ['en', 'es', 'pt-br', 'pt-pt', 'fr', 'de'] as const\nexport type Domain0TranslatedLocale = (typeof domain0TranslatedLocales)[number]\n\nconst catalogs: Readonly<Record<Domain0TranslatedLocale, Domain0Messages>> = {\n en: englishMessages,\n es: spanishMessages,\n 'pt-br': brazilianPortugueseMessages,\n 'pt-pt': europeanPortugueseMessages,\n fr: frenchMessages,\n de: germanMessages,\n}\n\nconst translatedLocaleByLocale: Readonly<Partial<Record<Domain0Locale, Domain0TranslatedLocale>>> = {\n en: 'en',\n es: 'es',\n pt: 'pt-br',\n 'pt-br': 'pt-br',\n 'pt-pt': 'pt-pt',\n fr: 'fr',\n de: 'de',\n}\n\nconst languageTags: Readonly<Record<Domain0Locale, string>> = {\n en: 'en',\n es: 'es',\n pt: 'pt-BR',\n 'pt-br': 'pt-BR',\n 'pt-pt': 'pt-PT',\n fr: 'fr',\n it: 'it',\n de: 'de',\n nl: 'nl',\n pl: 'pl',\n tr: 'tr',\n ja: 'ja',\n da: 'da',\n sv: 'sv',\n}\n\nexport interface Domain0Localizer {\n readonly locale: Domain0Locale\n readonly translatedLocale: Domain0TranslatedLocale\n readonly languageTag: string\n readonly direction: 'ltr'\n readonly messages: Domain0Messages\n formatInteger(value: number): string\n formatDateTime(value: string): string\n connectionState(state: ConnectionState): string\n providerDetectionReason(code: ProviderDetectionUnavailableReasonCode): string\n planWarning(code: PlanWarningCode): string\n apiError(code: Domain0ErrorCode): string\n}\n\nexport function createDomain0Localizer(input: unknown = 'en'): Domain0Localizer {\n const locale = Domain0LocaleSchema.parse(input)\n const languageTag = languageTags[locale]\n const translatedLocale = translatedLocaleByLocale[locale] ?? 'en'\n const messages = catalogs[translatedLocale]\n const numberFormat = new Intl.NumberFormat(languageTag)\n const dateTimeFormat = new Intl.DateTimeFormat(languageTag, {\n dateStyle: 'medium',\n timeStyle: 'short',\n })\n\n return {\n locale,\n translatedLocale,\n languageTag,\n direction: 'ltr',\n messages,\n formatInteger: (value) => numberFormat.format(value),\n formatDateTime: (value) => dateTimeFormat.format(new Date(value)),\n connectionState: (state) => messages[connectionStateMessageKey[state]],\n providerDetectionReason: (code) => messages[providerDetectionReasonMessageKey[code]],\n planWarning: (code) => messages[planWarningMessageKey[code]],\n apiError: (code) => messages[apiErrorMessageKey[code]],\n }\n}\n\nexport function localizedCopy(\n copy: Readonly<\n { en: string } & Partial<Record<Domain0Locale, string | undefined>>\n > | undefined,\n locale: Domain0Locale,\n): string | undefined {\n if (copy === undefined) return undefined\n if (locale === 'pt') return copy.pt ?? copy['pt-br'] ?? copy.en\n return copy[locale] ?? copy.en\n}\n\nconst connectionStateMessageKey = {\n requested: 'connectionStateRequested',\n detecting_provider: 'connectionStateDetectingProvider',\n provider_selected: 'connectionStateProviderSelected',\n domain_connect_pending: 'connectionStateDomainConnectPending',\n authorization_pending: 'connectionStateAuthorizationPending',\n authorized: 'connectionStateAuthorized',\n planning: 'connectionStatePlanning',\n awaiting_confirmation: 'connectionStateAwaitingConfirmation',\n applying: 'connectionStateApplying',\n propagation_pending: 'connectionStatePropagationPending',\n active: 'connectionStateActive',\n manual_required: 'connectionStateManualRequired',\n failed_retryable: 'connectionStateFailedRetryable',\n failed_terminal: 'connectionStateFailedTerminal',\n cancelled: 'connectionStateCancelled',\n} as const satisfies Record<ConnectionState, keyof Domain0Messages>\n\nconst providerDetectionReasonMessageKey = {\n no_stable_public_provider_identity: 'detectionReasonNoStablePublicProviderIdentity',\n} as const satisfies Record<ProviderDetectionUnavailableReasonCode, keyof Domain0Messages>\n\nconst planWarningMessageKey = {\n spf_policy_replaced: 'planWarningSpfPolicyReplaced',\n spf_policy_merged: 'planWarningSpfPolicyMerged',\n} as const satisfies Record<PlanWarningCode, keyof Domain0Messages>\n\nconst apiErrorMessageKey = {\n invalid_request: 'apiErrorInvalidRequest',\n unauthorized: 'apiErrorUnauthorized',\n forbidden: 'apiErrorForbidden',\n not_found: 'apiErrorNotFound',\n conflict: 'apiErrorConflict',\n rate_limited: 'apiErrorRateLimited',\n dns_unavailable: 'apiErrorDnsUnavailable',\n provider_unavailable: 'apiErrorProviderUnavailable',\n provider_authorization_failed: 'apiErrorProviderAuthorizationFailed',\n provider_limitation: 'apiErrorProviderLimitation',\n plan_expired: 'apiErrorPlanExpired',\n propagation_pending: 'apiErrorPropagationPending',\n internal_error: 'apiErrorInternal',\n} as const satisfies Record<Domain0ErrorCode, keyof Domain0Messages>\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","/**\n * Copyright 2022 Joe Bell. All rights reserved.\n *\n * This file is licensed to you under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with the\n * License. You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR REPRESENTATIONS OF ANY KIND, either express or implied. See the\n * License for the specific language governing permissions and limitations under\n * the License.\n */ import { clsx } from \"clsx\";\nconst falsyToString = (value)=>typeof value === \"boolean\" ? `${value}` : value === 0 ? \"0\" : value;\nexport const cx = clsx;\nexport const cva = (base, config)=>(props)=>{\n var _config_compoundVariants;\n if ((config === null || config === void 0 ? void 0 : config.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n const { variants, defaultVariants } = config;\n const getVariantClassNames = Object.keys(variants).map((variant)=>{\n const variantProp = props === null || props === void 0 ? void 0 : props[variant];\n const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];\n if (variantProp === null) return null;\n const variantKey = falsyToString(variantProp) || falsyToString(defaultVariantProp);\n return variants[variant][variantKey];\n });\n const propsWithoutUndefined = props && Object.entries(props).reduce((acc, param)=>{\n let [key, value] = param;\n if (value === undefined) {\n return acc;\n }\n acc[key] = value;\n return acc;\n }, {});\n const getCompoundVariantClassNames = config === null || config === void 0 ? void 0 : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param)=>{\n let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;\n return Object.entries(compoundVariantOptions).every((param)=>{\n let [key, value] = param;\n return Array.isArray(value) ? value.includes({\n ...defaultVariants,\n ...propsWithoutUndefined\n }[key]) : ({\n ...defaultVariants,\n ...propsWithoutUndefined\n })[key] === value;\n }) ? [\n ...acc,\n cvClass,\n cvClassName\n ] : acc;\n }, []);\n return cx(base, getVariantClassNames, getCompoundVariantClassNames, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);\n };\n\n","/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import { cva, type VariantProps } from 'class-variance-authority'\nimport { clsx } from 'clsx'\nimport type { ButtonHTMLAttributes } from 'react'\n\nconst buttonVariants = cva('domain0-button', {\n defaultVariants: { size: 'default', variant: 'primary' },\n variants: {\n size: {\n default: 'domain0-button--default',\n compact: 'domain0-button--compact',\n icon: 'domain0-button--icon',\n },\n variant: {\n primary: 'domain0-button--primary',\n secondary: 'domain0-button--secondary',\n ghost: 'domain0-button--ghost',\n danger: 'domain0-button--danger',\n },\n },\n})\n\nexport interface ButtonProps\n extends ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n readonly loading?: boolean\n}\n\nexport function Button({\n children,\n className,\n disabled,\n loading = false,\n size,\n type = 'button',\n variant,\n ...props\n}: ButtonProps) {\n return (\n <button\n {...props}\n aria-busy={loading || undefined}\n className={clsx(buttonVariants({ size, variant }), className)}\n disabled={disabled || loading}\n type={type}\n >\n {loading ? <span aria-hidden=\"true\" className=\"domain0-spinner\" /> : null}\n <span>{children}</span>\n </button>\n )\n}\n","import type { SVGProps } from 'react'\n\nexport function Domain0Mark({ className }: { readonly className?: string }) {\n return (\n <svg aria-hidden=\"true\" className={className} fill=\"none\" viewBox=\"0 0 100 100\">\n <Domain0Glyph />\n </svg>\n )\n}\n\nexport function Domain0Glyph() {\n return (\n <>\n <path d=\"M66.34 17.92A36 36 0 0 0 17.92 66.34\" stroke=\"currentColor\" strokeWidth=\"15\" />\n <path d=\"M33.66 82.08A36 36 0 0 0 82.08 33.66\" stroke=\"currentColor\" strokeWidth=\"15\" />\n <path d=\"M16.77 83.23 83.23 16.77\" stroke=\"currentColor\" strokeWidth=\"12\" />\n </>\n )\n}\n\nexport function CloseIcon(props: SVGProps<SVGSVGElement>) {\n return (\n <svg aria-hidden=\"true\" fill=\"none\" viewBox=\"0 0 20 20\" {...props}>\n <path d=\"m5.5 5.5 9 9m0-9-9 9\" stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" />\n </svg>\n )\n}\n\nexport function CheckIcon(props: SVGProps<SVGSVGElement>) {\n return (\n <svg aria-hidden=\"true\" fill=\"none\" viewBox=\"0 0 20 20\" {...props}>\n <path d=\"m4.5 10.5 3.25 3.25L15.5 6\" stroke=\"currentColor\" strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"1.8\" />\n </svg>\n )\n}\n\nexport function CopyIcon(props: SVGProps<SVGSVGElement>) {\n return (\n <svg aria-hidden=\"true\" fill=\"none\" viewBox=\"0 0 20 20\" {...props}>\n <rect height=\"10\" rx=\"2\" stroke=\"currentColor\" width=\"10\" x=\"6.5\" y=\"6.5\" />\n <path d=\"M13.5 6.5v-1A2 2 0 0 0 11.5 3.5h-6a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h1\" stroke=\"currentColor\" />\n </svg>\n )\n}\n\nexport function SearchIcon(props: SVGProps<SVGSVGElement>) {\n return (\n <svg aria-hidden=\"true\" fill=\"none\" viewBox=\"0 0 20 20\" {...props}>\n <circle cx=\"8.5\" cy=\"8.5\" r=\"5\" stroke=\"currentColor\" strokeWidth=\"1.5\" />\n <path d=\"m12.25 12.25 4 4\" stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" />\n </svg>\n )\n}\n","import type { ReactNode } from 'react'\n\nimport { CloseIcon, Domain0Mark } from './icons'\n\ninterface SurfaceProps {\n readonly applicationName?: string | undefined\n readonly children: ReactNode\n readonly onClose?: (() => void) | undefined\n}\n\nexport function Surface({ applicationName, children, onClose }: SurfaceProps) {\n return (\n <div className=\"domain0-panel\">\n {onClose ? (\n <button aria-label=\"Close\" className=\"domain0-close\" onClick={onClose} type=\"button\">\n <CloseIcon />\n </button>\n ) : null}\n <div className=\"domain0-content\">{children}</div>\n <footer className=\"domain0-footer\">\n <span>Secured by</span>\n <Domain0Mark className=\"domain0-footer__mark\" />\n </footer>\n {applicationName ? <span className=\"domain0-visually-hidden\">{applicationName}</span> : null}\n </div>\n )\n}\n\nexport function Eyebrow({ children, tone = 'neutral' }: { readonly children: ReactNode; readonly tone?: 'neutral' | 'accent' | 'danger' }) {\n return <p className={`domain0-eyebrow domain0-eyebrow--${tone}`}>{children}</p>\n}\n\nexport function Heading({ children, lead }: { readonly children: ReactNode; readonly lead?: ReactNode }) {\n return (\n <header className=\"domain0-heading-group\">\n <h2 className=\"domain0-heading\" tabIndex={-1}>{children}</h2>\n {lead ? <p className=\"domain0-lead\">{lead}</p> : null}\n </header>\n )\n}\n","import { useId } from 'react'\nimport { CheckIcon, Domain0Glyph, Domain0Mark } from './icons'\n\nexport function ScanMark() {\n const patternPrefix = useId().replaceAll(':', '')\n const rings = [\n [132, 0.6],\n [108, 1.1],\n [84, 1.7],\n [62, 2.4],\n [42, 3.2],\n ] as const\n\n return (\n <svg aria-hidden=\"true\" className=\"domain0-scan-mark\" fill=\"none\" viewBox=\"0 0 268 268\">\n <defs>\n {rings.map(([radius, dot]) => (\n <pattern height=\"8\" id={`${patternPrefix}-scan-${radius}`} key={radius} patternUnits=\"userSpaceOnUse\" width=\"8\">\n <circle cx=\"4\" cy=\"4\" fill=\"currentColor\" r={dot} />\n </pattern>\n ))}\n </defs>\n {rings.map(([radius], index) => (\n <circle\n className=\"domain0-scan-mark__screen\"\n cx=\"134\"\n cy=\"134\"\n fill={`url(#${patternPrefix}-scan-${radius})`}\n key={radius}\n r={radius}\n style={{ animationDelay: `${index * -320}ms` }}\n />\n ))}\n <circle className=\"domain0-scan-mark__center\" cx=\"134\" cy=\"134\" r=\"39\" />\n <g className=\"domain0-scan-mark__glyph\" transform=\"translate(110 110) scale(.48)\">\n <Domain0Glyph />\n </g>\n </svg>\n )\n}\n\nexport function SuccessMark() {\n return <div className=\"domain0-result-mark domain0-result-mark--success\"><CheckIcon /></div>\n}\n\nexport function FailureMark() {\n return <div className=\"domain0-result-mark domain0-result-mark--failure\"><span>!</span></div>\n}\n\nexport function ProviderChip({ domain, providerId, providerName }: { readonly domain: string; readonly providerId: string; readonly providerName: string }) {\n return (\n <div className=\"domain0-provider-chip\">\n <span className=\"domain0-provider-chip__mark\" style={{ backgroundColor: providerColor(providerId) }}>\n <ProviderLogo providerId={providerId} />\n </span>\n <span className=\"domain0-provider-chip__copy\">\n <small>{providerName}</small>\n <code>{domain}</code>\n </span>\n </div>\n )\n}\n\nfunction ProviderLogo({ providerId }: { readonly providerId: string }) {\n if (providerId === 'cloudflare') {\n return (\n <svg aria-hidden=\"true\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n <path d=\"M16.5088 16.8447c.1475-.5068.0908-.9707-.1553-1.3154-.2246-.3164-.6045-.499-1.0615-.5205l-8.6592-.1123a.1559.1559 0 0 1-.1333-.0713c-.0283-.042-.0351-.0986-.021-.1553.0278-.084.1123-.1484.2036-.1562l8.7359-.1123c1.0351-.0489 2.1601-.8868 2.5537-1.9136l.499-1.3013c.0215-.0561.0293-.1128.0147-.168-.5625-2.5463-2.835-4.4453-5.5499-4.4453-2.5039 0-4.6284 1.6177-5.3876 3.8614-.4927-.3658-1.1187-.5625-1.794-.499-1.2026.119-2.1665 1.083-2.2861 2.2856-.0283.31-.0069.6128.0635.894C1.5683 13.171 0 14.7754 0 16.752c0 .1748.0142.3515.0352.5273.0141.083.0844.1475.1689.1475h15.9814c.0909 0 .1758-.0645.2032-.1553l.12-.4268zm2.7568-5.5634c-.0771 0-.1611 0-.2383.0112-.0566 0-.1054.0415-.127.0976l-.3378 1.1744c-.1475.5068-.0918.9707.1543 1.3164.2256.3164.6055.498 1.0625.5195l1.8437.1133c.0557 0 .1055.0263.1329.0703.0283.043.0351.1074.0214.1562-.0283.084-.1132.1485-.204.1553l-1.921.1123c-1.041.0488-2.1582.8867-2.5527 1.914l-.1406.3585c-.0283.0713.0215.1416.0986.1416h6.5977c.0771 0 .1474-.0489.169-.126.1122-.4082.1757-.837.1757-1.2803 0-2.6025-2.125-4.727-4.7344-4.727\" />\n </svg>\n )\n }\n return <Domain0Mark />\n}\n\nfunction providerColor(providerId: string) {\n return ({ cloudflare: '#f38020', godaddy: '#09757a', namecheap: '#ee7a2e', 'amazon-route-53': '#8c4fff' } as Record<string, string>)[providerId] ?? '#0a0a0a'\n}\n","import {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type FormEvent,\n type ReactNode,\n} from 'react'\n\nimport { Domain0Error, Domain0ProtocolError, Domain0TransportError } from '../client'\nimport type {\n AuthorizationMethod,\n ChangePlan,\n Connection,\n ConnectionFailure,\n DirectCredentialKind,\n DnsRecord,\n Domain0ConnectError,\n Domain0ConnectStep,\n Domain0ConnectCloseTrigger,\n Domain0ConnectConfiguration,\n Provider,\n ProviderCandidate,\n} from '../contracts'\nimport {\n AuthorizeWithCredentialInputSchema,\n Domain0ConnectCloseEventSchema,\n Domain0ConnectFailureEventSchema,\n Domain0ConnectStepChangeEventSchema,\n Domain0RequestCloseEventSchema,\n Domain0ConnectSuccessEventSchema,\n directCredentialKindByProvider,\n} from '../contracts'\nimport { emitDomain0ConnectError } from './connect-error'\nimport type { Domain0ConnectOptions } from './connect'\nimport { createDomain0Localizer, type Domain0Messages } from './localization'\nimport { Button } from './components/button'\nimport { CopyIcon, SearchIcon } from './components/icons'\nimport { Eyebrow, Heading, Surface } from './components/surface'\nimport { FailureMark, ProviderChip, ScanMark, SuccessMark } from './components/visuals'\n\nconst POLLING_STATES = new Set<Connection['state']>([\n 'domain_connect_pending',\n 'authorization_pending',\n 'planning',\n 'applying',\n 'propagation_pending',\n])\nconst POLL_INTERVAL_MS = 2_500\n\nexport interface ConnectAppHandle {\n open(): Promise<void>\n close(trigger?: Domain0ConnectCloseTrigger): void\n}\n\ninterface ConnectAppProps {\n readonly configuration: Domain0ConnectConfiguration\n readonly instanceId: string\n readonly options: Domain0ConnectOptions\n}\n\ntype Screen = 'connection' | 'loading' | 'provider_detection' | 'provider_selection' | 'cancellation_confirmation'\n\nexport const ConnectApp = forwardRef<ConnectAppHandle, ConnectAppProps>(function ConnectApp(\n { configuration, instanceId, options },\n ref,\n) {\n const localizer = useMemo(() => createDomain0Localizer(options.locale), [options.locale])\n const { messages } = localizer\n const presentation = options.presentation ?? 'modal'\n const dialogRef = useRef<HTMLDialogElement>(null)\n const headingRef = useRef<HTMLHeadingElement>(null)\n const returnFocusRef = useRef<HTMLElement | undefined>(undefined)\n const loadSequenceRef = useRef(0)\n const currentStepRef = useRef<Domain0ConnectStep | undefined>(undefined)\n const closeEmittedRef = useRef(false)\n const successEmittedRef = useRef(false)\n const failureRevisionRef = useRef<string | undefined>(undefined)\n const connectionRevisionRef = useRef<string | undefined>(undefined)\n const lastErrorRef = useRef<Domain0ConnectError | undefined>(undefined)\n const [open, setOpen] = useState(false)\n const [connection, setConnection] = useState<Connection>()\n const [providers, setProviders] = useState<readonly Provider[]>([])\n const [candidates, setCandidates] = useState<readonly ProviderCandidate[]>([])\n const [screen, setScreen] = useState<Screen>('loading')\n const [status, setStatus] = useState('')\n const [errorMessage, setErrorMessage] = useState('')\n const [pendingAction, setPendingAction] = useState<string>()\n const [showAlternatives, setShowAlternatives] = useState(false)\n const [authorizationUrl, setAuthorizationUrl] = useState<string>()\n const [domainConnectUrl, setDomainConnectUrl] = useState<string>()\n const [search, setSearch] = useState('')\n\n const emitEvent = options.onEvent\n\n function emitStep(step: Domain0ConnectStep, current = connection) {\n if (currentStepRef.current === step) return\n const event = Domain0ConnectStepChangeEventSchema.parse({\n type: 'step_change',\n step,\n previousStep: currentStepRef.current,\n connection: current,\n })\n currentStepRef.current = step\n emitEvent?.(event)\n options.onStepChange?.(withoutType(event))\n }\n\n function reportConnection(next: Connection) {\n setConnection(next)\n setScreen('connection')\n const revision = `${next.id}:${next.state}:${next.updatedAt}`\n if (connectionRevisionRef.current !== revision) {\n connectionRevisionRef.current = revision\n options.onConnectionChange?.(next)\n }\n emitStep(next.state, next)\n if (next.state === 'active' && !successEmittedRef.current) {\n successEmittedRef.current = true\n const event = Domain0ConnectSuccessEventSchema.parse({ type: 'success', connection: next })\n emitEvent?.(event)\n options.onSuccess?.(withoutType(event))\n }\n if (next.state === 'failed_retryable' || next.state === 'failed_terminal') {\n if (failureRevisionRef.current !== revision) {\n failureRevisionRef.current = revision\n const event = Domain0ConnectFailureEventSchema.parse({ type: 'failure', connection: next })\n emitEvent?.(event)\n options.onFailure?.(withoutType(event))\n }\n }\n }\n\n function showError(cause: unknown) {\n const normalized = emitDomain0ConnectError(options, cause, {\n ...(connection === undefined ? {} : { connection }),\n ...(currentStepRef.current === undefined ? {} : { step: currentStepRef.current }),\n })\n lastErrorRef.current = normalized\n setErrorMessage(cause instanceof Domain0Error\n ? localizer.apiError(cause.response.error.code)\n : cause instanceof Domain0TransportError\n ? messages.transportError\n : cause instanceof Domain0ProtocolError\n ? messages.protocolError\n : cause instanceof Error\n ? cause.message\n : messages.unknownError)\n setStatus('')\n }\n\n async function load() {\n const loadId = ++loadSequenceRef.current\n setErrorMessage('')\n setStatus(messages.loadingConnection)\n setScreen('loading')\n emitStep('loading', undefined)\n try {\n const [connectionResult, providerResult] = await Promise.all([\n options.client.getConnection(options.connectionId),\n options.client.listProviders(),\n ])\n if (loadId !== loadSequenceRef.current) return\n let next = connectionResult.connection\n setConnection(next)\n setProviders(providerResult.providers)\n setCandidates([])\n if (next.state === 'requested' || next.state === 'detecting_provider') {\n setScreen('provider_detection')\n setStatus('')\n emitStep('provider_detection', next)\n try {\n const detection = await options.client.detectProvider(options.connectionId)\n if (loadId !== loadSequenceRef.current) return\n next = detection.connection\n setCandidates(detection.candidates)\n } catch {\n setStatus(messages.detectionUnavailable)\n }\n }\n if (configuration.setupPolicy.mode === 'manual' && next.state === 'provider_selected') {\n const result = await options.client.startManualConfiguration(options.connectionId, {\n commandId: commandId(instanceId, 'forced-manual'),\n })\n next = result.connection\n }\n setStatus('')\n reportConnection(next)\n } catch (cause) {\n if (loadId === loadSequenceRef.current) showError(cause)\n }\n }\n\n function emitClose(trigger: Domain0ConnectCloseTrigger) {\n if (closeEmittedRef.current) return\n closeEmittedRef.current = true\n const event = Domain0ConnectCloseEventSchema.parse({\n type: 'close',\n trigger,\n outcome: connectOutcome(connection, lastErrorRef.current),\n connection,\n step: currentStepRef.current,\n error: lastErrorRef.current,\n })\n emitEvent?.(event)\n options.onClose?.(withoutType(event))\n }\n\n function close(trigger: Domain0ConnectCloseTrigger = 'programmatic') {\n if (!open) return\n loadSequenceRef.current += 1\n setOpen(false)\n if (presentation === 'modal' && dialogRef.current?.open) dialogRef.current.close()\n emitClose(trigger)\n const view = options.target.ownerDocument.defaultView\n ;(view?.setTimeout ?? setTimeout)(() => {\n if (returnFocusRef.current?.isConnected) returnFocusRef.current.focus()\n }, 0)\n }\n\n function requestClose() {\n if (options.onRequestClose === undefined) {\n close('close_button')\n return\n }\n const event = Domain0RequestCloseEventSchema.parse({\n type: 'request_close',\n connection,\n step: currentStepRef.current ?? 'loading',\n })\n emitEvent?.(event)\n options.onRequestClose(withoutType(event))\n }\n\n async function openConnect(invoker?: HTMLElement) {\n const active = invoker ?? options.target.ownerDocument.activeElement\n if (active instanceof HTMLElement && active !== options.target.ownerDocument.body) {\n returnFocusRef.current = active\n }\n currentStepRef.current = undefined\n closeEmittedRef.current = false\n successEmittedRef.current = false\n failureRevisionRef.current = undefined\n lastErrorRef.current = undefined\n setOpen(true)\n await load()\n await nextRender(options.target.ownerDocument.defaultView)\n }\n\n useImperativeHandle(ref, () => ({ close, open: openConnect }))\n\n useEffect(() => {\n const dialog = dialogRef.current\n if (presentation !== 'modal' || dialog === null) return\n if (open && !dialog.open) dialog.showModal()\n if (!open && dialog.open) dialog.close()\n }, [open, presentation])\n\n useEffect(() => {\n if (!open || presentation !== 'modal') return\n const frame = requestAnimationFrame(() => headingRef.current?.focus())\n return () => cancelAnimationFrame(frame)\n }, [open, screen, connection?.state, presentation])\n\n useEffect(() => {\n if (!open || connection === undefined || !POLLING_STATES.has(connection.state)) return\n const timer = setTimeout(async () => {\n try {\n const result = await options.client.getConnection(options.connectionId)\n const next = result.connection\n if (`${next.state}:${next.updatedAt}` !== `${connection.state}:${connection.updatedAt}`) {\n reportConnection(next)\n }\n } catch {\n // Polling is best-effort. The user can still refresh or continue the flow.\n }\n }, POLL_INTERVAL_MS)\n return () => clearTimeout(timer)\n }, [connection, open, options.client, options.connectionId])\n\n async function runAction(name: string, action: () => Promise<Connection>) {\n setPendingAction(name)\n setErrorMessage('')\n try {\n reportConnection(await action())\n } catch (cause) {\n showError(cause)\n } finally {\n setPendingAction(undefined)\n }\n }\n\n async function selectProvider(providerId: string) {\n await runAction('select-provider', async () => {\n const result = await options.client.selectProvider(options.connectionId, {\n providerId,\n commandId: commandId(instanceId, `select-${providerId}`),\n })\n if (configuration.setupPolicy.mode !== 'manual') return result.connection\n return (await options.client.startManualConfiguration(options.connectionId, {\n commandId: commandId(instanceId, 'manual'),\n })).connection\n })\n }\n\n const context: ViewContext = {\n authorizationUrl,\n candidates,\n configuration,\n connection,\n domainConnectUrl,\n errorMessage,\n instanceId,\n messages,\n options,\n pendingAction,\n providers,\n search,\n screen,\n setAuthorizationUrl,\n setDomainConnectUrl,\n setScreen,\n setSearch,\n setShowAlternatives,\n showAlternatives,\n status,\n close,\n load,\n reportConnection,\n runAction,\n selectProvider,\n showError,\n }\n\n const body = <ConnectView context={context} headingRef={headingRef} />\n const surface = (\n <Surface applicationName={configuration.applicationName} onClose={presentation === 'modal' ? requestClose : undefined}>\n {body}\n {errorMessage ? <div className=\"domain0-alert\" role=\"alert\">{messages.errorPrefix(errorMessage)}</div> : null}\n {status ? <p className=\"domain0-status\" role=\"status\">{status}</p> : null}\n </Surface>\n )\n\n return (\n <div className=\"domain0-app\">\n <Button className=\"domain0-trigger\" hidden={options.triggerHidden ?? false} onClick={(event) => void openConnect(event.currentTarget)}>\n {options.triggerLabel ?? messages.triggerConnectDomain}\n </Button>\n {presentation === 'inline' ? (\n <section aria-label={messages.headingConnectDomain} className=\"domain0-dialog domain0-dialog--inline\" hidden={!open}>\n {surface}\n </section>\n ) : (\n <dialog\n aria-label={messages.headingConnectDomain}\n className=\"domain0-dialog\"\n onCancel={(event) => { event.preventDefault(); close('escape') }}\n ref={dialogRef}\n >\n {surface}\n </dialog>\n )}\n </div>\n )\n})\n\ninterface ViewContext {\n readonly authorizationUrl: string | undefined\n readonly candidates: readonly ProviderCandidate[]\n readonly configuration: Domain0ConnectConfiguration\n readonly connection: Connection | undefined\n readonly domainConnectUrl: string | undefined\n readonly errorMessage: string\n readonly instanceId: string\n readonly messages: Domain0Messages\n readonly options: Domain0ConnectOptions\n readonly pendingAction: string | undefined\n readonly providers: readonly Provider[]\n readonly search: string\n readonly screen: Screen\n readonly showAlternatives: boolean\n readonly status: string\n readonly close: (trigger?: Domain0ConnectCloseTrigger) => void\n readonly load: () => Promise<void>\n readonly reportConnection: (connection: Connection) => void\n readonly runAction: (name: string, action: () => Promise<Connection>) => Promise<void>\n readonly selectProvider: (providerId: string) => Promise<void>\n readonly setAuthorizationUrl: (value: string | undefined) => void\n readonly setDomainConnectUrl: (value: string | undefined) => void\n readonly setScreen: (screen: Screen) => void\n readonly setSearch: (value: string) => void\n readonly setShowAlternatives: (value: boolean) => void\n readonly showError: (cause: unknown) => void\n}\n\nfunction ConnectView({ context, headingRef }: { readonly context: ViewContext; readonly headingRef: React.RefObject<HTMLHeadingElement | null> }) {\n if (context.screen === 'loading') {\n return <ProgressScreen heading={context.messages.headingConnectDomain} headingRef={headingRef} lead={context.messages.loadingConnection} status={context.messages.loadingConnection} />\n }\n if (context.screen === 'provider_detection') {\n const domain = context.connection?.intent.domain ?? ''\n return <ProgressScreen heading={context.messages.checkingDomain(domain)} headingRef={headingRef} lead={context.messages.nameserverDetectionGuidance} status={context.messages.resolvingNameservers} />\n }\n if (context.screen === 'cancellation_confirmation') {\n return <CancellationScreen context={context} headingRef={headingRef} />\n }\n if (context.connection === undefined) {\n return (\n <Centered>\n <Heading lead={context.messages.protocolError}><span ref={headingRef}>{context.messages.headingConnectDomain}</span></Heading>\n <Button onClick={() => void context.load()}>{context.messages.refreshConnection}</Button>\n </Centered>\n )\n }\n if (context.screen === 'provider_selection' || context.connection.provider === undefined) {\n return <ProviderSelection context={context} headingRef={headingRef} />\n }\n return <ConnectionScreen context={context} headingRef={headingRef} />\n}\n\nfunction ProgressScreen({ heading, headingRef, lead, status }: { readonly heading: string; readonly headingRef: React.RefObject<HTMLHeadingElement | null>; readonly lead: string; readonly status: string }) {\n return (\n <Centered>\n <ScanMark />\n <div className=\"domain0-heading-group\">\n <h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>{heading}</h2>\n <p className=\"domain0-lead\">{lead}</p>\n </div>\n <div className=\"domain0-progress-pill\"><span />{status}</div>\n </Centered>\n )\n}\n\nfunction ProviderSelection({ context, headingRef }: { readonly context: ViewContext; readonly headingRef: React.RefObject<HTMLHeadingElement | null> }) {\n const domain = context.connection?.intent.domain ?? ''\n const query = context.search.trim().toLowerCase()\n const candidateIds = new Set(context.candidates.map(({ provider }) => provider.id))\n const sorted = [...context.providers].sort((a, b) => Number(candidateIds.has(b.id)) - Number(candidateIds.has(a.id)) || a.name.localeCompare(b.name))\n const filtered = sorted.filter((provider) => provider.name.toLowerCase().includes(query))\n return (\n <div className=\"domain0-stack\">\n <Eyebrow>DNS provider</Eyebrow>\n <div className=\"domain0-heading-group\">\n <h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>Who runs DNS for {domain}?</h2>\n <p className=\"domain0-lead\">Pick the company where you sign in to manage this domain.</p>\n </div>\n <label className=\"domain0-search\">\n <SearchIcon />\n <span className=\"domain0-visually-hidden\">Search providers</span>\n <input onChange={(event) => context.setSearch(event.currentTarget.value)} placeholder={`Search ${context.providers.length} providers`} type=\"search\" value={context.search} />\n </label>\n <div className=\"domain0-provider-grid\">\n {filtered.map((provider) => (\n <button disabled={context.pendingAction !== undefined} key={provider.id} onClick={() => void context.selectProvider(provider.id)} type=\"button\">\n <span className=\"domain0-provider-grid__mark\">{provider.name.slice(0, 1).toUpperCase()}</span>\n <span>{provider.name}</span>\n {candidateIds.has(provider.id) ? <small>Suggested</small> : null}\n </button>\n ))}\n </div>\n </div>\n )\n}\n\nfunction ConnectionScreen({ context, headingRef }: { readonly context: ViewContext; readonly headingRef: React.RefObject<HTMLHeadingElement | null> }) {\n const connection = context.connection!\n if (context.pendingAction === 'apply') {\n return <ProgressScreen heading={context.messages.connectingDomain(connection.intent.domain)} headingRef={headingRef} lead={context.messages.applyingProgressGuidance} status={context.messages.applyingVerifiedChanges} />\n }\n if (context.pendingAction === 'plan' || context.pendingAction === 'confirm') {\n return <ProgressScreen heading={context.messages.connectingDomain(connection.intent.domain)} headingRef={headingRef} lead={context.messages.readingRecords} status={context.messages.readingRecords} />\n }\n switch (connection.state) {\n case 'provider_selected': return <ProviderConnection context={context} headingRef={headingRef} />\n case 'authorization_pending': return <AuthorizationPending context={context} headingRef={headingRef} />\n case 'domain_connect_pending': return <DomainConnectPending context={context} headingRef={headingRef} />\n case 'authorized': return <PlanSetup context={context} headingRef={headingRef} />\n case 'planning': return <ProgressScreen heading={context.messages.connectingDomain(connection.intent.domain)} headingRef={headingRef} lead={context.messages.readingRecords} status={context.messages.readingRecords} />\n case 'awaiting_confirmation': return <PlanReview context={context} headingRef={headingRef} />\n case 'applying': return <ApplyPlan context={context} headingRef={headingRef} />\n case 'manual_required': return <ManualRecords context={context} headingRef={headingRef} />\n case 'propagation_pending': return <Propagation context={context} headingRef={headingRef} />\n case 'active': return <Success context={context} headingRef={headingRef} />\n case 'failed_retryable': return <Failure context={context} headingRef={headingRef} failure={connection.failure} />\n case 'failed_terminal': return <Failure context={context} headingRef={headingRef} />\n case 'cancelled': return <Cancelled context={context} headingRef={headingRef} />\n default: return <ProgressScreen heading={context.messages.headingConnectDomain} headingRef={headingRef} lead={context.messages.currentState(connection.state)} status={context.messages.loadingConnection} />\n }\n}\n\nfunction ProviderConnection({ context, headingRef }: ScreenProps) {\n const connection = context.connection!\n const provider = connection.provider!\n const method = preferredMethod(provider)\n const isOauth = method === 'oauth2_pkce' || method === 'oauth2_authorization_code'\n return (\n <Centered>\n <ProviderChip domain={connection.intent.domain} providerId={provider.id} providerName={provider.name} />\n <div className=\"domain0-heading-group\">\n <h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>Connect your {provider.name} domain to {context.configuration.applicationName ?? 'your app'}</h2>\n <p className=\"domain0-lead\">Sign in securely. Your provider password is never shared with Domain0.</p>\n </div>\n {isOauth && !context.showAlternatives ? (\n <div className=\"domain0-actions\">\n <Button loading={context.pendingAction === 'oauth'} onClick={() => void startOAuth(context)}>\n Continue with {provider.name}\n </Button>\n <Button onClick={() => context.setShowAlternatives(true)} variant=\"ghost\">Connect another way</Button>\n </div>\n ) : (\n <AlternativeMethods context={context} method={method} provider={provider} />\n )}\n </Centered>\n )\n}\n\nfunction AlternativeMethods({ context, method, provider }: { readonly context: ViewContext; readonly method: AuthorizationMethod | undefined; readonly provider: Provider }) {\n const credentialKind = credentialKindForProvider(provider.id)\n return (\n <div className=\"domain0-actions domain0-actions--wide\">\n {credentialKind !== undefined && method !== 'manual' ? <CredentialForm context={context} kind={credentialKind} provider={provider} /> : null}\n {provider.implementation === 'domain_connect' ? <Button onClick={() => void startDomainConnect(context)}>{context.messages.connectWithProvider(provider.name)}</Button> : null}\n <Button loading={context.pendingAction === 'manual'} onClick={() => void context.runAction('manual', async () => (await context.options.client.startManualConfiguration(context.options.connectionId, { commandId: commandId(context.instanceId, 'manual') })).connection)} variant={credentialKind ? 'secondary' : 'primary'}>\n {context.messages.showDnsRecords}\n </Button>\n {context.showAlternatives ? <Button onClick={() => context.setShowAlternatives(false)} variant=\"ghost\">Back</Button> : null}\n </div>\n )\n}\n\nfunction CredentialForm({ context, kind, provider }: { readonly context: ViewContext; readonly kind: DirectCredentialKind; readonly provider: Provider }) {\n const fields = credentialFields(kind, context.messages)\n async function submit(event: FormEvent<HTMLFormElement>) {\n event.preventDefault()\n const values = Object.fromEntries(new FormData(event.currentTarget).entries())\n const input = AuthorizeWithCredentialInputSchema.parse({\n providerId: provider.id,\n credentials: { kind, ...values },\n commandId: commandId(context.instanceId, 'credential'),\n })\n await context.runAction('credential', async () => (await context.options.client.authorizeWithCredential(context.options.connectionId, input)).connection)\n }\n return (\n <form className=\"domain0-form\" onSubmit={(event) => void submit(event)}>\n {fields.map((field) => <label key={field.name}><span>{field.label}</span><input name={field.name} required type={field.type ?? 'text'} /></label>)}\n <Button loading={context.pendingAction === 'credential'} type=\"submit\">Authorize {provider.name}</Button>\n </form>\n )\n}\n\nasync function startOAuth(context: ViewContext) {\n context.setAuthorizationUrl(undefined)\n await context.runAction('oauth', async () => {\n const result = await context.options.client.startOAuth(context.options.connectionId, { commandId: commandId(context.instanceId, 'oauth') })\n context.setAuthorizationUrl(result.authorizationUrl)\n context.options.target.ownerDocument.defaultView?.open(result.authorizationUrl, '_blank', 'noopener,noreferrer')\n return result.connection\n })\n}\n\nfunction AuthorizationPending({ context, headingRef }: ScreenProps) {\n const connection = context.connection!\n const provider = connection.provider!\n return (\n <Centered>\n <ProviderChip domain={connection.intent.domain} providerId={provider.id} providerName={provider.name} />\n <div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>Finish signing in to {provider.name}</h2><p className=\"domain0-lead\">Complete the secure provider window, then return here.</p></div>\n <div className=\"domain0-actions\">\n {context.authorizationUrl ? <a className=\"domain0-button domain0-button--primary\" href={context.authorizationUrl} rel=\"noreferrer\" target=\"_blank\">Return to {provider.name}</a> : null}\n <Button loading={context.pendingAction === 'refresh'} onClick={() => void context.runAction('refresh', async () => (await context.options.client.getConnection(context.options.connectionId)).connection)}>I completed authorization</Button>\n </div>\n </Centered>\n )\n}\n\nasync function startDomainConnect(context: ViewContext) {\n if (context.options.domainConnectTemplate === undefined) return\n await context.runAction('domain-connect', async () => {\n const result = await context.options.client.startDomainConnect(context.options.connectionId, { ...context.options.domainConnectTemplate!, commandId: commandId(context.instanceId, 'domain-connect') })\n context.setDomainConnectUrl(result.handoffUrl)\n context.options.target.ownerDocument.defaultView?.open(result.handoffUrl, '_blank', 'noopener,noreferrer')\n return result.connection\n })\n}\n\nfunction DomainConnectPending({ context, headingRef }: ScreenProps) {\n const provider = context.connection!.provider!\n return <Centered><ProviderChip domain={context.connection!.intent.domain} providerId={provider.id} providerName={provider.name} /><div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>Finish with {provider.name}</h2><p className=\"domain0-lead\">Approve the exact Domain Connect template, then return here.</p></div><div className=\"domain0-actions\">{context.domainConnectUrl ? <a className=\"domain0-button domain0-button--primary\" href={context.domainConnectUrl} rel=\"noreferrer\" target=\"_blank\">Open {provider.name}</a> : null}<Button onClick={() => void context.runAction('domain-connect-done', async () => (await context.options.client.submitDomainConnectCompletion(context.options.connectionId, { commandId: commandId(context.instanceId, 'domain-connect-done') })).connection)}>I completed Domain Connect</Button></div></Centered>\n}\n\nfunction PlanSetup({ context, headingRef }: ScreenProps) {\n const [conflictPolicy, setConflictPolicy] = useState<'preserve' | 'replace_same_name_and_type' | 'replace_all_at_name'>('preserve')\n return <StateLayout context={context} heading=\"Review the DNS change\" headingRef={headingRef} lead=\"Domain0 reads the current records first, then proposes only the changes this connection needs.\"><label className=\"domain0-field\"><span>Existing record policy</span><select onChange={(event) => setConflictPolicy(event.currentTarget.value as typeof conflictPolicy)} value={conflictPolicy}><option value=\"preserve\">Preserve existing records</option><option value=\"replace_same_name_and_type\">Replace same host and type</option><option value=\"replace_all_at_name\">Replace all conflicts at this host</option></select></label><Button loading={context.pendingAction === 'plan'} onClick={() => void context.runAction('plan', async () => (await context.options.client.preparePlan(context.options.connectionId, { conflictPolicy, spfPolicy: 'merge', commandId: commandId(context.instanceId, 'plan') })).connection)}>Review DNS changes</Button></StateLayout>\n}\n\nfunction PlanReview({ context, headingRef }: ScreenProps) {\n const plan = context.connection!.plan\n const [confirmed, setConfirmed] = useState(false)\n if (plan === undefined) return <MissingState context={context} headingRef={headingRef} />\n const destructive = plan.changes.some((change) => change.destructive)\n return <StateLayout context={context} heading=\"Review DNS changes\" headingRef={headingRef} lead=\"Nothing is changed until you confirm this exact plan.\"><ChangeTable plan={plan} />{destructive ? <label className=\"domain0-check\"><input checked={confirmed} onChange={(event) => setConfirmed(event.currentTarget.checked)} type=\"checkbox\" /><span>I understand the marked records will be replaced or removed.</span></label> : null}<Button disabled={destructive && !confirmed} loading={context.pendingAction === 'confirm'} onClick={() => void context.runAction('confirm', async () => (await context.options.client.confirmPlan(context.options.connectionId, { digest: plan.digest, allowDestructive: confirmed, commandId: commandId(context.instanceId, 'confirm') })).connection)}>Confirm changes</Button></StateLayout>\n}\n\nfunction ApplyPlan({ context, headingRef }: ScreenProps) {\n return <StateLayout context={context} heading={`Ready to connect ${context.connection!.intent.domain}`} headingRef={headingRef} lead=\"The verified plan is ready. Domain0 will update only these records.\">{context.connection!.plan ? <ChangeTable plan={context.connection!.plan!} /> : null}<Button loading={context.pendingAction === 'apply'} onClick={() => void context.runAction('apply', async () => (await context.options.client.applyPlan(context.options.connectionId, { commandId: commandId(context.instanceId, 'apply') })).connection)}>Apply DNS changes</Button></StateLayout>\n}\n\nfunction ManualRecords({ context, headingRef }: ScreenProps) {\n const records = effectiveRecords(context.connection!)\n return <StateLayout context={context} eyebrow=\"Manual setup\" heading=\"Add these DNS records\" headingRef={headingRef} lead=\"Copy the exact values into your DNS provider. Domain0 checks them directly on every authoritative nameserver.\"><RecordTable records={records} /><Button loading={context.pendingAction === 'manual-done'} onClick={() => void context.runAction('manual-done', async () => (await context.options.client.submitManualCompletion(context.options.connectionId, { commandId: commandId(context.instanceId, 'manual-done') })).connection)}>I added these records</Button></StateLayout>\n}\n\nfunction Propagation({ context, headingRef }: ScreenProps) {\n return <StateLayout context={context} eyebrow=\"Verification\" heading=\"Check your DNS records\" headingRef={headingRef} lead=\"DNS can take a little time to reach every authoritative nameserver.\"><RecordTable records={effectiveRecords(context.connection!)} /><Button loading={context.pendingAction === 'verify'} onClick={() => void context.runAction('verify', async () => (await context.options.client.verifyPropagation(context.options.connectionId, { commandId: commandId(context.instanceId, 'verify') })).connection)}>Verify DNS records</Button></StateLayout>\n}\n\nfunction Success({ context, headingRef }: ScreenProps) {\n const connection = context.connection!\n return <Centered><SuccessMark /><Eyebrow tone=\"accent\">Verified on every nameserver</Eyebrow><div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>{connection.intent.domain} is connected</h2><p className=\"domain0-lead\">These records are live. Nothing else on the domain was touched.</p></div><RecordSummary records={effectiveRecords(connection)} /><Button className=\"domain0-completion\" onClick={() => context.close('close_button')} variant=\"secondary\">Back to {context.configuration.applicationName ?? 'application'}</Button></Centered>\n}\n\nfunction Failure({ context, failure, headingRef }: ScreenProps & { readonly failure?: ConnectionFailure | undefined }) {\n const connection = context.connection!\n const detail = failure?.code === 'provider_apply_timeout' ? context.messages.applyTimeout : failure?.code === 'provider_snapshot_timeout' ? context.messages.snapshotTimeout : 'The connection could not be completed.'\n return <Centered><FailureMark /><Eyebrow tone=\"danger\">Needs attention</Eyebrow><div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>{connection.intent.domain} needs attention</h2><p className=\"domain0-lead\">{detail}</p></div>{failure ? <time className=\"domain0-time\" dateTime={failure.occurredAt}>{failure.occurredAt}</time> : null}{failure ? <Button loading={context.pendingAction === 'retry'} onClick={() => void context.runAction('retry', async () => (await context.options.client.retryConnection(context.options.connectionId, { commandId: commandId(context.instanceId, 'retry') })).connection)}>Retry connection</Button> : null}</Centered>\n}\n\nfunction Cancelled({ context, headingRef }: ScreenProps) {\n return <Centered><FailureMark /><Eyebrow>Cancelled</Eyebrow><div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>Connection cancelled</h2><p className=\"domain0-lead\">No further DNS changes will be applied.</p></div><Button onClick={() => context.close('close_button')} variant=\"secondary\">Close</Button></Centered>\n}\n\nfunction CancellationScreen({ context, headingRef }: ScreenProps) {\n return <StateLayout context={context} heading=\"Cancel this connection?\" headingRef={headingRef} lead=\"Cancellation stops this workflow. It does not remove records that were already applied.\"><div className=\"domain0-actions domain0-actions--row\"><Button onClick={() => context.setScreen('connection')} variant=\"secondary\">Keep connection</Button><Button loading={context.pendingAction === 'cancel'} onClick={() => void context.runAction('cancel', async () => (await context.options.client.cancelConnection(context.options.connectionId, { commandId: commandId(context.instanceId, 'cancel') })).connection)} variant=\"danger\">Cancel connection</Button></div></StateLayout>\n}\n\ninterface ScreenProps { readonly context: ViewContext; readonly headingRef: React.RefObject<HTMLHeadingElement | null> }\n\nfunction StateLayout({ children, context, eyebrow, heading, headingRef, lead }: ScreenProps & { readonly children: ReactNode; readonly eyebrow?: string; readonly heading: string; readonly lead: string }) {\n const provider = context.connection?.provider\n return <div className=\"domain0-stack\">{provider && context.connection ? <ProviderChip domain={context.connection.intent.domain} providerId={provider.id} providerName={provider.name} /> : null}{eyebrow ? <Eyebrow>{eyebrow}</Eyebrow> : null}<div className=\"domain0-heading-group\"><h2 className=\"domain0-heading\" ref={headingRef} tabIndex={-1}>{heading}</h2><p className=\"domain0-lead\">{lead}</p></div>{children}</div>\n}\n\nfunction MissingState({ context, headingRef }: ScreenProps) {\n return <StateLayout context={context} heading=\"Refresh this connection\" headingRef={headingRef} lead=\"The server did not return the data required for this step.\"><Button onClick={() => void context.load()}>Refresh connection</Button></StateLayout>\n}\n\nfunction ChangeTable({ plan }: { readonly plan: ChangePlan }) {\n return <div aria-label=\"Proposed DNS changes\" className=\"domain0-table-region\" role=\"region\" tabIndex={0}><table><thead><tr><th>Action</th><th>Host</th><th>Value</th></tr></thead><tbody>{plan.changes.map((change, index) => { const record = change.after ?? change.before; return <tr key={`${record?.host ?? 'record'}-${index}`}><td><span className={change.destructive ? 'domain0-badge domain0-badge--danger' : 'domain0-badge'}>{change.action}</span></td><td><code>{record?.host ?? '—'}</code><small>{record?.type}</small></td><td><code>{record?.value ?? '—'}</code></td></tr> })}</tbody></table></div>\n}\n\nfunction RecordTable({ records }: { readonly records: readonly DnsRecord[] }) {\n if (records.length === 0) return <p className=\"domain0-empty\">No record changes are required.</p>\n return <div aria-label=\"DNS records\" className=\"domain0-table-region\" role=\"region\" tabIndex={0}><table><thead><tr><th>Type</th><th>Host</th><th>Value</th></tr></thead><tbody>{records.map((record, index) => <tr key={`${record.type}-${record.host}-${index}`}><td><span className=\"domain0-record-type\">{record.type}</span></td><td><code>{record.host}</code></td><td><div className=\"domain0-record-value\"><code>{record.value}</code><button aria-label={`Copy ${record.host} value`} onClick={() => void navigator.clipboard.writeText(record.value)} type=\"button\"><CopyIcon /></button></div><small>TTL {record.ttl}{record.priority === undefined ? '' : ` · Priority ${record.priority}`}{record.optional ? ' · Optional' : ''}</small></td></tr>)}</tbody></table></div>\n}\n\nfunction RecordSummary({ records }: { readonly records: readonly DnsRecord[] }) {\n return <div className=\"domain0-record-summary\">{records.slice(0, 3).map((record) => <div key={`${record.type}-${record.host}`}><span>{record.type}</span><code>{record.host}</code><small>Live</small></div>)}</div>\n}\n\nfunction Centered({ children }: { readonly children: ReactNode }) { return <div className=\"domain0-centered\">{children}</div> }\n\nfunction effectiveRecords(connection: Connection): readonly DnsRecord[] { return connection.effectiveIntent?.records ?? connection.intent.records }\nfunction preferredMethod(provider: Provider): AuthorizationMethod | undefined { return provider.availableAuthorizationMethods[0] }\nfunction credentialKindForProvider(providerId: string): DirectCredentialKind | undefined { return Object.prototype.hasOwnProperty.call(directCredentialKindByProvider, providerId) ? directCredentialKindByProvider[providerId as keyof typeof directCredentialKindByProvider] : undefined }\nfunction credentialFields(kind: DirectCredentialKind, messages: Domain0Messages): readonly { readonly name: string; readonly label: string; readonly type?: 'text' | 'password' | 'datetime-local' }[] {\n switch (kind) {\n case 'api_token': return [{ name: 'token', label: messages.fieldApiToken, type: 'password' }]\n case 'access_key': return [{ name: 'keyId', label: messages.fieldAccessKeyId }, { name: 'secret', label: messages.fieldApiSecret, type: 'password' }]\n case 'username_password': return [{ name: 'username', label: messages.fieldUsername }, { name: 'password', label: messages.fieldPassword, type: 'password' }]\n case 'account_token': return [{ name: 'accountId', label: messages.fieldAccountId }, { name: 'token', label: messages.fieldApiToken, type: 'password' }]\n case 'username_token': return [{ name: 'username', label: messages.fieldUsername }, { name: 'token', label: messages.fieldApiToken, type: 'password' }]\n case 'ovh': return [{ name: 'endpoint', label: messages.fieldOvhRegion }, { name: 'applicationKey', label: messages.fieldApplicationKey }, { name: 'applicationSecret', label: messages.fieldApplicationSecret, type: 'password' }, { name: 'consumerKey', label: messages.fieldConsumerKey, type: 'password' }]\n case 'private_key': return [{ name: 'login', label: messages.fieldProviderLogin }, { name: 'privateKey', label: messages.fieldPemPrivateKey, type: 'password' }]\n case 'aws_session': return [{ name: 'keyId', label: messages.fieldAwsAccessKeyId }, { name: 'secret', label: messages.fieldAwsSecretAccessKey, type: 'password' }, { name: 'sessionToken', label: messages.fieldAwsSessionToken, type: 'password' }, { name: 'hostedZoneId', label: messages.fieldRoute53ZoneId }, { name: 'expiresAt', label: messages.fieldSessionExpiration, type: 'datetime-local' }]\n case 'cpanel': return [{ name: 'endpoint', label: messages.fieldCpanelEndpoint }, { name: 'username', label: messages.fieldCpanelUsername }, { name: 'token', label: messages.fieldCpanelApiToken, type: 'password' }]\n case 'client_credentials': return [{ name: 'clientId', label: messages.fieldStorefrontClientId }, { name: 'clientSecret', label: messages.fieldStorefrontClientSecret, type: 'password' }]\n }\n}\nfunction commandId(instanceId: string, operation: string): string { return `${instanceId}-${operation}-${globalThis.crypto?.randomUUID?.() ?? Date.now()}` }\nfunction connectOutcome(connection: Connection | undefined, error: Domain0ConnectError | undefined): 'success' | 'failure' | 'cancelled' | 'incomplete' { if (connection?.state === 'active') return 'success'; if (error || connection?.state === 'failed_retryable' || connection?.state === 'failed_terminal') return 'failure'; return connection?.state === 'cancelled' ? 'cancelled' : 'incomplete' }\nfunction withoutType<T extends { readonly type: string }>(event: T): Omit<T, 'type'> { const { type: _type, ...payload } = event; return payload }\nfunction nextRender(view: Window | null): Promise<void> { return new Promise((resolve) => { if (view?.requestAnimationFrame) view.requestAnimationFrame(() => resolve()); else setTimeout(resolve, 0) }) }\n","export const domain0Styles = `\n.domain0-root {\n --domain0-light-bg: #ffffff; --domain0-light-text: #0a0a0a; --domain0-light-muted: #6b6b6b; --domain0-light-border: #73737c; --domain0-light-primary: #0a0a0a; --domain0-light-primary-text: #ffffff; --domain0-light-link: #2b21ff; --domain0-light-focus: #2b21ff; --domain0-light-danger: #b3261e; --domain0-light-danger-text: #ffffff;\n --domain0-dark-bg: #111827; --domain0-dark-text: #f9fafb; --domain0-dark-muted: #d1d5db; --domain0-dark-border: #d1d5db; --domain0-dark-primary: #bfdbfe; --domain0-dark-primary-text: #172554; --domain0-dark-link: #bfdbfe; --domain0-dark-focus: #fbbf24; --domain0-dark-danger: #fca5a5; --domain0-dark-danger-text: #450a0a;\n --domain0-bg: var(--domain0-light-bg); --domain0-text: var(--domain0-light-text); --domain0-muted: var(--domain0-light-muted); --domain0-border: var(--domain0-light-border); --domain0-primary: var(--domain0-light-primary); --domain0-primary-text: var(--domain0-light-primary-text); --domain0-link: var(--domain0-light-link); --domain0-focus: var(--domain0-light-focus); --domain0-danger: var(--domain0-light-danger); --domain0-danger-text: var(--domain0-light-danger-text);\n --domain0-backdrop: #2b21ff26; --domain0-dialog-width: 500px; --domain0-dialog-radius: 20px; --domain0-button-radius: 999px; --domain0-input-radius: 12px; --domain0-font-family: \"PP Neue Montreal\", \"Inter Tight\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; --domain0-font-weight: 400; --domain0-bold-font-weight: 500; --domain0-hairline: color-mix(in srgb, var(--domain0-text) 12%, transparent);\n color: var(--domain0-text); color-scheme: light; font-family: var(--domain0-font-family); font-weight: var(--domain0-font-weight); line-height: 1.45;\n}\n.domain0-root[data-color-mode=\"dark\"] { --domain0-bg: var(--domain0-dark-bg); --domain0-text: var(--domain0-dark-text); --domain0-muted: var(--domain0-dark-muted); --domain0-border: var(--domain0-dark-border); --domain0-primary: var(--domain0-dark-primary); --domain0-primary-text: var(--domain0-dark-primary-text); --domain0-link: var(--domain0-dark-link); --domain0-focus: var(--domain0-dark-focus); --domain0-danger: var(--domain0-dark-danger); --domain0-danger-text: var(--domain0-dark-danger-text); color-scheme: dark; }\n.domain0-root *, .domain0-root *::before, .domain0-root *::after { box-sizing: border-box; }\n.domain0-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }\n.domain0-app { color: var(--domain0-text); }\n.domain0-dialog { width: min(calc(100vw - 32px), var(--domain0-dialog-width)); max-width: none; max-height: min(760px, calc(100dvh - 32px)); padding: 0; border: 0; border-radius: var(--domain0-dialog-radius); background: transparent; color: inherit; overflow: visible; }\n.domain0-dialog::backdrop { background: var(--domain0-backdrop); backdrop-filter: blur(14px); }\n.domain0-dialog--inline { display: block; width: min(100%, var(--domain0-dialog-width)); max-height: none; margin: 0 auto; }\n.domain0-dialog--inline[hidden] { display: none; }\n.domain0-panel { position: relative; display: flex; min-height: 520px; max-height: min(760px, calc(100dvh - 32px)); flex-direction: column; overflow: hidden; border: 1px solid var(--domain0-hairline); border-radius: var(--domain0-dialog-radius); background: var(--domain0-bg); box-shadow: 0 30px 80px rgb(40 35 90 / 14%); }\n.domain0-dialog--inline .domain0-panel { max-height: none; box-shadow: 0 20px 60px rgb(40 35 90 / 10%); }\n.domain0-content { display: flex; flex: 1; min-height: 0; flex-direction: column; overflow: auto; padding: 58px 44px 28px; scrollbar-gutter: stable; }\n.domain0-close { position: absolute; z-index: 2; top: 22px; right: 22px; display: grid; width: 34px; height: 34px; padding: 0; place-items: center; border: 0; border-radius: 999px; background: #f2f2f2; color: #242424; cursor: pointer; transition: background 150ms ease, transform 150ms ease; }\n.domain0-close:hover { background: #e9e9e9; } .domain0-close:active { transform: scale(.96); } .domain0-close svg { width: 18px; height: 18px; }\n.domain0-footer { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 54px; padding: 12px 24px 17px; color: #686868; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }\n.domain0-footer__mark { width: 17px; height: 17px; color: #686868; }\n.domain0-centered, .domain0-stack { display: flex; width: 100%; flex: 1; flex-direction: column; align-items: center; }\n.domain0-centered { justify-content: center; text-align: center; } .domain0-stack { justify-content: flex-start; }\n.domain0-heading-group { display: flex; width: 100%; flex-direction: column; align-items: center; gap: 12px; text-align: center; }\n.domain0-heading { max-width: 430px; margin: 0; color: var(--domain0-text); font-size: clamp(25px, 5vw, 31px); font-weight: var(--domain0-bold-font-weight); letter-spacing: -.035em; line-height: 1.08; outline: none; text-wrap: balance; }\n.domain0-lead { max-width: 420px; margin: 0; color: var(--domain0-muted); font-size: 15px; line-height: 1.55; text-wrap: pretty; }\n.domain0-eyebrow { margin: 0 0 16px; color: #777; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; font-weight: 600; letter-spacing: .17em; text-transform: uppercase; }\n.domain0-eyebrow--accent { color: var(--domain0-link); } .domain0-eyebrow--danger { color: var(--domain0-danger); }\n.domain0-provider-chip { display: inline-flex; max-width: 100%; align-items: center; gap: 11px; margin-bottom: 30px; color: var(--domain0-text); text-align: left; }\n.domain0-provider-chip__mark { display: grid; width: 38px; height: 38px; flex: none; place-items: center; border-radius: 10px; color: #fff; }\n.domain0-provider-chip__mark svg { width: 22px; height: 22px; }\n.domain0-provider-chip__copy { display: flex; min-width: 0; flex-direction: column; gap: 2px; }\n.domain0-provider-chip__copy small { color: var(--domain0-muted); font-size: 11px; line-height: 1.2; }\n.domain0-provider-chip__copy code { overflow: hidden; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; line-height: 1.35; text-overflow: ellipsis; }\n.domain0-actions { display: flex; width: 100%; flex-direction: column; align-items: stretch; gap: 10px; margin-top: 32px; } .domain0-actions--wide { margin-top: 24px; } .domain0-actions--row { display: grid; grid-template-columns: 1fr 1fr; }\n.domain0-button, a.domain0-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 0 20px; border: 1px solid transparent; border-radius: var(--domain0-button-radius); font: inherit; font-size: 14px; font-weight: var(--domain0-bold-font-weight); line-height: 1; text-decoration: none; cursor: pointer; transition: background 150ms ease, border-color 150ms ease, color 150ms ease, transform 150ms ease; }\n.domain0-button--primary { border-color: var(--domain0-primary); background: var(--domain0-primary); color: var(--domain0-primary-text); } .domain0-button--primary:hover { filter: brightness(.92); }\n.domain0-button--secondary { border-color: var(--domain0-hairline); background: transparent; color: var(--domain0-text); } .domain0-button--secondary:hover { border-color: var(--domain0-text); background: color-mix(in srgb, var(--domain0-bg) 95%, var(--domain0-text)); }\n.domain0-button--ghost { min-height: 40px; border-color: transparent; background: transparent; color: var(--domain0-muted); } .domain0-button--ghost:hover { color: var(--domain0-text); }\n.domain0-button--danger { border-color: var(--domain0-danger); background: transparent; color: var(--domain0-danger); }\n.domain0-button:active { transform: scale(.995); } .domain0-button:disabled { cursor: not-allowed; opacity: .45; transform: none; } .domain0-button svg { width: 16px; height: 16px; }\n.domain0-spinner { width: 15px; height: 15px; border: 1.5px solid currentColor; border-right-color: transparent; border-radius: 999px; animation: domain0-spin .7s linear infinite; }\n.domain0-completion:hover { border-color: var(--domain0-text); background: var(--domain0-text); color: var(--domain0-bg); } .domain0-trigger[hidden] { display: none; }\n.domain0-scan-mark { width: 134px; height: 134px; margin-bottom: 30px; color: #2b21ff; }\n.domain0-scan-mark__screen { animation: domain0-dither-wave 2.4s ease-in-out infinite; transform-box: fill-box; transform-origin: center; will-change: transform, opacity; }\n.domain0-scan-mark__center { fill: var(--domain0-bg); }\n.domain0-scan-mark__glyph { color: var(--domain0-text); }\n.domain0-progress-pill { display: inline-flex; align-items: center; gap: 9px; margin-top: 25px; padding: 9px 15px; border-radius: 999px; background: #edecff; color: #2b21ff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }\n.domain0-progress-pill > span { width: 6px; height: 6px; border-radius: 999px; background: #2b21ff; animation: domain0-pulse 1.2s ease-in-out infinite; }\n.domain0-result-mark { display: grid; width: 64px; height: 64px; margin-bottom: 26px; place-items: center; border-radius: 999px; } .domain0-result-mark svg { width: 32px; height: 32px; }\n.domain0-result-mark--success { background: #edecff; color: #2b21ff; } .domain0-result-mark--failure { background: #fff0ee; color: var(--domain0-danger); font-size: 28px; font-weight: 500; }\n.domain0-search { display: flex; width: 100%; height: 50px; align-items: center; gap: 10px; margin-top: 26px; padding: 0 15px; border: 1px solid var(--domain0-hairline); border-radius: var(--domain0-input-radius); }\n.domain0-search svg { width: 17px; color: #999; } .domain0-search input { min-width: 0; flex: 1; border: 0; outline: 0; background: transparent; color: inherit; font: inherit; font-size: 15px; }\n.domain0-provider-grid { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin-top: 12px; }\n.domain0-provider-grid button { position: relative; display: flex; min-height: 76px; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--domain0-hairline); border-radius: 12px; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }\n.domain0-provider-grid button:hover { border-color: var(--domain0-text); background: color-mix(in srgb, var(--domain0-bg) 96%, var(--domain0-text)); }\n.domain0-provider-grid__mark { display: grid; width: 32px; height: 32px; flex: none; place-items: center; border-radius: 999px; background: #0a0a0a; color: #fff; font-size: 13px; }\n.domain0-provider-grid small { position: absolute; top: 5px; right: 7px; color: var(--domain0-link); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }\n.domain0-form { display: flex; width: 100%; flex-direction: column; gap: 12px; }\n.domain0-form label, .domain0-field { display: flex; width: 100%; flex-direction: column; gap: 7px; color: var(--domain0-muted); font-size: 12px; text-align: left; }\n.domain0-form input, .domain0-field select { width: 100%; min-height: 46px; padding: 0 14px; border: 1px solid var(--domain0-hairline); border-radius: var(--domain0-input-radius); outline: 0; background: var(--domain0-bg); color: var(--domain0-text); font: inherit; }\n.domain0-form input:focus, .domain0-field select:focus, .domain0-search:focus-within { border-color: var(--domain0-focus); box-shadow: 0 0 0 3px color-mix(in srgb, var(--domain0-focus) 16%, transparent); }\n.domain0-field { margin-top: 28px; }\n.domain0-field + .domain0-button, .domain0-table-region + .domain0-button, .domain0-check + .domain0-button, .domain0-empty + .domain0-button { width: 100%; margin-top: 20px; }\n.domain0-table-region { width: 100%; margin-top: 26px; overflow-x: auto; border: 1px solid var(--domain0-hairline); border-radius: 13px; outline: none; }\n.domain0-table-region table { width: 100%; min-width: 410px; border-collapse: collapse; text-align: left; }\n.domain0-table-region th { padding: 10px 14px; border-bottom: 1px solid var(--domain0-hairline); color: #8b8b8b; font-size: 9px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }\n.domain0-table-region td { max-width: 250px; padding: 14px; border-bottom: 1px solid var(--domain0-hairline); vertical-align: top; font-size: 13px; } .domain0-table-region tbody tr:last-child td { border-bottom: 0; }\n.domain0-table-region code { display: block; overflow: hidden; color: var(--domain0-text); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }\n.domain0-table-region small { display: block; margin-top: 4px; color: var(--domain0-muted); font-size: 10px; }\n.domain0-record-type, .domain0-badge { display: inline-flex; padding: 4px 7px; border-radius: 6px; background: #f1f1f1; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; font-weight: 600; text-transform: uppercase; } .domain0-badge--danger { background: #fff0ee; color: var(--domain0-danger); }\n.domain0-record-value { display: grid; grid-template-columns: minmax(0, 1fr) 26px; gap: 6px; } .domain0-record-value button { display: grid; width: 26px; height: 26px; padding: 0; place-items: center; border: 0; border-radius: 6px; background: #f3f3f3; cursor: pointer; } .domain0-record-value svg { width: 14px; height: 14px; }\n.domain0-check { display: flex; align-items: flex-start; gap: 10px; margin-top: 18px; color: var(--domain0-muted); font-size: 12px; text-align: left; } .domain0-check input { margin-top: 2px; accent-color: var(--domain0-primary); }\n.domain0-empty { width: 100%; margin: 24px 0 0; padding: 18px; border-radius: 12px; background: #f7f7f7; color: var(--domain0-muted); font-size: 13px; text-align: center; }\n.domain0-record-summary { display: grid; width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 27px; }\n.domain0-record-summary > div { display: flex; min-width: 0; flex-direction: column; gap: 5px; padding: 12px; border: 1px solid var(--domain0-hairline); border-radius: 10px; text-align: left; }\n.domain0-record-summary span { color: #777; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; } .domain0-record-summary code { overflow: hidden; font-size: 11px; text-overflow: ellipsis; } .domain0-record-summary small { color: #2b21ff; font-size: 10px; }\n.domain0-record-summary + .domain0-button { width: 100%; margin-top: 20px; }\n.domain0-alert { width: 100%; margin-top: 18px; padding: 12px 14px; border-radius: 10px; background: #fff0ee; color: var(--domain0-danger); font-size: 12px; } .domain0-status { margin: 14px 0 0; color: var(--domain0-muted); font-size: 12px; text-align: center; }\n.domain0-time { margin-top: 17px; color: var(--domain0-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; } .domain0-time + .domain0-button { width: 100%; margin-top: 22px; }\n.domain0-stack > .domain0-button { width: 100%; margin-top: 22px; } .domain0-centered > .domain0-button { width: 100%; margin-top: 28px; }\n.domain0-root :where(button, a, input, select, [tabindex]):focus-visible { outline: 2px solid var(--domain0-focus); outline-offset: 3px; }\n@keyframes domain0-spin { to { transform: rotate(360deg); } } @keyframes domain0-dither-wave { 0%, 100% { opacity: .38; transform: scale(.94); } 45% { opacity: 1; transform: scale(1); } } @keyframes domain0-pulse { 50% { opacity: .35; transform: scale(.8); } }\n@media (max-width: 520px) { .domain0-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); } .domain0-panel { min-height: min(560px, calc(100dvh - 20px)); max-height: calc(100dvh - 20px); } .domain0-content { padding: 56px 22px 24px; } .domain0-close { top: 16px; right: 16px; } .domain0-heading { font-size: 25px; } .domain0-provider-grid { grid-template-columns: 1fr; } .domain0-actions--row { grid-template-columns: 1fr; } .domain0-record-summary { grid-template-columns: 1fr; } }\n@media (prefers-reduced-motion: reduce) { .domain0-root *, .domain0-root *::before, .domain0-root *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }\n@media (forced-colors: active) { .domain0-dialog, .domain0-panel, .domain0-button, .domain0-search, .domain0-provider-grid button, .domain0-table-region { border: 1px solid CanvasText; } .domain0-root :where(button, a, input, select, [tabindex]):focus-visible { outline: 3px solid Highlight; } }\n`\n","import type { Domain0ThemePalette, Domain0WhiteLabel } from '../contracts'\n\nconst paletteVariableNames = {\n surface: 'bg',\n text: 'text',\n mutedText: 'muted',\n border: 'border',\n primary: 'primary',\n onPrimary: 'primary-text',\n link: 'link',\n focus: 'focus',\n danger: 'danger',\n onDanger: 'danger-text',\n} as const satisfies Record<keyof Domain0ThemePalette, string>\n\nexport function applyWhiteLabel(root: HTMLElement, whiteLabel: Domain0WhiteLabel): void {\n const { theme } = whiteLabel\n root.dataset.colorMode = theme.colorMode\n\n applyPalette(root, 'light', theme.light)\n applyPalette(root, 'dark', theme.dark)\n\n setProperty(root, '--domain0-backdrop', theme.backdrop)\n setProperty(root, '--domain0-dialog-width', `${theme.widthPx}px`)\n setProperty(root, '--domain0-dialog-radius', `${theme.dialogRadiusPx}px`)\n setProperty(root, '--domain0-button-radius', `${theme.buttonRadiusPx}px`)\n setProperty(root, '--domain0-input-radius', `${theme.inputRadiusPx}px`)\n setProperty(root, '--domain0-font-family', theme.fontFamily)\n setProperty(root, '--domain0-font-weight', String(theme.fontWeight))\n setProperty(root, '--domain0-bold-font-weight', String(theme.boldFontWeight))\n if (whiteLabel.logoBackgroundColor !== undefined) {\n setProperty(root, '--domain0-logo-background', whiteLabel.logoBackgroundColor)\n }\n}\n\nexport function interpolateWhiteLabelCopy(\n template: string,\n replacements: Readonly<Record<string, string>>,\n): string {\n return template.replace(/\\{[A-Z]+\\}/g, (placeholder) => replacements[placeholder] ?? placeholder)\n}\n\nfunction applyPalette(\n root: HTMLElement,\n mode: 'light' | 'dark',\n palette: Domain0ThemePalette,\n): void {\n for (const [token, value] of Object.entries(palette) as Array<[\n keyof Domain0ThemePalette,\n string,\n ]>) {\n setProperty(root, `--domain0-${mode}-${paletteVariableNames[token]}`, value)\n }\n}\n\nfunction setProperty(root: HTMLElement, name: string, value: string): void {\n root.style.setProperty(name, value)\n}\n","import { createElement, createRef } from 'react'\nimport { flushSync } from 'react-dom'\nimport { createRoot, type Root } from 'react-dom/client'\n\nimport type { Domain0Client } from '../client'\nimport type {\n Connection,\n ConnectionId,\n DkimSelector,\n DomainConnectTemplate,\n Domain0ConnectCloseEvent as Domain0ConnectCloseContractEvent,\n Domain0ConnectCloseTrigger as Domain0ConnectCloseTriggerContract,\n Domain0ConnectErrorEvent as Domain0ConnectErrorContractEvent,\n Domain0ConnectEvent,\n Domain0ConnectFailureEvent as Domain0ConnectFailureContractEvent,\n Domain0ConnectStep as Domain0ConnectStepContract,\n Domain0ConnectStepChangeEvent as Domain0ConnectStepChangeContractEvent,\n Domain0ConnectSuccessEvent as Domain0ConnectSuccessContractEvent,\n Domain0DkimSetupDocumentationClickEvent as Domain0DkimSetupDocumentationClickContractEvent,\n Domain0Locale,\n Domain0ManualSetupDocumentationClickEvent as Domain0ManualSetupDocumentationClickContractEvent,\n Domain0RequestCloseEvent as Domain0RequestCloseContractEvent,\n Domain0SetupPolicyInput,\n Domain0SharedFlowSentEvent as Domain0SharedFlowSentContractEvent,\n Domain0WhiteLabelInput,\n ManualSetupDocumentationUrlInput,\n SharedFlowInvitationInput,\n SharedFlowInvitationUrl,\n} from '../contracts'\nimport { Domain0ConnectConfigurationSchema } from '../contracts'\nimport { emitDomain0ConnectError } from './connect-error'\nimport { ConnectApp, type ConnectAppHandle } from './connect-app'\nimport { createDomain0Localizer } from './localization'\nimport { domain0Styles } from './styles'\nimport { applyWhiteLabel } from './white-label'\n\ntype EventPayload<TEvent extends { readonly type: string }> = Omit<TEvent, 'type'>\n\nexport type Domain0ConnectStep = Domain0ConnectStepContract\nexport type Domain0ConnectCloseTrigger = Domain0ConnectCloseTriggerContract\nexport type Domain0ActiveConnection = Domain0ConnectSuccessContractEvent['connection']\nexport type Domain0ConnectSuccessEvent = EventPayload<Domain0ConnectSuccessContractEvent>\nexport type Domain0ConnectFailureEvent = EventPayload<Domain0ConnectFailureContractEvent>\nexport type Domain0ConnectErrorEvent = EventPayload<Domain0ConnectErrorContractEvent>\nexport type Domain0ConnectCloseEvent = EventPayload<Domain0ConnectCloseContractEvent>\nexport type Domain0ConnectStepChangeEvent = EventPayload<Domain0ConnectStepChangeContractEvent>\nexport type Domain0ManualSetupDocumentationClickEvent = EventPayload<Domain0ManualSetupDocumentationClickContractEvent>\nexport type Domain0RequestCloseEvent = EventPayload<Domain0RequestCloseContractEvent>\nexport type Domain0SharedFlowSentEvent = EventPayload<Domain0SharedFlowSentContractEvent>\nexport type Domain0DkimSetupDocumentationClickEvent = EventPayload<Domain0DkimSetupDocumentationClickContractEvent>\n\nexport interface Domain0CreateSharedFlowRequest {\n readonly connectionId: ConnectionId\n}\n\nexport interface Domain0SharedFlowGateway {\n create(request: Domain0CreateSharedFlowRequest): Promise<SharedFlowInvitationInput>\n copy?(url: SharedFlowInvitationUrl): Promise<void>\n}\n\nexport interface Domain0ConnectOptions {\n target: HTMLElement\n client: Domain0Client\n connectionId: ConnectionId\n applicationName?: string\n triggerLabel?: string\n triggerHidden?: boolean\n presentation?: 'modal' | 'inline'\n locale?: Domain0Locale\n whiteLabel?: Domain0WhiteLabelInput\n setupPolicy?: Domain0SetupPolicyInput\n manualSetupDocumentation?: ManualSetupDocumentationUrlInput\n enableDkim?: boolean\n dkimSelectors?: readonly DkimSelector[]\n domainConnectTemplate?: DomainConnectTemplate\n sharedFlowGateway?: Domain0SharedFlowGateway\n onConnectionChange?: (connection: Connection) => void\n onEvent?: (event: Domain0ConnectEvent) => void\n onSuccess?: (event: Domain0ConnectSuccessEvent) => void\n onFailure?: (event: Domain0ConnectFailureEvent) => void\n onError?: (event: Domain0ConnectErrorEvent) => void\n onClose?: (event: Domain0ConnectCloseEvent) => void\n onStepChange?: (event: Domain0ConnectStepChangeEvent) => void\n onManualSetupDocumentationClick?: (event: Domain0ManualSetupDocumentationClickEvent) => void\n onRequestClose?: (event: Domain0RequestCloseEvent) => void\n onSharedFlowSent?: (event: Domain0SharedFlowSentEvent) => void\n onDkimSetupDocumentationClick?: (event: Domain0DkimSetupDocumentationClickEvent) => void\n}\n\nexport interface Domain0ConnectController {\n open(): Promise<void>\n close(): void\n destroy(): void\n}\n\nlet instanceSequence = 0\n\nexport function mountDomain0Connect(options: Domain0ConnectOptions): Domain0ConnectController {\n const localizer = createDomain0Localizer(options.locale)\n let configuration\n try {\n configuration = Domain0ConnectConfigurationSchema.parse({\n applicationName: options.applicationName,\n whiteLabel: options.whiteLabel,\n setupPolicy: options.setupPolicy,\n dkim: { enableDkim: options.enableDkim, dkimSelectors: options.dkimSelectors },\n manualSetupDocumentation: options.manualSetupDocumentation,\n })\n } catch (cause) {\n emitDomain0ConnectError(options, cause, { source: 'configuration' })\n throw cause\n }\n\n const document = options.target.ownerDocument\n const host = document.createElement('div')\n host.className = 'domain0-root'\n host.lang = localizer.languageTag\n host.dir = localizer.direction\n applyWhiteLabel(host, configuration.whiteLabel)\n\n const style = document.createElement('style')\n style.dataset.domain0Styles = ''\n style.textContent = domain0Styles\n host.append(style)\n\n const appHost = document.createElement('div')\n host.append(appHost)\n options.target.append(host)\n\n const appRef = createRef<ConnectAppHandle>()\n let root: Root | undefined = createRoot(appHost)\n let destroyed = false\n const instanceId = `domain0-${++instanceSequence}`\n flushSync(() => {\n root?.render(createElement(ConnectApp, { configuration, instanceId, options, ref: appRef }))\n })\n\n return {\n async open() {\n if (destroyed) throw new Error('Domain0 connect UI has been destroyed')\n await nextTask(document.defaultView)\n if (destroyed || appRef.current === null) throw new Error('Domain0 connect UI has been destroyed')\n await appRef.current.open()\n },\n close() {\n appRef.current?.close('programmatic')\n },\n destroy() {\n if (destroyed) return\n appRef.current?.close('destroyed')\n root?.unmount()\n root = undefined\n host.remove()\n destroyed = true\n },\n }\n}\n\nfunction nextTask(view: Window | null): Promise<void> {\n return new Promise((resolve) => (view?.setTimeout ?? setTimeout)(resolve, 0))\n}\n","import type { Domain0Client } from '../client'\nimport {\n ConnectionFlowIdSchema,\n type Domain0Locale,\n type ConnectionFlow,\n type ConnectionFlowId,\n} from '../contracts'\nimport {\n mountDomain0Connect,\n type Domain0ConnectController,\n type Domain0ConnectOptions,\n} from './connect'\nimport { createDomain0Localizer } from './localization'\n\ntype ChildConnectOptions = Omit<\n Domain0ConnectOptions,\n 'target' | 'client' | 'connectionId' | 'triggerHidden' | 'locale'\n>\n\nexport interface Domain0ConnectionFlowOptions {\n target: HTMLElement\n client: Domain0Client\n flowId: ConnectionFlowId\n locale?: Domain0Locale\n connect?: ChildConnectOptions\n onTargetChange?: (event: {\n flow: ConnectionFlow\n index: number\n total: number\n domain: string\n }) => void\n onSuccess?: (flow: ConnectionFlow) => void\n}\n\nexport interface Domain0ConnectionFlowController {\n open(): Promise<void>\n close(): void\n destroy(): void\n}\n\nexport function mountDomain0ConnectionFlow(\n options: Domain0ConnectionFlowOptions,\n): Domain0ConnectionFlowController {\n const flowId = ConnectionFlowIdSchema.parse(options.flowId)\n const localizer = createDomain0Localizer(options.locale)\n const { messages } = localizer\n const document = options.target.ownerDocument\n const root = document.createElement('section')\n root.className = 'domain0-flow'\n root.lang = localizer.languageTag\n root.dir = localizer.direction\n root.setAttribute('aria-labelledby', `domain0-flow-${flowId}-heading`)\n\n const heading = document.createElement('h2')\n heading.id = `domain0-flow-${flowId}-heading`\n heading.textContent = messages.headingConnectDomains\n const progress = document.createElement('p')\n progress.className = 'domain0-flow__progress'\n progress.setAttribute('role', 'status')\n progress.setAttribute('aria-live', 'polite')\n const steps = document.createElement('ol')\n steps.className = 'domain0-flow__steps'\n const childHost = document.createElement('div')\n childHost.className = 'domain0-flow__current'\n root.append(heading, progress, steps, childHost)\n options.target.append(root)\n\n let destroyed = false\n let session = 0\n let child: Domain0ConnectController | undefined\n let flow: ConnectionFlow | undefined\n const completed = new Set<string>()\n\n async function open(): Promise<void> {\n if (destroyed) throw new Error('Domain0 connection flow UI has been destroyed')\n const currentSession = ++session\n child?.destroy()\n child = undefined\n childHost.replaceChildren()\n progress.textContent = messages.loadingFlow\n const response = await options.client.getConnectionFlow(flowId)\n if (destroyed || currentSession !== session) return\n flow = response.flow\n if (flow.state !== 'ready') {\n progress.textContent = messages.flowNotReady\n return\n }\n renderSteps(flow)\n await openNext(currentSession)\n }\n\n function renderSteps(current: ConnectionFlow): void {\n const items = current.targets.map((target, index) => {\n const item = document.createElement('li')\n item.dataset.connectionId = target.connectionId\n item.textContent = messages.flowStep(localizer.formatInteger(index + 1), target.domain)\n return item\n })\n steps.replaceChildren(...items)\n }\n\n async function openNext(currentSession: number): Promise<void> {\n if (destroyed || currentSession !== session || flow === undefined) return\n const index = flow.targets.findIndex((target) =>\n target.connectionId !== undefined && !completed.has(target.connectionId),\n )\n if (index < 0) {\n progress.textContent = messages.allDomainsConnected(localizer.formatInteger(flow.targets.length))\n childHost.replaceChildren()\n options.onSuccess?.(flow)\n return\n }\n const target = flow.targets[index]\n if (target === undefined || target.connectionId === undefined) return\n progress.textContent = messages.domainProgress(\n localizer.formatInteger(index + 1),\n localizer.formatInteger(flow.targets.length),\n target.domain,\n )\n steps.querySelectorAll('li').forEach((item, itemIndex) => {\n if (itemIndex === index) item.setAttribute('aria-current', 'step')\n else item.removeAttribute('aria-current')\n })\n options.onTargetChange?.({ flow, index, total: flow.targets.length, domain: target.domain })\n\n const connect = options.connect\n child = mountDomain0Connect({\n ...connect,\n target: childHost,\n client: options.client,\n connectionId: target.connectionId,\n locale: localizer.locale,\n triggerHidden: true,\n onSuccess: (event) => {\n connect?.onSuccess?.(event)\n completed.add(target.connectionId as string)\n const item = steps.children.item(index) as HTMLElement | null\n item?.removeAttribute('aria-current')\n if (item !== null) {\n item.textContent = messages.flowStepConnected(\n localizer.formatInteger(index + 1),\n target.domain,\n )\n }\n queueMicrotask(() => {\n child?.destroy()\n child = undefined\n childHost.replaceChildren()\n void openNext(currentSession)\n })\n },\n })\n await child.open()\n }\n\n return {\n open,\n close() {\n session += 1\n child?.close()\n },\n destroy() {\n if (destroyed) return\n destroyed = true\n session += 1\n child?.destroy()\n root.remove()\n },\n }\n}\n","import { loadSharedFlow } from '../client'\nimport type { SharedFlowUrl } from '../contracts'\nimport { Domain0ProtocolError } from '../client/error'\nimport { mountDomain0Connect } from './connect'\nimport type { Domain0ConnectController, Domain0ConnectOptions } from './connect'\nimport { emitDomain0ConnectError } from './connect-error'\n\nexport interface Domain0SharedFlowOptions\n extends Omit<Domain0ConnectOptions, 'target' | 'client' | 'connectionId'> {\n target: HTMLElement\n apiBaseUrl: string\n url: SharedFlowUrl\n origin?: string\n fetch?: typeof globalThis.fetch\n}\n\nexport async function mountDomain0SharedFlow(\n options: Domain0SharedFlowOptions,\n): Promise<Domain0ConnectController> {\n const inferredOrigin = options.target.ownerDocument.defaultView?.location.origin\n const origin = options.origin ?? inferredOrigin\n if (origin === undefined || origin === 'null') {\n const cause = new Domain0ProtocolError('Shared flows require an explicit browser origin')\n emitDomain0ConnectError(options, cause)\n throw cause\n }\n let loaded\n try {\n loaded = await loadSharedFlow({\n baseUrl: options.apiBaseUrl,\n url: options.url,\n origin,\n ...(options.fetch === undefined ? {} : { fetch: options.fetch }),\n })\n } catch (cause) {\n emitDomain0ConnectError(options, cause)\n throw cause\n }\n return mountDomain0Connect({\n target: options.target,\n client: loaded.client,\n connectionId: loaded.connectionId,\n ...(options.triggerLabel === undefined ? {} : { triggerLabel: options.triggerLabel }),\n ...(options.triggerHidden === undefined ? {} : { triggerHidden: options.triggerHidden }),\n ...(options.locale === undefined ? {} : { locale: options.locale }),\n ...(options.whiteLabel === undefined ? {} : { whiteLabel: options.whiteLabel }),\n ...(options.setupPolicy === undefined ? {} : { setupPolicy: options.setupPolicy }),\n ...(options.manualSetupDocumentation === undefined\n ? {}\n : { manualSetupDocumentation: options.manualSetupDocumentation }),\n ...(options.enableDkim === undefined ? {} : { enableDkim: options.enableDkim }),\n ...(options.dkimSelectors === undefined ? {} : { dkimSelectors: options.dkimSelectors }),\n ...(options.domainConnectTemplate === undefined ? {} : { domainConnectTemplate: options.domainConnectTemplate }),\n ...(options.sharedFlowGateway === undefined ? {} : { sharedFlowGateway: options.sharedFlowGateway }),\n ...(options.onConnectionChange === undefined ? {} : { onConnectionChange: options.onConnectionChange }),\n ...(options.onEvent === undefined ? {} : { onEvent: options.onEvent }),\n ...(options.onSuccess === undefined ? {} : { onSuccess: options.onSuccess }),\n ...(options.onFailure === undefined ? {} : { onFailure: options.onFailure }),\n ...(options.onError === undefined ? {} : { onError: options.onError }),\n ...(options.onClose === undefined ? {} : { onClose: options.onClose }),\n ...(options.onStepChange === undefined ? {} : { onStepChange: options.onStepChange }),\n ...(options.onManualSetupDocumentationClick === undefined\n ? {}\n : { onManualSetupDocumentationClick: options.onManualSetupDocumentationClick }),\n ...(options.onRequestClose === undefined ? {} : { onRequestClose: options.onRequestClose }),\n ...(options.onSharedFlowSent === undefined ? {} : { onSharedFlowSent: options.onSharedFlowSent }),\n ...(options.onDkimSetupDocumentationClick === undefined\n ? {}\n : { onDkimSetupDocumentationClick: options.onDkimSetupDocumentationClick }),\n })\n}\n","import { Domain0ProtocolError } from '../client/error'\nimport { mountDomain0Connect } from './connect'\nimport type { Domain0ConnectController, Domain0ConnectOptions } from './connect'\nimport { mountDomain0ConnectionFlow } from './connection-flow'\nimport type {\n Domain0ConnectionFlowController,\n Domain0ConnectionFlowOptions,\n} from './connection-flow'\nimport { mountDomain0SharedFlow } from './shared-flow'\nimport type { Domain0SharedFlowOptions as Domain0MountedSharedFlowOptions } from './shared-flow'\nimport { emitDomain0ConnectError, type Domain0ConnectEventSink } from './connect-error'\n\nexport type {\n Domain0CreateSharedFlowRequest,\n Domain0SharedFlowGateway,\n} from './connect'\n\nexport interface Domain0ConnectDomainOptions\n extends Omit<Domain0ConnectOptions, 'target' | 'triggerHidden'> {\n target?: HTMLElement\n}\n\nexport interface Domain0LoadSharedFlowOptions\n extends Omit<Domain0MountedSharedFlowOptions, 'target' | 'triggerHidden'> {\n target?: HTMLElement\n}\n\nexport interface Domain0ConnectDomainsOptions\n extends Omit<Domain0ConnectionFlowOptions, 'target'> {\n target?: HTMLElement\n}\n\nexport interface Domain0SDK {\n load(): Promise<void>\n connectDomain(options: Domain0ConnectDomainOptions): Promise<Domain0ConnectController>\n connectDomains(options: Domain0ConnectDomainsOptions): Promise<Domain0ConnectionFlowController>\n loadSharedFlow(options: Domain0LoadSharedFlowOptions): Promise<Domain0ConnectController>\n close(): void\n destroy(): void\n}\n\nexport function createDomain0(): Domain0SDK {\n type ActiveController = Pick<Domain0ConnectController, 'open' | 'close' | 'destroy'>\n\n let active: ActiveController | undefined\n let launchSequence = 0\n\n function targetOrDocumentBody(\n options: Domain0ConnectEventSink & { target?: HTMLElement },\n ): HTMLElement {\n const resolved = options.target ?? globalThis.document?.body\n if (resolved === undefined) {\n const cause = new Domain0ProtocolError(\n 'Domain0 Connect requires a browser document or an explicit target',\n )\n emitDomain0ConnectError(options, cause)\n throw cause\n }\n return resolved\n }\n\n function replaceActive(): number {\n const launch = ++launchSequence\n if (active !== undefined) {\n active.close()\n active.destroy()\n active = undefined\n }\n return launch\n }\n\n async function activate<Controller extends ActiveController>(\n launch: number,\n controllerPromise: Controller | Promise<Controller>,\n ): Promise<Controller> {\n const controller = await controllerPromise\n if (launch !== launchSequence) {\n controller.destroy()\n throw new Domain0ProtocolError('Domain0 Connect launch was superseded')\n }\n active = controller\n await controller.open()\n if (launch !== launchSequence) {\n controller.destroy()\n if (active === controller) {\n active = undefined\n }\n throw new Domain0ProtocolError('Domain0 Connect launch was superseded')\n }\n return controller\n }\n\n return {\n async load() {\n // The npm package is already loaded; this preserves Entri-style preload semantics.\n },\n async connectDomain(options) {\n const launch = replaceActive()\n const controller = mountDomain0Connect({\n ...options,\n target: targetOrDocumentBody(options),\n triggerHidden: true,\n })\n return activate(launch, controller)\n },\n async connectDomains(options) {\n const launch = replaceActive()\n const controller = mountDomain0ConnectionFlow({\n ...options,\n target: targetOrDocumentBody(\n options.target === undefined ? {} : { target: options.target },\n ),\n })\n return activate(launch, controller)\n },\n async loadSharedFlow(options) {\n const launch = replaceActive()\n const controller = mountDomain0SharedFlow({\n ...options,\n target: targetOrDocumentBody(options),\n triggerHidden: true,\n })\n return activate(launch, controller)\n },\n close() {\n launchSequence++\n active?.close()\n },\n destroy() {\n launchSequence++\n active?.destroy()\n active = undefined\n },\n }\n}\n\nexport const domain0 = createDomain0()\n"],"x_google_ignoreList":[1,2,3,4,5,6,7,8,15,16,17,18],"mappings":"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CE,EACA,EACA,EACA,CACF,EACA,MACF,IAAK,GACH,GACE,EACA,EACA,EACA,CACF,EACA,EAAQ,OACJ,EAAe,KACR,EAAa,YAAtB,OACG,EAAe,EAAa,UAAU,cAAc,OACtD,EAAe,EAAa,cAAc,MAC3C,IAAiB,IACd,EAAa,WACN,GAAR,MAAwB,GAAa,CAAY,IACrD,MACF,IAAK,IACH,GAAI,EAAQ,KAAM,CAChB,GACE,EACA,EACA,EACA,CACF,EACA,EAAe,EAAa,UAC5B,GAAI,CACF,IAAI,EAAyB,EAAa,cACxC,EAAK,EAAuB,GAC5B,EAAe,EAAuB,aACzB,OAAO,GAAtB,YACE,EACE,EACS,EAAa,YAAtB,KAAkC,QAAU,SAC5C,EAAa,sBACb,EACF,CACJ,OAAS,EAAO,CACd,EAAwB,EAAc,EAAa,OAAQ,CAAK,CAClE,CACF,MACE,GACE,EACA,EACA,EACA,CACF,EACF,MACF,IAAK,IACH,GACE,EACA,EACA,EACA,CACF,EACA,MACF,IAAK,IACH,GACE,EACA,EACA,EACA,CACF,EACA,MACF,IAAK,IACH,MACF,IAAK,IACH,EAAyB,EAAa,UACtC,EAAK,EAAa,UACT,EAAa,gBAAtB,KASI,EAAuB,YAAc,EACnC,GACE,EACA,EACA,EACA,CACF,GACE,EAAuB,aAAe,EACxC,GACE,EACA,EACA,EACA,EACA,GAAO,EAAa,aAAe,QAAU,CAAC,CAChD,GAtBF,EAAuB,YAAc,EACnC,GACE,EACA,EACA,EACA,CACF,EACA,GAAwC,EAAc,CAAY,EAgBxE,EAAQ,MAAQ,GAAmC,EAAI,CAAY,EACnE,MACF,IAAK,IACH,GACE,EACA,EACA,EACA,CACF,EACA,EAAQ,MACN,GAA8B,EAAa,UAAW,CAAY,EACpE,MACF,QACE,GACE,EACA,EACA,EACA,CACF,CACJ,CACF,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,CAIA,IAHA,IAEG,GAAO,EAAY,aAAe,QAAU,CAAC,EAC3C,EAAc,EAAY,MAAgB,IAAT,MAAwB,CAC5D,IAAI,EAAe,EACjB,EAAe,EACf,EAAiB,EACjB,EAAuB,EACvB,EAAQ,EAAa,MACvB,OAAQ,EAAa,IAArB,CACE,IAAK,GACL,IAAK,IACL,IAAK,IACH,GACE,EACA,EACA,EACA,EACA,CACF,EACA,GAA0B,EAAG,CAAY,EACzC,MACF,IAAK,IACH,MACF,IAAK,IACH,IAAI,EAAW,EAAa,UACnB,EAAa,gBAAtB,MAaM,EAAS,aAAe,EAC1B,GACE,EACA,EACA,EACA,EACA,CACF,GAnBA,EAAS,YAAc,EACrB,GACE,EACA,EACA,EACA,EACA,CACF,EACA,GACE,EACA,CACF,EASN,GACE,EAAQ,MACR,GACE,EAAa,UACb,CACF,EACF,MACF,IAAK,IACH,GACE,EACA,EACA,EACA,EACA,CACF,EACA,GACE,EAAQ,MACR,GAA8B,EAAa,UAAW,CAAY,EACpE,MACF,QACE,GACE,EACA,EACA,EACA,EACA,CACF,CACJ,CACA,EAAc,EAAY,OAC5B,CACF,CACA,SAAS,GACP,EACA,EACA,CACA,GAAI,EAAY,aAAe,MAC7B,IAAK,EAAc,EAAY,MAAgB,IAAT,MAAwB,CAC5D,IAAI,EAAe,EACjB,EAAe,EACf,EAAQ,EAAa,MACvB,OAAQ,EAAa,IAArB,CACE,IAAK,IACH,GAAwC,EAAc,CAAY,EAClE,EAAQ,MACN,GACE,EAAa,UACb,CACF,EACF,MACF,IAAK,IACH,GAAwC,EAAc,CAAY,EAClE,EAAQ,MACN,GAA8B,EAAa,UAAW,CAAY,EACpE,MACF,QACE,GAAwC,EAAc,CAAY,CACtE,CACA,EAAc,EAAY,OAC5B,CACJ,CACA,IAAI,GAAsB,KAC1B,SAAS,GACP,EACA,EACA,EACA,CACA,GAAI,EAAY,aAAe,GAC7B,IAAK,EAAc,EAAY,MAAgB,IAAT,MACpC,GACE,EACA,EACA,CACF,EACG,EAAc,EAAY,OACnC,CACA,SAAS,GACP,EACA,EACA,EACA,CACA,OAAQ,EAAM,IAAd,CACE,IAAK,IACH,GACE,EACA,EACA,CACF,EACA,EAAM,MAAQ,IACH,EAAM,gBAAf,MACA,GACE,EACA,GACA,EAAM,cACN,EAAM,aACR,EACF,MACF,IAAK,GACH,GA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AM,EAAuB,GAAG,CAAC,EACzC,IAAK,GACH,IAAK,EAAQ,WAAa,EAAO,MACnC,IAAK,GACH,GACE,EACA,EACA,GACA,CAAC,EACH,EACA,MAAM,EACR,IAAK,GACH,GAAsC,KACtC,MACF,IAAK,GACL,IAAK,GACH,MACF,QACE,MAAM,MAAM,EAAuB,GAAG,CAAC,CAC3C,CACA,IACG,EAAQ,YAAc,IACrB,EAAa,GAA+B,IAAM,GAAI,EACxD,GAAK,GACL,CAOA,GANA,GACE,EACA,EACA,GACA,CAAC,EACH,EACU,GAAa,EAAiB,EAAG,CAAC,CAAC,IAAzC,EAA4C,MAAM,EACtD,GAAsB,EACtB,EAAgB,cAAgB,GAC9B,GAAoB,KAClB,KACA,EACA,EACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,EACA,YACA,GACA,CACF,EACA,CACF,EACA,MAAM,CACR,CACA,GACE,EACA,EACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,EACA,KACA,GACA,CACF,CACF,CAEF,KACF,OAAS,GACT,GAAsB,CAAa,CACrC,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CAGA,GAFA,EAAK,cAAgB,GACrB,EAAwB,EAAa,aAEnC,EAAwB,OACV,EAAwB,WAAtC,SACA,CACA,EAAwB,CACtB,YAAa,KACb,MAAO,EACP,SAAU,EACV,SAAU,EACV,gBAAiB,CAAC,EAClB,iBAAkB,CAAC,EACnB,yBAA0B,CAAC,EAC3B,UAAW,EACb,EACA,GACE,EACA,EACA,CACF,EACA,IAAI,GACD,EAAQ,YAAc,EACnB,GAA+B,GAAI,GAClC,EAAQ,WAAa,EACpB,GAAiC,GAAI,EACrC,EAKR,GAJA,EAAgB,GACd,EACA,CACF,EACa,IAAT,KAAwB,CAC1B,GAAsB,EACtB,EAAK,oBAAsB,EACzB,GAAW,KACT,KACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,KACA,EACA,CACF,CACF,EACA,GAAkB,EAAM,E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C,MACF,IAAK,QACL,IAAK,kBACL,IAAK,QACL,IAAK,WACL,IAAK,WACL,IAAK,UACL,IAAK,QACL,IAAK,WACL,IAAK,0BACL,IAAK,wBACL,IAAK,iBACL,IAAK,SACL,IAAK,OACL,IAAK,WACL,IAAK,aACL,IAAK,OACL,IAAK,cACL,IAAK,WACL,IAAK,WACL,IAAK,WACL,IAAK,SACL,IAAK,WACL,IAAK,YACH,GAAwB,OAAO,GAAtB,YAA4C,OAAO,GAApB,SACpC,EAAW,aAAa,EAAK,EAAE,EAC/B,EAAW,gBAAgB,CAAG,EAClC,MACF,IAAK,UACL,IAAK,WACH,CAAC,IAAM,EACH,EAAW,aAAa,EAAK,EAAE,EAC/B,CAAC,IAAM,GACG,GAAR,MACe,OAAO,GAAtB,YACa,OAAO,GAApB,SACA,EAAW,aAAa,EAAK,CAAK,EAClC,EAAW,gBAAgB,CAAG,EACpC,MACF,IAAK,OACL,IAAK,OACL,IAAK,OACL,IAAK,OACK,GAAR,MACe,OAAO,GAAtB,YACa,OAAO,GAApB,UACA,CAAC,MAAM,CAAK,GACZ,GAAK,EACD,EAAW,aAAa,EAAK,CAAK,EAClC,EAAW,gBAAgB,CAAG,EAClC,MACF,IAAK,UACL,IAAK,QACK,GAAR,MACe,OAAO,GAAtB,YACa,OAAO,GAApB,UACA,MAAM,CAAK,EACP,EAAW,gBAAgB,CAAG,EAC9B,EAAW,aAAa,EAAK,CAAK,EACtC,MACF,IAAK,UACH,EAA0B,eAAgB,CAAU,EACpD,EAA0B,SAAU,CAAU,EAC9C,GAAqB,EAAY,UAAW,CAAK,EACjD,MACF,IAAK,eACH,GACE,EACA,+BACA,gBACA,CACF,EACA,MACF,IAAK,eACH,GACE,EACA,+BACA,gBACA,CACF,EACA,MACF,IAAK,YACH,GACE,EACA,+BACA,aACA,CACF,EACA,MACF,IAAK,YACH,GACE,EACA,+BACA,aACA,CACF,EACA,MACF,IAAK,aACH,GACE,EACA,+BACA,cACA,CACF,EACA,MACF,IAAK,YACH,GACE,EACA,+BACA,aACA,CACF,EACA,MACF,IAAK,UACH,GACE,EACA,uCACA,WACA,CACF,EACA,MACF,IAAK,UACH,GACE,EACA,uCACA,WACA,CACF,EACA,MACF,IAAK,WACH,GACE,EACA,uCACA,YACA,CACF,EACA,MACF,IAAK,KACH,GAAqB,EAAY,KAAM,CAAK,EAC5C,MACF,IAAK,YACL,IAAK,cACH,MACF,SAEI,EAAE,EAAI,EAAI,SACD,EAAI,KAAZ,KAA0B,EAAI,KAAZ,KACV,EAAI,KAAZ,KAA0B,EAAI,KAAZ,OAEnB,EAAO,GAAQ,IAAI,CAAG,GAAK,EACzB,GAAqB,EAAY,EAAK,CAAK,EACnD,CACF,CACA,SAAS,GAAuB,EAAY,EAAK,EAAK,EAAO,EAAO,EAAW,CAC7E,OAAQ,EAAR,CACE,IAAK,QACH,GAAkB,EAAY,EAAO,CAAS,EAC9C,MACF,IAAK,0BACH,GAAY,GAAR,KAAe,CACjB,GAAiB,OAAO,GAApB,UAA6B,EAAE,WAAY,GAC7C,MAAM,MAAM,EAAuB,EAAE,CAAC,EAExC,GADA,EAAM,EAAM,OACA,GAAR,KAAa,CACf,GAAY,EAAM,UAAd,KAAwB,MAAM,MAAM,EAAuB,EAAE,CAAC,EAClE,EAAW,UAAY,CACzB,CACF,CACA,MACF,IAAK,WACU,OAAO,GAApB,SACI,GAAe,EAAY,CAAK,GAClB,OAAO,GAApB,UAA0C,OAAO,GAApB,WAC9B,GAAe,EAAY,GAAK,CAAK,EACzC,MACF,IAAK,WACK,GAAR,MAAiB,EAA0B,SAAU,CAAU,EAC/D,MACF,IAAK,cACK,GAAR,MAAiB,EAA0B,YAAa,CAAU,EAClE,MACF,IAAK,UACK,GAAR,OAAkB,EAAW,QAAU,IACvC,MACF,IAAK,iCACL,IAAK,2BACL,IAAK,YACL,IAAK,MACH,MACF,IAAK,YACL,IAAK,cACH,MACF,QACE,GAAI,CAAC,GAA6B,eAAe,CAAG,EAClD,EAAG,CACD,GACU,EAAI,KAAZ,KACQ,EAAI,KAAZ,MACE,EAAQ,EAAI,SAAS,SAAS,EAC/B,EAAM,EAAI,MAAM,EAAG,EAAQ,EAAI,OAAS,EAAI,IAAK,EAAC,EAClD,EAAY,EAAW,KAAqB,KAC5C,EAAoB,GAAR,KAAqC,KAAjB,EAAU,GAC5B,OAAO,GAAtB,YACE,EAAW,oBAAoB,EAAK,EAAW,CAAK,EACvC,OAAO,GAAtB,YACA,CACe,OAAO,GAAtB,YACW,IAAT,OACC,KAAO,EACH,EAAW,GAAO,KACnB,EAAW,aAAa,CAAG,GAC3B,EAAW,gBAAgB,CAAG,GACpC,EAAW,iBAAiB,EAAK,EAAO,CAAK,EAC7C,MAAM,CACR,CACA,KAAO,EACF,EAAW,GAAO,EACnB,CAAC,IAAM,EACL,EAAW,aAAa,EAAK,EAAE,EAC/B,GAAqB,EAAY,EAAK,CAAK,CACnD,CACN,CACF,CACA,SAAS,GAAqB,EAAY,EAAK,EAAO,CACpD,OAAQ,EAAR,CACE,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,KACH,MACF,IAAK,MACH,EAA0B,QAAS,CAAU,EAC7C,EAA0B,OAAQ,CAAU,EAC5C,IAAI,EAAS,CAAC,EACZ,EAAY,CAAC,EACb,EACF,IAAK,KAAW,EACd,GAAI,EAAM,eAAe,CAAO,EAAG,CACjC,IAAI,EAAY,EAAM,GACtB,GAAY,GAAR,KACF,OAAQ,EAAR,CACE,IAAK,MACH,EAAS,CAAC,EACV,MACF,IAAK,SACH,EAAY,CAAC,EACb,MACF,IAAK,WACL,IAAK,0BACH,MAAM,MAAM,EAAuB,IAAK,CAAG,CAAC,EAC9C,QACE,EAAQ,EAAY,EAAK,EAAS,EAAW,EAAO,IAAI,CAC5D,CACJ,CACF,GACE,EAAQ,EAAY,EAAK,SAAU,EAAM,OAAQ,EAAO,IAAI,EAC9D,GAAU,EAAQ,EAAY,EAAK,MAAO,EAAM,IAAK,EAAO,IAAI,EAChE,OACF,IAAK,QACH,EAA0B,UAAW,CAAU,EAC/C,IAAI,EAAgB,EAAU,EAAY,EAAY,KACpD,EAAU,KACV,EAAiB,KACnB,IAAK,KAAU,EACb,GAAI,EAAM,eAAe,CAAM,EAAG,CAChC,IAAI,EAAgB,EAAM,GAC1B,GAAY,GAAR,KACF,OAAQ,EAAR,CACE,IAAK,OACH,EAAY,EACZ,MACF,IAAK,OACH,EAAY,EACZ,MACF,IAAK,UACH,EAAU,EACV,MACF,IAAK,iBACH,EAAiB,EACjB,MACF,IAAK,QACH,EAAU,EACV,MACF,IAAK,eACH,EAAe,EACf,MACF,IAAK,WACL,IAAK,0BACH,GAAY,GAAR,KACF,MAAM,MAAM,EAAuB,IAAK,CAAG,CAAC,EAC9C,MACF,QACE,EAAQ,EAAY,EAAK,EAAQ,EAAe,EAAO,IAAI,CAC/D,CACJ,CACF,GACE,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CAAC,CACH,EACA,OACF,IAAK,SAGH,IAAK,KAFL,EAA0B,UAAW,CAAU,EAC/C,EAAS,EAAY,EAAU,KACb,EAChB,GACE,EAAM,eAAe,CAAS,IAC5B,EAAe,EAAM,GAAqB,GAAR,MAEpC,OAAQ,EAAR,CACE,IAAK,QACH,EAAU,EACV,MACF,IAAK,eACH,EAAY,EACZ,MACF,IAAK,WACH,EAAS,EACX,QACE,EAAQ,EAAY,EAAK,EAAW,EAAc,EAAO,IAAI,CACjE,CACJ,EAAM,EACN,EAAQ,EACR,EAAW,SAAW,CAAC,CAAC,EAChB,GAAR,KAEY,GAAR,MAAiB,GAAc,EAAY,CAAC,CAAC,EAAQ,EAAO,CAAC,CAAC,EAD9D,GAAc,EAAY,CAAC,CAAC,EAAQ,EAAK,CAAC,CAAC,EAE/C,OACF,IAAK,WAGH,IAAK,KAFL,EAA0B,UAAW,CAAU,EAC/C,EAAU,EAAY,EAAS,KACb,EAChB,GACE,EAAM,eAAe,CAAS,IAC5B,EAAe,EAAM,GAAqB,GAAR,MAEpC,OAAQ,EAAR,CACE,IAAK,QACH,EAAS,EACT,MACF,IAAK,eACH,EAAY,EACZ,MACF,IAAK,WACH,EAAU,EACV,MACF,IAAK,0BACH,GAAY,GAAR,KAAsB,MAAM,MAAM,EAAuB,EAAE,CAAC,EAChE,MACF,QACE,EAAQ,EAAY,EAAK,EAAW,EAAc,EAAO,IAAI,CACjE,CACJ,GAAa,EAAY,EAAQ,EAAW,CAAO,EACnD,OACF,IAAK,SACH,IAAK,KAAW,EACd,GACE,EAAM,eAAe,CAAO,IAC1B,EAAS,EAAM,GAAmB,GAAR,MAE5B,OAAQ,EAAR,CACE,IAAK,WACH,EAAW,SACT,GACe,OAAO,GAAtB,YACa,OAAO,GAApB,SACF,MACF,QACE,EAAQ,EAAY,EAAK,EAAS,EAAQ,EAAO,IAAI,CACzD,CACJ,OACF,IAAK,SACH,EAA0B,eAAgB,CAAU,EACpD,EAA0B,SAAU,CAAU,EAC9C,EAA0B,SAAU,CAAU,EAC9C,EAA0B,QAAS,CAAU,EAC7C,MACF,IAAK,SACL,IAAK,SACH,EAA0B,OAAQ,CAAU,EAC5C,MACF,IAAK,QACL,IAAK,QACH,IAAK,EAAS,EAAG,EAAS,GAAgB,OAAQ,IAChD,EAA0B,GAAgB,GAAS,CAAU,EAC/D,MACF,IAAK,QACH,EAA0B,QAAS,CAAU,EAC7C,EAA0B,OAAQ,CAAU,EAC5C,MACF,IAAK,UACH,EAA0B,SAAU,CAAU,EAC9C,MACF,IAAK,QACL,IAAK,SACL,IAAK,OACH,EAA0B,QAAS,CAAU,EAC3C,EAA0B,OAAQ,CAAU,EAChD,IAAK,OACL,IAAK,OACL,IAAK,KACL,IAAK,MACL,IAAK,KACL,IAAK,SACL,IAAK,OACL,IAAK,QACL,IAAK,QACL,IAAK,MACL,IAAK,WACH,IAAK,KAAkB,EACrB,GACE,EAAM,eAAe,CAAc,IACjC,EAAS,EAAM,GAA0B,GAAR,MAEnC,OAAQ,EAAR,CACE,IAAK,WACL,IAAK,0BACH,MAAM,MAAM,EAAuB,IAAK,CAAG,CAAC,EAC9C,QACE,EAAQ,EAAY,EAAK,EAAgB,EAAQ,EAAO,IAAI,CAChE,CACJ,OACF,QACE,GAAI,GAAgB,CAAG,EAAG,CACxB,IAAK,KAAiB,EACpB,EAAM,eAAe,CAAa,IAC9B,EAAS,EAAM,GACN,IAAX,IAAK,IACH,GACE,EACA,EACA,EACA,EACA,EACA,IAAK,EACP,GACN,MACF,CACJ,CACA,IAAK,KAAgB,EACnB,EAAM,eAAe,CAAY,IAC7B,EAAS,EAAM,GACT,GAAR,MACE,EAAQ,EAAY,EAAK,EAAc,EAAQ,EAAO,IAAI,EAClE,CACA,SAAS,GAAiB,EAAY,EAAK,EAAW,EAAW,CAC/D,OAAQ,EAAR,CACE,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,KACH,MACF,IAAK,QACH,IAAI,EAAO,KACT,EAAO,KACP,EAAQ,KACR,EAAe,KACf,EAAmB,KACnB,EAAU,KACV,EAAiB,KACnB,IAAK,KAAW,EAAW,CACzB,IAAI,EAAW,EAAU,GACzB,GAAI,EAAU,eAAe,CAAO,GAAa,GAAR,KACvC,OAAQ,EAAR,CACE,IAAK,UACH,MACF,IAAK,QACH,MACF,IAAK,eACH,EAAmB,EACrB,QACE,EAAU,eAAe,CAAO,GAC9B,EAAQ,EAAY,EAAK,EAAS,KAAM,EAAW,CAAQ,CACjE,CACJ,CACA,IAAK,IAAI,KAAe,EAAW,CACjC,IAAI,EAAU,EAAU,GAExB,GADA,EAAW,EAAU,GAEnB,EAAU,eAAe,CAAW,IAC3B,GAAR,MAA2B,GAAR,MAEpB,OAAQ,EAAR,CACE,IAAK,OACH,EAAO,EACP,MACF,IAAK,OACH,EAAO,EACP,MACF,IAAK,UACH,EAAU,EACV,MACF,IAAK,iBACH,EAAiB,EACjB,MACF,IAAK,QACH,EAAQ,EACR,MACF,IAAK,eACH,EAAe,EACf,MACF,IAAK,WACL,IAAK,0BACH,GAAY,GAAR,KACF,MAAM,MAAM,EAAuB,IAAK,CAAG,CAAC,EAC9C,MACF,QACE,IAAY,GACV,EACE,EACA,EACA,EACA,EACA,EACA,CACF,CACN,CACJ,CACA,GACE,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACF,EACA,OACF,IAAK,SAEH,IAAK,IADL,GAAU,EAAQ,EAAe,EAAc,KAClC,EACX,GACI,EAAmB,EAAU,GAC/B,EAAU,eAAe,CAAI,GAAa,GAAR,KAElC,OAAQ,EAAR,CACE,IAAK,QACH,MACF,IAAK,WACH,EAAU,EACZ,QACE,EAAU,eAAe,CAAI,GAC3B,EACE,EACA,EACA,EACA,KACA,EACA,CACF,CACN,CACJ,IAAK,KAAQ,EACX,GACI,EAAO,EAAU,GAClB,EAAmB,EAAU,GAC9B,EAAU,eAAe,CAAI,IAClB,GAAR,MAAwB,GAAR,MAEnB,OAAQ,EAAR,CACE,IAAK,QACH,EAAc,EACd,MACF,IAAK,eACH,EAAe,EACf,MACF,IAAK,WACH,EAAQ,EACV,QACE,IAAS,GACP,EACE,EACA,EACA,EACA,EACA,EACA,CACF,CACN,CACJ,EAAM,EACN,EAAY,EACZ,EAAY,EACJ,GAAR,KAEI,CAAC,CAAC,GAAc,CAAC,CAAC,IACT,GAAR,KAEG,GAAc,EAAY,CAAC,CAAC,EAAW,EAAY,CAAC,EAAI,GAAI,CAAC,CAAC,EAD9D,GAAc,EAAY,CAAC,CAAC,EAAW,EAAK,CAAC,CAAC,GAHlD,GAAc,EAAY,CAAC,CAAC,EAAW,EAAa,CAAC,CAAC,EAK1D,OACF,IAAK,WAEH,IAAK,IADL,GAAU,EAAc,KACH,EACnB,GACI,EAAO,EAAU,GACnB,EAAU,eAAe,CAAY,GAC3B,GAAR,MACA,CAAC,EAAU,eAAe,CAAY,EAExC,OAAQ,EAAR,CACE,IAAK,QACH,MACF,IAAK,WACH,MACF,QACE,EAAQ,EAAY,EAAK,EAAc,KAAM,EAAW,CAAI,CAChE,CACJ,IAAK,KAAS,EACZ,GACI,EAAO,EAAU,GAClB,EAAO,EAAU,GAClB,EAAU,eAAe,CAAK,IAAc,GAAR,MAAwB,GAAR,MAEpD,OAAQ,EAAR,CACE,IAAK,QACH,EAAc,EACd,MACF,IAAK,eACH,EAAU,EACV,MACF,IAAK,WACH,MACF,IAAK,0BACH,GAAY,GAAR,KAAc,MAAM,MAAM,EAAuB,EAAE,CAAC,EACxD,MACF,QACE,IAAS,GACP,EAAQ,EAAY,EAAK,EAAO,EAAM,EAAW,CAAI,CAC3D,CACJ,GAAe,EAAY,EAAa,CAAO,EAC/C,OACF,IAAK,SACH,IAAK,IAAI,KAAe,EACtB,GACI,EAAc,EAAU,GAC1B,EAAU,eAAe,CAAW,GAC1B,GAAR,MACA,CAAC,EAAU,eAAe,CAAW,EAEvC,OAAQ,EAAR,CACE,IAAK,WACH,EAAW,SAAW,CAAC,EACvB,MACF,QACE,EACE,EACA,EACA,EACA,KACA,EACA,CACF,CACJ,CACJ,IAAK,KAAoB,EACvB,GACI,EAAc,EAAU,GACzB,EAAU,EAAU,GACrB,EAAU,eAAe,CAAgB,GACvC,IAAgB,IACP,GAAR,MAA+B,GAAR,MAE1B,OAAQ,EAAR,CACE,IAAK,WACH,EAAW,SACT,GACe,OAAO,GAAtB,YACa,OAAO,GAApB,SACF,MACF,QACE,EACE,EACA,EACA,EACA,EACA,EACA,CACF,CACJ,CACJ,OACF,IAAK,MACL,IAAK,OACL,IAAK,OACL,IAAK,OACL,IAAK,KACL,IAAK,MACL,IAAK,QACL,IAAK,KACL,IAAK,SACL,IAAK,OACL,IAAK,QACL,IAAK,SACL,IAAK,QACL,IAAK,MACL,IAAK,WACH,IAAK,IAAI,KAAe,EACtB,EAAe,EAAU,GACvB,EAAU,eAAe,CAAW,GAC1B,GAAR,MACA,CAAC,EAAU,eAAe,CAAW,GACrC,EAAQ,EAAY,EAAK,EAAa,KAAM,EAAW,CAAW,EACxE,IAAK,KAAW,EACd,GACI,EAAc,EAAU,GACzB,EAAU,EAAU,GACrB,EAAU,eAAe,CAAO,GAC9B,IAAgB,IACP,GAAR,MAA+B,GAAR,MAE1B,OAAQ,EAAR,CACE,IAAK,WACL,IAAK,0BACH,GAAY,GAAR,KACF,MAAM,MAAM,EAAuB,IAAK,CAAG,CAAC,EAC9C,MACF,QACE,EACE,EACA,EACA,EACA,EACA,EACA,CACF,CACJ,CACJ,OACF,QACE,GAAI,GAAgB,CAAG,EAAG,CACxB,IAAK,IAAI,KAAe,EACtB,EAAe,EAAU,GACvB,EAAU,eAAe,CAAW,GACvB,IAAX,IAAK,IACL,CAAC,EAAU,eAAe,CAAW,GACrC,GACE,EACA,EACA,EACA,IAAK,GACL,EACA,CACF,EACN,IAAK,KAAkB,EACrB,EAAe,EAAU,GACtB,EAAU,EAAU,GACrB,CAAC,EAAU,eAAe,CAAc,GACtC,IAAgB,GACJ,IAAX,IAAK,IAAgC,IAAX,IAAK,IAChC,GACE,EACA,EACA,EACA,EACA,EACA,CACF,EACN,MACF,CACJ,CACA,IAAK,IAAI,KAAe,EACtB,EAAe,EAAU,GACvB,EAAU,eAAe,CAAW,GAC1B,GAAR,MACA,CAAC,EAAU,eAAe,CAAW,GACrC,EAAQ,EAAY,EAAK,EAAa,KAAM,EAAW,CAAW,EACxE,IAAK,KAAY,EACf,EAAe,EAAU,GACtB,EAAU,EAAU,GACrB,CAAC,EAAU,eAAe,CAAQ,GAChC,IAAgB,GACP,GAAR,MAA+B,GAAR,MACxB,EAAQ,EAAY,EAAK,EAAU,EAAa,EAAW,CAAO,CAC1E,CACA,SAAS,GAAuB,EAAe,CAC7C,OAAQ,EAAR,CACE,IAAK,MACL,IAAK,SACL,IAAK,OACL,IAAK,MACL,IAAK,QACL,IAAK,QACL,IAAK,OACH,MAAO,CAAC,EACV,QACE,MAAO,CAAC,CACZ,CACF,CACA,SAAS,IAAoB,CAC3B,GAAmB,OAAO,YAAY,kBAAlC,WAAoD,CACtD,IACE,IAAI,EAAQ,EACV,EAAO,EACP,EAAkB,YAAY,iBAAiB,UAAU,EACzD,EAAI,EACN,EAAI,EAAgB,OACpB,IACA,CACA,IAAI,EAAQ,EAAgB,GAC1B,EAAe,EAAM,aACrB,EAAgB,EAAM,cACtB,EAAW,EAAM,SACnB,GAAI,GAAgB,GAAY,GAAuB,CAAa,EAAG,CAGrE,IAFA,EAAgB,EAChB,EAAW,EAAM,YACZ,GAAK,EAAG,EAAI,EAAgB,OAAQ,IAAK,CAC5C,IAAI,EAAe,EAAgB,GACjC,EAAmB,EAAa,UAClC,GAAI,EAAmB,EAAU,MACjC,IAAI,EAAsB,EAAa,aACrC,EAAuB,EAAa,cACtC,GACE,GAAuB,CAAoB,IACzC,EAAe,EAAa,YAC7B,GACC,GACC,EAAe,EACZ,GACC,EAAW,IACX,EAAe,IAC1B,CAIA,GAHA,EAAE,EACF,GAAS,GAAK,EAAe,IAAmB,EAAM,SAAW,KACjE,IACI,GAAK,EAAO,KAClB,CACF,CACA,GAAI,EAAI,EAAO,OAAO,EAAO,EAAQ,GACvC,CACA,OAAO,UAAU,aACb,EAAQ,UAAU,WAAW,SAAwB,OAAO,GAApB,UACxC,EACA,CACN,CACA,IAAI,GAAgB,KAClB,GAAuB,KACzB,SAAS,GAAkC,EAAsB,CAC/D,OAAa,EAAqB,WAA3B,EACH,EACA,EAAqB,aAC3B,CACA,SAAS,GAAkB,EAAc,CACvC,OAAQ,EAAR,CACE,IAAK,6BACH,MAAO,GACT,IAAK,qCACH,MAAO,GACT,QACE,MAAO,EACX,CACF,CACA,SAAS,GAAwB,EAAiB,EAAM,CACtD,GAAU,IAAN,EACF,OAAQ,EAAR,CACE,IAAK,MACH,MAAO,GACT,IAAK,OACH,MAAO,GACT,QACE,MAAO,EACX,CACF,OAAa,IAAN,GAA6C,IAApB,gBAC5B,EACA,CACN,CACA,SAAS,GAAqB,EAAM,EAAO,CACzC,OACiB,IAAf,YACe,IAAf,YACa,OAAO,EAAM,UAA1B,UACa,OAAO,EAAM,UAA1B,UACa,OAAO,EAAM,UAA1B,UACc,OAAO,EAAM,yBAA1B,UACU,EAAM,0BAAf,MACQ,EAAM,wBAAwB,QAAtC,IAEN,CACA,IAAI,GAAiC,KACrC,SAAS,IAA+B,CACtC,IAAI,EAAQ,OAAO,MAOnB,OANI,GAAwB,EAAM,OAArB,WACP,IAAU,KACd,GAAiC,EAC1B,CAAC,IAEV,GAAiC,KAC1B,CAAC,EACV,CACA,IAAI,GAAiC,OAAO,YAAtB,WAAmC,WAAa,IAAK,GACzE,GAA+B,OAAO,cAAtB,WAAqC,aAAe,IAAK,GACzE,GAA8B,OAAO,SAAtB,WAAgC,QAAU,IAAK,GAC9D,GACiB,OAAO,gBAAtB,WACI,eACuB,KAAvB,OAOE,GANA,SAAU,EAAU,CAClB,OAAO,GACJ,QAAQ,IAAI,CAAC,CACb,KAAK,CAAQ,CAAC,CACd,MAAM,EAAqB,CAChC,EAEV,SAAS,GAAsB,EAAO,CACpC,WAAW,UAAY,CACrB,MAAM,CACR,CAAC,CACH,CACA,SAAS,GAAiB,EAAM,CAC9B,OAAkB,IAAX,MACT,CACA,SAAS,GAAuB,EAAgB,EAAmB,CACjE,IAAI,EAAO,EACT,EAAQ,EACV,EAAG,CACD,IAAI,EAAW,EAAK,YAEpB,GADA,EAAe,YAAY,CAAI,EAC3B,GAAkB,EAAS,WAAf,EACd,IAAM,EAAO,EAAS,KAAgB,IAAT,MAA0B,IAAT,KAAgB,CAC5D,GAAU,IAAN,EAAa,CACf,EAAe,YAAY,CAAQ,EACnC,GAAiB,CAAiB,EAClC,MACF,CACA,GACF,MAAO,GACG,IAAR,KACS,IAAT,MACS,IAAT,MACS,IAAT,MACQ,IAAR,IAEA,SACG,GAAe,IAAX,OACP,GAAyB,EAAe,cAAc,eAAe,OAClE,GAAe,IAAX,OAAiB,CACxB,EAAO,EAAe,cAAc,KACpC,GAAyB,CAAI,EAC7B,IAAK,IAAI,EAAgB,EAAK,WAAY,GAAiB,CACzD,IAAI,EAAoB,EAAc,YACpC,EAAW,EAAc,SAC3B,EAAc,KACC,IAAb,UACY,IAAZ,SACY,IAAX,QACkB,EAAc,IAAI,YAAY,IAA/C,cACF,EAAK,YAAY,CAAa,EAChC,EAAgB,CAClB,CACF,MACa,IAAX,QACE,GAAyB,EAAe,cAAc,IAAI,CAAA,CAChE,EAAO,CACT,OAAS,GACT,GAAiB,CAAiB,CACpC,CACA,SAAS,GAA+B,EAAkB,EAAU,CAClE,IAAI,EAAO,EACX,EAAmB,EACnB,EAAG,CACD,IAAI,EAAW,EAAK,YAWpB,GAVM,EAAK,WAAX,EACI,GACI,EAAK,gBAAkB,EAAK,MAAM,QACnC,EAAK,MAAM,QAAU,SACpB,EAAK,MAAM,QAAU,EAAK,iBAAmB,GACxC,EAAK,aAAa,OAAO,IAAhC,IAAqC,EAAK,gBAAgB,OAAO,GAC7D,EAAK,WAAX,IACC,GACK,EAAK,aAAe,EAAK,UAAa,EAAK,UAAY,IACxD,EAAK,UAAY,EAAK,cAAgB,IAC3C,GAAkB,EAAS,WAAf,EACd,IAAM,EAAO,EAAS,KAAgB,IAAT,KAC3B,IAAU,IAAN,EAAwB,MACvB,GAAA,MAEI,IAAT,KAA0B,IAAT,MAA0B,IAAT,MAA0B,IAAT,MACjD,GAAA,CACN,EAAO,CACT,OAAS,EACX,CACA,SAAS,GAAwB,EAAW,CAC1C,IAAI,EAAW,EAAU,WAEzB,IADA,GAAmB,EAAS,WAAhB,KAA6B,EAAW,EAAS,aACtD,GAAY,CACjB,IAAI,EAAO,EAEX,OADA,EAAW,EAAS,YACZ,EAAK,SAAb,CACE,IAAK,OACL,IAAK,OACL,IAAK,OACH,GAAwB,CAAI,EAC5B,GAAsB,CAAI,EAC1B,SACF,IAAK,SACL,IAAK,QACH,SACF,IAAK,OACH,GAAqB,EAAK,IAAI,YAAY,IAAtC,aAAyC,QACjD,CACA,EAAU,YAAY,CAAI,CAC5B,CACF,CACA,SAAS,GAAmB,EAAU,EAAM,EAAO,EAAmB,CACpE,KAAa,EAAS,WAAf,GAA2B,CAChC,IAAI,EAAW,EACf,GAAI,EAAS,SAAS,YAAY,IAAM,EAAK,YAAY,EAErD,IAAA,CAAC,IACY,EAAS,WAArB,SAA8C,EAAS,OAAtB,UAElC,KAAA,MACG,GAAI,CAAC,EACV,IAAgB,IAAZ,SAAiC,EAAS,OAAtB,SAA4B,CAClD,IAAI,EAAe,EAAS,MAAjB,KAAwB,KAAO,GAAK,EAAS,KACxD,GACe,EAAS,OAAtB,UACA,EAAS,aAAa,MAAM,IAAM,EAElC,OAAO,CACX,MAAO,OAAO,CAAA,MACX,GAAI,CAAC,EAAS,IACjB,OAAQ,EAAR,CACE,IAAK,OACH,GAAI,CAAC,EAAS,aAAa,UAAU,EAAG,MACxC,OAAO,EACT,IAAK,OAIE,GAHL,EAAO,EAAS,aAAa,KAAK,EACb,IAAjB,cAAyB,EAAS,aAAa,iBAAiB,GAGlE,IAAS,EAAS,KAClB,EAAS,aAAa,MAAM,KACjB,EAAS,MAAjB,MAAgC,EAAS,OAAhB,GACtB,KACA,EAAS,OACf,EAAS,aAAa,aAAa,KACxB,EAAS,aAAjB,KAA+B,KAAO,EAAS,cAClD,EAAS,aAAa,OAAO,KAClB,EAAS,OAAjB,KAAyB,KAAO,EAAS,OAE5C,MACF,OAAO,EACT,IAAK,QACH,GAAI,EAAS,aAAa,iBAAiB,EAAG,MAC9C,OAAO,EACT,IAAK,SAEH,GADA,EAAO,EAAS,aAAa,KAAK,GAE/B,KAAkB,EAAS,KAAjB,KAAuB,KAAO,EAAS,MAChD,EAAS,aAAa,MAAM,KACjB,EAAS,MAAjB,KAAwB,KAAO,EAAS,OAC3C,EAAS,aAAa,aAAa,KACxB,EAAS,aAAjB,KAA+B,KAAO,EAAS,eACpD,GACA,EAAS,aAAa,OAAO,GAC7B,CAAC,EAAS,aAAa,UAAU,EAEjC,MACF,OAAO,EACT,QACE,OAAO,CACX,CAEF,GADA,EAAW,GAAkB,EAAS,WAAW,EACpC,IAAT,KAAmB,KACzB,CACA,OAAO,IACT,CACA,SAAS,GAAuB,EAAU,EAAM,EAAmB,CACjE,GAAW,IAAP,GAAa,OAAO,KACxB,KAAa,EAAS,WAAf,GASL,IAPS,EAAS,WAAf,GACa,EAAS,WAArB,SACa,EAAS,OAAtB,WACF,CAAC,IAGH,EAAW,GAAkB,EAAS,WAAW,EACpC,IAAT,MAAmB,OAAO,KAEhC,OAAO,CACT,CACA,SAAS,GAA4B,EAAU,EAAmB,CAChE,KAAa,EAAS,WAAf,GASL,IAPS,EAAS,WAAf,GACa,EAAS,WAArB,SACa,EAAS,OAAtB,WACF,CAAC,IAGH,EAAW,GAAkB,EAAS,WAAW,EACpC,IAAT,MAAmB,OAAO,KAEhC,OAAO,CACT,CACA,SAAS,GAA0B,EAAU,CAC3C,OAAgB,EAAS,OAAlB,MAAmC,EAAS,OAAlB,IACnC,CACA,SAAS,GAA2B,EAAU,CAC5C,OACW,EAAS,OAAlB,MACU,EAAS,OAAlB,MAAwC,EAAS,cAAc,aAArC,SAE/B,CACA,SAAS,GAA8B,EAAU,EAAU,CACzD,IAAI,EAAgB,EAAS,cAC7B,GAAa,EAAS,OAAlB,KAAwB,EAAS,YAAc,OAC9C,GAAa,EAAS,OAAlB,MAAwC,EAAc,aAA5B,UACjC,EAAS,MACN,CACH,IAAI,EAAW,UAAY,CACzB,EAAS,EACT,EAAc,oBAAoB,mBAAoB,CAAQ,CAChE,EACA,EAAc,iBAAiB,mBAAoB,CAAQ,EAC3D,EAAS,YAAc,CACzB,CACF,CACA,SAAS,GAAkB,EAAM,CAC/B,KAAe,GAAR,KAAc,EAAO,EAAK,YAAa,CAC5C,IAAI,EAAW,EAAK,SACpB,GAAU,IAAN,GAAwB,IAAN,EAAgB,MACtC,GAAU,IAAN,EAAgB,CAElB,GADA,EAAW,EAAK,KAEN,IAAR,KACS,IAAT,MACS,IAAT,MACS,IAAT,MACQ,IAAR,KACS,IAAT,MACQ,IAAR,IAEA,MACF,GAAa,IAAT,MAA8B,IAAT,KAAmB,OAAO,IACrD,CACF,CACA,OAAO,CACT,CACA,IAAI,GAA8C,KAClD,SAAS,GAAgD,EAAmB,CAC1E,EAAoB,EAAkB,YACtC,IAAK,IAAI,EAAQ,EAAG,GAAqB,CACvC,GAAU,EAAkB,WAAxB,EAAkC,CACpC,IAAI,EAAO,EAAkB,KAC7B,GAAa,IAAT,MAA0B,IAAT,KAAe,CAClC,GAAU,IAAN,EACF,OAAO,GAAkB,EAAkB,WAAW,EACxD,GACF,MACW,IAAT,KACW,IAAT,MACS,IAAT,MACS,IAAT,MACQ,IAAR,KACA,GACN,CACA,EAAoB,EAAkB,WACxC,CACA,OAAO,IACT,CACA,SAAS,GAA2B,EAAgB,CAClD,EAAiB,EAAe,gBAChC,IAAK,IAAI,EAAQ,EAAG,GAAkB,CACpC,GAAU,EAAe,WAArB,EAA+B,CACjC,IAAI,EAAO,EAAe,KAC1B,GACU,IAAR,KACS,IAAT,MACS,IAAT,MACS,IAAT,MACQ,IAAR,IACA,CACA,GAAU,IAAN,EAAa,OAAO,EACxB,GACF,MAAiB,IAAV,MAA2B,IAAT,MAAkB,GAC7C,CACA,EAAiB,EAAe,eAClC,CACA,OAAO,IACT,CACA,SAAS,GAAyB,EAAM,EAAO,EAAuB,CAEpE,OADA,EAAQ,GAAkC,CAAqB,EACvD,EAAR,CACE,IAAK,OAEH,GADA,EAAO,EAAM,gBACT,CAAC,EAAM,MAAM,MAAM,EAAuB,GAAG,CAAC,EAClD,OAAO,EACT,IAAK,OAEH,GADA,EAAO,EAAM,KACT,CAAC,EAAM,MAAM,MAAM,EAAuB,GAAG,CAAC,EAClD,OAAO,EACT,IAAK,OAEH,GADA,EAAO,EAAM,KACT,CAAC,EAAM,MAAM,MAAM,EAAuB,GAAG,CAAC,EAClD,OAAO,EACT,QACE,MAAM,MAAM,EAAuB,GAAG,CAAC,CAC3C,CACF,CACA,SAAS,GAAyB,EAAU,CAC1C,IAAK,IAAI,EAAa,EAAS,WAAY,EAAW,QACpD,EAAS,oBAAoB,EAAW,EAAE,EAC5C,GAAsB,CAAQ,CAChC,CACA,IAAI,GAAkB,IAAI,IACxB,GAAiB,IAAI,IACvB,SAAS,GAAiB,EAAW,CACnC,OAAsB,OAAO,EAAU,aAAhC,WACH,EAAU,YAAY,EAChB,EAAU,WAAhB,EACE,EACA,EAAU,aAClB,CACA,IAAI,GAAqB,EAAwB,EACjD,EAAwB,EAAI,CAC1B,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,GACH,EAAG,EACL,EACA,SAAS,IAAgB,CACvB,IAAI,EAAuB,GAAmB,EAAE,EAC9C,EAAe,GAAgB,EACjC,OAAO,GAAwB,CACjC,CACA,SAAS,GAAiB,EAAM,CAC9B,IAAI,EAAW,GAAoB,CAAI,EAC9B,IAAT,MAA2B,EAAS,MAAf,GAAiC,EAAS,OAApB,OACvC,GAAmB,CAAQ,EAC3B,GAAmB,EAAE,CAAI,CAC/B,CACA,IAAI,GAAiC,OAAO,SAAvB,IAAkC,KAAO,SAC9D,SAAS,GAAa,EAAK,EAAM,EAAa,CAC5C,IAAI,EAAgB,GACpB,GAAI,GAA8B,OAAO,GAApB,UAA4B,EAAM,CACrD,IAAI,EACF,GAA+C,CAAI,EACrD,EACE,aAAe,EAAM,YAAc,EAAqB,KAC7C,OAAO,GAApB,WACG,GAAsB,iBAAmB,EAAc,MAC1D,GAAe,IAAI,CAAkB,IAClC,GAAe,IAAI,CAAkB,EACrC,EAAM,CAAO,MAAkB,cAAmB,MAAK,EAC/C,EAAc,cAAc,CAAkB,IAAvD,OACI,EAAO,EAAc,cAAc,MAAM,EAC3C,GAAqB,EAAM,OAAQ,CAAG,EACtC,GAAoB,CAAI,EACxB,EAAc,KAAK,YAAY,CAAI,GACzC,CACF,CACA,SAAS,GAAY,EAAM,CACzB,GAAmB,EAAE,CAAI,EACzB,GAAa,eAAgB,EAAM,IAAI,CACzC,CACA,SAAS,GAAW,EAAM,EAAa,CACrC,GAAmB,EAAE,EAAM,CAAW,EACtC,GAAa,aAAc,EAAM,CAAW,CAC9C,CACA,SAAS,GAAQ,EAAM,EAAI,EAAS,CAClC,GAAmB,EAAE,EAAM,EAAI,CAAO,EACtC,IAAI,EAAgB,GACpB,GAAI,GAAiB,GAAQ,EAAI,CAC/B,IAAI,EACF,2BACA,GAA+C,CAAE,EACjD,KACU,IAAZ,SACI,GAAW,EAAQ,aACf,GACA,iBACA,GACE,EAAQ,WACV,EACA,KACW,OAAO,EAAQ,YAA5B,WACG,GACC,gBACA,GACE,EAAQ,UACV,EACA,OACH,GACC,UACA,GAA+C,CAAI,EACnD,KAKR,IAAI,EAAM,EACV,OAAQ,EAAR,CACE,IAAK,QACH,EAAM,GAAY,CAAI,EACtB,MACF,IAAK,SACH,EAAM,GAAa,CAAI,CAC3B,CACA,GAAgB,IAAI,CAAG,IACnB,EAAO,EACP,CACE,IAAK,UACL,KACc,IAAZ,SAAkB,GAAW,EAAQ,YAAc,IAAK,GAAI,EAC1D,IACN,EACA,CACF,EACA,GAAgB,IAAI,EAAK,CAAI,EACpB,EAAc,cAAc,CAAe,IAApD,MACe,IAAZ,SACC,EAAc,cAAc,GAA6B,CAAG,CAAC,GACjD,IAAb,UACC,EAAc,cAAc,GAAyB,CAAG,CAAC,IACzD,EAAK,EAAc,cAAc,MAAM,EACzC,GAAqB,EAAI,OAAQ,CAAI,EACrC,GAAoB,CAAE,EACtB,EAAc,KAAK,YAAY,CAAE,GACvC,CACF,CACA,SAAS,GAAc,EAAM,EAAS,CACpC,GAAmB,EAAE,EAAM,CAAO,EAClC,IAAI,EAAgB,GACpB,GAAI,GAAiB,EAAM,CACzB,IAAI,EAAK,GAAwB,OAAO,EAAQ,IAA5B,SAAiC,EAAQ,GAAK,SAChE,EACE,iCACA,GAA+C,CAAE,EACjD,YACA,GAA+C,CAAI,EACnD,KACF,EAAM,EACR,OAAQ,EAAR,CACE,IAAK,eACL,IAAK,eACL,IAAK,gBACL,IAAK,eACL,IAAK,SACL,IAAK,SACH,EAAM,GAAa,CAAI,CAC3B,CACA,GACE,CAAC,GAAgB,IAAI,CAAG,IACtB,EAAO,EAAO,CAAE,IAAK,gBAAuB,MAAK,EAAG,CAAO,EAC7D,GAAgB,IAAI,EAAK,CAAI,EACpB,EAAc,cAAc,CAAe,IAApD,MACA,CACA,OAAQ,EAAR,CACE,IAAK,eACL,IAAK,eACL,IAAK,gBACL,IAAK,eACL,IAAK,SACL,IAAK,SACH,GAAI,EAAc,cAAc,GAAyB,CAAG,CAAC,EAC3D,MACN,CACA,EAAK,EAAc,cAAc,MAAM,EACvC,GAAqB,EAAI,OAAQ,CAAI,EACrC,GAAoB,CAAE,EACtB,EAAc,KAAK,YAAY,CAAE,CACnC,CACF,CACF,CACA,SAAS,GAAa,EAAM,EAAY,EAAS,CAC/C,GAAmB,EAAE,EAAM,EAAY,CAAO,EAC9C,IAAI,EAAgB,GACpB,GAAI,GAAiB,EAAM,CACzB,IAAI,EAAS,GAAqB,CAAa,CAAC,CAAC,gBAC/C,EAAM,GAAY,CAAI,EACxB,IAA2B,UAC3B,IAAI,EAAW,EAAO,IAAI,CAAG,EAC7B,GAAI,CAAC,EAAU,CACb,IAAI,EAAQ,CAAE,QAAS,EAAG,QAAS,IAAK,EACxC,GACG,EAAW,EAAc,cACxB,GAA6B,CAAG,CAClC,EAEA,EAAM,QAAU,MACb,CACH,EAAO,EACL,CAAE,IAAK,aAAoB,OAAM,kBAAmB,CAAW,EAC/D,CACF,GACC,EAAU,GAAgB,IAAI,CAAG,IAChC,GAA+B,EAAM,CAAO,EAC9C,IAAI,EAAQ,EAAW,EAAc,cAAc,MAAM,EACzD,GAAoB,CAAI,EACxB,GAAqB,EAAM,OAAQ,CAAI,EACvC,EAAK,GAAK,IAAI,QAAQ,SAAU,EAAS,EAAQ,CAC/C,EAAK,OAAS,EACd,EAAK,QAAU,CACjB,CAAC,EACD,EAAK,iBAAiB,OAAQ,UAAY,CACxC,EAAM,SAAW,CACnB,CAAC,EACD,EAAK,iBAAiB,QAAS,UAAY,CACzC,EAAM,SAAW,CACnB,CAAC,EACD,EAAM,SAAW,EACjB,GAAiB,EAAU,EAAY,CAAa,CACtD,CACA,EAAW,CACT,KAAM,aACN,SAAU,EACV,MAAO,EACA,OACT,EACA,EAAO,IAAI,EAAK,CAAQ,CAC1B,CACF,CACF,CACA,SAAS,GAAc,EAAK,EAAS,CACnC,GAAmB,EAAE,EAAK,CAAO,EACjC,IAAI,EAAgB,GACpB,GAAI,GAAiB,EAAK,CACxB,IAAI,EAAU,GAAqB,CAAa,CAAC,CAAC,iBAChD,EAAM,GAAa,CAAG,EACtB,EAAW,EAAQ,IAAI,CAAG,EAC5B,IACI,EAAW,EAAc,cAAc,GAAyB,CAAG,CAAC,EACtE,IACI,EAAM,EAAO,CAAO,MAAK,MAAO,CAAC,CAAE,EAAG,CAAO,GAC9C,EAAU,GAAgB,IAAI,CAAG,IAChC,GAA2B,EAAK,CAAO,EACxC,EAAW,EAAc,cAAc,QAAQ,EAChD,GAAoB,CAAQ,EAC5B,GAAqB,EAAU,OAAQ,CAAG,EAC1C,EAAc,KAAK,YAAY,CAAQ,GACxC,EAAW,CACV,KAAM,SACN,SAAU,EACV,MAAO,EACP,MAAO,IACT,EACA,EAAQ,IAAI,EAAK,CAAQ,EAC7B,CACF,CACA,SAAS,GAAoB,EAAK,EAAS,CACzC,GAAmB,EAAE,EAAK,CAAO,EACjC,IAAI,EAAgB,GACpB,GAAI,GAAiB,EAAK,CACxB,IAAI,EAAU,GAAqB,CAAa,CAAC,CAAC,iBAChD,EAAM,GAAa,CAAG,EACtB,EAAW,EAAQ,IAAI,CAAG,EAC5B,IACI,EAAW,EAAc,cAAc,GAAyB,CAAG,CAAC,EACtE,IACI,EAAM,EAAO,CAAO,MAAK,MAAO,CAAC,EAAG,KAAM,QAAS,EAAG,CAAO,GAC9D,EAAU,GAAgB,IAAI,CAAG,IAChC,GAA2B,EAAK,CAAO,EACxC,EAAW,EAAc,cAAc,QAAQ,EAChD,GAAoB,CAAQ,EAC5B,GAAqB,EAAU,OAAQ,CAAG,EAC1C,EAAc,KAAK,YAAY,CAAQ,GACxC,EAAW,CACV,KAAM,SACN,SAAU,EACV,MAAO,EACP,MAAO,IACT,EACA,EAAQ,IAAI,EAAK,CAAQ,EAC7B,CACF,CACA,SAAS,GAAY,EAAM,EAAc,EAAc,EAAiB,CACtE,IAAI,GAA4B,EAC9B,GAAwB,SACtB,GAAiB,CAAwB,EACzC,KACJ,GAAI,CAAC,EAA0B,MAAM,MAAM,EAAuB,GAAG,CAAC,EACtE,OAAQ,EAAR,CACE,IAAK,OACL,IAAK,QACH,OAAO,KACT,IAAK,QACH,OAAoB,OAAO,EAAa,YAAjC,UACQ,OAAO,EAAa,MAAjC,UACI,EAAe,GAAY,EAAa,IAAI,EAC7C,EAAe,GACd,CACF,CAAC,CAAC,gBACD,EAAkB,EAAa,IAAI,CAAY,EAChD,IACI,EAAkB,CAClB,KAAM,QACN,SAAU,KACV,MAAO,EACP,MAAO,IACT,EACA,EAAa,IAAI,EAAc,CAAe,GAChD,GACA,CAAE,KAAM,OAAQ,SAAU,KAAM,MAAO,EAAG,MAAO,IAAK,EAC5D,IAAK,OACH,GACmB,EAAa,MAA9B,cACa,OAAO,EAAa,MAAjC,UACa,OAAO,EAAa,YAAjC,SACA,CACA,EAAO,GAAY,EAAa,IAAI,EACpC,IAAI,EAAa,GACb,CACF,CAAC,CAAC,gBACF,EAAe,EAAW,IAAI,CAAI,EAoCpC,GAnCA,IACI,EACA,EAAyB,eAAiB,EAC3C,EAAe,CACd,KAAM,aACN,SAAU,KACV,MAAO,EACP,MAAO,CAAE,QAAS,EAAG,QAAS,IAAK,CACrC,EACA,EAAW,IAAI,EAAM,CAAY,GAChC,EAAa,EAAyB,cACrC,GAA6B,CAAI,CACnC,IACE,CAAC,EAAW,KACV,EAAa,SAAW,EACzB,EAAa,MAAM,QAAU,GAChC,GAAgB,IAAI,CAAI,IACpB,EAAe,CACf,IAAK,UACL,GAAI,QACJ,KAAM,EAAa,KACnB,YAAa,EAAa,YAC1B,UAAW,EAAa,UACxB,MAAO,EAAa,MACpB,SAAU,EAAa,SACvB,eAAgB,EAAa,cAC/B,EACA,GAAgB,IAAI,EAAM,CAAY,EACtC,GACE,GACE,EACA,EACA,EACA,EAAa,KACf,IACF,GAAyB,IAAT,KAClB,MAAM,MAAM,EAAuB,IAAK,EAAE,CAAC,EAC7C,OAAO,CACT,CACA,GAAI,GAAyB,IAAT,KAClB,MAAM,MAAM,EAAuB,IAAK,EAAE,CAAC,EAC7C,OAAO,KACT,IAAK,SACH,MACG,GAAe,EAAa,MAC5B,EAAe,EAAa,IAChB,OAAO,GAApB,UACA,GACe,OAAO,GAAtB,YACa,OAAO,GAApB,UACM,EAAe,GAAa,CAAY,EACzC,EAAe,GACd,CACF,CAAC,CAAC,iBACD,EAAkB,EAAa,IAAI,CAAY,EAChD,IACI,EAAkB,CAClB,KAAM,SACN,SAAU,KACV,MAAO,EACP,MAAO,IACT,EACA,EAAa,IAAI,EAAc,CAAe,GAChD,GACA,CAAE,KAAM,OAAQ,SAAU,KAAM,MAAO,EAAG,MAAO,IAAK,EAE9D,QACE,MAAM,MAAM,EAAuB,IAAK,CAAI,CAAC,CACjD,CACF,CACA,SAAS,GAAY,EAAM,CACzB,MAAO,SAAW,GAA+C,CAAI,EAAI,GAC3E,CACA,SAAS,GAA6B,EAAK,CACzC,MAAO,0BAA4B,EAAM,GAC3C,CACA,SAAS,GAA4B,EAAU,CAC7C,OAAO,EAAO,CAAC,EAAG,EAAU,CAC1B,kBAAmB,EAAS,WAC5B,WAAY,IACd,CAAC,CACH,CACA,SAAS,GAAkB,EAAe,EAAK,EAAc,EAAO,CAClE,EAAc,cAAc,mCAAqC,EAAM,GAAG,EACrE,EAAM,QAAU,GACf,EAAM,EAAc,cAAc,MAAM,EACzC,EAAM,QAAU,EACjB,EAAI,iBAAiB,OAAQ,UAAY,CACvC,MAAQ,GAAM,SAAW,CAC3B,CAAC,EACD,EAAI,iBAAiB,QAAS,UAAY,CACxC,MAAQ,GAAM,SAAW,CAC3B,CAAC,EACD,GAAqB,EAAK,OAAQ,CAAY,EAC9C,GAAoB,CAAG,EACvB,EAAc,KAAK,YAAY,CAAG,EACxC,CACA,SAAS,GAAa,EAAK,CACzB,MAAO,SAAW,GAA+C,CAAG,EAAI,IAC1E,CACA,SAAS,GAAyB,EAAK,CACrC,MAAO,gBAAkB,CAC3B,CACA,SAAS,GAAgB,EAAe,EAAU,EAAO,CAEvD,GADA,EAAS,QACI,EAAS,WAAlB,KACF,OAAQ,EAAS,KAAjB,CACE,IAAK,QACH,IAAI,EAAW,EAAc,cAC3B,qBACE,GAA+C,EAAM,IAAI,EACzD,IACJ,EACA,GAAI,EACF,MACG,GAAS,SAAW,EACrB,GAAoB,CAAQ,EAC5B,EAEJ,IAAI,EAAa,EAAO,CAAC,EAAG,EAAO,CACjC,YAAa,EAAM,KACnB,kBAAmB,EAAM,WACzB,KAAM,KACN,WAAY,IACd,CAAC,EAOD,MANA,IAAY,EAAc,eAAiB,EAAA,CAAe,cACxD,OACF,EACA,GAAoB,CAAQ,EAC5B,GAAqB,EAAU,QAAS,CAAU,EAClD,GAAiB,EAAU,EAAM,WAAY,CAAa,EAClD,EAAS,SAAW,EAC9B,IAAK,aACH,EAAa,GAAY,EAAM,IAAI,EACnC,IAAI,EAAe,EAAc,cAC/B,GAA6B,CAAU,CACzC,EACA,GAAI,EACF,MACG,GAAS,MAAM,SAAW,EAC1B,EAAS,SAAW,EACrB,GAAoB,CAAY,EAChC,EAEJ,EAAW,GAA4B,CAAK,GAC3C,EAAa,GAAgB,IAAI,CAAU,IAC1C,GAA+B,EAAU,CAAU,EACrD,GACE,EAAc,eAAiB,EAAA,CAC/B,cAAc,MAAM,EACtB,GAAoB,CAAY,EAChC,IAAI,EAAe,EAQnB,MAPA,GAAa,GAAK,IAAI,QAAQ,SAAU,EAAS,EAAQ,CACvD,EAAa,OAAS,EACtB,EAAa,QAAU,CACzB,CAAC,EACD,GAAqB,EAAc,OAAQ,CAAQ,EACnD,EAAS,MAAM,SAAW,EAC1B,GAAiB,EAAc,EAAM,WAAY,CAAa,EACtD,EAAS,SAAW,EAC9B,IAAK,SAqBH,MApBA,GAAe,GAAa,EAAM,GAAG,GAElC,EAAa,EAAc,cAC1B,GAAyB,CAAY,CACvC,IAGG,EAAS,SAAW,EACrB,GAAoB,CAAU,EAC9B,IAEJ,EAAW,GACN,EAAa,GAAgB,IAAI,CAAY,KAChD,EAAY,EAAO,CAAC,EAAG,CAAK,EAC1B,GAA2B,EAAU,CAAU,GACnD,EAAgB,EAAc,eAAiB,EAC/C,EAAa,EAAc,cAAc,QAAQ,EACjD,GAAoB,CAAU,EAC9B,GAAqB,EAAY,OAAQ,CAAQ,EACjD,EAAc,KAAK,YAAY,CAAU,EACjC,EAAS,SAAW,GAC9B,IAAK,OACH,OAAO,KACT,QACE,MAAM,MAAM,EAAuB,IAAK,EAAS,IAAI,CAAC,CAC1D,MAEiB,EAAS,OAA1B,cACE,EAAO,EAAS,MAAM,QAAU,KAC9B,EAAW,EAAS,SACrB,EAAS,MAAM,SAAW,EAC3B,GAAiB,EAAU,EAAM,WAAY,CAAa,GAC9D,OAAO,EAAS,QAClB,CACA,SAAS,GAAiB,EAAU,EAAY,EAAM,CACpD,IACE,IAAI,EAAQ,EAAK,iBACb,gEACF,EACA,EAAO,EAAM,OAAS,EAAM,EAAM,OAAS,GAAK,KAChD,EAAQ,EACR,EAAI,EACN,EAAI,EAAM,OACV,IACA,CACA,IAAI,EAAO,EAAM,GACjB,GAAI,EAAK,QAAQ,aAAe,EAAY,EAAQ,OAC/C,GAAI,IAAU,EAAM,KAC3B,CACA,EACI,EAAM,WAAW,aAAa,EAAU,EAAM,WAAW,GACvD,EAAmB,EAAK,WAAX,EAAsB,EAAK,KAAO,EACjD,EAAW,aAAa,EAAU,EAAW,UAAU,EAC7D,CACA,SAAS,GAA+B,EAAiB,EAAc,CACrE,EACmB,cAAc,EAAa,YAC9C,EACmB,iBAAiB,EAAa,eACjD,EAAkD,QAAQ,EAAa,KACzE,CACA,SAAS,GAA2B,EAAa,EAAc,CAC7D,EACe,cAAc,EAAa,YAC1C,EACe,iBAAiB,EAAa,eAC7C,EACe,YAAY,EAAa,SAC1C,CACA,IAAI,GAAY,KAChB,SAAS,GAA4B,EAAM,EAAc,EAAe,CACtE,GAAa,KAAT,KAAoB,CACtB,IAAI,EAAQ,IAAI,IACZ,EAAU,GAAY,IAAI,IAC9B,EAAO,IAAI,EAAe,CAAK,CACjC,KACE,GAAU,GACP,EAAQ,EAAO,IAAI,CAAa,EACjC,IAAW,EAAQ,IAAI,IAAQ,EAAO,IAAI,EAAe,CAAK,GAClE,GAAI,EAAM,IAAI,CAAI,EAAG,OAAO,EAG5B,IAFA,EAAM,IAAI,EAAM,IAAI,EACpB,EAAgB,EAAc,qBAAqB,CAAI,EAClD,EAAS,EAAG,EAAS,EAAc,OAAQ,IAAU,CACxD,IAAI,EAAO,EAAc,GACzB,GACE,EACE,EAAK,KACL,EAAK,KACO,IAAX,QAAoC,EAAK,aAAa,KAAK,IAAxC,eAEW,EAAK,eAAtC,6BACA,CACA,IAAI,EAAU,EAAK,aAAa,CAAY,GAAK,GACjD,EAAU,EAAO,EACjB,IAAI,EAAW,EAAM,IAAI,CAAO,EAChC,EAAW,EAAS,KAAK,CAAI,EAAI,EAAM,IAAI,EAAS,CAAC,CAAI,CAAC,CAC5D,CACF,CACA,OAAO,CACT,CACA,SAAS,GAAe,EAAe,EAAM,EAAU,CACrD,EAAgB,EAAc,eAAiB,EAC/C,EAAc,KAAK,aACjB,EACY,IAAZ,QAAmB,EAAc,cAAc,cAAc,EAAI,IACnE,CACF,CACA,SAAS,GAAoB,EAAM,EAAO,EAAa,CACrD,GAAU,IAAN,GAA6B,EAAM,UAAd,KAAwB,MAAO,CAAC,EACzD,OAAQ,EAAR,CACE,IAAK,OACL,IAAK,QACH,MAAO,CAAC,EACV,IAAK,QACH,GACe,OAAO,EAAM,YAA1B,UACa,OAAO,EAAM,MAA1B,UACO,EAAM,OAAb,GAEA,MACF,MAAO,CAAC,EACV,IAAK,OACH,GACe,OAAO,EAAM,KAA1B,UACa,OAAO,EAAM,MAA1B,UACO,EAAM,OAAb,IACA,EAAM,QACN,EAAM,QAEN,MACF,OAAQ,EAAM,IAAd,CACE,IAAK,aACH,MACG,GAAO,EAAM,SACD,OAAO,EAAM,YAA1B,UAAgD,GAAR,KAE5C,QACE,MAAO,CAAC,CACZ,CACF,IAAK,SACH,GACE,EAAM,OACS,OAAO,EAAM,OAA5B,YACa,OAAO,EAAM,OAA1B,UACA,CAAC,EAAM,QACP,CAAC,EAAM,SACP,EAAM,KACO,OAAO,EAAM,KAA1B,SAEA,MAAO,CAAC,CACd,CACA,MAAO,CAAC,CACV,CACA,SAAS,GAAgB,EAAU,CACjC,MAAO,EAAiB,EAAS,OAA1B,cAAkC,EAAO,EAAS,MAAM,QAAU,GAG3E,CACA,SAAS,GAAgB,EAAO,EAAe,EAAU,EAAO,CAC9D,GACmB,EAAS,OAA1B,eACc,OAAO,EAAM,OAA1B,UACC,CAAC,IAAM,WAAW,EAAM,KAAK,CAAC,CAAC,UACjC,EAAO,EAAS,MAAM,QAAU,GAChC,CACA,GAAa,EAAS,WAAlB,KAA4B,CAC9B,IAAI,EAAM,GAAY,EAAM,IAAI,EAC9B,EAAW,EAAc,cACvB,GAA6B,CAAG,CAClC,EACF,GAAI,EAAU,CACZ,EAAgB,EAAS,GAEV,OAAO,GAApB,UADO,GAEQ,OAAO,EAAc,MAApC,aACC,EAAM,QACN,EAAQ,GAAY,KAAK,CAAK,EAC/B,EAAc,KAAK,EAAO,CAAK,GACjC,EAAS,MAAM,SAAW,EAC1B,EAAS,SAAW,EACpB,GAAoB,CAAQ,EAC5B,MACF,CACA,EAAW,EAAc,eAAiB,EAC1C,EAAQ,GAA4B,CAAK,GACxC,EAAM,GAAgB,IAAI,CAAG,IAC5B,GAA+B,EAAO,CAAG,EAC3C,EAAW,EAAS,cAAc,MAAM,EACxC,GAAoB,CAAQ,EAC5B,IAAI,EAAe,EACnB,EAAa,GAAK,IAAI,QAAQ,SAAU,EAAS,EAAQ,CACvD,EAAa,OAAS,EACtB,EAAa,QAAU,CACzB,CAAC,EACD,GAAqB,EAAU,OAAQ,CAAK,EAC5C,EAAS,SAAW,CACtB,CACS,EAAM,cAAf,OAA+B,EAAM,YAAc,IAAI,KACvD,EAAM,YAAY,IAAI,EAAU,CAAa,GAC5C,EAAgB,EAAS,MAAM,UAC9B,EAAO,EAAS,MAAM,QAAU,KAC/B,EAAM,QACN,EAAW,GAAY,KAAK,CAAK,EAClC,EAAc,iBAAiB,OAAQ,CAAQ,EAC/C,EAAc,iBAAiB,QAAS,CAAQ,EACpD,CACF,CACA,IAAI,GAA4B,EAChC,SAAS,GAAuB,EAAO,EAAe,CAIpD,OAHA,EAAM,aACE,EAAM,QAAZ,GACA,GAA2B,EAAO,EAAM,WAAW,EAC9C,EAAI,EAAM,OAAS,EAAI,EAAM,SAChC,SAAU,EAAQ,CAChB,IAAI,EAAkB,WAAW,UAAY,CAG3C,GAFA,EAAM,aACJ,GAA2B,EAAO,EAAM,WAAW,EACjD,EAAM,UAAW,CACnB,IAAI,EAAY,EAAM,UACtB,EAAM,UAAY,KAClB,EAAU,CACZ,CACF,EAAG,IAAM,CAAa,EACtB,EAAI,EAAM,UACF,KAAN,IACC,GAA4B,MAAQ,GAAkB,GACzD,IAAI,EAAW,WACb,UAAY,CAEV,GADA,EAAM,iBAAmB,CAAC,EAElB,EAAM,QAAZ,IACC,EAAM,aACL,GAA2B,EAAO,EAAM,WAAW,EACrD,EAAM,WACN,CACA,IAAI,EAAY,EAAM,UACtB,EAAM,UAAY,KAClB,EAAU,CACZ,CACF,GACC,EAAM,SAAW,GAA4B,GAAK,KACjD,CACJ,EAEA,MADA,GAAM,UAAY,EACX,UAAY,CACjB,EAAM,UAAY,KAClB,aAAa,CAAe,EAC5B,aAAa,CAAQ,CACvB,CACF,EACA,IACN,CACA,SAAS,IAAc,CAErB,GADA,KAAK,QACK,KAAK,QAAX,IAA2B,KAAK,WAAX,GAAuB,CAAC,KAAK,kBACpD,CAAI,GAAA,KAAK,YAAa,GAA2B,KAAM,KAAK,WAAW,OAClE,GAAI,KAAK,UAAW,CACvB,IAAI,EAAY,KAAK,UACrB,KAAK,UAAY,KACjB,EAAU,CACZ,EACJ,CACA,IAAI,GAAoB,KACxB,SAAS,GAA2B,EAAO,EAAW,CACpD,EAAM,YAAc,KACX,EAAM,YAAf,OACG,EAAM,QACN,GAAoB,IAAI,IACzB,EAAU,QAAQ,GAA0B,CAAK,EAChD,GAAoB,KACrB,GAAY,KAAK,CAAK,EAC1B,CACA,SAAS,GAAyB,EAAM,EAAU,CAChD,GAAI,EAAE,EAAS,MAAM,QAAU,GAAI,CACjC,IAAI,EAAc,GAAkB,IAAI,CAAI,EAC5C,GAAI,EAAa,IAAI,EAAO,EAAY,IAAI,IAAI,MAC3C,CACH,EAAc,IAAI,IAClB,GAAkB,IAAI,EAAM,CAAW,EACvC,IACE,IAAI,EAAQ,EAAK,iBACb,8CACF,EACA,EAAI,EACN,EAAI,EAAM,OACV,IACA,CACA,IAAI,EAAO,EAAM,IAEJ,EAAK,WAAhB,QACc,EAAK,aAAa,OAAO,IAAvC,aAEA,EAAY,IAAI,EAAK,QAAQ,WAAY,CAAI,EAAI,EAAO,EAC5D,CACA,GAAQ,EAAY,IAAI,KAAM,CAAI,CACpC,CACA,EAAQ,EAAS,SACjB,EAAO,EAAM,aAAa,iBAAiB,EAC3C,EAAI,EAAY,IAAI,CAAI,GAAK,EAC7B,IAAM,GAAQ,EAAY,IAAI,KAAM,CAAK,EACzC,EAAY,IAAI,EAAM,CAAK,EAC3B,KAAK,QACL,EAAO,GAAY,KAAK,IAAI,EAC5B,EAAM,iBAAiB,OAAQ,CAAI,EACnC,EAAM,iBAAiB,QAAS,CAAI,EACpC,EACI,EAAE,WAAW,aAAa,EAAO,EAAE,WAAW,GAC5C,EAAa,EAAK,WAAX,EAAsB,EAAK,KAAO,EAC3C,EAAK,aAAa,EAAO,EAAK,UAAU,GAC5C,EAAS,MAAM,SAAW,CAC5B,CACF,CACA,IAAI,GAAwB,CAC1B,SAAU,EACV,SAAU,KACV,SAAU,KACV,cAAe,GACf,eAAgB,GAChB,aAAc,CAChB,EACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACA,KAAK,IAAM,EACX,KAAK,cAAgB,EACrB,KAAK,UAAY,KAAK,QAAU,KAAK,gBAAkB,KACvD,KAAK,cAAgB,GACrB,KAAK,aACH,KAAK,KACL,KAAK,eACL,KAAK,QACL,KAAK,oBACH,KACJ,KAAK,iBAAmB,EACxB,KAAK,gBAAkB,GAAc,EAAE,EACvC,KAAK,eACH,KAAK,oBACL,KAAK,2BACL,KAAK,aACL,KAAK,UACL,KAAK,YACL,KAAK,eACL,KAAK,aACH,EACJ,KAAK,cAAgB,GAAc,CAAC,EACpC,KAAK,cAAgB,GAAc,IAAI,EACvC,KAAK,iBAAmB,EACxB,KAAK,gBAAkB,EACvB,KAAK,cAAgB,EACrB,KAAK,mBAAqB,EAC1B,KAAK,YAAc,KACnB,KAAK,iBAAmB,EACxB,KAAK,UAAY,EACjB,KAAK,sBAAwB,IAAI,GACnC,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CA2BA,MA1BA,GAAgB,IAAI,GAClB,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACF,EACA,EAAM,EACN,CAAC,IAAM,IAAiB,GAAO,IAC/B,EAAe,GAAqB,EAAG,KAAM,KAAM,CAAG,EACtD,EAAc,QAAU,EACxB,EAAa,UAAY,EACzB,EAAM,GAAY,EAClB,EAAI,WACJ,EAAc,YAAc,EAC5B,EAAI,WACJ,EAAa,cAAgB,CAC3B,QAAS,EACT,aAAc,EACd,MAAO,CACT,EACA,GAAsB,CAAY,EAC3B,CACT,CACA,SAAS,GAAqB,EAAiB,CAG7C,OAFK,GACL,EAAkB,GACX,GAFsB,EAG/B,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,EACA,CACA,EAAkB,GAAqB,CAAe,EAC7C,EAAU,UAAnB,KACK,EAAU,QAAU,EACpB,EAAU,eAAiB,EAChC,EAAY,GAAa,CAAI,EAC7B,EAAU,QAAU,CAAW,SAAQ,EACvC,EAAsB,IAAX,IAAK,GAAiB,KAAO,EAC/B,IAAT,OAAsB,EAAU,SAAW,GAC3C,EAAU,GAAc,EAAW,EAAW,CAAI,EACzC,IAAT,OACG,GAAsB,EAAS,EAAW,CAAI,EAC/C,GAAoB,EAAS,EAAW,CAAI,EAChD,CACA,SAAS,GAAkB,EAAO,EAAW,CAE3C,GADA,EAAQ,EAAM,cACD,IAAT,MAA2B,EAAM,aAAf,KAA2B,CAC/C,IAAI,EAAI,EAAM,UACd,EAAM,UAAkB,IAAN,GAAW,EAAI,EAAY,EAAI,CACnD,CACF,CACA,SAAS,GAA2B,EAAO,EAAW,CACpD,GAAkB,EAAO,CAAS,GACjC,EAAQ,EAAM,YAAc,GAAkB,EAAO,CAAS,CACjE,CACA,SAAS,GAA2B,EAAO,CACzC,GAAW,EAAM,MAAb,IAA2B,EAAM,MAAb,GAAkB,CACxC,IAAI,EAAO,GAA+B,EAAO,QAAQ,EAChD,IAAT,MAAiB,GAAsB,EAAM,EAAO,QAAQ,EAC5D,GAA2B,EAAO,QAAQ,CAC5C,CACF,CACA,SAAS,GAAkC,EAAO,CAChD,GAAW,EAAM,MAAb,IAA2B,EAAM,MAAb,GAAkB,CACxC,IAAI,EAAO,GAAkB,EAC7B,EAAO,GAAgC,CAAI,EAC3C,IAAI,EAAO,GAA+B,EAAO,CAAI,EAC5C,IAAT,MAAiB,GAAsB,EAAM,EAAO,CAAI,EACxD,GAA2B,EAAO,CAAI,CACxC,CACF,CACA,IAAI,GAAW,CAAC,EAChB,SAAS,GACP,EACA,EACA,EACA,EACA,CACA,IAAI,EAAiB,EAAqB,EAC1C,EAAqB,EAAI,KACzB,IAAI,EAAmB,EAAwB,EAC/C,GAAI,CACF,EAAyB,EAAI,EAC3B,GAAc,EAAc,EAAkB,EAAW,CAAW,CACxE,QAAU,CACR,EAAyB,EAAI,EAC1B,EAAqB,EAAI,CAC9B,CACF,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,CACA,IAAI,EAAiB,EAAqB,EAC1C,EAAqB,EAAI,KACzB,IAAI,EAAmB,EAAwB,EAC/C,GAAI,CACF,EAAyB,EAAI,EAC3B,GAAc,EAAc,EAAkB,EAAW,CAAW,CACxE,QAAU,CACR,EAAyB,EAAI,EAC1B,EAAqB,EAAI,CAC9B,CACF,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,CACA,GAAI,GAAU,CACZ,IAAI,EAAY,GAA0B,CAAW,EACrD,GAAa,IAAT,KACF,GACE,EACA,EACA,EACA,GACA,CACF,EACE,GAAuB,EAAc,CAAW,OAC/C,GACH,GACE,EACA,EACA,EACA,EACA,CACF,EAEA,EAAY,gBAAgB,OACzB,GACF,GAAuB,EAAc,CAAW,EACjD,EAAmB,GACjB,GAAK,GAAyB,QAAQ,CAAY,EACpD,CACA,KAAgB,IAAT,MAAsB,CAC3B,IAAI,EAAQ,GAAoB,CAAS,EACzC,GAAa,IAAT,KACF,OAAQ,EAAM,IAAd,CACE,IAAK,GAEH,GADA,EAAQ,EAAM,UACV,EAAM,QAAQ,cAAc,aAAc,CAC5C,IAAI,EAAQ,GAAwB,EAAM,YAAY,EACtD,GAAU,IAAN,EAAa,CACf,IAAI,EAAO,EAEX,IADA,EAAK,cAAgB,EAChB,EAAK,gBAAkB,EAAG,GAAS,CACtC,IAAI,EAAO,GAAM,GAAK,GAAM,CAAK,EACjC,EAAK,cAAc,IAAM,EACzB,GAAS,CAAC,CACZ,CACA,GAAsB,CAAK,EAC3B,EAAO,EAAmB,KACtB,GAAqC,GAAI,EAAI,IAC/C,GAA8B,EAAG,CAAC,CAAC,EACvC,CACF,CACA,MACF,IAAK,IACL,IAAK,IACH,EAAQ,GAA+B,EAAO,CAAC,EACpC,IAAT,MAAiB,GAAsB,EAAM,EAAO,CAAC,EACrD,GAAgB,EAChB,GAA2B,EAAO,CAAC,CACzC,CAUF,GATA,EAAQ,GAA0B,CAAW,EACpC,IAAT,MACE,GACE,EACA,EACA,EACA,GACA,CACF,EACE,IAAU,EAAW,MACzB,EAAY,CACd,CACS,IAAT,MAAsB,EAAY,gBAAgB,CACpD,MACE,GACE,EACA,EACA,EACA,KACA,CACF,CACJ,CACF,CACA,SAAS,GAA0B,EAAa,CAE9C,MADA,GAAc,GAAe,CAAW,EACjC,GAA2B,CAAW,CAC/C,CACA,IAAI,GAAoB,KACxB,SAAS,GAA2B,EAAY,CAG9C,GAFA,GAAoB,KACpB,EAAa,GAA2B,CAAU,EACrC,IAAT,KAAqB,CACvB,IAAI,EAAiB,EAAuB,CAAU,EACtD,GAAa,IAAT,KAAyB,EAAa,SACrC,CACH,IAAI,EAAM,EAAe,IACzB,GAAW,IAAP,GAAY,CAEd,GADA,EAAa,EAA6B,CAAc,EAC3C,IAAT,KAAqB,OAAO,EAChC,EAAa,IACf,MAAO,GAAW,IAAP,GAAY,CAErB,GADA,EAAa,EAA6B,CAAc,EAC3C,IAAT,KAAqB,OAAO,EAChC,EAAa,IACf,MAAO,GAAU,IAAN,EAAW,CACpB,GAAI,EAAe,UAAU,QAAQ,cAAc,aACjD,OAAa,EAAe,MAArB,EACH,EAAe,UAAU,cACzB,KACN,EAAa,IACf,MAAO,IAAmB,IAAe,EAAa,KACxD,CACF,CAEA,MADA,IAAoB,EACb,IACT,CACA,SAAS,GAAiB,EAAc,CACtC,OAAQ,EAAR,CACE,IAAK,eACL,IAAK,SACL,IAAK,QACL,IAAK,QACL,IAAK,cACL,IAAK,OACL,IAAK,MACL,IAAK,WACL,IAAK,WACL,IAAK,UACL,IAAK,YACL,IAAK,OACL,IAAK,UACL,IAAK,WACL,IAAK,QACL,IAAK,UACL,IAAK,UACL,IAAK,WACL,IAAK,QACL,IAAK,YACL,IAAK,UACL,IAAK,QACL,IAAK,QACL,IAAK,OACL,IAAK,gBACL,IAAK,cACL,IAAK,YACL,IAAK,aACL,IAAK,QACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,cACL,IAAK,WACL,IAAK,aACL,IAAK,eACL,IAAK,SACL,IAAK,kBACL,IAAK,YACL,IAAK,mBACL,IAAK,iBACL,IAAK,oBACL,IAAK,aACL,IAAK,YACL,IAAK,cACL,IAAK,OACL,IAAK,mBACL,IAAK,QACL,IAAK,aACL,IAAK,WACL,IAAK,SACL,IAAK,cACH,MAAO,GACT,IAAK,OACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,cACL,IAAK,aACL,IAAK,cACL,IAAK,SACL,IAAK,YACL,IAAK,QACL,IAAK,aACL,IAAK,aACL,IAAK,eACL,IAAK,eACH,MAAO,GACT,IAAK,UACH,OAAQ,GAAwB,EAAhC,CACE,KAAK,GACH,MAAO,GACT,KAAK,GACH,MAAO,GACT,KAAK,GACL,KAAK,GACH,MAAO,IACT,KAAK,GACH,MAAO,WACT,QACE,MAAO,GACX,CACF,QACE,MAAO,GACX,CACF,CACA,IAAI,GAA4B,CAAC,EAC/B,GAAc,KACd,GAAa,KACb,GAAc,KACd,GAAiB,IAAI,IACrB,GAAwB,IAAI,IAC5B,GAAiC,CAAC,EAClC,GACE,sPAAsP,MACpP,GACF,EACJ,SAAS,GAAuB,EAAc,EAAa,CACzD,OAAQ,EAAR,CACE,IAAK,UACL,IAAK,WACH,GAAc,KACd,MACF,IAAK,YACL,IAAK,YACH,GAAa,KACb,MACF,IAAK,YACL,IAAK,WACH,GAAc,KACd,MACF,IAAK,cACL,IAAK,aACH,GAAe,OAAO,EAAY,SAAS,EAC3C,MACF,IAAK,oBACL,IAAK,qBACH,GAAsB,OAAO,EAAY,SAAS,CACtD,CACF,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,EACA,CAuBA,OArBW,IAAT,MACA,EAAoB,cAAgB,GAGjC,EAAsB,CACV,YACG,eACI,mBACL,cACb,iBAAkB,CAAC,CAAe,CACpC,EACS,IAAT,OACI,EAAY,GAAoB,CAAS,EAClC,IAAT,MAAsB,GAA2B,CAAS,GAC5D,IAEJ,EAAoB,kBAAoB,EACxC,EAAY,EAAoB,iBACvB,IAAT,MACS,EAAU,QAAQ,CAAe,IAAxC,IACA,EAAU,KAAK,CAAe,EACzB,EACT,CACA,SAAS,GACP,EACA,EACA,EACA,EACA,EACA,CACA,OAAQ,EAAR,CACE,IAAK,UACH,MACG,IAAc,GACb,GACA,EACA,EACA,EACA,EACA,CACF,EACA,CAAC,EAEL,IAAK,YACH,MACG,IAAa,GACZ,GACA,EACA,EACA,EACA,EACA,CACF,EACA,CAAC,EAEL,IAAK,YACH,MACG,IAAc,GACb,GACA,EACA,EACA,EACA,EACA,CACF,EACA,CAAC,EAEL,IAAK,cACH,IAAI,EAAY,EAAY,UAY5B,OAXA,GAAe,IACb,EACA,GACE,GAAe,IAAI,CAAS,GAAK,KACjC,EACA,EACA,EACA,EACA,CACF,CACF,EACO,CAAC,EACV,IAAK,oBACH,MACG,GAAY,EAAY,UACzB,GAAsB,IACpB,EACA,GACE,GAAsB,IAAI,CAAS,GAAK,KACxC,EACA,EACA,EACA,EACA,CACF,CACF,EACA,CAAC,CAEP,CACA,MAAO,CAAC,CACV,CACA,SAAS,GAA+B,EAAc,CACpD,IAAI,EAAa,GAA2B,EAAa,MAAM,EAC/D,GAAa,IAAT,KAAqB,CACvB,IAAI,EAAiB,EAAuB,CAAU,EACtD,GAAa,IAAT,KACF,CAAM,GAAA,EAAa,EAAe,IAAa,IAAP,GAElC,IAAA,EAAa,EAA6B,CAAc,EACjD,IAAT,KACA,CACA,EAAa,UAAY,EACzB,GAAgB,EAAa,SAAU,UAAY,CACjD,GAAkC,CAAc,CAClD,CAAC,EACD,MACF,OACK,GAAW,IAAP,GAEL,IAAA,EAAa,EAA6B,CAAc,EACjD,IAAT,KACA,CACA,EAAa,UAAY,EACzB,GAAgB,EAAa,SAAU,UAAY,CACjD,GAAkC,CAAc,CAClD,CAAC,EACD,MACF,OACK,GACC,IAAN,GACA,EAAe,UAAU,QAAQ,cAAc,aAC/C,CACA,EAAa,UACL,EAAe,MAArB,EACI,EAAe,UAAU,cACzB,KACN,MACF,EACJ,CACA,EAAa,UAAY,IAC3B,CACA,SAAS,GAAmC,EAAa,CACvD,GAAa,EAAY,YAArB,KAAgC,MAAO,CAAC,EAC5C,IACE,IAAI,EAAmB,EAAY,iBACnC,EAAI,EAAiB,QAErB,CACA,IAAI,EAAgB,GAA0B,EAAY,WAAW,EACrE,GAAa,IAAT,KAAwB,CAC1B,EAAgB,EAAY,YAC5B,IAAI,EAAmB,IAAI,EAAc,YACvC,EAAc,KACd,CACF,EACA,GAAwB,EACxB,EAAc,OAAO,cAAc,CAAgB,EACnD,GAAwB,IAC1B,MACE,MACG,GAAmB,GAAoB,CAAa,EAC5C,IAAT,MACE,GAA2B,CAAgB,EAC5C,EAAY,UAAY,EACzB,CAAC,EAEL,EAAiB,MAAM,CACzB,CACA,MAAO,CAAC,CACV,CACA,SAAS,GAAwC,EAAa,EAAK,EAAK,CACtE,GAAmC,CAAW,GAAK,EAAI,OAAO,CAAG,CACnE,CACA,SAAS,IAAwB,CAC/B,GAA4B,CAAC,EACpB,KAAT,MACE,GAAmC,EAAW,IAC7C,GAAc,MACR,KAAT,MACE,GAAmC,EAAU,IAC5C,GAAa,MACP,KAAT,MACE,GAAmC,EAAW,IAC7C,GAAc,MACjB,GAAe,QAAQ,EAAuC,EAC9D,GAAsB,QAAQ,EAAuC,CACvE,CACA,SAAS,GAA4B,EAAa,EAAW,CAC3D,EAAY,YAAc,IACtB,EAAY,UAAY,KAC1B,KACI,GAA4B,CAAC,EAC/B,EAAU,0BACR,EAAU,wBACV,EACF,GACN,CACA,IAAI,GAA2B,KAC/B,SAAS,GAA4B,EAAoB,CACvD,KAA6B,IACzB,GAA2B,EAC7B,EAAU,0BACR,EAAU,wBACV,UAAY,CACV,KAA6B,IAC1B,GAA2B,MAC9B,IAAK,IAAI,EAAI,EAAG,EAAI,EAAmB,OAAQ,GAAK,EAAG,CACrD,IAAI,EAAO,EAAmB,GAC5B,EAAoB,EAAmB,EAAI,GAC3C,EAAW,EAAmB,EAAI,GACpC,GAAmB,OAAO,GAAtB,WACF,IAAa,GAA2B,GAAqB,CAAI,IAA7D,KACF,SACG,KAAA,CACP,IAAI,EAAW,GAAoB,CAAI,EAC9B,IAAT,OACG,EAAmB,OAAO,EAAG,CAAC,EAC9B,GAAK,EACN,GACE,EACA,CACE,QAAS,CAAC,EACV,KAAM,EACN,OAAQ,EAAK,OACb,OAAQ,CACV,EACA,EACA,CACF,EACJ,CACF,CACF,EACJ,CACA,SAAS,GAAiB,EAAW,CACnC,SAAS,EAAQ,EAAa,CAC5B,OAAO,GAA4B,EAAa,CAAS,CAC3D,CACS,KAAT,MAAwB,GAA4B,GAAa,CAAS,EACjE,KAAT,MAAuB,GAA4B,GAAY,CAAS,EAC/D,KAAT,MAAwB,GAA4B,GAAa,CAAS,EAC1E,GAAe,QAAQ,CAAO,EAC9B,GAAsB,QAAQ,CAAO,EACrC,IAAK,IAAI,EAAI,EAAG,EAAI,GAA+B,OAAQ,IAAK,CAC9D,IAAI,EAAe,GAA+B,GAClD,EAAa,YAAc,IAAc,EAAa,UAAY,KACpE,CACA,KAEE,EAAI,GAA+B,SACjC,EAAI,GAA+B,GAAc,EAAE,YAAX,OAG1C,GAA+B,CAAC,EACrB,EAAE,YAAX,MAAwB,GAA+B,MAAM,EAEjE,GADA,GAAK,EAAU,eAAiB,EAAA,CAAW,kBAC/B,GAAR,KACF,IAAK,EAAe,EAAG,EAAe,EAAE,OAAQ,GAAgB,EAAG,CACjE,IAAI,EAAO,EAAE,GACX,EAAoB,EAAE,EAAe,GACrC,EAAY,EAAK,KAAqB,KACxC,GAAmB,OAAO,GAAtB,WACF,GAAa,GAA4B,CAAC,OACvC,GAAI,EAAW,CAClB,IAAI,EAAS,KACb,GAAI,GAAqB,EAAkB,aAAa,YAAY,EAClE,CACI,GAAA,EAAO,EACR,EAAY,EAAkB,KAAqB,KAEpD,EAAS,EAAU,gBAEnB,GAAa,GAA2B,CAAI,IAAxC,KAA2C,QACjD,KACG,GAAS,EAAU,OACT,OAAO,GAAtB,WACK,EAAE,EAAe,GAAK,GACtB,EAAE,OAAO,EAAc,CAAC,EAAI,GAAgB,GACjD,GAA4B,CAAC,CAC/B,CACF,CACJ,CACA,SAAS,IAAsC,CAC7C,SAAS,EAAe,EAAO,CAC7B,EAAM,cACmB,EAAM,OAA7B,oBACA,EAAM,UAAU,CACd,QAAS,UAAY,CACnB,OAAO,IAAI,QAAQ,SAAU,EAAS,CACpC,MAAQ,GAAiB,CAC3B,CAAC,CACH,EACA,WAAY,SACZ,OAAQ,QACV,CAAC,CACL,CACA,SAAS,GAAyB,CACvB,IAAT,OAA4B,EAAe,EAAI,EAAiB,MAChE,GAAe,WAAW,EAAqB,EAAE,CACnD,CACA,SAAS,GAAsB,CAC7B,GAAI,CAAC,GAAe,CAAC,WAAW,WAAY,CAC1C,IAAI,EAAe,WAAW,aAC9B,GACU,EAAa,KAArB,MACA,WAAW,SAAS,EAAa,IAAK,CACpC,MAAO,EAAa,SAAS,EAC7B,KAAM,mBACN,QAAS,SACX,CAAC,CACL,CACF,CACA,GAAiB,OAAO,YAApB,SAAgC,CAClC,IAAI,EAAc,CAAC,EACjB,EAAiB,KAKnB,OAJA,WAAW,iBAAiB,WAAY,CAAc,EACtD,WAAW,iBAAiB,kBAAmB,CAAsB,EACrE,WAAW,iBAAiB,gBAAiB,CAAsB,EACnE,WAAW,EAAqB,GAAG,EAC5B,UAAY,CACjB,EAAc,CAAC,EACf,WAAW,oBAAoB,WAAY,CAAc,EACzD,WAAW,oBAAoB,kBAAmB,CAAsB,EACxE,WAAW,oBAAoB,gBAAiB,CAAsB,EAC7D,IAAT,OAA4B,EAAe,EAAI,EAAiB,KAClE,CACF,CACF,CACA,SAAS,GAAa,EAAc,CAClC,KAAK,cAAgB,CACvB,CACA,GAAsB,UAAU,OAAS,GAAa,UAAU,OAC9D,SAAU,EAAU,CAClB,IAAI,EAAO,KAAK,cAChB,GAAa,IAAT,KAAe,MAAM,MAAM,EAAuB,GAAG,CAAC,EAC1D,IAAI,EAAU,EAAK,QAEnB,GAAoB,EADX,GACuB,EAAG,EAAU,EAAM,KAAM,IAAI,CAC/D,EACF,GAAsB,UAAU,QAAU,GAAa,UAAU,QAC/D,UAAY,CACV,IAAI,EAAO,KAAK,cAChB,GAAa,IAAT,KAAe,CACjB,KAAK,cAAgB,KACrB,IAAI,EAAY,EAAK,cACrB,GAAoB,EAAK,QAAS,EAAG,KAAM,EAAM,KAAM,IAAI,EAC3D,GAAgB,EAChB,EAAU,IAAgC,IAC5C,CACF,EACF,SAAS,GAAsB,EAAc,CAC3C,KAAK,cAAgB,CACvB,CACA,GAAsB,UAAU,2BAA6B,SAAU,EAAQ,CAC7E,GAAI,EAAQ,CACV,IAAI,EAAiB,GAAsB,EAC3C,EAAS,CAAE,UAAW,KAAc,SAAQ,SAAU,CAAe,EACrE,IACE,IAAI,EAAI,EACR,EAAI,GAA+B,QAC7B,IAAN,GACA,EAAiB,GAA+B,EAAE,CAAC,SACnD,KAEF,GAA+B,OAAO,EAAG,EAAG,CAAM,EAC5C,IAAN,GAAW,GAA+B,CAAM,CAClD,CACF,EACA,IAAI,GAAmD,EAAM,QAC7D,GAEE,KADA,SAGA,MAAM,MACJ,EACE,IACA,GACA,QACF,CACF,EACF,EAAwB,YAAc,SAAU,EAAoB,CAClE,IAAI,EAAQ,EAAmB,gBAC/B,GAAe,IAAX,IAAK,GAIP,MAHmB,OAAO,EAAmB,QAAzC,WACI,MAAM,EAAuB,GAAG,CAAC,GACzC,EAAqB,OAAO,KAAK,CAAkB,CAAC,CAAC,KAAK,GAAG,EACvD,MAAM,EAAuB,IAAK,CAAkB,CAAC,GAS7D,MAPA,GAAqB,EAA8B,CAAK,EACxD,EACW,IAAT,KAEI,KADA,EAAyB,CAAkB,EAEjD,EACW,IAAT,KAA8B,KAAO,EAAmB,UACnD,CACT,EACA,IAAI,GAA+B,CACjC,WAAY,EACZ,QAAS,SACT,oBAAqB,YACrB,qBAAsB,EACtB,kBAAmB,QACrB,EACA,GAAoB,OAAO,+BAAvB,IAAuD,CACzD,IAAI,GAA0B,+BAC9B,GACE,CAAC,GAAwB,YACzB,GAAwB,cAExB,GAAI,CACF,GAAc,GAAwB,OACpC,EACF,EACG,GAAe,EACpB,MAAc,CAAC,CACnB,CACA,EAAQ,WAAa,SAAU,EAAW,EAAS,CACjD,GAAI,CAAC,EAAiB,CAAS,EAAG,MAAM,MAAM,EAAuB,GAAG,CAAC,EACzE,IAAI,EAAe,CAAC,EAClB,EAAmB,GACnB,EAAkB,GAClB,EAAgB,GAChB,EAAqB,GA2BvB,OA1BS,GAAT,OAEG,CAAC,IAAM,EAAQ,sBAAwB,EAAe,CAAC,GAC7C,EAAQ,mBAAnB,IAAK,KACF,EAAmB,EAAQ,kBACnB,EAAQ,kBAAnB,IAAK,KACF,EAAkB,EAAQ,iBAClB,EAAQ,gBAAnB,IAAK,KAAgC,EAAgB,EAAQ,eAClD,EAAQ,qBAAnB,IAAK,KACF,EAAqB,EAAQ,qBAClC,EAAU,GACR,EACA,EACA,CAAC,EACD,KACA,KACA,EACA,EACA,KACA,EACA,EACA,EACA,EACF,EACA,EAAU,IAAgC,EAAQ,QAClD,GAA2B,CAAS,EAC7B,IAAI,GAAa,CAAO,CACjC,kBC7nfA,SAAS,GAAW,CAGhB,YAAO,+BAAmC,KAC1C,OAAO,+BAA+B,UAAa,YAcrD,GAAI,CAEF,+BAA+B,SAAS,CAAQ,CAClD,OAAS,EAAK,CAGZ,QAAQ,MAAM,CAAG,CACnB,CACF,CAKE,EAAS,EACT,EAAO,QAAA,EAAA,uBCjBT,SAAgB,EACd,EACA,EACqB,CAsBrB,OArBI,IAAW,gBACN,CACL,OAAQ,gBACR,KAAM,wBACN,UAAW,EACb,EAEE,aAAiB2C,EAAAA,EACZ,CACL,OAAQ,MACR,KAAM,EAAM,SAAS,MAAM,KAC3B,UAAW,EAAM,SAAS,MAAM,UAChC,UAAW,EAAM,SAAS,MAAM,SAClC,EAEE,aAAiBC,EAAAA,EACZ,CAAE,OAAQ,YAAa,KAAM,kBAAmB,UAAW,EAAK,EAErE,aAAiBC,EAAAA,EACZ,CAAE,OAAQ,WAAY,KAAM,iBAAkB,UAAW,EAAM,EAEjE,CAAE,OAAQ,aAAc,KAAM,mBAAoB,UAAW,EAAM,CAC5E,CAEA,SAAgB,EACd,EACA,EACA,EAII,CAAC,EACgB,CACrB,IAAM,EAAe,EAA0B,EAAO,EAAQ,MAAM,EAC9D,EAAQC,EAAAA,+BAA+B,MAAM,CACjD,KAAM,QACN,MAAO,EACP,WAAY,EAAQ,WACpB,KAAM,EAAQ,IAChB,CAAC,EAGD,OAFA,EAAK,UAAU,CAAK,EACpB,EAAK,UAAU,EAAa,CAAK,CAAC,EAC3B,CACT,CAEA,SAAS,EACP,EACsB,CACtB,GAAM,CAAE,KAAM,EAAG,GAAG,GAAY,EAChC,OAAO,CACT,CCrEA,MAAa,GAAkB,CAC7B,qBAAsB,mBACtB,qBAAsB,qBACtB,sBAAuB,uBACvB,gBAAiB,yFACjB,iBAAkB,oBAClB,MAAO,SACP,kBAAmB,wCACnB,kBAAmB,kCACnB,eAAiB,GAAmB,eAAe,IACnD,4BAA6B,gGAC7B,qBAAsB,oCACtB,qBAAsB,oHACtB,iBAAmB,GAAkB,0BAA0B,EAAM,GACrE,wBAAyB,wDACzB,oBAAqB,gLACrB,yBAA0B,6EAC1B,wBAAyB,wEACzB,oBAAqB,sEACrB,sBAAuB,qEACvB,mBAAqB,GAAmB,GAAG,EAAO,8DAClD,iBAAmB,GAAmB,GAAG,EAAO,iBAChD,wBAAyB,gDACzB,wBAAyB,wEACzB,kBAAoB,GAAwB,YAAY,IACxD,YAAa,sCACb,qBAAsB,4FACtB,wBAAyB,6GACzB,mBAAoB,4DACpB,qBAAuB,GAAqB,cAAc,EAAS,sCACnE,sBAAuB,gIACvB,oBAAqB,+GACrB,mBAAqB,GAAsB,oEAAoE,EAAU,GACzH,qBAAuB,GAAsB,2EAA2E,EAAU,gDAClI,eAAgB,qIAChB,sBAAuB,8EACvB,qBAAsB,kKACtB,cAAgB,GAAqB,qDAAqD,IAC1F,qBAAuB,GAAmB,6BAA6B,EAAO,uCAC9E,kBAAmB,EAAkB,IAAoB,GAAG,EAAS,iBAAiB,IACtF,kBAAmB,0BACnB,aAAe,GAAkB,kCAAkC,EAAM,iDACzE,kBAAmB,sBACnB,qBAAsB,mCACtB,sBAAuB,kHACvB,+BAAgC,kIAChC,yBAA0B,uIAC1B,iBAAmB,GAAqB,iCAAiC,IACzE,uBAAyB,GAAqB,iCAAiC,EAAS,uBACxF,uBAAwB,+BACxB,mCAAoC,kDACpC,yBAA0B,8CAC1B,oBAAsB,GAAqB,+BAA+B,IAC1E,oBAAsB,GAAqB,gBAAgB,IAC3D,8BAA+B,gFAC/B,mBAAoB,oFACpB,oBAAsB,GAAqB,iCAAiC,IAC5E,gCAAiC,sDACjC,uBAAwB,oCACxB,sBAAwB,GAAqB,kBAAkB,IAC/D,cAAgB,GAAkB,GAAG,EAAM,uBAC3C,kBAAmB,oDACnB,mBAAoB,uJACpB,oBAAqB,wCACrB,wBAAyB,6CACzB,sBAAuB,0CACvB,mBAAoB,6CACpB,kBAAmB,gFACnB,qBAAsB,iFACtB,aAAc,6CACd,cAAe,yFACf,mBAAqB,GAAqB,eAAe,IACzD,qBAAsB,gDACtB,uBAAwB,gCACxB,oBAAsB,GAAqB,gCAAgC,IAC3E,sBAAwB,GAAqB,iBAAiB,IAC9D,6BAA+B,GAAqB,aAAa,IACjE,2BAA4B,6DAC5B,uBAAwB,wFACxB,mBAAoB,sIACpB,0BAA2B,gCAC3B,2BAA4B,8BAC5B,kCAAmC,2CACnC,8BAA+B,mCAC/B,+BAAgC,oCAChC,qBAAsB,8CACtB,4BAA6B,kCAC7B,4BAA6B,2CAC7B,wBAAyB,0CACzB,mCAAoC,mDACpC,cAAe,eACf,iBAAkB,wBAClB,eAAgB,iBAChB,cAAe,oBACf,cAAe,aACf,eAAgB,eAChB,eAAgB,0BAChB,oBAAqB,sBACrB,uBAAwB,wBACxB,iBAAkB,sBAClB,mBAAoB,iCACpB,mBAAoB,oBACpB,oBAAqB,+BACrB,wBAAyB,iCACzB,qBAAsB,yBACtB,mBAAoB,iCACpB,uBAAwB,yBACxB,oBAAqB,oCACrB,oBAAqB,8BACrB,oBAAqB,yBACrB,wBAAyB,8BACzB,4BAA6B,mCAC7B,gBAAiB,aACjB,sBAAuB,qBACvB,gBAAiB,aACjB,oBAAqB,iBACrB,oBAAqB,iBACrB,uBAAwB,sBACxB,uBAAwB,sBACxB,kBAAmB,yBACnB,wBAAyB,sDACzB,uBAAwB,yCACxB,qBAAsB,yCACtB,yBAA0B,8IAC1B,wBAAyB,qCACzB,uBAAwB,gDACxB,iBAAkB,uDAClB,WAAY,+DACZ,eAAgB,gKAChB,eAAgB,gFAChB,oBAAqB,gFACrB,cAAe,8DACf,iBAAkB,yBAClB,sBAAuB,uCACvB,sBAAuB,4BACvB,uBAAyB,GAAmB,kCAAkC,IAC9E,aAAc,SACd,oBAAqB,kBACrB,sBAAuB,sBACvB,WAAY,SACZ,aAAc,QACd,aAAc,aACd,aAAc,WACd,YAAa,cACb,eAAgB,iBAChB,aAAc,wBACd,6BAA8B,6EAC9B,2BAA4B,uEAC5B,YAAa,8BACb,2BAA4B,sFAC5B,kBAAmB,4BACnB,qBAAsB,2CACtB,cAAe,kEACf,gBAAiB,yBACjB,mBAAoB,4CACpB,wBAAyB,gCACzB,iBAAmB,GAAmB,cAAc,IACpD,yBAA0B,gGAC1B,mBAAoB,yBACpB,kBAAmB,qFACnB,8CAA+C,mHAC/C,eAAgB,gIAChB,iBAAkB,uBAClB,8BAA+B,qCAC/B,kCAAmC,kIACnC,eAAgB,wBAChB,yBAA0B,uCAC1B,qBAAsB,yCACtB,mBAAoB,qEACpB,4BAA6B,2FAC7B,iBAAkB,gBAClB,kBAAoB,GAAmB,sBAAsB,IAC7D,WAAY,eACZ,WAAY,OACZ,WAAY,OACZ,YAAa,QACb,UAAW,MACX,eAAgB,YAChB,kBAAmB,YACnB,SAAU,WACV,SAAU,YACV,gBAAiB,wGACjB,aAAc,6BACd,SAAU,YACV,mBAAoB,6BACpB,iBAAkB,0BAClB,iBAAkB,qBAClB,oBAAqB,uDACrB,sBAAuB,8CACvB,mBAAoB,sHACpB,uBAAwB,+CACxB,eAAgB,oBAChB,yBAA2B,GAAmB,GAAG,EAAO,oBACxD,gBAAiB,kNACjB,aAAc,8OACd,gBAAiB,0CACjB,gBAAiB,sBACjB,oBAAqB,yDACrB,mBAAqB,GAAkB,yBAAyB,EAAM,+BACtE,cAAe,2BACf,eAAgB,uGAChB,eAAgB,oBAChB,oBAAqB,wBACrB,qBAAsB,uBACtB,oBAAqB,sBACrB,YAAa,mBACb,aAAc,4EACd,qBAAsB,qIACtB,eAAgB,sBAChB,iBAAkB,mBAClB,kBAAmB,8BACnB,qBAAsB,6BACtB,wBAAyB,wCACzB,2BAA4B,yCAC5B,iBAAmB,GAAqB,GAAG,EAAS,aACpD,iBAAmB,GAAqB,GAAG,EAAS,gBACpD,wBAAyB,0CACzB,wBAAyB,yBACzB,uBAAyB,GAAqB,0BAA0B,IACxE,gBAAiB,kBACjB,0BAA2B,EAAkB,IAC3C,gCAAgC,EAAS,IAAI,EAAY,wCAC3D,4BAA6B,sDAC7B,sBAAuB,uDACvB,mBAAoB,+FACpB,sBAAuB,gFACvB,uBAAyB,GAAkB,kBAAkB,EAAM,qEACnE,iBAAkB,aAClB,qBAAsB,iBACtB,cAAe,gBACf,kBAAmB,oBACnB,4BAA6B,mGAC7B,gCAAiC,qGACjC,yBAA0B,yCAC1B,6BAA8B,kHAC9B,eAAgB,EAAc,EAAc,EAAe,EAAa,IAAqB,GAAG,EAAK,GAAG,EAAK,KAAK,EAAM,QAAQ,IAAM,IACtI,eAAiB,GAAqB,eAAe,IACrD,YAAc,GAAoB,UAAU,IAC5C,aAAc,oBACd,eAAgB,4EAChB,cAAe,4GACf,uBAAwB,6BACxB,qBAAsB,oFACtB,kBAAmB,iDACnB,iBAAkB,kEAClB,iBAAkB,4FAClB,oBAAqB,gFACrB,uBAAwB,4EACxB,4BAA6B,4EAC7B,oCAAqC,uDACrC,2BAA4B,+EAC5B,oBAAqB,oEACrB,2BAA4B,yFAC5B,iBAAkB,4DAClB,YAAa,6CACb,aAAc,kGACd,UAAW,EAAe,IAAmB,GAAG,EAAM,IAAI,IAC1D,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,cAC1E,oBAAsB,GAAkB,OAAO,EAAM,6BACrD,gBAAiB,EAAe,EAAe,IAAmB,WAAW,EAAM,MAAM,EAAM,IAAI,IACnG,yBAA0B,aAC1B,iCAAkC,0BAClC,gCAAiC,gCACjC,oCAAqC,+BACrC,oCAAqC,gCACrC,0BAA2B,aAC3B,wBAAyB,mBACzB,oCAAqC,yBACrC,wBAAyB,cACzB,kCAAmC,+BACnC,sBAAuB,SACvB,8BAA+B,gCAC/B,+BAAgC,wBAChC,8BAA+B,YAC/B,yBAA0B,WAC5B,ECnRa,GAAiB,CAC5B,qBAAsB,uBACtB,qBAAsB,0BACtB,sBAAuB,yBACvB,gBAAiB,mGACjB,iBAAkB,uBAClB,MAAO,SACP,kBAAmB,0CACnB,kBAAmB,sCACnB,eAAiB,GAAmB,mBAAmB,IACvD,4BAA6B,8EAC7B,qBAAsB,kCACtB,qBAAsB,wHACtB,iBAAmB,GAAkB,0BAA0B,EAAM,GACrE,wBAAyB,sEACzB,oBAAqB,0MACrB,yBAA0B,gFAC1B,wBAAyB,yEACzB,oBAAqB,gEACrB,sBAAuB,qEACvB,mBAAqB,GAAmB,GAAG,EAAO,+DAClD,iBAAmB,GAAmB,GAAG,EAAO,eAChD,wBAAyB,qCACzB,wBAAyB,gFACzB,kBAAoB,GAAwB,YAAY,IACxD,YAAa,0CACb,qBAAsB,sGACtB,wBAAyB,wHACzB,mBAAoB,mEACpB,qBAAuB,GAAqB,GAAG,EAAS,sDACxD,sBAAuB,6IACvB,oBAAqB,mHACrB,mBAAqB,GAAsB,2EAA2E,EAAU,GAChI,qBAAuB,GAAsB,gFAAgF,EAAU,8CACvI,eAAgB,yIAChB,sBAAuB,wEACvB,qBAAsB,4KACtB,cAAgB,GAAqB,qDAAqD,IAC1F,qBAAuB,GAAmB,mBAAmB,EAAO,kEACpE,kBAAmB,EAAkB,IAAoB,GAAG,EAAS,gBAAgB,IACrF,kBAAmB,yBACnB,aAAe,GAAkB,oCAAoC,EAAM,oDAC3E,kBAAmB,0BACnB,qBAAsB,mCACtB,sBAAuB,mHACvB,+BAAgC,4GAChC,yBAA0B,oIAC1B,iBAAmB,GAAqB,uCAAuC,IAC/E,uBAAyB,GAAqB,uCAAuC,EAAS,wBAC9F,uBAAwB,8BACxB,mCAAoC,uDACpC,yBAA0B,sCAC1B,oBAAsB,GAAqB,iCAAiC,IAC5E,oBAAsB,GAAqB,qBAAqB,IAChE,8BAA+B,8FAC/B,mBAAoB,4FACpB,oBAAsB,GAAqB,gCAAgC,IAC3E,gCAAiC,qDACjC,uBAAwB,iCACxB,sBAAwB,GAAqB,aAAa,IAC1D,cAAgB,GAAkB,GAAG,EAAM,wBAC3C,kBAAmB,6DACnB,mBAAoB,uJACpB,oBAAqB,2CACrB,wBAAyB,gDACzB,sBAAuB,wCACvB,mBAAoB,4CACpB,kBAAmB,0EACnB,qBAAsB,iFACtB,aAAc,gDACd,cAAe,2GACf,mBAAqB,GAAqB,kBAAkB,IAC5D,qBAAsB,2CACtB,uBAAwB,8BACxB,oBAAsB,GAAqB,iCAAiC,IAC5E,sBAAwB,GAAqB,kBAAkB,IAC/D,6BAA+B,GAAqB,aAAa,IACjE,2BAA4B,gEAC5B,uBAAwB,0FACxB,mBAAoB,wJACpB,0BAA2B,8BAC3B,2BAA4B,8BAC5B,kCAAmC,iDACnC,8BAA+B,oCAC/B,+BAAgC,sCAChC,qBAAsB,+CACtB,4BAA6B,gCAC7B,4BAA6B,4CAC7B,wBAAyB,qCACzB,mCAAoC,qDACpC,cAAe,YACf,iBAAkB,oBAClB,eAAgB,aAChB,cAAe,oBACf,cAAe,eACf,eAAgB,eAChB,eAAgB,sBAChB,oBAAqB,oBACrB,uBAAwB,uBACxB,iBAAkB,mBAClB,mBAAoB,6BACpB,mBAAoB,iBACpB,oBAAqB,wBACrB,wBAAyB,0BACzB,qBAAsB,uBACtB,mBAAoB,+BACpB,uBAAwB,2BACxB,oBAAqB,oCACrB,oBAAqB,2BACrB,oBAAqB,mBACrB,wBAAyB,uBACzB,4BAA6B,2BAC7B,gBAAiB,aACjB,sBAAuB,iBACvB,gBAAiB,aACjB,oBAAqB,iBACrB,oBAAqB,iBACrB,uBAAwB,sBACxB,uBAAwB,sBACxB,kBAAmB,yBACnB,wBAAyB,8DACzB,uBAAwB,wCACxB,qBAAsB,mDACtB,yBAA0B,wKAC1B,wBAAyB,0CACzB,uBAAwB,mEACxB,iBAAkB,2DAClB,WAAY,gEACZ,eAAgB,+KAChB,eAAgB,+FAChB,oBAAqB,gFACrB,cAAe,mEACf,iBAAkB,iCAClB,sBAAuB,qCACvB,sBAAuB,8BACvB,uBAAyB,GAAmB,oCAAoC,IAChF,aAAc,SACd,oBAAqB,wBACrB,sBAAuB,wBACvB,WAAY,SACZ,aAAc,QACd,aAAc,gBACd,aAAc,YACd,YAAa,aACb,eAAgB,iBAChB,aAAc,yBACd,6BAA8B,2EAC9B,2BAA4B,gFAC5B,YAAa,4BACb,2BAA4B,4FAC5B,kBAAmB,oCACnB,qBAAsB,iDACtB,cAAe,wEACf,gBAAiB,kCACjB,mBAAoB,gDACpB,wBAAyB,0CACzB,iBAAmB,GAAmB,gBAAgB,IACtD,yBAA0B,6GAC1B,mBAAoB,4BACpB,kBAAmB,6FACnB,8CAA+C,+GAC/C,eAAgB,iJAChB,iBAAkB,yBAClB,8BAA+B,sCAC/B,kCAAmC,oJACnC,eAAgB,mCAChB,yBAA0B,oCAC1B,qBAAsB,oCACtB,mBAAoB,kFACpB,4BAA6B,+FAC7B,iBAAkB,sBAClB,kBAAoB,GAAmB,4BAA4B,IACnE,WAAY,aACZ,WAAY,OACZ,WAAY,OACZ,YAAa,SACb,UAAW,MACX,eAAgB,WAChB,kBAAmB,WACnB,SAAU,aACV,SAAU,SACV,gBAAiB,gHACjB,aAAc,kCACd,SAAU,YACV,mBAAoB,wCACpB,iBAAkB,mCAClB,iBAAkB,wBAClB,oBAAqB,sDACrB,sBAAuB,8CACvB,mBAAoB,iIACpB,uBAAwB,uDACxB,eAAgB,oBAChB,yBAA2B,GAAmB,GAAG,EAAO,4BACxD,gBAAiB,wNACjB,aAAc,oPACd,gBAAiB,oCACjB,gBAAiB,yBACjB,oBAAqB,gEACrB,mBAAqB,GAAkB,gCAAgC,EAAM,qCAC7E,cAAe,4BACf,eAAgB,wGAChB,eAAgB,yBAChB,oBAAqB,yBACrB,qBAAsB,8BACtB,oBAAqB,qBACrB,YAAa,kBACb,aAAc,iGACd,qBAAsB,kJACtB,eAAgB,yBAChB,iBAAkB,qBAClB,kBAAmB,+BACnB,qBAAsB,gCACtB,wBAAyB,6CACzB,2BAA4B,8CAC5B,iBAAmB,GAAqB,GAAG,EAAS,WACpD,iBAAmB,GAAqB,GAAG,EAAS,eACpD,wBAAyB,sCACzB,wBAAyB,0BACzB,uBAAyB,GAAqB,gCAAgC,IAC9E,gBAAiB,oBACjB,0BAA2B,EAAkB,IAC3C,+BAA+B,EAAS,IAAI,EAAY,iDAC1D,4BAA6B,sEAC7B,sBAAuB,8DACvB,mBAAoB,oGACpB,sBAAuB,mFACvB,uBAAyB,GAAkB,GAAG,EAAM,sFACpD,iBAAkB,cAClB,qBAAsB,iBACtB,cAAe,eACf,kBAAmB,qBACnB,4BAA6B,wGAC7B,gCAAiC,yGACjC,yBAA0B,yCAC1B,6BAA8B,iHAC9B,eAAgB,EAAc,EAAc,EAAe,EAAa,IAAqB,GAAG,EAAK,GAAG,EAAK,KAAK,EAAM,SAAS,IAAM,IACvI,eAAiB,GAAqB,eAAe,IACrD,YAAc,GAAoB,YAAY,IAC9C,aAAc,kBACd,eAAgB,mEAChB,cAAe,kGACf,uBAAwB,+BACxB,qBAAsB,8EACtB,kBAAmB,wDACnB,iBAAkB,kEAClB,iBAAkB,kFAClB,oBAAqB,0EACrB,uBAAwB,sEACxB,4BAA6B,iEAC7B,oCAAqC,0DACrC,2BAA4B,oFAC5B,oBAAqB,8EACrB,2BAA4B,6FAC5B,iBAAkB,wDAClB,YAAa,oDACb,aAAc,8FACd,UAAW,EAAe,IAAmB,GAAG,EAAM,IAAI,IAC1D,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,aAC1E,oBAAsB,GAAkB,OAAO,EAAM,2BACrD,gBAAiB,EAAe,EAAe,IAAmB,WAAW,EAAM,OAAO,EAAM,KAAK,IACrG,yBAA0B,WAC1B,iCAAkC,uCAClC,gCAAiC,kCACjC,oCAAqC,+BACrC,oCAAqC,4BACrC,0BAA2B,YAC3B,wBAAyB,4BACzB,oCAAqC,6BACrC,wBAAyB,yBACzB,kCAAmC,4BACnC,sBAAuB,SACvB,8BAA+B,uCAC/B,+BAAgC,sBAChC,8BAA+B,WAC/B,yBAA0B,SAC5B,ECnRa,GAA8B,CACzC,qBAAsB,mBACtB,qBAAsB,sBACtB,sBAAuB,wBACvB,gBAAiB,8FACjB,iBAAkB,mBAClB,MAAO,SACP,kBAAmB,kCACnB,kBAAmB,kCACnB,eAAiB,GAAmB,eAAe,IACnD,4BAA6B,yFAC7B,qBAAsB,iCACtB,qBAAsB,2GACtB,iBAAmB,GAAkB,sBAAsB,EAAM,GACjE,wBAAyB,qDACzB,oBAAqB,0KACrB,yBAA0B,uEAC1B,wBAAyB,0EACzB,oBAAqB,qEACrB,sBAAuB,iFACvB,mBAAqB,GAAmB,GAAG,EAAO,iEAClD,iBAAmB,GAAmB,GAAG,EAAO,iBAChD,wBAAyB,6CACzB,wBAAyB,mEACzB,kBAAoB,GAAwB,eAAe,IAC3D,YAAa,uCACb,qBAAsB,oFACtB,wBAAyB,0GACzB,mBAAoB,6DACpB,qBAAuB,GAAqB,GAAG,EAAS,6CACxD,sBAAuB,gIACvB,oBAAqB,oGACrB,mBAAqB,GAAsB,qEAAqE,EAAU,GAC1H,qBAAuB,GAAsB,yEAAyE,EAAU,gDAChI,eAAgB,6HAChB,sBAAuB,sFACvB,qBAAsB,gKACtB,cAAgB,GAAqB,mDAAmD,IACxF,qBAAuB,GAAmB,gBAAgB,EAAO,+DACjE,kBAAmB,EAAkB,IAAoB,GAAG,EAAS,gBAAgB,IACrF,kBAAmB,0BACnB,aAAe,GAAkB,qBAAqB,EAAM,iDAC5D,kBAAmB,oBACnB,qBAAsB,+BACtB,sBAAuB,4GACvB,+BAAgC,kHAChC,yBAA0B,iIAC1B,iBAAmB,GAAqB,+BAA+B,IACvE,uBAAyB,GAAqB,+BAA+B,EAAS,kBACtF,uBAAwB,2BACxB,mCAAoC,gDACpC,yBAA0B,6CAC1B,oBAAsB,GAAqB,gCAAgC,IAC3E,oBAAsB,GAAqB,gBAAgB,IAC3D,8BAA+B,0EAC/B,mBAAoB,kFACpB,oBAAsB,GAAqB,kCAAkC,IAC7E,gCAAiC,qDACjC,uBAAwB,uCACxB,sBAAwB,GAAqB,kBAAkB,IAC/D,cAAgB,GAAkB,GAAG,EAAM,kBAC3C,kBAAmB,mDACnB,mBAAoB,gJACpB,oBAAqB,qCACrB,wBAAyB,uCACzB,sBAAuB,uCACvB,mBAAoB,0CACpB,kBAAmB,6DACnB,qBAAsB,uFACtB,aAAc,qCACd,cAAe,2FACf,mBAAqB,GAAqB,kBAAkB,IAC5D,qBAAsB,6CACtB,uBAAwB,wBACxB,oBAAsB,GAAqB,6BAA6B,IACxE,sBAAwB,GAAqB,iBAAiB,IAC9D,6BAA+B,GAAqB,aAAa,IACjE,2BAA4B,wDAC5B,uBAAwB,8EACxB,mBAAoB,kIACpB,0BAA2B,gCAC3B,2BAA4B,8BAC5B,kCAAmC,wCACnC,8BAA+B,kCAC/B,+BAAgC,oCAChC,qBAAsB,uCACtB,4BAA6B,kCAC7B,4BAA6B,6CAC7B,wBAAyB,0CACzB,mCAAoC,kDACpC,cAAe,eACf,iBAAkB,wBAClB,eAAgB,iBAChB,cAAe,kBACf,cAAe,QACf,eAAgB,cAChB,eAAgB,oBAChB,oBAAqB,sBACrB,uBAAwB,wBACxB,iBAAkB,sBAClB,mBAAoB,oBACpB,mBAAoB,oBACpB,oBAAqB,+BACrB,wBAAyB,iCACzB,qBAAsB,yBACtB,mBAAoB,mCACpB,uBAAwB,sBACxB,oBAAqB,2BACrB,oBAAqB,4BACrB,oBAAqB,yBACrB,wBAAyB,8BACzB,4BAA6B,mCAC7B,gBAAiB,aACjB,sBAAuB,qBACvB,gBAAiB,aACjB,oBAAqB,iBACrB,oBAAqB,iBACrB,uBAAwB,sBACxB,uBAAwB,sBACxB,kBAAmB,yBACnB,wBAAyB,wDACzB,uBAAwB,qCACxB,qBAAsB,yCACtB,yBAA0B,kIAC1B,wBAAyB,iCACzB,uBAAwB,+CACxB,iBAAkB,qDAClB,WAAY,6DACZ,eAAgB,iJAChB,eAAgB,6EAChB,oBAAqB,gFACrB,cAAe,4DACf,iBAAkB,4BAClB,sBAAuB,iCACvB,sBAAuB,8BACvB,uBAAyB,GAAmB,oCAAoC,IAChF,aAAc,OACd,oBAAqB,iBACrB,sBAAuB,sBACvB,WAAY,QACZ,aAAc,QACd,aAAc,YACd,aAAc,UACd,YAAa,aACb,eAAgB,iBAChB,aAAc,kBACd,6BAA8B,0EAC9B,2BAA4B,wEAC5B,YAAa,+BACb,2BAA4B,oFAC5B,kBAAmB,gCACnB,qBAAsB,8CACtB,cAAe,oEACf,gBAAiB,4BACjB,mBAAoB,8CACpB,wBAAyB,mCACzB,iBAAmB,GAAmB,cAAc,IACpD,yBAA0B,uGAC1B,mBAAoB,wBACpB,kBAAmB,yFACnB,8CAA+C,gHAC/C,eAAgB,iIAChB,iBAAkB,sBAClB,8BAA+B,mCAC/B,kCAAmC,6IACnC,eAAgB,wBAChB,yBAA0B,gCAC1B,qBAAsB,sCACtB,mBAAoB,yEACpB,4BAA6B,oGAC7B,iBAAkB,gBAClB,kBAAoB,GAAmB,oBAAoB,IAC3D,WAAY,eACZ,WAAY,OACZ,WAAY,OACZ,YAAa,QACb,UAAW,MACX,eAAgB,aAChB,kBAAmB,kBACnB,SAAU,WACV,SAAU,cACV,gBAAiB,yGACjB,aAAc,4BACd,SAAU,YACV,mBAAoB,4BACpB,iBAAkB,0BAClB,iBAAkB,mBAClB,oBAAqB,iDACrB,sBAAuB,8CACvB,mBAAoB,uHACpB,uBAAwB,4CACxB,eAAgB,iBAChB,yBAA2B,GAAmB,GAAG,EAAO,iBACxD,gBAAiB,gNACjB,aAAc,wOACd,gBAAiB,2CACjB,gBAAiB,2BACjB,oBAAqB,wDACrB,mBAAqB,GAAkB,2BAA2B,EAAM,mCACxE,cAAe,yBACf,eAAgB,wGAChB,eAAgB,iBAChB,oBAAqB,yBACrB,qBAAsB,sBACtB,oBAAqB,qBACrB,YAAa,kBACb,aAAc,yEACd,qBAAsB,uIACtB,eAAgB,uBAChB,iBAAkB,oBAClB,kBAAmB,6BACnB,qBAAsB,2BACtB,wBAAyB,kCACzB,2BAA4B,oCAC5B,iBAAmB,GAAqB,GAAG,EAAS,aACpD,iBAAmB,GAAqB,GAAG,EAAS,eACpD,wBAAyB,sCACzB,wBAAyB,uBACzB,uBAAyB,GAAqB,2BAA2B,IACzE,gBAAiB,kBACjB,0BAA2B,EAAkB,IAC3C,kCAAkC,EAAS,IAAI,EAAY,kCAC7D,4BAA6B,mEAC7B,sBAAuB,sDACvB,mBAAoB,wFACpB,sBAAuB,2EACvB,uBAAyB,GAAkB,qBAAqB,EAAM,6DACtE,iBAAkB,aAClB,qBAAsB,iBACtB,cAAe,gBACf,kBAAmB,uBACnB,4BAA6B,+FAC7B,gCAAiC,oGACjC,yBAA0B,2CAC1B,6BAA8B,4GAC9B,eAAgB,EAAc,EAAc,EAAe,EAAa,IAAqB,GAAG,EAAK,GAAG,EAAK,KAAK,EAAM,QAAQ,IAAM,IACtI,eAAiB,GAAqB,gBAAgB,IACtD,YAAc,GAAoB,SAAS,IAC3C,aAAc,oBACd,eAAgB,+EAChB,cAAe,8GACf,uBAAwB,4BACxB,qBAAsB,sEACtB,kBAAmB,sDACnB,iBAAkB,iEAClB,iBAAkB,uFAClB,oBAAqB,wEACrB,uBAAwB,yEACxB,4BAA6B,wEAC7B,oCAAqC,sDACrC,2BAA4B,0EAC5B,oBAAqB,wEACrB,2BAA4B,wFAC5B,iBAAkB,2DAClB,YAAa,6CACb,aAAc,gGACd,UAAW,EAAe,IAAmB,GAAG,EAAM,IAAI,IAC1D,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,cAC1E,oBAAsB,GAAkB,YAAY,EAAM,6BAC1D,gBAAiB,EAAe,EAAe,IAAmB,WAAW,EAAM,MAAM,EAAM,IAAI,IACnG,yBAA0B,aAC1B,iCAAkC,wBAClC,gCAAiC,6BACjC,oCAAqC,8BACrC,oCAAqC,yBACrC,0BAA2B,aAC3B,wBAAyB,kBACzB,oCAAqC,yBACrC,wBAAyB,eACzB,kCAAmC,wBACnC,sBAAuB,QACvB,8BAA+B,4BAC/B,+BAAgC,uBAChC,8BAA+B,YAC/B,yBAA0B,WAC5B,EClRM,EAA8B,CAClC,qBAAsB,sBACtB,sBAAuB,yBACvB,gBAAiB,kGACjB,kBAAmB,qCACnB,kBAAmB,qCACnB,eAAiB,GAAmB,eAAe,IACnD,4BAA6B,qFAC7B,qBAAsB,iCACtB,qBAAsB,gHACtB,iBAAmB,GAAkB,sBAAsB,EAAM,GACjE,oBAAqB,wKACrB,yBAA0B,uEAC1B,mBAAqB,GAAmB,GAAG,EAAO,sEAClD,iBAAmB,GAAmB,GAAG,EAAO,cAChD,wBAAyB,6CACzB,wBAAyB,kEACzB,kBAAoB,GAAwB,YAAY,IACxD,qBAAuB,GAAmB,gBAAgB,EAAO,6DACjE,aAAe,GAAkB,4BAA4B,EAAM,iDACnE,kBAAmB,oBACnB,uBAAyB,GAAqB,8BAA8B,EAAS,qBACrF,mBAAoB,yFACpB,cAAgB,GAAkB,GAAG,EAAM,qBAC3C,mBAAoB,iKACpB,oBAAqB,wCACrB,wBAAyB,8CACzB,sBAAuB,0CACvB,mBAAoB,6CACpB,qBAAsB,gDACtB,2BAA4B,8DAC5B,uBAAwB,sFACxB,mBAAoB,0HACpB,wBAAyB,kDACzB,qBAAsB,wCACtB,wBAAyB,gCACzB,uBAAwB,mDACxB,iBAAkB,wDAClB,eAAgB,8EAChB,oBAAqB,+EACrB,iBAAkB,0BAClB,uBAAyB,GAAmB,oCAAoC,IAChF,oBAAqB,gBACrB,sBAAuB,qBACvB,aAAc,WACd,2BAA4B,uEAC5B,2BAA4B,0FAC5B,mBAAoB,8CACpB,wBAAyB,mCACzB,iBAAmB,GAAmB,WAAW,IACjD,yBAA0B,iGAC1B,mBAAoB,0BACpB,eAAgB,mIAChB,eAAgB,uBAChB,yBAA0B,gCAC1B,qBAAsB,sCACtB,mBAAoB,0EACpB,4BAA6B,mGAC7B,iBAAkB,eAClB,kBAAoB,GAAmB,mBAAmB,IAC1D,gBAAiB,uGACjB,aAAc,2BACd,iBAAkB,yBAClB,oBAAqB,oDACrB,sBAAuB,6CACvB,mBAAoB,kHACpB,gBAAiB,mNACjB,eAAgB,iBAChB,yBAA2B,GAAmB,GAAG,EAAO,iBACxD,aAAc,6OACd,oBAAqB,wDACrB,mBAAqB,GAAkB,2BAA2B,EAAM,mCACxE,cAAe,yBACf,eAAgB,yGAChB,eAAgB,iBAChB,qBAAsB,wBACtB,oBAAqB,qBACrB,YAAa,oBACb,aAAc,+DACd,qBAAsB,mIACtB,eAAgB,yBAChB,kBAAmB,+BACnB,qBAAsB,6BACtB,wBAAyB,qCACzB,2BAA4B,sCAC5B,iBAAmB,GAAqB,GAAG,EAAS,YACpD,4BAA6B,mEAC7B,mBAAoB,8FACpB,sBAAuB,iFACvB,uBAAyB,GAAkB,qBAAqB,EAAM,mEACtE,4BAA6B,+FAC7B,gCAAiC,oGACjC,6BAA8B,kHAC9B,aAAc,oBACd,eAAgB,mFAChB,cAAe,iGACf,uBAAwB,uBACxB,qBAAsB,sEACtB,kBAAmB,iDACnB,iBAAkB,iEAClB,iBAAkB,+EAClB,oBAAqB,uEACrB,4BAA6B,0EAC7B,oCAAqC,wDACrC,2BAA4B,4EAC5B,2BAA4B,wFAC5B,YAAa,6CACb,aAAc,gGACd,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,WAC1E,oBAAsB,GAAkB,YAAY,EAAM,0BAC1D,yBAA0B,aAC1B,iCAAkC,yBAClC,gCAAiC,+BACjC,oCAAqC,yBACrC,0BAA2B,aAC3B,wBAAyB,iBACzB,oCAAqC,yBACrC,wBAAyB,eACzB,kCAAmC,wBACnC,sBAAuB,QACvB,8BAA+B,6BAC/B,+BAAgC,uBAChC,8BAA+B,YAC/B,yBAA0B,WAC5B,EAEa,GAA6B,CACxC,GAAG,GACH,GAAG,CACL,ECvHM,GAAkB,CACtB,qBAAsB,iBACtB,qBAAsB,sBACtB,sBAAuB,uBACvB,gBAAiB,6FACjB,iBAAkB,oBAClB,MAAO,QACP,kBAAmB,8BACnB,kBAAmB,+BACnB,eAAiB,GAAmB,YAAY,IAChD,4BAA6B,8DAC7B,qBAAsB,wBACtB,qBAAsB,2FACtB,iBAAmB,GAAkB,sBAAsB,EAAM,GACjE,wBAAyB,4CACzB,oBAAqB,+KACrB,yBAA0B,mEAC1B,wBAAyB,iEACzB,oBAAqB,iEACrB,sBAAuB,gEACvB,mBAAqB,GAAmB,GAAG,EAAO,yDAClD,iBAAmB,GAAmB,GAAG,EAAO,eAChD,wBAAyB,+BACzB,wBAAyB,kEACzB,kBAAoB,GAAwB,WAAW,IACvD,YAAa,kCACb,qBAAsB,6DACtB,wBAAyB,iFACzB,mBAAoB,2DACpB,qBAAuB,GAAqB,GAAG,EAAS,uCACxD,sBAAuB,4GACvB,oBAAqB,uGACrB,mBAAqB,GAAsB,+DAA+D,EAAU,GACpH,qBAAuB,GAAsB,gEAAgE,EAAU,8CACvH,eAAgB,wGAChB,sBAAuB,oEACvB,qBAAsB,sIACtB,cAAgB,GAAqB,qBAAqB,EAAS,mBACnE,qBAAuB,GAAmB,sBAAsB,EAAO,yDACvE,kBAAmB,EAAkB,IAAoB,GAAG,EAAS,aAAa,IAClF,kBAAmB,sBACnB,aAAe,GAAkB,gCAAgC,EAAM,qCACvE,kBAAmB,qBACnB,qBAAsB,iCACtB,sBAAuB,iGACvB,+BAAgC,sGAChC,yBAA0B,uHAC1B,iBAAmB,GAAqB,0BAA0B,IAClE,uBAAyB,GAAqB,0BAA0B,EAAS,eACjF,uBAAwB,6BACxB,mCAAoC,4CACpC,yBAA0B,mCAC1B,oBAAsB,GAAqB,8BAA8B,IACzE,oBAAsB,GAAqB,gBAAgB,IAC3D,8BAA+B,wEAC/B,mBAAoB,yEACpB,oBAAsB,GAAqB,cAAc,EAAS,qBAClE,gCAAiC,iDACjC,uBAAwB,4BACxB,sBAAwB,GAAqB,GAAG,EAAS,YACzD,cAAgB,GAAkB,GAAG,EAAM,eAC3C,kBAAmB,mCACnB,mBAAoB,4HACpB,oBAAqB,yBACrB,wBAAyB,gCACzB,sBAAuB,4BACvB,mBAAoB,wBACpB,kBAAmB,sDACnB,qBAAsB,oEACtB,aAAc,uCACd,cAAe,qFACf,mBAAqB,GAAqB,eAAe,IACzD,qBAAsB,6CACtB,uBAAwB,4BACxB,oBAAsB,GAAqB,6BAA6B,IACxE,sBAAwB,GAAqB,iBAAiB,IAC9D,6BAA+B,GAAqB,aAAa,IACjE,2BAA4B,kDAC5B,uBAAwB,qEACxB,mBAAoB,mHACpB,0BAA2B,8BAC3B,2BAA4B,0BAC5B,kCAAmC,sCACnC,8BAA+B,kCAC/B,+BAAgC,8BAChC,qBAAsB,qCACtB,4BAA6B,+BAC7B,4BAA6B,yCAC7B,wBAAyB,oCACzB,mCAAoC,gDACpC,cAAe,YACf,iBAAkB,gBAClB,eAAgB,aAChB,cAAe,WACf,cAAe,WACf,eAAgB,aAChB,eAAgB,iBAChB,oBAAqB,kBACrB,uBAAwB,qBACxB,iBAAkB,eAClB,mBAAoB,iBACpB,mBAAoB,kBACpB,oBAAqB,oBACrB,wBAAyB,wBACzB,qBAAsB,oBACtB,mBAAoB,0BACpB,uBAAwB,qBACxB,oBAAqB,wBACrB,oBAAqB,kBACrB,oBAAqB,mBACrB,wBAAyB,uBACzB,4BAA6B,2BAC7B,gBAAiB,aACjB,sBAAuB,oBACvB,gBAAiB,aACjB,oBAAqB,iBACrB,oBAAqB,iBACrB,uBAAwB,sBACxB,uBAAwB,sBACxB,kBAAmB,sBACnB,wBAAyB,oDACzB,uBAAwB,oCACxB,qBAAsB,6BACtB,yBAA0B,+GAC1B,wBAAyB,4BACzB,uBAAwB,8CACxB,iBAAkB,8CAClB,WAAY,uDACZ,eAAgB,8IAChB,eAAgB,gEAChB,oBAAqB,uEACrB,cAAe,uDACf,iBAAkB,qBAClB,sBAAuB,0BACvB,sBAAuB,uBACvB,uBAAyB,GAAmB,4BAA4B,IACxE,aAAc,SACd,oBAAqB,iBACrB,sBAAuB,mBACvB,WAAY,OACZ,aAAc,SACd,aAAc,SACd,aAAc,SACd,YAAa,cACb,eAAgB,kBAChB,aAAc,gBACd,6BAA8B,wEAC9B,2BAA4B,oEAC5B,YAAa,+BACb,2BAA4B,iFAC5B,kBAAmB,sBACnB,qBAAsB,qCACtB,cAAe,yDACf,gBAAiB,oBACjB,mBAAoB,sCACpB,wBAAyB,4BACzB,iBAAmB,GAAmB,cAAc,IACpD,yBAA0B,sFAC1B,mBAAoB,uBACpB,kBAAmB,uEACnB,8CAA+C,mGAC/C,eAAgB,sGAChB,iBAAkB,eAClB,8BAA+B,2BAC/B,kCAAmC,6HACnC,eAAgB,mBAChB,yBAA0B,8BAC1B,qBAAsB,8BACtB,mBAAoB,kEACpB,4BAA6B,mFAC7B,iBAAkB,cAClB,kBAAoB,GAAmB,mBAAmB,IAC1D,WAAY,cACZ,WAAY,OACZ,WAAY,OACZ,YAAa,QACb,UAAW,MACX,eAAgB,WAChB,kBAAmB,cACnB,SAAU,WACV,SAAU,WACV,gBAAiB,sFACjB,aAAc,wBACd,SAAU,WACV,mBAAoB,4BACpB,iBAAkB,qBAClB,iBAAkB,oBAClB,oBAAqB,sCACrB,sBAAuB,mCACvB,mBAAoB,wFACpB,uBAAwB,qCACxB,eAAgB,kBAChB,yBAA2B,GAAmB,GAAG,EAAO,kBACxD,gBAAiB,4JACjB,aAAc,iNACd,gBAAiB,sCACjB,gBAAiB,mBACjB,oBAAqB,qDACrB,mBAAqB,GAAkB,0BAA0B,EAAM,wBACvE,cAAe,0BACf,eAAgB,sGAChB,eAAgB,kBAChB,oBAAqB,uBACrB,qBAAsB,yBACtB,oBAAqB,wBACrB,YAAa,eACb,aAAc,mEACd,qBAAsB,kHACtB,eAAgB,oBAChB,iBAAkB,qBAClB,kBAAmB,sBACnB,qBAAsB,yBACtB,wBAAyB,6BACzB,2BAA4B,gCAC5B,iBAAmB,GAAqB,GAAG,EAAS,YACpD,iBAAmB,GAAqB,GAAG,EAAS,YACpD,wBAAyB,4BACzB,wBAAyB,oBACzB,uBAAyB,GAAqB,gBAAgB,IAC9D,gBAAiB,mBACjB,0BAA2B,EAAkB,IAC3C,6BAA6B,EAAS,IAAI,EAAY,qCACxD,4BAA6B,4CAC7B,sBAAuB,+CACvB,mBAAoB,4EACpB,sBAAuB,kEACvB,uBAAyB,GAAkB,GAAG,EAAM,kEACpD,iBAAkB,YAClB,qBAAsB,iBACtB,cAAe,gBACf,kBAAmB,mBACnB,4BAA6B,4EAC7B,gCAAiC,8EACjC,yBAA0B,sCAC1B,6BAA8B,uFAC9B,eAAgB,EAAc,EAAc,EAAe,EAAa,IAAqB,GAAG,EAAK,GAAG,EAAK,KAAK,EAAM,QAAQ,IAAM,IACtI,eAAiB,GAAqB,cAAc,IACpD,YAAc,GAAoB,UAAU,IAC5C,aAAc,gBACd,eAAgB,qEAChB,cAAe,uFACf,uBAAwB,0BACxB,qBAAsB,mEACtB,kBAAmB,iDACnB,iBAAkB,kEAClB,iBAAkB,iFAClB,oBAAqB,2DACrB,uBAAwB,2DACxB,4BAA6B,0DAC7B,oCAAqC,oDACrC,2BAA4B,sEAC5B,oBAAqB,8DACrB,2BAA4B,uEAC5B,iBAAkB,sDAClB,YAAa,kCACb,aAAc,0EACd,UAAW,EAAe,IAAmB,GAAG,EAAM,IAAI,IAC1D,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,cAC1E,oBAAsB,GAAkB,OAAO,EAAM,yBACrD,gBAAiB,EAAe,EAAe,IAAmB,UAAU,EAAM,MAAM,EAAM,IAAI,IAClG,yBAA0B,YAC1B,iCAAkC,qBAClC,gCAAiC,oBACjC,oCAAqC,yBACrC,oCAAqC,wBACrC,0BAA2B,aAC3B,wBAAyB,WACzB,oCAAqC,wBACrC,wBAAyB,WACzB,kCAAmC,sBACnC,sBAAuB,SACvB,8BAA+B,wBAC/B,+BAAgC,qBAChC,8BAA+B,SAC/B,yBAA0B,WAC5B,EAUM,GAAiB,CACrB,qBAAsB,mBACtB,qBAAsB,mBACtB,sBAAuB,oBACvB,gBAAiB,oGACjB,iBAAkB,uBAClB,MAAO,YACP,kBAAmB,qCACnB,kBAAmB,+BACnB,eAAiB,GAAmB,GAAG,EAAO,eAC9C,4BAA6B,iFAC7B,qBAAsB,8BACtB,qBAAsB,iHACtB,iBAAmB,GAAkB,sBAAsB,EAAM,GACjE,wBAAyB,kDACzB,oBAAqB,4OACrB,yBAA0B,2FAC1B,wBAAyB,2EACzB,oBAAqB,4EACrB,sBAAuB,oFACvB,mBAAqB,GAAmB,GAAG,EAAO,mEAClD,iBAAmB,GAAmB,GAAG,EAAO,gBAChD,wBAAyB,mCACzB,wBAAyB,yEACzB,kBAAoB,GAAwB,aAAa,IACzD,YAAa,wCACb,qBAAsB,4EACtB,wBAAyB,oHACzB,mBAAoB,oEACpB,qBAAuB,GAAqB,GAAG,EAAS,qDACxD,sBAAuB,0HACvB,oBAAqB,oHACrB,mBAAqB,GAAsB,qEAAqE,EAAU,GAC1H,qBAAuB,GAAsB,sEAAsE,EAAU,kDAC7H,eAAgB,yHAChB,sBAAuB,8EACvB,qBAAsB,0KACtB,cAAgB,GAAqB,6CAA6C,EAAS,SAC3F,qBAAuB,GAAmB,sBAAsB,EAAO,yEACvE,kBAAmB,EAAkB,IAAoB,GAAG,EAAS,eAAe,IACpF,kBAAmB,6BACnB,aAAe,GAAkB,gCAAgC,EAAM,uDACvE,kBAAmB,2BACnB,qBAAsB,gCACtB,sBAAuB,iGACvB,+BAAgC,+GAChC,yBAA0B,8HAC1B,iBAAmB,GAAqB,cAAc,EAAS,aAC/D,uBAAyB,GAAqB,cAAc,EAAS,gCACrE,uBAAwB,+BACxB,mCAAoC,6CACpC,yBAA0B,wCAC1B,oBAAsB,GAAqB,sBAAsB,EAAS,aAC1E,oBAAsB,GAAqB,OAAO,EAAS,YAC3D,8BAA+B,8EAC/B,mBAAoB,wFACpB,oBAAsB,GAAqB,qCAAqC,EAAS,SACzF,gCAAiC,4DACjC,uBAAwB,mCACxB,sBAAwB,GAAqB,GAAG,EAAS,gBACzD,cAAgB,GAAkB,GAAG,EAAM,2BAC3C,kBAAmB,6CACnB,mBAAoB,yKACpB,oBAAqB,qCACrB,wBAAyB,2CACzB,sBAAuB,qCACvB,mBAAoB,mCACpB,kBAAmB,+FACnB,qBAAsB,+EACtB,aAAc,oCACd,cAAe,gGACf,mBAAqB,GAAqB,aAAa,IACvD,qBAAsB,gDACtB,uBAAwB,8BACxB,oBAAsB,GAAqB,qBAAqB,EAAS,aACzE,sBAAwB,GAAqB,OAAO,EAAS,aAC7D,6BAA+B,GAAqB,GAAG,EAAS,eAChE,2BAA4B,iEAC5B,uBAAwB,0FACxB,mBAAoB,2JACpB,0BAA2B,mCAC3B,2BAA4B,kCAC5B,kCAAmC,wCACnC,8BAA+B,qCAC/B,+BAAgC,wCAChC,qBAAsB,wCACtB,4BAA6B,4CAC7B,4BAA6B,gDAC7B,wBAAyB,0CACzB,mCAAoC,mDACpC,cAAe,YACf,iBAAkB,uBAClB,eAAgB,gBAChB,cAAe,eACf,cAAe,WACf,eAAgB,WAChB,eAAgB,iBAChB,oBAAqB,sBACrB,uBAAwB,sBACxB,iBAAkB,qBAClB,mBAAoB,qBACpB,mBAAoB,yBACpB,oBAAqB,2BACrB,wBAAyB,iCACzB,qBAAsB,oBACtB,mBAAoB,0BACpB,uBAAwB,iBACxB,oBAAqB,wBACrB,oBAAqB,sBACrB,oBAAqB,mBACrB,wBAAyB,uBACzB,4BAA6B,8BAC7B,gBAAiB,aACjB,sBAAuB,yBACvB,gBAAiB,aACjB,oBAAqB,iBACrB,oBAAqB,iBACrB,uBAAwB,sBACxB,uBAAwB,sBACxB,kBAAmB,yBACnB,wBAAyB,wDACzB,uBAAwB,uCACxB,qBAAsB,yCACtB,yBAA0B,uIAC1B,wBAAyB,kCACzB,uBAAwB,8CACxB,iBAAkB,oDAClB,WAAY,sEACZ,eAAgB,+KAChB,eAAgB,mFAChB,oBAAqB,4FACrB,cAAe,qEACf,iBAAkB,wBAClB,sBAAuB,8BACvB,sBAAuB,gCACvB,uBAAyB,GAAmB,qCAAqC,IACjF,aAAc,SACd,oBAAqB,oBACrB,sBAAuB,yBACvB,WAAY,SACZ,aAAc,YACd,aAAc,WACd,aAAc,UACd,YAAa,aACb,eAAgB,mBAChB,aAAc,gBACd,6BAA8B,oFAC9B,2BAA4B,mFAC5B,YAAa,kCACb,2BAA4B,2FAC5B,kBAAmB,2BACnB,qBAAsB,8CACtB,cAAe,+DACf,gBAAiB,0BACjB,mBAAoB,+CACpB,wBAAyB,4CACzB,iBAAmB,GAAmB,GAAG,EAAO,iBAChD,yBAA0B,sGAC1B,mBAAoB,0BACpB,kBAAmB,+EACnB,8CAA+C,uHAC/C,eAAgB,qJAChB,iBAAkB,uBAClB,8BAA+B,uCAC/B,kCAAmC,iMACnC,eAAgB,wBAChB,yBAA0B,kCAC1B,qBAAsB,4BACtB,mBAAoB,8FACpB,4BAA6B,0EAC7B,iBAAkB,eAClB,kBAAoB,GAAmB,oBAAoB,IAC3D,WAAY,eACZ,WAAY,MACZ,WAAY,OACZ,YAAa,OACb,UAAW,MACX,eAAgB,YAChB,kBAAmB,cACnB,SAAU,WACV,SAAU,eACV,gBAAiB,kGACjB,aAAc,sCACd,SAAU,aACV,mBAAoB,qCACpB,iBAAkB,sBAClB,iBAAkB,yBAClB,oBAAqB,0CACrB,sBAAuB,8CACvB,mBAAoB,yGACpB,uBAAwB,2CACxB,eAAgB,sBAChB,yBAA2B,GAAmB,GAAG,EAAO,2BACxD,gBAAiB,uPACjB,aAAc,2QACd,gBAAiB,kDACjB,gBAAiB,8BACjB,oBAAqB,gEACrB,mBAAqB,GAAkB,kBAAkB,EAAM,wDAC/D,cAAe,8BACf,eAAgB,6GAChB,eAAgB,yBAChB,oBAAqB,qBACrB,qBAAsB,+BACtB,oBAAqB,0BACrB,YAAa,eACb,aAAc,oFACd,qBAAsB,mHACtB,eAAgB,qBAChB,iBAAkB,wBAClB,kBAAmB,wBACnB,qBAAsB,0BACtB,wBAAyB,oCACzB,2BAA4B,oCAC5B,iBAAmB,GAAqB,GAAG,EAAS,WACpD,iBAAmB,GAAqB,GAAG,EAAS,cACpD,wBAAyB,gCACzB,wBAAyB,sBACzB,uBAAyB,GAAqB,GAAG,EAAS,YAC1D,gBAAiB,kBACjB,0BAA2B,EAAkB,IAC3C,yCAAyC,EAAS,IAAI,EAAY,kCACpE,4BAA6B,oDAC7B,sBAAuB,mEACvB,mBAAoB,uFACpB,sBAAuB,gFACvB,uBAAyB,GAAkB,GAAG,EAAM,8EACpD,iBAAkB,cAClB,qBAAsB,iBACtB,cAAe,kBACf,kBAAmB,yBACnB,4BAA6B,uGAC7B,gCAAiC,sGACjC,yBAA0B,8CAC1B,6BAA8B,iHAC9B,eAAgB,EAAc,EAAc,EAAe,EAAa,IAAqB,GAAG,EAAK,GAAG,EAAK,KAAK,EAAM,QAAQ,IAAM,IACtI,eAAiB,GAAqB,eAAe,IACrD,YAAa,yCACb,aAAc,oHACd,UAAW,EAAe,IAAmB,GAAG,EAAM,IAAI,IAC1D,mBAAoB,EAAe,IAAmB,GAAG,EAAM,IAAI,EAAO,cAC1E,oBAAsB,GAAkB,QAAQ,EAAM,0BACtD,gBAAiB,EAAe,EAAe,IAAmB,UAAU,EAAM,OAAO,EAAM,IAAI,IACnG,YAAc,GAAoB,WAAW,IAC7C,aAAc,qBACd,eAAgB,wFAChB,cAAe,iIACf,uBAAwB,4BACxB,qBAAsB,sHACtB,kBAAmB,6CACnB,iBAAkB,kFAClB,iBAAkB,kHAClB,oBAAqB,qFACrB,uBAAwB,mFACxB,4BAA6B,+EAC7B,oCAAqC,0EACrC,2BAA4B,8EAC5B,oBAAqB,mFACrB,2BAA4B,+EAC5B,iBAAkB,+EAClB,yBAA0B,cAC1B,iCAAkC,0BAClC,gCAAiC,sBACjC,oCAAqC,4BACrC,oCAAqC,2BACrC,0BAA2B,cAC3B,wBAAyB,aACzB,oCAAqC,yBACrC,wBAAyB,kBACzB,kCAAmC,uBACnC,sBAAuB,QACvB,8BAA+B,oCAC/B,+BAAgC,+BAChC,8BAA+B,iBAC/B,yBAA0B,aAC5B,EAEa,GAA2B,CAAC,KAAM,KAAM,QAAS,QAAS,KAAM,IAAI,EAG3E,GAAuE,CAC3E,GAAI,GACJ,GAAI,GACJ,QAAS,GACT,QAAS,GACT,GAAI,GACJ,GAAI,EACN,EAEM,GAA8F,CAClG,GAAI,KACJ,GAAI,KACJ,GAAI,QACJ,QAAS,QACT,QAAS,QACT,GAAI,KACJ,GAAI,IACN,EAEM,GAAwD,CAC5D,GAAI,KACJ,GAAI,KACJ,GAAI,QACJ,QAAS,QACT,QAAS,QACT,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,KACJ,GAAI,IACN,EAgBA,SAAgB,EAAuB,EAAiB,KAAwB,CAC9E,IAAM,EAASC,EAAAA,oBAAoB,MAAM,CAAK,EACxC,EAAc,GAAa,GAC3B,EAAmB,GAAyB,IAAW,KACvD,EAAW,GAAS,GACpB,EAAe,IAAI,KAAK,aAAa,CAAW,EAChD,EAAiB,IAAI,KAAK,eAAe,EAAa,CAC1D,UAAW,SACX,UAAW,OACb,CAAC,EAED,MAAO,CACL,SACA,mBACA,cACA,UAAW,MACX,WACA,cAAgB,GAAU,EAAa,OAAO,CAAK,EACnD,eAAiB,GAAU,EAAe,OAAO,IAAI,KAAK,CAAK,CAAC,EAChE,gBAAkB,GAAU,EAAS,GAA0B,IAC/D,wBAA0B,GAAS,EAAS,GAAkC,IAC9E,YAAc,GAAS,EAAS,GAAsB,IACtD,SAAW,GAAS,EAAS,GAAmB,GAClD,CACF,CAEA,SAAgB,EACd,EAGA,EACoB,CAChB,OAAS,IAAA,GAEb,OADI,IAAW,KAAa,EAAK,IAAM,EAAK,UAAY,EAAK,GACtD,EAAK,IAAW,EAAK,EAC9B,CAEA,MAAM,GAA4B,CAChC,UAAW,2BACX,mBAAoB,mCACpB,kBAAmB,kCACnB,uBAAwB,sCACxB,sBAAuB,sCACvB,WAAY,4BACZ,SAAU,0BACV,sBAAuB,sCACvB,SAAU,0BACV,oBAAqB,oCACrB,OAAQ,wBACR,gBAAiB,gCACjB,iBAAkB,iCAClB,gBAAiB,gCACjB,UAAW,0BACb,EAEM,GAAoC,CACxC,mCAAoC,+CACtC,EAEM,GAAwB,CAC5B,oBAAqB,+BACrB,kBAAmB,4BACrB,EAEM,GAAqB,CACzB,gBAAiB,yBACjB,aAAc,uBACd,UAAW,oBACX,UAAW,mBACX,SAAU,mBACV,aAAc,sBACd,gBAAiB,yBACjB,qBAAsB,8BACtB,8BAA+B,sCAC/B,oBAAqB,6BACrB,aAAc,sBACd,oBAAqB,6BACrB,eAAgB,kBAClB,EClsBA,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,GAAa,OAAO,GAAjB,UAA8B,OAAO,GAAjB,SAAmB,GAAG,OAAO,GAAa,OAAO,GAAjB,SAAmB,IAAG,MAAM,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,IAAI,GAAG,KAAK,GAAG,EAAE,MAAM,IAAI,KAAK,EAAE,EAAE,KAAK,IAAI,GAAG,KAAK,GAAG,EAAA,CAAG,OAAO,CAAC,CAAC,SAAgB,GAAM,CAAC,IAAI,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,UAAU,OAAO,EAAE,EAAE,KAAK,EAAE,UAAU,MAAM,EAAE,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,GAAG,GAAG,OAAO,CAAC,CCe/W,MAAM,GAAiB,GAAQ,OAAO,GAAU,UAAY,GAAG,IAAU,IAAU,EAAI,IAAM,EAChF,GAAK,EACL,IAAO,EAAM,IAAU,GAAQ,CAEpC,GAAK,GAAuD,UAAa,KAAM,OAAO,GAAG,EAAM,GAAoD,MAAO,GAAoD,SAAS,EACvN,GAAM,CAAE,WAAU,mBAAoB,EAChC,EAAuB,OAAO,KAAK,CAAQ,CAAC,CAAC,IAAK,GAAU,CAC9D,IAAM,EAAc,IAAoD,GAClE,EAAqB,IAAkF,GAC7G,GAAI,IAAgB,KAAM,OAAO,KACjC,IAAM,EAAa,GAAc,CAAW,GAAK,GAAc,CAAkB,EACjF,OAAO,EAAS,EAAQ,CAAC,EAC7B,CAAC,EACK,EAAwB,GAAS,OAAO,QAAQ,CAAK,CAAC,CAAC,QAAQ,EAAK,IAAQ,CAC9E,GAAI,CAAC,EAAK,GAAS,EAKnB,OAJI,IAAU,IAAA,KAGd,EAAI,GAAO,GAFA,CAIf,EAAG,CAAC,CAAC,EACC,EAA+B,GAAmF,kBAAsG,QAAQ,EAAK,IAAQ,CAC/O,GAAI,CAAE,MAAO,EAAS,UAAW,EAAa,GAAG,GAA2B,EAC5E,OAAO,OAAO,QAAQ,CAAsB,CAAC,CAAC,MAAO,GAAQ,CACzD,GAAI,CAAC,EAAK,GAAS,EACnB,OAAO,MAAM,QAAQ,CAAK,EAAI,EAAM,SAAS,CACzC,GAAG,EACH,GAAG,CACP,EAAE,EAAI,EAAK,CACP,GAAG,EACH,GAAG,CACP,EAAG,KAAS,CAChB,CAAC,EAAI,CACD,GAAG,EACH,EACA,CACJ,EAAI,CACR,EAAG,CAAC,CAAC,EACL,OAAO,GAAG,EAAM,EAAsB,EAA8B,GAAoD,MAAO,GAAoD,SAAS,CAChM;;;;;;;;;;cC3CJ,IAAI,EAAqB,OAAO,IAAI,4BAA4B,EAC9D,EAAsB,OAAO,IAAI,gBAAgB,EACnD,SAAS,EAAQ,EAAM,EAAQ,EAAU,CACvC,IAAI,EAAM,KAGV,GAFW,IAAX,IAAK,KAAmB,EAAM,GAAK,GACxB,EAAO,MAAlB,IAAK,KAAqB,EAAM,GAAK,EAAO,KACxC,QAAS,EAEX,IAAK,IAAI,IADT,GAAW,CAAC,EACS,EACT,IAAV,QAAuB,EAAS,GAAY,EAAO,QAChD,GAAW,EAElB,MADA,GAAS,EAAS,IACX,CACL,SAAU,EACJ,OACD,MACL,IAAgB,IAAX,IAAK,GAAwB,KAAT,EACzB,MAAO,CACT,CACF,CACA,EAAQ,SAAW,EACnB,EAAQ,IAAM,EACd,EAAQ,KAAO,kBC9Bb,EAAO,QAAA,GAAA,OCCT,MAAM,GAAiB,GAAI,iBAAkB,CAC3C,gBAAiB,CAAE,KAAM,UAAW,QAAS,SAAU,EACvD,SAAU,CACR,KAAM,CACJ,QAAS,0BACT,QAAS,0BACT,KAAM,sBACR,EACA,QAAS,CACP,QAAS,0BACT,UAAW,4BACX,MAAO,wBACP,OAAQ,wBACV,CACF,CACF,CAAC,EAQD,SAAgB,EAAO,CACrB,WACA,YACA,WACA,UAAU,GACV,OACA,OAAO,SACP,UACA,GAAG,GACW,CACd,OACE,EAAA,EAAA,KAAA,CAAC,SAAD,CACE,GAAI,EACJ,YAAW,GAAW,IAAA,GACtB,UAAW,EAAK,GAAe,CAAE,OAAM,SAAQ,CAAC,EAAG,CAAS,EAC5D,SAAU,GAAY,EAChB,OALR,SAAA,CAOG,GAAU,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,cAAY,OAAO,UAAU,iBAAmB,CAAA,EAAI,MACrE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAO,UAAe,CAAA,CAChB,GAEZ,CC/CA,SAAgB,GAAY,CAAE,aAA8C,CAC1E,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,cAAY,OAAkB,YAAW,KAAK,OAAO,QAAQ,cAChE,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAAe,CAAA,CACZ,CAAA,CAET,CAEA,SAAgB,IAAe,CAC7B,OACE,EAAA,EAAA,KAAA,CAAA,EAAA,SAAA,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,uCAAuC,OAAO,eAAe,YAAY,IAAM,CAAA,GACvF,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,uCAAuC,OAAO,eAAe,YAAY,IAAM,CAAA,GACvF,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,2BAA2B,OAAO,eAAe,YAAY,IAAM,CAAA,CAC3E,CAAA,CAAA,CAEN,CAEA,SAAgB,GAAU,EAAgC,CACxD,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,cAAY,OAAO,KAAK,OAAO,QAAQ,YAAY,GAAI,EAC1D,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,uBAAuB,OAAO,eAAe,cAAc,QAAQ,YAAY,KAAO,CAAA,CAC3F,CAAA,CAET,CAEA,SAAgB,GAAU,EAAgC,CACxD,OACE,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,cAAY,OAAO,KAAK,OAAO,QAAQ,YAAY,GAAI,EAC1D,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,6BAA6B,OAAO,eAAe,cAAc,QAAQ,eAAe,QAAQ,YAAY,KAAO,CAAA,CACxH,CAAA,CAET,CAEA,SAAgB,GAAS,EAAgC,CACvD,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,cAAY,OAAO,KAAK,OAAO,QAAQ,YAAY,GAAI,EAA5D,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,OAAO,KAAK,GAAG,IAAI,OAAO,eAAe,MAAM,KAAK,EAAE,MAAM,EAAE,KAAO,CAAA,GAC3E,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,qEAAqE,OAAO,cAAgB,CAAA,CACjG,GAET,CAEA,SAAgB,GAAW,EAAgC,CACzD,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,cAAY,OAAO,KAAK,OAAO,QAAQ,YAAY,GAAI,EAA5D,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,GAAG,MAAM,GAAG,MAAM,EAAE,IAAI,OAAO,eAAe,YAAY,KAAO,CAAA,GACzE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,mBAAmB,OAAO,eAAe,cAAc,QAAQ,YAAY,KAAO,CAAA,CACvF,GAET,CC1CA,SAAgB,GAAQ,CAAE,kBAAiB,WAAU,WAAyB,CAC5E,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,gBAAf,SAAA,CACG,GACC,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,aAAW,QAAQ,UAAU,gBAAgB,QAAS,EAAS,KAAK,SAC1E,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAAY,CAAA,CACN,CAAA,EACN,MACJ,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,kBAAmB,UAAc,CAAA,GAChD,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,UAAU,iBAAlB,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAM,YAAgB,CAAA,GACtB,EAAA,EAAA,IAAA,CAAC,GAAD,CAAa,UAAU,sBAAwB,CAAA,CACzC,IACP,GAAkB,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,0BAA2B,SAAA,CAAsB,CAAA,EAAI,IACrF,GAET,CAEA,SAAgB,GAAQ,CAAE,WAAU,OAAO,WAAgG,CACzI,OAAO,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAW,oCAAoC,IAAS,UAAY,CAAA,CAChF,CAEA,SAAgB,GAAQ,CAAE,WAAU,QAAqE,CACvG,OACE,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,UAAU,wBAAlB,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,SAAU,GAAK,UAAa,CAAA,EAC3D,GAAO,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAgB,SAAA,CAAQ,CAAA,EAAI,IAC3C,GAEZ,CCpCA,SAAgB,IAAW,CACzB,IAAM,GAAA,EAAgBC,EAAAA,MAAAA,CAAM,CAAC,CAAC,WAAW,IAAK,EAAE,EAC1C,EAAQ,CACZ,CAAC,IAAK,EAAG,EACT,CAAC,IAAK,GAAG,EACT,CAAC,GAAI,GAAG,EACR,CAAC,GAAI,GAAG,EACR,CAAC,GAAI,GAAG,CACV,EAEA,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,cAAY,OAAO,UAAU,oBAAoB,KAAK,OAAO,QAAQ,cAA1E,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SACG,EAAM,KAAK,CAAC,EAAQ,MACnB,EAAA,EAAA,IAAA,CAAC,UAAD,CAAS,OAAO,IAAI,GAAI,GAAG,EAAc,QAAQ,IAAuB,aAAa,iBAAiB,MAAM,IAC1G,UAAA,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,GAAG,IAAI,GAAG,IAAI,KAAK,eAAe,EAAG,CAAM,CAAA,CAC5C,EAFuD,CAEvD,CACV,CACG,CAAA,EACL,EAAM,KAAK,CAAC,GAAS,KACpB,EAAA,EAAA,IAAA,CAAC,SAAD,CACE,UAAU,4BACV,GAAG,MACH,GAAG,MACH,KAAM,QAAQ,EAAc,QAAQ,EAAO,GAE3C,EAAG,EACH,MAAO,CAAE,eAAgB,GAAG,EAAQ,KAAK,GAAI,CAC9C,EAHM,CAGN,CACF,GACD,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,UAAU,4BAA4B,GAAG,MAAM,GAAG,MAAM,EAAE,IAAM,CAAA,GACxE,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,2BAA2B,UAAU,gCAChD,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAAe,CAAA,CACd,CAAA,CACA,GAET,CAEA,SAAgB,IAAc,CAC5B,OAAO,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,mDAAmD,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAAY,CAAA,CAAM,CAAA,CAC7F,CAEA,SAAgB,IAAc,CAC5B,OAAO,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,mDAAmD,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAM,GAAO,CAAA,CAAM,CAAA,CAC9F,CAEA,SAAgB,GAAa,CAAE,SAAQ,aAAY,gBAAyG,CAC1J,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,8BAA8B,MAAO,CAAE,gBAAiB,GAAc,CAAU,CAAE,EAChG,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAA0B,YAAa,CAAA,CACnC,CAAA,GACN,EAAA,EAAA,KAAA,CAAC,OAAD,CAAM,UAAU,8BAAhB,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAQ,CAAoB,CAAA,GAC5B,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,CAAa,CAAA,CAChB,CACH,CAAA,CAAA,GAET,CAEA,SAAS,GAAa,CAAE,cAA+C,CAQrE,OAPI,IAAe,cAEf,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,cAAY,OAAO,KAAK,eAAe,QAAQ,YAClD,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,EAAE,0iCAA4iC,CAAA,CACjjC,CAAA,GAGF,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,CAAA,CACvB,CAEA,SAAS,GAAc,EAAoB,CACzC,MAAQ,CAAE,WAAY,UAAW,QAAS,UAAW,UAAW,UAAW,kBAAmB,SAAU,EAA6B,IAAe,SACtJ,CCjCA,MAAM,GAAiB,IAAI,IAAyB,CAClD,yBACA,wBACA,WACA,WACA,qBACF,CAAC,EAgBY,IAAA,EAAaC,EAAAA,WAAAA,CAA8C,SACtE,CAAE,gBAAe,aAAY,WAC7B,EACA,CACA,IAAM,GAAA,EAAYC,EAAAA,QAAAA,KAAc,EAAuB,EAAQ,MAAM,EAAG,CAAC,EAAQ,MAAM,CAAC,EAClF,CAAE,YAAa,EACf,EAAe,EAAQ,cAAgB,QACvC,GAAA,EAAYC,EAAAA,OAAAA,CAA0B,IAAI,EAC1C,GAAA,EAAaA,EAAAA,OAAAA,CAA2B,IAAI,EAC5C,GAAA,EAAiBA,EAAAA,OAAAA,CAAgC,IAAA,EAAS,EAC1D,GAAA,EAAkBA,EAAAA,OAAAA,CAAO,CAAC,EAC1B,GAAA,EAAiBA,EAAAA,OAAAA,CAAuC,IAAA,EAAS,EACjE,GAAA,EAAkBA,EAAAA,OAAAA,CAAO,EAAK,EAC9B,GAAA,EAAoBA,EAAAA,OAAAA,CAAO,EAAK,EAChC,GAAA,EAAqBA,EAAAA,OAAAA,CAA2B,IAAA,EAAS,EACzD,GAAA,EAAwBA,EAAAA,OAAAA,CAA2B,IAAA,EAAS,EAC5D,GAAA,EAAeA,EAAAA,OAAAA,CAAwC,IAAA,EAAS,EAChE,CAAC,EAAM,IAAA,EAAWC,EAAAA,SAAAA,CAAS,EAAK,EAChC,CAAC,EAAY,IAAA,EAAiBA,EAAAA,SAAAA,CAAqB,EACnD,CAAC,GAAW,KAAA,EAAgBA,EAAAA,SAAAA,CAA8B,CAAC,CAAC,EAC5D,CAAC,GAAY,IAAA,EAAiBA,EAAAA,SAAAA,CAAuC,CAAC,CAAC,EACvE,CAAC,GAAQ,KAAA,EAAaA,EAAAA,SAAAA,CAAiB,SAAS,EAChD,CAAC,GAAQ,KAAA,EAAaA,EAAAA,SAAAA,CAAS,EAAE,EACjC,CAAC,GAAc,KAAA,EAAmBA,EAAAA,SAAAA,CAAS,EAAE,EAC7C,CAAC,GAAe,IAAA,EAAoBA,EAAAA,SAAAA,CAAiB,EACrD,CAAC,GAAkB,KAAA,EAAuBA,EAAAA,SAAAA,CAAS,EAAK,EACxD,CAAC,GAAkB,KAAA,EAAuBA,EAAAA,SAAAA,CAAiB,EAC3D,CAAC,EAAkB,IAAA,EAAuBA,EAAAA,SAAAA,CAAiB,EAC3D,CAAC,GAAQ,KAAA,EAAaA,EAAAA,SAAAA,CAAS,EAAE,EAEjC,GAAY,EAAQ,QAE1B,SAAS,GAAS,EAA0B,EAAU,EAAY,CAChE,GAAI,EAAe,UAAY,EAAM,OACrC,IAAM,EAAQC,EAAAA,oCAAoC,MAAM,CACtD,KAAM,cACN,OACA,aAAc,EAAe,QAC7B,WAAY,CACd,CAAC,EACD,EAAe,QAAU,EACzB,KAAY,CAAK,EACjB,EAAQ,eAAe,GAAY,CAAK,CAAC,CAC3C,CAEA,SAAS,GAAiB,EAAkB,CAC1C,EAAc,CAAI,EAClB,GAAU,YAAY,EACtB,IAAM,EAAW,GAAG,EAAK,GAAG,GAAG,EAAK,MAAM,GAAG,EAAK,YAMlD,GALI,EAAsB,UAAY,IACpC,EAAsB,QAAU,EAChC,EAAQ,qBAAqB,CAAI,GAEnC,GAAS,EAAK,MAAO,CAAI,EACrB,EAAK,QAAU,UAAY,CAAC,EAAkB,QAAS,CACzD,EAAkB,QAAU,GAC5B,IAAM,EAAQC,EAAAA,iCAAiC,MAAM,CAAE,KAAM,UAAW,WAAY,CAAK,CAAC,EAC1F,KAAY,CAAK,EACjB,EAAQ,YAAY,GAAY,CAAK,CAAC,CACxC,CACA,IAAI,EAAK,QAAU,oBAAsB,EAAK,QAAU,oBAClD,EAAmB,UAAY,EAAU,CAC3C,EAAmB,QAAU,EAC7B,IAAM,EAAQC,EAAAA,iCAAiC,MAAM,CAAE,KAAM,UAAW,WAAY,CAAK,CAAC,EAC1F,KAAY,CAAK,EACjB,EAAQ,YAAY,GAAY,CAAK,CAAC,CACxC,CAEJ,CAEA,SAAS,GAAU,EAAgB,CACjC,IAAM,EAAa,EAAwB,EAAS,EAAO,CACzD,GAAI,IAAe,IAAA,GAAY,CAAC,EAAI,CAAE,YAAW,EACjD,GAAI,EAAe,UAAY,IAAA,GAAY,CAAC,EAAI,CAAE,KAAM,EAAe,OAAQ,CACjF,CAAC,EACD,EAAa,QAAU,EACvB,GAAgB,aAAiBC,EAAAA,EAC7B,EAAU,SAAS,EAAM,SAAS,MAAM,IAAI,EAC5C,aAAiBC,EAAAA,EACf,EAAS,eACT,aAAiBC,EAAAA,EACf,EAAS,cACT,aAAiB,MACf,EAAM,QACN,EAAS,YAAY,EAC/B,GAAU,EAAE,CACd,CAEA,eAAe,IAAO,CACpB,IAAM,EAAS,EAAE,EAAgB,QACjC,GAAgB,EAAE,EAClB,GAAU,EAAS,iBAAiB,EACpC,GAAU,SAAS,EACnB,GAAS,UAAW,IAAA,EAAS,EAC7B,GAAI,CACF,GAAM,CAAC,EAAkB,GAAkB,MAAM,QAAQ,IAAI,CAC3D,EAAQ,OAAO,cAAc,EAAQ,YAAY,EACjD,EAAQ,OAAO,cAAc,CAC/B,CAAC,EACD,GAAI,IAAW,EAAgB,QAAS,OACxC,IAAI,EAAO,EAAiB,WAI5B,GAHA,EAAc,CAAI,EAClB,GAAa,EAAe,SAAS,EACrC,EAAc,CAAC,CAAC,EACZ,EAAK,QAAU,aAAe,EAAK,QAAU,qBAAsB,CACrE,GAAU,oBAAoB,EAC9B,GAAU,EAAE,EACZ,GAAS,qBAAsB,CAAI,EACnC,GAAI,CACF,IAAM,EAAY,MAAM,EAAQ,OAAO,eAAe,EAAQ,YAAY,EAC1E,GAAI,IAAW,EAAgB,QAAS,OACxC,EAAO,EAAU,WACjB,EAAc,EAAU,UAAU,CACpC,MAAQ,CACN,GAAU,EAAS,oBAAoB,CACzC,CACF,CACI,EAAc,YAAY,OAAS,UAAY,EAAK,QAAU,sBAIhE,GAAO,MAHc,EAAQ,OAAO,yBAAyB,EAAQ,aAAc,CACjF,UAAW,EAAU,EAAY,eAAe,CAClD,CAAC,EAAA,CACa,YAEhB,GAAU,EAAE,EACZ,GAAiB,CAAI,CACvB,OAAS,EAAO,CACV,IAAW,EAAgB,SAAS,GAAU,CAAK,CACzD,CACF,CAEA,SAAS,GAAU,EAAqC,CACtD,GAAI,EAAgB,QAAS,OAC7B,EAAgB,QAAU,GAC1B,IAAM,EAAQC,EAAAA,+BAA+B,MAAM,CACjD,KAAM,QACN,UACA,QAAS,GAAe,EAAY,EAAa,OAAO,EACxD,aACA,KAAM,EAAe,QACrB,MAAO,EAAa,OACtB,CAAC,EACD,KAAY,CAAK,EACjB,EAAQ,UAAU,GAAY,CAAK,CAAC,CACtC,CAEA,SAAS,GAAM,EAAsC,eAAgB,CAC9D,IACL,EAAgB,SAAW,EAC3B,EAAQ,EAAK,EACT,IAAiB,SAAW,EAAU,SAAS,MAAM,EAAU,QAAQ,MAAM,EACjF,GAAU,CAAO,GACJ,EAAQ,OAAO,cAAc,aAClC,YAAc,WAAA,KAAkB,CAClC,EAAe,SAAS,aAAa,EAAe,QAAQ,MAAM,CACxE,EAAG,CAAC,EACN,CAEA,SAAS,IAAe,CACtB,GAAI,EAAQ,iBAAmB,IAAA,GAAW,CACxC,GAAM,cAAc,EACpB,MACF,CACA,IAAM,EAAQC,EAAAA,+BAA+B,MAAM,CACjD,KAAM,gBACN,aACA,KAAM,EAAe,SAAW,SAClC,CAAC,EACD,KAAY,CAAK,EACjB,EAAQ,eAAe,GAAY,CAAK,CAAC,CAC3C,CAEA,eAAe,GAAY,EAAuB,CAChD,IAAM,EAAS,GAAW,EAAQ,OAAO,cAAc,cACnD,aAAkB,aAAe,IAAW,EAAQ,OAAO,cAAc,OAC3E,EAAe,QAAU,GAE3B,EAAe,QAAU,IAAA,GACzB,EAAgB,QAAU,GAC1B,EAAkB,QAAU,GAC5B,EAAmB,QAAU,IAAA,GAC7B,EAAa,QAAU,IAAA,GACvB,EAAQ,EAAI,EACZ,MAAM,GAAK,EACX,MAAM,GAAW,EAAQ,OAAO,cAAc,WAAW,CAC3D,EAEA,EAAA,EAAA,oBAAA,CAAoB,OAAY,CAAE,SAAO,KAAM,EAAY,EAAE,GAE7D,EAAA,EAAA,UAAA,KAAgB,CACd,IAAM,EAAS,EAAU,QACrB,IAAiB,SAAW,IAAW,OACvC,GAAQ,CAAC,EAAO,MAAM,EAAO,UAAU,EACvC,CAAC,GAAQ,EAAO,MAAM,EAAO,MAAM,EACzC,EAAG,CAAC,EAAM,CAAY,CAAC,GAEvB,EAAA,EAAA,UAAA,KAAgB,CACd,GAAI,CAAC,GAAQ,IAAiB,QAAS,OACvC,IAAM,EAAQ,0BAA4B,EAAW,SAAS,MAAM,CAAC,EACrE,UAAa,qBAAqB,CAAK,CACzC,EAAG,CAAC,EAAM,GAAQ,GAAY,MAAO,CAAY,CAAC,GAElD,EAAA,EAAA,UAAA,KAAgB,CACd,GAAI,CAAC,GAAQ,IAAe,IAAA,IAAa,CAAC,GAAe,IAAI,EAAW,KAAK,EAAG,OAChF,IAAM,EAAQ,WAAW,SAAY,CACnC,GAAI,CAEF,IAAM,GAAO,MADQ,EAAQ,OAAO,cAAc,EAAQ,YAAY,EAAA,CAClD,WAChB,GAAG,EAAK,MAAM,GAAG,EAAK,aAAgB,GAAG,EAAW,MAAM,GAAG,EAAW,aAC1E,GAAiB,CAAI,CAEzB,MAAQ,CAER,CACF,EAAG,IAAgB,EACnB,UAAa,aAAa,CAAK,CACjC,EAAG,CAAC,EAAY,EAAM,EAAQ,OAAQ,EAAQ,YAAY,CAAC,EAE3D,eAAe,GAAU,EAAc,EAAmC,CACxE,EAAiB,CAAI,EACrB,GAAgB,EAAE,EAClB,GAAI,CACF,GAAiB,MAAM,EAAO,CAAC,CACjC,OAAS,EAAO,CACd,GAAU,CAAK,CACjB,QAAU,CACR,EAAiB,IAAA,EAAS,CAC5B,CACF,CAEA,eAAe,GAAe,EAAoB,CAChD,MAAM,GAAU,kBAAmB,SAAY,CAC7C,IAAM,EAAS,MAAM,EAAQ,OAAO,eAAe,EAAQ,aAAc,CACvE,aACA,UAAW,EAAU,EAAY,UAAU,GAAY,CACzD,CAAC,EAED,OADI,EAAc,YAAY,OAAS,UAC/B,MAAM,EAAQ,OAAO,yBAAyB,EAAQ,aAAc,CAC1E,UAAW,EAAU,EAAY,QAAQ,CAC3C,CAAC,EAAA,CAAG,WAHoD,EAAO,UAIjE,CAAC,CACH,CA+BA,IAAM,IAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAa,QAAS,CA5BjC,oBACA,cACA,gBACA,aACA,mBACA,gBACA,aACA,WACA,UACA,iBACA,aACA,UACA,UACA,uBACA,sBACA,aACA,aACA,uBACA,oBACA,UACA,SACA,QACA,oBACA,aACA,kBACA,YAGuC,EAAe,YAAa,CAAA,EAC/D,IACJ,EAAA,EAAA,KAAA,CAAC,GAAD,CAAS,gBAAiB,EAAc,gBAAiB,QAAS,IAAiB,QAAU,GAAe,IAAA,GAA5G,SAAA,CACG,GACA,IAAe,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,gBAAgB,KAAK,QAAS,SAAA,EAAS,YAAY,EAAY,CAAO,CAAA,EAAI,KACxG,IAAS,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,iBAAiB,KAAK,SAAU,SAAA,EAAU,CAAA,EAAI,IAC9D,IAGX,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,cAAf,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,UAAU,kBAAkB,OAAQ,EAAQ,eAAiB,GAAO,QAAU,GAAU,KAAK,GAAY,EAAM,aAAa,EACjI,SAAA,EAAQ,cAAgB,EAAS,oBAC5B,CAAA,EACP,IAAiB,UAChB,EAAA,EAAA,IAAA,CAAC,UAAD,CAAS,aAAY,EAAS,qBAAsB,UAAU,wCAAwC,OAAQ,CAAC,EAC5G,SAAA,EACM,CAAA,GAET,EAAA,EAAA,IAAA,CAAC,SAAD,CACE,aAAY,EAAS,qBACrB,UAAU,iBACV,SAAW,GAAU,CAAE,EAAM,eAAe,EAAG,GAAM,QAAQ,CAAE,EAC/D,IAAK,EAEJ,SAAA,EACK,CAAA,CAEP,GAET,CAAC,EA+BD,SAAS,GAAY,CAAE,UAAS,cAAkH,CAChJ,GAAI,EAAQ,SAAW,UACrB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,qBAAkC,aAAY,KAAM,EAAQ,SAAS,kBAAmB,OAAQ,EAAQ,SAAS,iBAAoB,CAAA,EAExL,GAAI,EAAQ,SAAW,qBAAsB,CAC3C,IAAM,EAAS,EAAQ,YAAY,OAAO,QAAU,GACpD,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,eAAe,CAAM,EAAe,aAAY,KAAM,EAAQ,SAAS,4BAA6B,OAAQ,EAAQ,SAAS,oBAAuB,CAAA,CACvM,CAeA,OAdI,EAAQ,SAAW,6BACd,EAAA,EAAA,IAAA,CAAC,GAAD,CAA6B,UAAqB,YAAa,CAAA,EAEpE,EAAQ,aAAe,IAAA,IAEvB,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAS,KAAM,EAAQ,SAAS,cAAe,UAAA,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,IAAK,EAAa,SAAA,EAAQ,SAAS,oBAA2B,CAAA,CAAU,CAAA,GAC7H,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,KAAK,EAAQ,KAAK,EAAI,SAAA,EAAQ,SAAS,iBAA0B,CAAA,CAChF,CAAA,CAAA,EAGV,EAAQ,SAAW,sBAAwB,EAAQ,WAAW,WAAa,IAAA,IACtE,EAAA,EAAA,IAAA,CAAC,GAAD,CAA4B,UAAqB,YAAa,CAAA,GAEhE,EAAA,EAAA,IAAA,CAAC,GAAD,CAA2B,UAAqB,YAAa,CAAA,CACtE,CAEA,SAAS,GAAe,CAAE,UAAS,aAAY,OAAM,UAAyJ,CAC5M,OACE,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAW,CAAA,GACX,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAAK,SAAA,CAAY,CAAA,GAC5E,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAgB,SAAA,CAAQ,CAAA,CAClC,KACL,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAO,CAAA,EAAE,CAAY,GACpD,CAAA,CAAA,CAEd,CAEA,SAAS,GAAkB,CAAE,UAAS,cAAkH,CACtJ,IAAM,EAAS,EAAQ,YAAY,OAAO,QAAU,GAC9C,EAAQ,EAAQ,OAAO,KAAK,CAAC,CAAC,YAAY,EAC1C,EAAe,IAAI,IAAI,EAAQ,WAAW,KAAK,CAAE,cAAe,EAAS,EAAE,CAAC,EAE5E,EADS,CAAC,GAAG,EAAQ,SAAS,CAAC,CAAC,MAAM,EAAG,IAAM,OAAO,EAAa,IAAI,EAAE,EAAE,CAAC,EAAI,OAAO,EAAa,IAAI,EAAE,EAAE,CAAC,GAAK,EAAE,KAAK,cAAc,EAAE,IAAI,CAC7H,CAAC,CAAC,OAAQ,GAAa,EAAS,KAAK,YAAY,CAAC,CAAC,SAAS,CAAK,CAAC,EACxF,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,gBAAf,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAA,SAAS,cAAqB,CAAA,GAC9B,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EACE,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAA+D,oBAAkB,EAAO,GAAK,CAC7F,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,2DAA4D,CAAA,CACrF,KACL,EAAA,EAAA,KAAA,CAAC,QAAD,CAAO,UAAU,iBAAjB,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAa,CAAA,GACb,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,0BAA0B,SAAA,kBAAsB,CAAA,GAChE,EAAA,EAAA,IAAA,CAAC,QAAD,CAAO,SAAW,GAAU,EAAQ,UAAU,EAAM,cAAc,KAAK,EAAG,YAAa,UAAU,EAAQ,UAAU,OAAO,YAAa,KAAK,SAAS,MAAO,EAAQ,MAAS,CAAA,CACxK,KACP,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,wBACZ,SAAA,EAAS,IAAK,IACb,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,SAAU,EAAQ,gBAAkB,IAAA,GAA6B,YAAe,KAAK,EAAQ,eAAe,EAAS,EAAE,EAAG,KAAK,SAAvI,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,8BAA+B,SAAA,EAAS,KAAK,MAAM,EAAG,CAAC,CAAC,CAAC,YAAY,CAAQ,CAAA,GAC7F,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAS,IAAW,CAAA,EAC1B,EAAa,IAAI,EAAS,EAAE,GAAI,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAO,WAAgB,CAAA,EAAI,IACtD,CAJoD,EAAA,EAAS,EAI7D,CACT,CACE,CAAA,CACF,GAET,CAEA,SAAS,GAAiB,CAAE,UAAS,cAAkH,CACrJ,IAAM,EAAa,EAAQ,WAC3B,GAAI,EAAQ,gBAAkB,QAC5B,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,iBAAiB,EAAW,OAAO,MAAM,EAAe,aAAY,KAAM,EAAQ,SAAS,yBAA0B,OAAQ,EAAQ,SAAS,uBAA0B,CAAA,EAE3N,GAAI,EAAQ,gBAAkB,QAAU,EAAQ,gBAAkB,UAChE,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,iBAAiB,EAAW,OAAO,MAAM,EAAe,aAAY,KAAM,EAAQ,SAAS,eAAgB,OAAQ,EAAQ,SAAS,cAAiB,CAAA,EAExM,OAAQ,EAAW,MAAnB,CACE,IAAK,oBAAqB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAA6B,UAAqB,YAAa,CAAA,EAChG,IAAK,wBAAyB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAA+B,UAAqB,YAAa,CAAA,EACtG,IAAK,yBAA0B,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAA+B,UAAqB,YAAa,CAAA,EACvG,IAAK,aAAc,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAoB,UAAqB,YAAa,CAAA,EAChF,IAAK,WAAY,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,iBAAiB,EAAW,OAAO,MAAM,EAAe,aAAY,KAAM,EAAQ,SAAS,eAAgB,OAAQ,EAAQ,SAAS,cAAiB,CAAA,EACvN,IAAK,wBAAyB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAqB,UAAqB,YAAa,CAAA,EAC5F,IAAK,WAAY,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAoB,UAAqB,YAAa,CAAA,EAC9E,IAAK,kBAAmB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAwB,UAAqB,YAAa,CAAA,EACzF,IAAK,sBAAuB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAsB,UAAqB,YAAa,CAAA,EAC3F,IAAK,SAAU,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAkB,UAAqB,YAAa,CAAA,EAC1E,IAAK,mBAAoB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAkB,UAAqB,aAAY,QAAS,EAAW,OAAU,CAAA,EACjH,IAAK,kBAAmB,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAkB,UAAqB,YAAa,CAAA,EACnF,IAAK,YAAa,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAoB,UAAqB,YAAa,CAAA,EAC/E,QAAS,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAgB,QAAS,EAAQ,SAAS,qBAAkC,aAAY,KAAM,EAAQ,SAAS,aAAa,EAAW,KAAK,EAAG,OAAQ,EAAQ,SAAS,iBAAoB,CAAA,CAC9M,CACF,CAEA,SAAS,GAAmB,CAAE,UAAS,cAA2B,CAChE,IAAM,EAAa,EAAQ,WACrB,EAAW,EAAW,SACtB,EAAS,GAAgB,CAAQ,EACjC,EAAU,IAAW,eAAiB,IAAW,4BACvD,OACE,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,OAAQ,EAAW,OAAO,OAAQ,WAAY,EAAS,GAAI,aAAc,EAAS,IAAO,CAAA,GACvG,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EACE,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAA+D,gBAAc,EAAS,KAAK,cAAY,EAAQ,cAAc,iBAAmB,UAAe,CAC/J,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,wEAAyE,CAAA,CAClG,IACJ,GAAW,CAAC,EAAQ,kBACnB,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,kBAAf,SAAA,EACE,EAAA,EAAA,KAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,QAAS,YAAe,KAAK,GAAW,CAAO,EAA1F,SAAA,CAA6F,iBAC5E,EAAS,IAClB,CACR,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,EAAQ,oBAAoB,EAAI,EAAG,QAAQ,QAAQ,SAAA,qBAA2B,CAAA,CAClG,CAEL,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAA6B,UAAiB,SAAkB,UAAW,CAAA,CAErE,CAAA,CAAA,CAEd,CAEA,SAAS,GAAmB,CAAE,UAAS,SAAQ,YAA8H,CAC3K,IAAM,EAAiB,GAA0B,EAAS,EAAE,EAC5D,OACE,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wCAAf,SAAA,CACG,IAAmB,IAAA,IAAa,IAAW,UAAW,EAAA,EAAA,IAAA,CAAC,GAAD,CAAyB,UAAS,KAAM,EAA0B,UAAW,CAAA,EAAI,KACvI,EAAS,iBAAmB,kBAAmB,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,KAAK,GAAmB,CAAO,EAAI,SAAA,EAAQ,SAAS,oBAAoB,EAAS,IAAI,CAAU,CAAA,EAAI,MAC1K,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,SAAU,YAAe,KAAK,EAAQ,UAAU,SAAU,UAAa,MAAM,EAAQ,QAAQ,OAAO,yBAAyB,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,QAAQ,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,QAAS,EAAiB,YAAc,UACjT,SAAA,EAAQ,SAAS,cACZ,CAAA,EACP,EAAQ,kBAAmB,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,EAAQ,oBAAoB,EAAK,EAAG,QAAQ,QAAQ,SAAA,MAAY,CAAA,EAAI,IACpH,GAET,CAEA,SAAS,GAAe,CAAE,UAAS,OAAM,YAAiH,CACxJ,IAAM,EAAS,GAAiB,EAAM,EAAQ,QAAQ,EACtD,eAAe,EAAO,EAAmC,CACvD,EAAM,eAAe,EACrB,IAAM,EAAS,OAAO,YAAY,IAAI,SAAS,EAAM,aAAa,CAAC,CAAC,QAAQ,CAAC,EACvE,EAAQC,EAAAA,mCAAmC,MAAM,CACrD,WAAY,EAAS,GACrB,YAAa,CAAE,OAAM,GAAG,CAAO,EAC/B,UAAW,EAAU,EAAQ,WAAY,YAAY,CACvD,CAAC,EACD,MAAM,EAAQ,UAAU,aAAc,UAAa,MAAM,EAAQ,QAAQ,OAAO,wBAAwB,EAAQ,QAAQ,aAAc,CAAK,EAAA,CAAG,UAAU,CAC1J,CACA,OACE,EAAA,EAAA,KAAA,CAAC,OAAD,CAAM,UAAU,eAAe,SAAW,GAAU,KAAK,EAAO,CAAK,EAArE,SAAA,CACG,EAAO,IAAK,IAAU,EAAA,EAAA,KAAA,CAAC,QAAD,CAAA,SAAA,EAAwB,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAM,KAAY,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAO,KAAM,EAAM,KAAM,SAAA,GAAS,KAAM,EAAM,MAAQ,MAAS,CAAA,CAAQ,CAAA,EAA7G,EAAM,IAAuG,CAAC,GACjJ,EAAA,EAAA,KAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,aAAc,KAAK,SAA9D,SAAA,CAAuE,aAAW,EAAS,IAAa,CACpG,CAAA,CAAA,GAEV,CAEA,eAAe,GAAW,EAAsB,CAC9C,EAAQ,oBAAoB,IAAA,EAAS,EACrC,MAAM,EAAQ,UAAU,QAAS,SAAY,CAC3C,IAAM,EAAS,MAAM,EAAQ,QAAQ,OAAO,WAAW,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,OAAO,CAAE,CAAC,EAG1I,OAFA,EAAQ,oBAAoB,EAAO,gBAAgB,EACnD,EAAQ,QAAQ,OAAO,cAAc,aAAa,KAAK,EAAO,iBAAkB,SAAU,qBAAqB,EACxG,EAAO,UAChB,CAAC,CACH,CAEA,SAAS,GAAqB,CAAE,UAAS,cAA2B,CAClE,IAAM,EAAa,EAAQ,WACrB,EAAW,EAAW,SAC5B,OACE,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EACE,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,OAAQ,EAAW,OAAO,OAAQ,WAAY,EAAS,GAAI,aAAc,EAAS,IAAO,CAAA,GACvG,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAA+D,wBAAsB,EAAS,IAAS,CAAC,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,wDAAyD,CAAA,CAAM,KAC1O,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,kBAAf,SAAA,CACG,EAAQ,kBAAmB,EAAA,EAAA,KAAA,CAAC,IAAD,CAAG,UAAU,yCAAyC,KAAM,EAAQ,iBAAkB,IAAI,aAAa,OAAO,SAA9G,SAAA,CAAuH,aAAW,EAAS,IAAQ,CAAI,CAAA,EAAA,MACnL,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,UAAW,YAAe,KAAK,EAAQ,UAAU,UAAW,UAAa,MAAM,EAAQ,QAAQ,OAAO,cAAc,EAAQ,QAAQ,YAAY,EAAA,CAAG,UAAU,EAAG,SAAA,2BAAiC,CAAA,CACzO,GACG,CAAA,CAAA,CAEd,CAEA,eAAe,GAAmB,EAAsB,CAClD,EAAQ,QAAQ,wBAA0B,IAAA,IAC9C,MAAM,EAAQ,UAAU,iBAAkB,SAAY,CACpD,IAAM,EAAS,MAAM,EAAQ,QAAQ,OAAO,mBAAmB,EAAQ,QAAQ,aAAc,CAAE,GAAG,EAAQ,QAAQ,sBAAwB,UAAW,EAAU,EAAQ,WAAY,gBAAgB,CAAE,CAAC,EAGtM,OAFA,EAAQ,oBAAoB,EAAO,UAAU,EAC7C,EAAQ,QAAQ,OAAO,cAAc,aAAa,KAAK,EAAO,WAAY,SAAU,qBAAqB,EAClG,EAAO,UAChB,CAAC,CACH,CAEA,SAAS,GAAqB,CAAE,UAAS,cAA2B,CAClE,IAAM,EAAW,EAAQ,WAAY,SACrC,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EAAU,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,OAAQ,EAAQ,WAAY,OAAO,OAAQ,WAAY,EAAS,GAAI,aAAc,EAAS,IAAO,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAA+D,eAAa,EAAS,IAAS,CAAC,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,8DAA+D,CAAA,CAAM,KAAC,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,kBAAf,SAAA,CAAkC,EAAQ,kBAAmB,EAAA,EAAA,KAAA,CAAC,IAAD,CAAG,UAAU,yCAAyC,KAAM,EAAQ,iBAAkB,IAAI,aAAa,OAAO,SAA9G,SAAA,CAAuH,QAAM,EAAS,IAAQ,CAAI,CAAA,EAAA,MAAK,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,KAAK,EAAQ,UAAU,sBAAuB,UAAa,MAAM,EAAQ,QAAQ,OAAO,8BAA8B,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,qBAAqB,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,4BAAkC,CAAA,CAAM,GAAW,CAAA,CAAA,CACj3B,CAEA,SAAS,GAAU,CAAE,UAAS,cAA2B,CACvD,GAAM,CAAC,EAAgB,IAAA,EAAqBT,EAAAA,SAAAA,CAA4E,UAAU,EAClI,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,wBAAoC,aAAY,KAAK,iGAA5F,SAAA,EAA6L,EAAA,EAAA,KAAA,CAAC,QAAD,CAAO,UAAU,gBAAjB,SAAA,EAAiC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAM,wBAA4B,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,SAAD,CAAQ,SAAW,GAAU,EAAkB,EAAM,cAAc,KAA8B,EAAG,MAAO,EAA3G,SAAA,EAA2H,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,MAAM,WAAW,SAAA,2BAAiC,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,MAAM,6BAA6B,SAAA,4BAAkC,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,MAAM,sBAAsB,SAAA,oCAA0C,CAAA,CAAS,CAAQ,CAAA,CAAA,CAAC,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,OAAQ,YAAe,KAAK,EAAQ,UAAU,OAAQ,UAAa,MAAM,EAAQ,QAAQ,OAAO,YAAY,EAAQ,QAAQ,aAAc,CAAE,iBAAgB,UAAW,QAAS,UAAW,EAAU,EAAQ,WAAY,MAAM,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,oBAA0B,CAAA,CAAc,GACn7B,CAEA,SAAS,GAAW,CAAE,UAAS,cAA2B,CACxD,IAAM,EAAO,EAAQ,WAAY,KAC3B,CAAC,EAAW,IAAA,EAAgBA,EAAAA,SAAAA,CAAS,EAAK,EAChD,GAAI,IAAS,IAAA,GAAW,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAuB,UAAqB,YAAa,CAAA,EACxF,IAAM,EAAc,EAAK,QAAQ,KAAM,GAAW,EAAO,WAAW,EACpE,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,qBAAiC,aAAY,KAAK,wDAAzF,SAAA,EAAiJ,EAAA,EAAA,IAAA,CAAC,GAAD,CAAmB,MAAO,CAAA,EAAE,GAAc,EAAA,EAAA,KAAA,CAAC,QAAD,CAAO,UAAU,gBAAjB,SAAA,EAAiC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAO,QAAS,EAAW,SAAW,GAAU,EAAa,EAAM,cAAc,OAAO,EAAG,KAAK,UAAY,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAM,8DAAkE,CAAA,CAAQ,CAAI,CAAA,EAAA,MAAK,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,SAAU,GAAe,CAAC,EAAW,QAAS,EAAQ,gBAAkB,UAAW,YAAe,KAAK,EAAQ,UAAU,UAAW,UAAa,MAAM,EAAQ,QAAQ,OAAO,YAAY,EAAQ,QAAQ,aAAc,CAAE,OAAQ,EAAK,OAAQ,iBAAkB,EAAW,UAAW,EAAU,EAAQ,WAAY,SAAS,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,iBAAuB,CAAA,CAAc,GACzyB,CAEA,SAAS,GAAU,CAAE,UAAS,cAA2B,CACvD,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAsB,UAAS,QAAS,oBAAoB,EAAQ,WAAY,OAAO,SAAsB,aAAY,KAAK,sEAA9H,SAAA,CAAqM,EAAQ,WAAY,MAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAa,KAAM,EAAQ,WAAY,IAAQ,CAAA,EAAI,MAAK,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,QAAS,YAAe,KAAK,EAAQ,UAAU,QAAS,UAAa,MAAM,EAAQ,QAAQ,OAAO,UAAU,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,OAAO,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,mBAAyB,CAAA,CAAc,GAClkB,CAEA,SAAS,GAAc,CAAE,UAAS,cAA2B,CAC3D,IAAM,EAAU,GAAiB,EAAQ,UAAW,EACpD,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,eAAe,QAAQ,wBAAoC,aAAY,KAAK,gHAAnH,SAAA,EAAmO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAsB,SAAU,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,cAAe,YAAe,KAAK,EAAQ,UAAU,cAAe,UAAa,MAAM,EAAQ,QAAQ,OAAO,uBAAuB,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,aAAa,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,uBAA6B,CAAA,CAAc,GACjlB,CAEA,SAAS,GAAY,CAAE,UAAS,cAA2B,CACzD,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,eAAe,QAAQ,yBAAqC,aAAY,KAAK,sEAApH,SAAA,EAA0L,EAAA,EAAA,IAAA,CAAC,GAAD,CAAa,QAAS,GAAiB,EAAQ,UAAW,CAAI,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,SAAU,YAAe,KAAK,EAAQ,UAAU,SAAU,UAAa,MAAM,EAAQ,QAAQ,OAAO,kBAAkB,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,QAAQ,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,oBAA0B,CAAA,CAAc,GAC/iB,CAEA,SAAS,GAAQ,CAAE,UAAS,cAA2B,CACrD,IAAM,EAAa,EAAQ,WAC3B,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EAAU,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,GAAD,CAAS,KAAK,SAAS,SAAA,8BAAqC,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAAgE,EAAW,OAAO,OAAO,eAAiB,CAAC,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,iEAAkE,CAAA,CAAM,KAAC,EAAA,EAAA,IAAA,CAAC,GAAD,CAAe,QAAS,GAAiB,CAAU,CAAI,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,EAAD,CAAQ,UAAU,qBAAqB,YAAe,EAAQ,MAAM,cAAc,EAAG,QAAQ,YAA7F,SAAA,CAAyG,WAAS,EAAQ,cAAc,iBAAmB,aAAsB,GAAW,CAAA,CAAA,CAC1kB,CAEA,SAAS,GAAQ,CAAE,UAAS,UAAS,cAAkF,CACrH,IAAM,EAAa,EAAQ,WACrB,EAAS,GAAS,OAAS,yBAA2B,EAAQ,SAAS,aAAe,GAAS,OAAS,4BAA8B,EAAQ,SAAS,gBAAkB,yCAC/K,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EAAU,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,GAAD,CAAS,KAAK,SAAS,SAAA,iBAAwB,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAA3D,SAAA,CAAgE,EAAW,OAAO,OAAO,kBAAoB,CAAC,CAAA,GAAA,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAgB,SAAA,CAAU,CAAA,CAAM,IAAE,GAAU,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,eAAe,SAAU,EAAQ,WAAa,SAAA,EAAQ,UAAiB,CAAA,EAAI,KAAM,GAAU,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,QAAS,YAAe,KAAK,EAAQ,UAAU,QAAS,UAAa,MAAM,EAAQ,QAAQ,OAAO,gBAAgB,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,OAAO,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,SAAA,kBAAwB,CAAA,EAAI,IAAe,CAAA,CAAA,CACtrB,CAEA,SAAS,GAAU,CAAE,UAAS,cAA2B,CACvD,OAAO,EAAA,EAAA,KAAA,CAAC,GAAD,CAAA,SAAA,EAAU,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,GAAD,CAAA,SAAS,WAAkB,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAAI,SAAA,sBAAwB,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAe,SAAA,yCAA0C,CAAA,CAAM,KAAC,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,EAAQ,MAAM,cAAc,EAAG,QAAQ,YAAY,SAAA,OAAa,CAAA,CAAW,CAAA,CAAA,CAC5W,CAEA,SAAS,GAAmB,CAAE,UAAS,cAA2B,CAChE,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,0BAAsC,aAAY,KAAK,0FAA0F,UAAA,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,uCAAf,SAAA,EAAsD,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,EAAQ,UAAU,YAAY,EAAG,QAAQ,YAAY,SAAA,iBAAuB,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,QAAS,EAAQ,gBAAkB,SAAU,YAAe,KAAK,EAAQ,UAAU,SAAU,UAAa,MAAM,EAAQ,QAAQ,OAAO,iBAAiB,EAAQ,QAAQ,aAAc,CAAE,UAAW,EAAU,EAAQ,WAAY,QAAQ,CAAE,CAAC,EAAA,CAAG,UAAU,EAAG,QAAQ,SAAS,SAAA,mBAAyB,CAAA,CAAM,GAAc,CAAA,CAC7pB,CAIA,SAAS,GAAY,CAAE,WAAU,UAAS,UAAS,UAAS,aAAY,QAAoI,CAC1M,IAAM,EAAW,EAAQ,YAAY,SACrC,OAAO,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,gBAAf,SAAA,CAAgC,GAAY,EAAQ,YAAa,EAAA,EAAA,IAAA,CAAC,GAAD,CAAc,OAAQ,EAAQ,WAAW,OAAO,OAAQ,WAAY,EAAS,GAAI,aAAc,EAAS,IAAO,CAAA,EAAI,KAAM,GAAU,EAAA,EAAA,IAAA,CAAC,GAAD,CAAA,SAAU,CAAiB,CAAA,EAAI,MAAK,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,wBAAf,SAAA,EAAuC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAI,UAAU,kBAAkB,IAAK,EAAY,SAAU,GAAK,SAAA,CAAY,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,eAAgB,SAAA,CAAQ,CAAA,CAAM,IAAE,CAAc,GACha,CAEA,SAAS,GAAa,CAAE,UAAS,cAA2B,CAC1D,OAAO,EAAA,EAAA,IAAA,CAAC,GAAD,CAAsB,UAAS,QAAQ,0BAAsC,aAAY,KAAK,6DAA6D,UAAA,EAAA,EAAA,IAAA,CAAC,EAAD,CAAQ,YAAe,KAAK,EAAQ,KAAK,EAAG,SAAA,oBAA0B,CAAA,CAAc,CAAA,CACxP,CAEA,SAAS,GAAY,CAAE,QAAuC,CAC5D,OAAO,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,aAAW,uBAAuB,UAAU,uBAAuB,KAAK,SAAS,SAAU,EAAG,UAAA,EAAA,EAAA,KAAA,CAAC,QAAD,CAAA,SAAA,EAAO,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,UAAO,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAI,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,QAAU,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,MAAQ,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,OAAS,CAAA,CAAK,CAAA,CAAA,CAAQ,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAQ,EAAK,QAAQ,KAAK,EAAQ,IAAU,CAAE,IAAM,EAAS,EAAO,OAAS,EAAO,OAAQ,OAAO,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAiD,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,UAAI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAW,EAAO,YAAc,sCAAwC,gBAAkB,SAAA,EAAO,MAAa,CAAA,CAAK,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,GAAQ,MAAQ,GAAU,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAQ,GAAQ,IAAY,CAAA,CAAK,CAAA,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,UAAI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,GAAQ,OAAS,GAAU,CAAA,CAAK,CAAA,CAAK,CAAA,EAA9R,GAAG,GAAQ,MAAQ,SAAS,GAAG,GAA+P,CAAE,CAAC,CAAS,CAAA,CAAQ,CAAA,CAAA,CAAM,CAAA,CACzlB,CAEA,SAAS,GAAY,CAAE,WAAuD,CAE5E,OADI,EAAQ,SAAW,GAAU,EAAA,EAAA,IAAA,CAAC,IAAD,CAAG,UAAU,gBAAgB,SAAA,iCAAkC,CAAA,GACzF,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,aAAW,cAAc,UAAU,uBAAuB,KAAK,SAAS,SAAU,EAAG,UAAA,EAAA,EAAA,KAAA,CAAC,QAAD,CAAA,SAAA,EAAO,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,UAAO,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAI,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,MAAQ,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,MAAQ,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,SAAI,OAAS,CAAA,CAAK,CAAA,CAAA,CAAQ,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAQ,EAAQ,KAAK,EAAQ,KAAU,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAmD,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,UAAI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,UAAU,sBAAuB,SAAA,EAAO,IAAW,CAAA,CAAK,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,KAAD,CAAA,UAAI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAO,IAAW,CAAA,CAAK,CAAA,GAAC,EAAA,EAAA,KAAA,CAAC,KAAD,CAAA,SAAA,EAAI,EAAA,EAAA,KAAA,CAAC,MAAD,CAAK,UAAU,uBAAf,SAAA,EAAsC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAO,KAAY,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,SAAD,CAAQ,aAAY,QAAQ,EAAO,KAAK,QAAS,YAAe,KAAK,UAAU,UAAU,UAAU,EAAO,KAAK,EAAG,KAAK,SAAS,UAAA,EAAA,EAAA,IAAA,CAAC,GAAD,CAAW,CAAA,CAAS,CAAA,CAAM,CAAC,CAAA,GAAA,EAAA,EAAA,KAAA,CAAC,QAAD,CAAA,SAAA,CAAO,OAAK,EAAO,IAAK,EAAO,WAAa,IAAA,GAAY,GAAK,eAAe,EAAO,WAAY,EAAO,SAAW,cAAgB,EAAU,CAAA,CAAA,CAAK,CAAA,CAAA,CAAK,CAAA,EAArgB,GAAG,EAAO,KAAK,GAAG,EAAO,KAAK,GAAG,GAAoe,CAAC,CAAS,CAAA,CAAQ,CAAA,CAAA,CAAM,CAAA,CACvvB,CAEA,SAAS,GAAc,CAAE,WAAuD,CAC9E,OAAO,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,yBAA0B,SAAA,EAAQ,MAAM,EAAG,CAAC,CAAC,CAAC,IAAK,IAAW,EAAA,EAAA,KAAA,CAAC,MAAD,CAAA,SAAA,EAA2C,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAO,IAAW,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,OAAD,CAAA,SAAO,EAAO,IAAW,CAAA,GAAC,EAAA,EAAA,IAAA,CAAC,QAAD,CAAA,SAAO,MAAW,CAAA,CAAM,CAAA,EAA7G,GAAG,EAAO,KAAK,GAAG,EAAO,MAAoF,CAAC,CAAO,CAAA,CACrN,CAEA,SAAS,GAAS,CAAE,YAA8C,CAAE,OAAO,EAAA,EAAA,IAAA,CAAC,MAAD,CAAK,UAAU,mBAAoB,UAAc,CAAA,CAAE,CAE9H,SAAS,GAAiB,EAA8C,CAAE,OAAO,EAAW,iBAAiB,SAAW,EAAW,OAAO,OAAQ,CAClJ,SAAS,GAAgB,EAAqD,CAAE,OAAO,EAAS,8BAA8B,EAAG,CACjI,SAAS,GAA0B,EAAsD,CAAE,OAAO,OAAO,UAAU,eAAe,KAAKU,EAAAA,+BAAgC,CAAU,EAAIA,EAAAA,+BAA+B,GAA6D,IAAA,EAAU,CAC3R,SAAS,GAAiB,EAA4B,EAAiJ,CACrM,OAAQ,EAAR,CACE,IAAK,YAAa,MAAO,CAAC,CAAE,KAAM,QAAS,MAAO,EAAS,cAAe,KAAM,UAAW,CAAC,EAC5F,IAAK,aAAc,MAAO,CAAC,CAAE,KAAM,QAAS,MAAO,EAAS,gBAAiB,EAAG,CAAE,KAAM,SAAU,MAAO,EAAS,eAAgB,KAAM,UAAW,CAAC,EACpJ,IAAK,oBAAqB,MAAO,CAAC,CAAE,KAAM,WAAY,MAAO,EAAS,aAAc,EAAG,CAAE,KAAM,WAAY,MAAO,EAAS,cAAe,KAAM,UAAW,CAAC,EAC5J,IAAK,gBAAiB,MAAO,CAAC,CAAE,KAAM,YAAa,MAAO,EAAS,cAAe,EAAG,CAAE,KAAM,QAAS,MAAO,EAAS,cAAe,KAAM,UAAW,CAAC,EACvJ,IAAK,iBAAkB,MAAO,CAAC,CAAE,KAAM,WAAY,MAAO,EAAS,aAAc,EAAG,CAAE,KAAM,QAAS,MAAO,EAAS,cAAe,KAAM,UAAW,CAAC,EACtJ,IAAK,MAAO,MAAO,CAAC,CAAE,KAAM,WAAY,MAAO,EAAS,cAAe,EAAG,CAAE,KAAM,iBAAkB,MAAO,EAAS,mBAAoB,EAAG,CAAE,KAAM,oBAAqB,MAAO,EAAS,uBAAwB,KAAM,UAAW,EAAG,CAAE,KAAM,cAAe,MAAO,EAAS,iBAAkB,KAAM,UAAW,CAAC,EAC/S,IAAK,cAAe,MAAO,CAAC,CAAE,KAAM,QAAS,MAAO,EAAS,kBAAmB,EAAG,CAAE,KAAM,aAAc,MAAO,EAAS,mBAAoB,KAAM,UAAW,CAAC,EAC/J,IAAK,cAAe,MAAO,CAAC,CAAE,KAAM,QAAS,MAAO,EAAS,mBAAoB,EAAG,CAAE,KAAM,SAAU,MAAO,EAAS,wBAAyB,KAAM,UAAW,EAAG,CAAE,KAAM,eAAgB,MAAO,EAAS,qBAAsB,KAAM,UAAW,EAAG,CAAE,KAAM,eAAgB,MAAO,EAAS,kBAAmB,EAAG,CAAE,KAAM,YAAa,MAAO,EAAS,uBAAwB,KAAM,gBAAiB,CAAC,EACxY,IAAK,SAAU,MAAO,CAAC,CAAE,KAAM,WAAY,MAAO,EAAS,mBAAoB,EAAG,CAAE,KAAM,WAAY,MAAO,EAAS,mBAAoB,EAAG,CAAE,KAAM,QAAS,MAAO,EAAS,oBAAqB,KAAM,UAAW,CAAC,EACrN,IAAK,qBAAsB,MAAO,CAAC,CAAE,KAAM,WAAY,MAAO,EAAS,uBAAwB,EAAG,CAAE,KAAM,eAAgB,MAAO,EAAS,4BAA6B,KAAM,UAAW,CAAC,CAC3L,CACF,CACA,SAAS,EAAU,EAAoB,EAA2B,CAAE,MAAO,GAAG,EAAW,GAAG,EAAU,GAAG,WAAW,QAAQ,aAAa,GAAK,KAAK,IAAI,GAAI,CAC3J,SAAS,GAAe,EAAoC,EAA4F,CAA4K,OAAtK,GAAY,QAAU,SAAiB,UAAe,GAAS,GAAY,QAAU,oBAAsB,GAAY,QAAU,kBAA0B,UAAkB,GAAY,QAAU,YAAc,YAAc,YAAa,CAC1Y,SAAS,GAAiD,EAA2B,CAAE,GAAM,CAAE,KAAM,EAAO,GAAG,GAAY,EAAO,OAAO,CAAQ,CACjJ,SAAS,GAAW,EAAoC,CAAE,OAAO,IAAI,QAAS,GAAY,CAAM,GAAM,sBAAuB,EAAK,0BAA4B,EAAQ,CAAC,EAAQ,WAAW,EAAS,CAAC,CAAE,CAAC,CAAE,CC3qBzM,MCEM,GAAuB,CAC3B,QAAS,KACT,KAAM,OACN,UAAW,QACX,OAAQ,SACR,QAAS,UACT,UAAW,eACX,KAAM,OACN,MAAO,QACP,OAAQ,SACR,SAAU,aACZ,EAEA,SAAgB,GAAgB,EAAmB,EAAqC,CACtF,GAAM,CAAE,SAAU,EAClB,EAAK,QAAQ,UAAY,EAAM,UAE/B,GAAa,EAAM,QAAS,EAAM,KAAK,EACvC,GAAa,EAAM,OAAQ,EAAM,IAAI,EAErC,GAAY,EAAM,qBAAsB,EAAM,QAAQ,EACtD,GAAY,EAAM,yBAA0B,GAAG,EAAM,QAAQ,GAAG,EAChE,GAAY,EAAM,0BAA2B,GAAG,EAAM,eAAe,GAAG,EACxE,GAAY,EAAM,0BAA2B,GAAG,EAAM,eAAe,GAAG,EACxE,GAAY,EAAM,yBAA0B,GAAG,EAAM,cAAc,GAAG,EACtE,GAAY,EAAM,wBAAyB,EAAM,UAAU,EAC3D,GAAY,EAAM,wBAAyB,OAAO,EAAM,UAAU,CAAC,EACnE,GAAY,EAAM,6BAA8B,OAAO,EAAM,cAAc,CAAC,EACxE,EAAW,sBAAwB,IAAA,IACrC,GAAY,EAAM,4BAA6B,EAAW,mBAAmB,CAEjF,CAEA,SAAgB,GACd,EACA,EACQ,CACR,OAAO,EAAS,QAAQ,cAAgB,GAAgB,EAAa,IAAgB,CAAW,CAClG,CAEA,SAAS,GACP,EACA,EACA,EACM,CACN,IAAK,GAAM,CAAC,EAAO,KAAU,OAAO,QAAQ,CAAO,EAIjD,GAAY,EAAM,aAAa,EAAK,GAAG,GAAqB,KAAU,CAAK,CAE/E,CAEA,SAAS,GAAY,EAAmB,EAAc,EAAqB,CACzE,EAAK,MAAM,YAAY,EAAM,CAAK,CACpC,CCsCA,IAAI,GAAmB,EAEvB,SAAgB,GAAoB,EAA0D,CAC5F,IAAM,EAAY,EAAuB,EAAQ,MAAM,EACnD,EACJ,GAAI,CACF,EAAgBC,EAAAA,kCAAkC,MAAM,CACtD,gBAAiB,EAAQ,gBACzB,WAAY,EAAQ,WACpB,YAAa,EAAQ,YACrB,KAAM,CAAE,WAAY,EAAQ,WAAY,cAAe,EAAQ,aAAc,EAC7E,yBAA0B,EAAQ,wBACpC,CAAC,CACH,OAAS,EAAO,CAEd,MADA,EAAwB,EAAS,EAAO,CAAE,OAAQ,eAAgB,CAAC,EAC7D,CACR,CAEA,IAAM,EAAW,EAAQ,OAAO,cAC1B,EAAO,EAAS,cAAc,KAAK,EACzC,EAAK,UAAY,eACjB,EAAK,KAAO,EAAU,YACtB,EAAK,IAAM,EAAU,UACrB,GAAgB,EAAM,EAAc,UAAU,EAE9C,IAAM,EAAQ,EAAS,cAAc,OAAO,EAC5C,EAAM,QAAQ,cAAgB,GAC9B,EAAM,YAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EACpB,EAAK,OAAO,CAAK,EAEjB,IAAM,EAAU,EAAS,cAAc,KAAK,EAC5C,EAAK,OAAO,CAAO,EACnB,EAAQ,OAAO,OAAO,CAAI,EAE1B,IAAM,GAAA,EAASC,EAAAA,UAAAA,CAA4B,EACvC,GAAA,EAAyBC,EAAAA,WAAAA,CAAW,CAAO,EAC3C,EAAY,GACV,EAAa,WAAW,EAAE,KAKhC,OAJA,EAAA,EAAA,UAAA,KAAgB,CACd,GAAM,QAAA,EAAOC,EAAAA,cAAAA,CAAc,GAAY,CAAE,gBAAe,aAAY,UAAS,IAAK,CAAO,CAAC,CAAC,CAC7F,CAAC,EAEM,CACL,MAAM,MAAO,CAGX,GAFI,IACJ,MAAM,GAAS,EAAS,WAAW,EAC/B,GAAa,EAAO,UAAY,MAAM,MAAU,MAAM,uCAAuC,EACjG,MAAM,EAAO,QAAQ,KAAK,CAC5B,EACA,OAAQ,CACN,EAAO,SAAS,MAAM,cAAc,CACtC,EACA,SAAU,CACJ,AAKJ,KAJA,EAAO,SAAS,MAAM,WAAW,EACjC,GAAM,QAAQ,EACd,EAAO,IAAA,GACP,EAAK,OAAO,EACA,GACd,CACF,CACF,CAEA,SAAS,GAAS,EAAoC,CACpD,OAAO,IAAI,QAAS,IAAa,GAAM,YAAc,WAAA,CAAY,EAAS,CAAC,CAAC,CAC9E,CCxHA,SAAgB,GACd,EACiC,CACjC,IAAM,EAASC,EAAAA,uBAAuB,MAAM,EAAQ,MAAM,EACpD,EAAY,EAAuB,EAAQ,MAAM,EACjD,CAAE,YAAa,EACf,EAAW,EAAQ,OAAO,cAC1B,EAAO,EAAS,cAAc,SAAS,EAC7C,EAAK,UAAY,eACjB,EAAK,KAAO,EAAU,YACtB,EAAK,IAAM,EAAU,UACrB,EAAK,aAAa,kBAAmB,gBAAgB,EAAO,SAAS,EAErE,IAAM,EAAU,EAAS,cAAc,IAAI,EAC3C,EAAQ,GAAK,gBAAgB,EAAO,UACpC,EAAQ,YAAc,EAAS,sBAC/B,IAAM,EAAW,EAAS,cAAc,GAAG,EAC3C,EAAS,UAAY,yBACrB,EAAS,aAAa,OAAQ,QAAQ,EACtC,EAAS,aAAa,YAAa,QAAQ,EAC3C,IAAM,EAAQ,EAAS,cAAc,IAAI,EACzC,EAAM,UAAY,sBAClB,IAAM,EAAY,EAAS,cAAc,KAAK,EAC9C,EAAU,UAAY,wBACtB,EAAK,OAAO,EAAS,EAAU,EAAO,CAAS,EAC/C,EAAQ,OAAO,OAAO,CAAI,EAE1B,IAAI,EAAY,GACZ,EAAU,EACV,EACA,EACE,EAAY,IAAI,IAEtB,eAAe,GAAsB,CACnC,GAAI,EAAW,MAAU,MAAM,+CAA+C,EAC9E,IAAM,EAAiB,EAAE,EACzB,GAAO,QAAQ,EACf,EAAQ,IAAA,GACR,EAAU,gBAAgB,EAC1B,EAAS,YAAc,EAAS,YAChC,IAAM,EAAW,MAAM,EAAQ,OAAO,kBAAkB,CAAM,EAC1D,QAAa,IAAmB,GAEpC,IADA,EAAO,EAAS,KACZ,EAAK,QAAU,QAAS,CAC1B,EAAS,YAAc,EAAS,aAChC,MACF,CACA,EAAY,CAAI,EAChB,MAAM,EAAS,CAAc,CAF7B,CAGF,CAEA,SAAS,EAAY,EAA+B,CAClD,IAAM,EAAQ,EAAQ,QAAQ,KAAK,EAAQ,IAAU,CACnD,IAAM,EAAO,EAAS,cAAc,IAAI,EAGxC,MAFA,GAAK,QAAQ,aAAe,EAAO,aACnC,EAAK,YAAc,EAAS,SAAS,EAAU,cAAc,EAAQ,CAAC,EAAG,EAAO,MAAM,EAC/E,CACT,CAAC,EACD,EAAM,gBAAgB,GAAG,CAAK,CAChC,CAEA,eAAe,EAAS,EAAuC,CAC7D,GAAI,GAAa,IAAmB,GAAW,IAAS,IAAA,GAAW,OACnE,IAAM,EAAQ,EAAK,QAAQ,UAAW,GACpC,EAAO,eAAiB,IAAA,IAAa,CAAC,EAAU,IAAI,EAAO,YAAY,CACzE,EACA,GAAI,EAAQ,EAAG,CACb,EAAS,YAAc,EAAS,oBAAoB,EAAU,cAAc,EAAK,QAAQ,MAAM,CAAC,EAChG,EAAU,gBAAgB,EAC1B,EAAQ,YAAY,CAAI,EACxB,MACF,CACA,IAAM,EAAS,EAAK,QAAQ,GAC5B,GAAI,IAAW,IAAA,IAAa,EAAO,eAAiB,IAAA,GAAW,OAC/D,EAAS,YAAc,EAAS,eAC9B,EAAU,cAAc,EAAQ,CAAC,EACjC,EAAU,cAAc,EAAK,QAAQ,MAAM,EAC3C,EAAO,MACT,EACA,EAAM,iBAAiB,IAAI,CAAC,CAAC,SAAS,EAAM,IAAc,CACpD,IAAc,EAAO,EAAK,aAAa,eAAgB,MAAM,EAC5D,EAAK,gBAAgB,cAAc,CAC1C,CAAC,EACD,EAAQ,iBAAiB,CAAE,OAAM,QAAO,MAAO,EAAK,QAAQ,OAAQ,OAAQ,EAAO,MAAO,CAAC,EAE3F,IAAM,EAAU,EAAQ,QACxB,EAAQ,GAAoB,CAC1B,GAAG,EACH,OAAQ,EACR,OAAQ,EAAQ,OAChB,aAAc,EAAO,aACrB,OAAQ,EAAU,OAClB,cAAe,GACf,UAAY,GAAU,CACpB,GAAS,YAAY,CAAK,EAC1B,EAAU,IAAI,EAAO,YAAsB,EAC3C,IAAM,EAAO,EAAM,SAAS,KAAK,CAAK,EACtC,GAAM,gBAAgB,cAAc,EAChC,IAAS,OACX,EAAK,YAAc,EAAS,kBAC1B,EAAU,cAAc,EAAQ,CAAC,EACjC,EAAO,MACT,GAEF,mBAAqB,CACnB,GAAO,QAAQ,EACf,EAAQ,IAAA,GACR,EAAU,gBAAgB,EAC1B,EAAc,CAAc,CAC9B,CAAC,CACH,CACF,CAAC,EACD,MAAM,EAAM,KAAK,CACnB,CAEA,MAAO,CACL,OACA,OAAQ,CACN,GAAW,EACX,GAAO,MAAM,CACf,EACA,SAAU,CACJ,IACJ,EAAY,GACZ,GAAW,EACX,GAAO,QAAQ,EACf,EAAK,OAAO,EACd,CACF,CACF,CCzJA,eAAsB,GACpB,EACmC,CACnC,IAAM,EAAiB,EAAQ,OAAO,cAAc,aAAa,SAAS,OACpE,EAAS,EAAQ,QAAU,EACjC,GAAI,IAAW,IAAA,IAAa,IAAW,OAAQ,CAC7C,IAAM,EAAQ,IAAIC,EAAAA,EAAqB,iDAAiD,EAExF,MADA,EAAwB,EAAS,CAAK,EAChC,CACR,CACA,IAAI,EACJ,GAAI,CACF,EAAS,MAAM,EAAe,CAC5B,QAAS,EAAQ,WACjB,IAAK,EAAQ,IACb,SACA,GAAI,EAAQ,QAAU,IAAA,GAAY,CAAC,EAAI,CAAE,MAAO,EAAQ,KAAM,CAChE,CAAC,CACH,OAAS,EAAO,CAEd,MADA,EAAwB,EAAS,CAAK,EAChC,CACR,CACA,OAAO,GAAoB,CACzB,OAAQ,EAAQ,OAChB,OAAQ,EAAO,OACf,aAAc,EAAO,aACrB,GAAI,EAAQ,eAAiB,IAAA,GAAY,CAAC,EAAI,CAAE,aAAc,EAAQ,YAAa,EACnF,GAAI,EAAQ,gBAAkB,IAAA,GAAY,CAAC,EAAI,CAAE,cAAe,EAAQ,aAAc,EACtF,GAAI,EAAQ,SAAW,IAAA,GAAY,CAAC,EAAI,CAAE,OAAQ,EAAQ,MAAO,EACjE,GAAI,EAAQ,aAAe,IAAA,GAAY,CAAC,EAAI,CAAE,WAAY,EAAQ,UAAW,EAC7E,GAAI,EAAQ,cAAgB,IAAA,GAAY,CAAC,EAAI,CAAE,YAAa,EAAQ,WAAY,EAChF,GAAI,EAAQ,2BAA6B,IAAA,GACrC,CAAC,EACD,CAAE,yBAA0B,EAAQ,wBAAyB,EACjE,GAAI,EAAQ,aAAe,IAAA,GAAY,CAAC,EAAI,CAAE,WAAY,EAAQ,UAAW,EAC7E,GAAI,EAAQ,gBAAkB,IAAA,GAAY,CAAC,EAAI,CAAE,cAAe,EAAQ,aAAc,EACtF,GAAI,EAAQ,wBAA0B,IAAA,GAAY,CAAC,EAAI,CAAE,sBAAuB,EAAQ,qBAAsB,EAC9G,GAAI,EAAQ,oBAAsB,IAAA,GAAY,CAAC,EAAI,CAAE,kBAAmB,EAAQ,iBAAkB,EAClG,GAAI,EAAQ,qBAAuB,IAAA,GAAY,CAAC,EAAI,CAAE,mBAAoB,EAAQ,kBAAmB,EACrG,GAAI,EAAQ,UAAY,IAAA,GAAY,CAAC,EAAI,CAAE,QAAS,EAAQ,OAAQ,EACpE,GAAI,EAAQ,YAAc,IAAA,GAAY,CAAC,EAAI,CAAE,UAAW,EAAQ,SAAU,EAC1E,GAAI,EAAQ,YAAc,IAAA,GAAY,CAAC,EAAI,CAAE,UAAW,EAAQ,SAAU,EAC1E,GAAI,EAAQ,UAAY,IAAA,GAAY,CAAC,EAAI,CAAE,QAAS,EAAQ,OAAQ,EACpE,GAAI,EAAQ,UAAY,IAAA,GAAY,CAAC,EAAI,CAAE,QAAS,EAAQ,OAAQ,EACpE,GAAI,EAAQ,eAAiB,IAAA,GAAY,CAAC,EAAI,CAAE,aAAc,EAAQ,YAAa,EACnF,GAAI,EAAQ,kCAAoC,IAAA,GAC5C,CAAC,EACD,CAAE,gCAAiC,EAAQ,+BAAgC,EAC/E,GAAI,EAAQ,iBAAmB,IAAA,GAAY,CAAC,EAAI,CAAE,eAAgB,EAAQ,cAAe,EACzF,GAAI,EAAQ,mBAAqB,IAAA,GAAY,CAAC,EAAI,CAAE,iBAAkB,EAAQ,gBAAiB,EAC/F,GAAI,EAAQ,gCAAkC,IAAA,GAC1C,CAAC,EACD,CAAE,8BAA+B,EAAQ,6BAA8B,CAC7E,CAAC,CACH,CC7BA,SAAgB,IAA4B,CAG1C,IAAI,EACA,EAAiB,EAErB,SAAS,EACP,EACa,CACb,IAAM,EAAW,EAAQ,QAAU,WAAW,UAAU,KACxD,GAAI,IAAa,IAAA,GAAW,CAC1B,IAAM,EAAQ,IAAIC,EAAAA,EAChB,mEACF,EAEA,MADA,EAAwB,EAAS,CAAK,EAChC,CACR,CACA,OAAO,CACT,CAEA,SAAS,GAAwB,CAC/B,IAAM,EAAS,EAAE,EAMjB,OALI,IAAW,IAAA,KACb,EAAO,MAAM,EACb,EAAO,QAAQ,EACf,EAAS,IAAA,IAEJ,CACT,CAEA,eAAe,EACb,EACA,EACqB,CACrB,IAAM,EAAa,MAAM,EACzB,GAAI,IAAW,EAEb,MADA,EAAW,QAAQ,EACb,IAAIA,EAAAA,EAAqB,uCAAuC,EAIxE,GAFA,EAAS,EACT,MAAM,EAAW,KAAK,EAClB,IAAW,EAKb,MAJA,EAAW,QAAQ,EACf,IAAW,IACb,EAAS,IAAA,IAEL,IAAIA,EAAAA,EAAqB,uCAAuC,EAExE,OAAO,CACT,CAEA,MAAO,CACL,MAAM,MAAO,CAEb,EACA,MAAM,cAAc,EAAS,CAO3B,OAAO,EANQ,EAMM,EALF,GAAoB,CACrC,GAAG,EACH,OAAQ,EAAqB,CAAO,EACpC,cAAe,EACjB,CACiC,CAAC,CACpC,EACA,MAAM,eAAe,EAAS,CAQ5B,OAAO,EAPQ,EAOM,EANF,GAA2B,CAC5C,GAAG,EACH,OAAQ,EACN,EAAQ,SAAW,IAAA,GAAY,CAAC,EAAI,CAAE,OAAQ,EAAQ,MAAO,CAC/D,CACF,CACiC,CAAC,CACpC,EACA,MAAM,eAAe,EAAS,CAO5B,OAAO,EANQ,EAMM,EALF,GAAuB,CACxC,GAAG,EACH,OAAQ,EAAqB,CAAO,EACpC,cAAe,EACjB,CACiC,CAAC,CACpC,EACA,OAAQ,CACN,IACA,GAAQ,MAAM,CAChB,EACA,SAAU,CACR,IACA,GAAQ,QAAQ,EAChB,EAAS,IAAA,EACX,CACF,CACF,CAEA,MAAa,GAAU,GAAc"}
|