This repository has been archived on 2026-06-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
master-ai/vibn-frontend/## User

25786 lines
4.1 MiB
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## User
test
## Assistant
Test received! How can I help you with your project today?
## User (checkpoint)
can you figure out why my chat failed.
Error: Failed to generate summary
**Tool Call: Search files for regex `Failed to generate summary`**
Status: Completed
Found 1 matches:
## Matches in master-ai/vibn-frontend/app/api/context/summarize/route.ts
### async function POST( ) error L46-49
```
return NextResponse.json(
{ error: "Failed to generate summary", details: error instanceof Error ? error.message : String(error) },
{ status: 500 }
);
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/context/summarize/route.ts` (lines 1-100)**
Status: Completed
```master-ai/vibn-frontend/app/api/context/summarize/route.ts
import { NextRequest, NextResponse } from "next/server";
const MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_URL = `https://generativelanguage.googleapis.com/v1beta/models/${MODEL}:generateContent`;
export async function POST(request: NextRequest) {
try {
const { content, title } = await request.json();
if (!content) {
return NextResponse.json({ error: "Content is required" }, { status: 400 });
}
const maxContentLength = 30000;
const truncatedContent = content.length > maxContentLength
? content.substring(0, maxContentLength) + "..."
: content;
const prompt = `Read this document titled "${title}" and provide a concise 1-2 sentence summary that captures the main topic and key points. Be specific and actionable.
Document content:
${truncatedContent}
Summary:`;
const response = await fetch(`${GEMINI_URL}?key=${API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ role: 'user', parts: [{ text: prompt }] }],
generationConfig: { temperature: 0.3 },
}),
});
if (!response.ok) {
throw new Error(`Gemini API error (${response.status}): ${await response.text()}`);
}
const result = await response.json();
const summary = result.candidates?.[0]?.content?.parts?.[0]?.text?.trim() || 'Summary unavailable';
return NextResponse.json({ summary });
} catch (error) {
console.error("Error generating summary:", error);
return NextResponse.json(
{ error: "Failed to generate summary", details: error instanceof Error ? error.message : String(error) },
{ status: 500 }
);
}
}
```
## Assistant
**Tool Call: cat vibn-frontend/.env vibn-frontend/.env.local**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
cat: vibn-frontend/.env: No such file or directory
# ── Google / Gemini ───────────────────────────────────────────────────────────
GOOGLE_API_KEY=AIzaSyCwXxLU6dGrRLfHRxGtOWg2hi-RQGMn664
GEMINI_MODEL=gemini-3.1-pro
# ── Google OAuth (NextAuth) ────────────────────────────────────────────────────
GOOGLE_CLIENT_ID=673711367815-us92rkicrpgjrh381p4cb770lo9iq8tt.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=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
# ── NextAuth ──────────────────────────────────────────────────────────────────
NEXTAUTH_SECRET=1yaw0RWG7g4yxPf3kAgsZoobrnlP/ZmpfrzuFAhTGnA=
NEXTAUTH_URL=http://localhost:3000
# Local dev: bypass Google — set to your real email (must match DB user you want)
NEXT_PUBLIC_DEV_LOCAL_AUTH_EMAIL=mark@getacquired.com
# Act as that user for /api/projects* without signing in (next dev only)
NEXT_PUBLIC_DEV_BYPASS_PROJECT_AUTH=true
# ── PostgreSQL (Coolify public port; run: npm run db:sync:coolify) ────────────
# If unreachable: open host firewall for TCP on public_port. SSL: DB_SSL=true if required.
DATABASE_URL=postgresql://vibn_user:JSMcySGlEj3pSMjHvwEHAd1A@34.19.250.135:5433/vibn
POSTGRES_URL=postgresql://vibn_user:JSMcySGlEj3pSMjHvwEHAd1A@34.19.250.135:5433/vibn
# ── Gitea ─────────────────────────────────────────────────────────────────────
GITEA_API_URL=https://git.vibnai.com
GITEA_API_TOKEN=7803666418f1c90a5a65ecc35f8c2f3abaa7d2f3
GITEA_USERNAME=mark
# ── Coolify ───────────────────────────────────────────────────────────────────
COOLIFY_URL=http://34.19.250.135:8000
COOLIFY_API_TOKEN=1|clqAOiQPygpuwyA5HVDyWoKfNRtDH8l4Huge2PCmef521cc1
COOLIFY_SERVER_UUID=jws4g4cgssss4cw48s488woc
VIBN_SECRETS_KEY=G1gGSlAklGsIerQ8cmwSGsoO8gvHax/JfY5IgLGEZAOwIhm/pWWPVBJ10hI4Duqy
NEXT_PUBLIC_COOLIFY_URL=http://34.19.250.135:8000
# Ops probe: GET /api/internal/infra-health
INFRA_HEALTH_SECRET=6e60bec12bd1391b4753fc486580f57e78e02a961f8e9999e19254c1af7261bb
# ── DeepSeek (workspace sidebar chat → POST /api/chat) ──────────────────────────
VIBN_CHAT_PROVIDER=gemini
echo "COOLIFY_SSH_HOST=34.19.250.135" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
echo "COOLIFY_SSH_PORT=22" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
echo "COOLIFY_SSH_USER=vibn-logs" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
PRIV_B64=$(cat ~/.ssh/vibn-logs-local | base64 | tr -d '\n')
echo "COOLIFY_SSH_PRIVATE_KEY_B64=$PRIV_B64" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
COOLIFY_SSH_HOST=34.19.250.135
COOLIFY_SSH_PORT=22
COOLIFY_SSH_USER=vibn-logs
COOLIFY_SSH_PRIVATE_KEY_B64=LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUFNd0FBQUF0emMyZ3RaVwpReU5UVXhPUUFBQUNDNS92M0RwRjgwWDVuNitjM2VNbElpVUdQN3d1bjdjL2Z6R0ttaUMzV3BzUUFBQUpqUE1BQ2N6ekFBCm5BQUFBQXR6YzJndFpXUXlOVFV4T1FBQUFDQzUvdjNEcEY4MFg1bjYrYzNlTWxJaVVHUDd3dW43Yy9mekdLbWlDM1dwc1EKQUFBRUErMmFCditqa3pndWJaZTZyd1lhK1FDenFGSVpQYW5POWtYSXE5ZzdWYjc3bisvY09rWHpSZm1mcjV6ZDR5VWlKUQpZL3ZDNmZ0ejkvTVlxYUlMZGFteEFBQUFEM1pwWW00dGJHOW5jeTFzYjJOaGJBRUNBd1FGQmc9PQotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K
COOLIFY_SSH_HOST=34.19.250.135
COOLIFY_SSH_PORT=22
COOLIFY_SSH_USER=vibn-logs
COOLIFY_SSH_PRIVATE_KEY_B64=LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUFNd0FBQUF0emMyZ3RaVwpReU5UVXhPUUFBQUNDNS92M0RwRjgwWDVuNitjM2VNbElpVUdQN3d1bjdjL2Z6R0ttaUMzV3BzUUFBQUpqUE1BQ2N6ekFBCm5BQUFBQXR6YzJndFpXUXlOVFV4T1FBQUFDQzUvdjNEcEY4MFg1bjYrYzNlTWxJaVVHUDd3dW43Yy9mekdLbWlDM1dwc1EKQUFBRUErMmFCditqa3pndWJaZTZyd1lhK1FDenFGSVpQYW5POWtYSXE5ZzdWYjc3bisvY09rWHpSZm1mcjV6ZDR5VWlKUQpZL3ZDNmZ0ejkvTVlxYUlMZGFteEFBQUFEM1pwWW00dGJHOW5jeTFzYjJOaGJBRUNBd1FGQmc9PQotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K
# Stripe Platform Keys (Test Mode)
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_51TUwa39DgTI4W5Vpgi1fazBGnNvHkaaMnih5poAwpCZ8U7yF9UIz8ybACc89ktRQh789q3bzxw4oy2aeQT9fdYTa004oyumjOm
STRIPE_SECRET_KEY=sk_test_51TUwa39DgTI4W5Vp7UjeXcUmunoexF3nXVtNAG8SisncwEeKVmrdAjVvYMvnEKxRWr2UnJXuNPX8eF0xdIWaWrmM00trL4Fn3V
STRIPE_CLIENT_ID=ca_UTuWw2qE8wFLNlWOL7T1v0H5GdB6BtDw
```
## Assistant
**Tool Call: Search files for regex `Failed to generate`**
Status: Completed
Found 14 matches:
## Matches in master-ai/vibn-frontend/app/api/context/summarize/route.ts
### async function POST( ) error L46-49
```
return NextResponse.json(
{ error: "Failed to generate summary", details: error instanceof Error ? error.message : String(error) },
{ status: 500 }
);
```
## Matches in master-ai/vibn-frontend/app/api/mcp/generate-key/route.ts
### async function POST( ) error L68-71
```
{
error: 'Failed to generate MCP key',
details: error instanceof Error ? error.message : String(error),
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/audit/generate/route.ts
### async function POST( ) error L236-239
```
{
error: 'Failed to generate audit report',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/complete-history/route.ts
### async function GET( ) error L157-160
```
{
error: 'Failed to generate complete history',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/documents/upload/route.ts
### async function POST( ) error L52-55
```
return NextResponse.json(
{ error: 'Failed to generate upload URL', details: error instanceof Error ? error.message : String(error) },
{ status: 500 }
);
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/mission/generate/route.ts
### async function POST( ) error L214-217
```
{
error: 'Failed to generate mission framework',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/mvp-checklist/route.ts
### async function GET( ) error L96-99
```
{
error: 'Failed to generate MVP checklist',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/plan/intelligent/route.ts
### async function GET( ) error L62-65
```
{
error: 'Failed to generate intelligent plan',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/plan/marketing/route.ts
### async function POST( ) L18-24
```
} catch (error) {
console.error('[plan/marketing] Failed to generate marketing plan', error);
return NextResponse.json(
{
error: 'Failed to generate marketing plan',
details: error instanceof Error ? error.message : String(error),
},
```
3 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/plan/mvp/route.ts
### async function POST( ) L18-24
```
} catch (error) {
console.error('[plan/mvp] Failed to generate MVP plan', error);
return NextResponse.json(
{
error: 'Failed to generate MVP plan',
details: error instanceof Error ? error.message : String(error),
},
```
3 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/timeline/route.ts
### async function GET( ) error L389-392
```
{
error: 'Failed to generate unified timeline',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/timeline-view/route.ts
### async function GET( ) error L175-178
```
{
error: 'Failed to generate timeline view',
details: error instanceof Error ? error.message : String(error)
},
```
## Matches in master-ai/vibn-frontend/app/api/v0/generate/route.ts
### async function POST( ) error L68-71
```
{
error: 'Failed to generate design',
details: error instanceof Error ? error.message : 'Unknown error'
},
```
## Matches in master-ai/vibn-frontend/scripts/start-with-alloydb.sh
### L7-11
```
if [ -z "$ALLOYDB_PASSWORD" ]; then
echo "❌ Failed to generate access token"
echo "Make sure you're logged in: gcloud auth login"
exit 1
fi
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/context/summarize/route.ts` (lines 1-100)**
Status: Completed
```master-ai/vibn-frontend/app/api/context/summarize/route.ts
import { NextRequest, NextResponse } from "next/server";
const MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_URL = `https://generativelanguage.googleapis.com/v1beta/models/${MODEL}:generateContent`;
export async function POST(request: NextRequest) {
try {
const { content, title } = await request.json();
if (!content) {
return NextResponse.json({ error: "Content is required" }, { status: 400 });
}
const maxContentLength = 30000;
const truncatedContent = content.length > maxContentLength
? content.substring(0, maxContentLength) + "..."
: content;
const prompt = `Read this document titled "${title}" and provide a concise 1-2 sentence summary that captures the main topic and key points. Be specific and actionable.
Document content:
${truncatedContent}
Summary:`;
const response = await fetch(`${GEMINI_URL}?key=${API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ role: 'user', parts: [{ text: prompt }] }],
generationConfig: { temperature: 0.3 },
}),
});
if (!response.ok) {
throw new Error(`Gemini API error (${response.status}): ${await response.text()}`);
}
const result = await response.json();
const summary = result.candidates?.[0]?.content?.parts?.[0]?.text?.trim() || 'Summary unavailable';
return NextResponse.json({ summary });
} catch (error) {
console.error("Error generating summary:", error);
return NextResponse.json(
{ error: "Failed to generate summary", details: error instanceof Error ? error.message : String(error) },
{ status: 500 }
);
}
}
```
## Assistant
**Tool Call: cat << 'EOF' > test-gemini.js
const API_KEY = "AIzaSyCwXxLU6dGrRLfHRxGtOWg2hi-RQGMn664";
const MODEL = "gemini-3.1-pro";
const GEMINI_URL = `https://generativelanguage.googleapis.com/v1beta/models/${MODEL}:generateContent`;
fetch(`${GEMINI_URL}?key=${API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ role: 'user', parts: [{ text: "test" }] }],
generationConfig: { temperature: 0.3 },
}),
}).then(r => r.text()).then(console.log).catch(console.error);
EOF
node test-gemini.js**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
{
"error": {
"code": 404,
"message": "models/gemini-3.1-pro is not found for API version v1beta, or is not supported for generateContent. Call ListModels to see the list of available models and their supported methods.",
"status": "NOT_FOUND"
}
}
```
## Assistant
**Tool Call: Search files for regex `GEMINI_MODEL`**
Status: Completed
Found 10 matches:
## Matches in master-ai/deploy_logs.json
### logs L1
```
{"id":722,"application":{"id":8,"repository_project_id":null,"uuid":"y4cscsc8s08c8808go0448s0","name":"vibn-frontend","fqdn":"https:\/\/vibnai.com,https:\/\/www.vibnai.com","config_hash":"58d68c8425a4d019fa30f44e0dba0b90","git_repository":"https:\/\/git.vibnai.com\/mark\/vibn-frontend.git","git_branch":"main","git_commit_sha":"HEAD","git_full_url":null,"docker_registry_image_name":null,"docker_registry_image_tag":null,"build_pack":"dockerfile","static_image":"nginx:alpine","install_command":null,"build_command":null,"start_command":null,"ports_exposes":"3000","ports_mappings":null,"base_directory":"\/","publish_directory":null,"health_check_path":"\/","health_check_port":"3000","health_check_host":"127.0.0.1","health_check_method":"GET","health_check_return_code":200,"health_check_scheme":"http","health_check_response_text":null,"health_check_interval":5,"health_check_timeout":5,"health_check_retries":15,"health_check_start_period":90,"limits_memory":"0","limits_memory_swap":"0","limits_memory_swappiness":60,"limits_memory_reservation":"0","limits_cpus":"0","limits_cpuset":null,"limits_cpu_shares":1024,"status":"running:healthy","preview_url_template":"{{pr_id}}.{{domain}}","destination_type":"App\\Models\\StandaloneDocker","destination_id":0,"source_type":null,"source_id":null,"private_key_id":null,"environment_id":1,"created_at":"2026-02-16T22:29:56.000000Z","updated_at":"2026-05-14T18:47:02.000000Z","description":"VIBN Frontend - Next.js Application","dockerfile":null,"health_check_enabled":true,"dockerfile_location":"\/Dockerfile","custom_labels":"dHJhZWZpay5lbmFibGU9dHJ1ZQp0cmFlZmlrLmh0dHAubWlkZGxld2FyZXMuZ3ppcC5jb21wcmVzcz10cnVlCnRyYWVmaWsuaHR0cC5taWRkbGV3YXJlcy5yZWRpcmVjdC10by1odHRwcy5yZWRpcmVjdHNjaGVtZS5zY2hlbWU9aHR0cHMKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cC0wLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5lbnRyeVBvaW50cz1odHRwCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHAtMC15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAubWlkZGxld2FyZXM9cmVkaXJlY3QtdG8taHR0cHMKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cC0wLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5ydWxlPUhvc3QoYHZpYm5haS5jb21gKSAmJiBQYXRoUHJlZml4KGAvYCkKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cC0wLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5zZXJ2aWNlPWh0dHAtMC15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cC0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5lbnRyeVBvaW50cz1odHRwCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHAtMS15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAubWlkZGxld2FyZXM9cmVkaXJlY3QtdG8taHR0cHMKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cC0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5ydWxlPUhvc3QoYHd3dy52aWJuYWkuY29tYCkgJiYgUGF0aFByZWZpeChgL2ApCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHAtMS15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAuc2VydmljZT1odHRwLTEteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHBzLTAteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLmVudHJ5UG9pbnRzPWh0dHBzCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHBzLTAteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLm1pZGRsZXdhcmVzPWd6aXAKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cHMtMC15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAucnVsZT1Ib3N0KGB2aWJuYWkuY29tYCkgJiYgUGF0aFByZWZpeChgL2ApCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHBzLTAteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLnNlcnZpY2U9aHR0cHMtMC15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cHMtMC15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAudGxzLmNlcnRyZXNvbHZlcj1sZXRzZW5jcnlwdAp0cmFlZmlrLmh0dHAucm91dGVycy5odHRwcy0wLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC50bHM9dHJ1ZQp0cmFlZmlrLmh0dHAucm91dGVycy5odHRwcy0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5lbnRyeVBvaW50cz1odHRwcwp0cmFlZmlrLmh0dHAucm91dGVycy5odHRwcy0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5taWRkbGV3YXJlcz1nemlwCnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHBzLTEteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLnJ1bGU9SG9zdChgd3d3LnZpYm5haS5jb21gKSAmJiBQYXRoUHJlZml4KGAvYCkKdHJhZWZpay5odHRwLnJvdXRlcnMuaHR0cHMtMS15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAuc2VydmljZT1odHRwcy0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMAp0cmFlZmlrLmh0dHAucm91dGVycy5odHRwcy0xLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC50bHMuY2VydHJlc29sdmVyPWxldHNlbmNyeXB0CnRyYWVmaWsuaHR0cC5yb3V0ZXJzLmh0dHBzLTEteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLnRscz10cnVlCnRyYWVmaWsuaHR0cC5zZXJ2aWNlcy5odHRwLTAteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLmxvYWRiYWxhbmNlci5zZXJ2ZXIucG9ydD0zMDAwCnRyYWVmaWsuaHR0cC5zZXJ2aWNlcy5odHRwLTEteTRjc2NzYzhzMDhjODgwOGdvMDQ0OHMwLmxvYWRiYWxhbmNlci5zZXJ2ZXIucG9ydD0zMDAwCnRyYWVmaWsuaHR0cC5zZXJ2aWNlcy5odHRwcy0wLXk0Y3Njc2M4czA4Yzg4MDhnbzA0NDhzMC5sb2FkYmFsYW5jZXIuc2VydmVyLnBvcnQ9MzAwMAp0cmFlZmlrLmh0dHAuc2VydmljZXMuaHR0cHMtMS15NGNzY3NjOHMwOGM4ODA4Z28wNDQ4czAubG9hZGJhbGFuY2VyLnNlcnZlci5wb3J0PTMwMDAKY2FkZHlfMC5lbmNvZGU9enN0ZCBnemlwCmNhZGR5XzAuaGFuZGxlX3BhdGguMF9yZXZlcnNlX3Byb3h5PXt7dXBzdHJlYW1zIDMwMDB9fQpjYWRkeV8wLmhhbmRsZV9wYXRoPS8qCmNhZGR5XzAuaGVhZGVyPS1TZXJ2ZXIKY2FkZHlfMC50cnlfZmlsZXM9e3BhdGh9IC9pbmRleC5odG1sIC9pbmRleC5waHAKY2FkZHlfMD1odHRwczovL3ZpYm5haS5jb20KY2FkZHlfMS5lbmNvZGU9enN0ZCBnemlwCmNhZGR5XzEuaGFuZGxlX3BhdGguMV9yZXZlcnNlX3Byb3h5PXt7dXBzdHJlYW1zIDMwMDB9fQpjYWRkeV8xLmhhbmRsZV9wYXRoPS8qCmNhZGR5XzEuaGVhZGVyPS1TZXJ2ZXIKY2FkZHlfMS50cnlfZmlsZXM9e3BhdGh9IC9pbmRleC5odG1sIC9pbmRleC5waHAKY2FkZHlfMT1odHRwczovL3d3dy52aWJuYWkuY29tCmNhZGR5X2luZ3Jlc3NfbmV0d29yaz1jb29saWZ5","dockerfile_target_build":null,"manual_webhook_secret_github":null,"manual_webhook_secret_gitlab":null,"docker_compose_location":"\/docker-compose.yaml","docker_compose":null,"docker_compose_raw":null,"docker_compose_domains":null,"deleted_at":null,"docker_compose_custom_start_command":null,"docker_compose_custom_build_command":null,"swarm_replicas":1,"swarm_placement_constraints":null,"manual_webhook_secret_bitbucket":null,"custom_docker_run_options":null,"post_deployment_command":null,"post_deployment_command_container":null,"pre_deployment_command":null,"pre_deployment_command_container":null,"watch_paths":null,"custom_healthcheck_found":false,"manual_webhook_secret_gitea":"c23f93114f0378ff15cbd863e3fbd23bb5c127ceace1756b","redirect":"both","compose_parsing_version":"5","last_online_at":"2026-05-14 18:47:02","custom_nginx_configuration":"","custom_network_aliases":null,"is_http_basic_auth_enabled":false,"http_basic_auth_username":null,"http_basic_auth_password":null,"restart_count":0,"last_restart_at":null,"last_restart_type":null,"health_check_type":"http","health_check_command":null,"additional_servers_count":0,"additional_networks_count":0,"server_status":true,"environment":{"id":1,"name":"production","project_id":1,"created_at":"2026-02-14T21:49:21.000000Z","updated_at":"2026-02-14T21:49:21.000000Z","description":null,"uuid":"foskksoccksk0kc4g8sk88ok","project":{"id":1,"uuid":"f4owwggokksgw0ogo0844os0","name":"Vibn","description":"","team_id":0,"created_at":"2026-02-14T21:49:21.000000Z","updated_at":"2026-02-16T03:38:00.000000Z","team":{"id":0,"name":"Root Team","description":null,"personal_team":true,"created_at":"2026-02-14T21:47:46.000000Z","updated_at":"2026-02-14T21:49:26.000000Z","show_boarding":false,"custom_server_limit":null}}},"additional_servers":[],"destination":{"id":0,"name":"coolify","uuid":"zkogkggkw0wg40gccks80oo0","network":"coolify","server_id":0,"created_at":"2026-02-14T21:41:51.000000Z","updated_at":"2026-02-14T21:41:51.000000Z","server":{"id":0,"uuid":"jws4g4cgssss4cw48s488woc","name":"localhost","description":"This is the server where Coolify is running on. Don't delete this!","ip":"host.docker.internal","port":22,"user":"root","team_id":0,"private_key_id":0,"proxy":{"type":"TRAEFIK","status":"running","last_saved_settings":null,"last_applied_settings":null,"redirect_enabled":true,"force_stop":false},"created_at":"2026-02-14T21:41:51.000000Z","updated_at":"2026-05-14T18:46:33.000000Z","unreachable_notification_sent":false,"unreachable_count":0,"high_disk_usage_notification_sent":false,"log_drain_notification_sent":false,"swarm_cluster":null,"validation_logs":null,"sentinel_updated_at":"2026-05-14 18:46:33","deleted_at":null,"ip_previous":null,"hetzner_server_id":null,"cloud_provider_token_id":null,"hetzner_server_status":null,"is_validating":false,"detected_traefik_version":"3.6.8","traefik_outdated_info":{"current":"3.6.8","latest":"3.6.11","type":"patch_update","checked_at":"2026-05-10T00:00:42+00:00"},"server_metadata":null,"is_coolify_host":true,"settings":{"id":1,"is_swarm_manager":false,"is_jump_server":false,"is_build_server":false,"is_reachable":true,"is_usable":true,"server_id":0,"created_at":"2026-02-14T21:41:51.000000Z","updated_at":"2026-02-14T21:49:13.000000Z","wildcard_domain":null,"is_cloudflare_tunnel":false,"is_logdrain_newrelic_enabled":false,"logdrain_newrelic_license_key":null,"logdrain_newrelic_base_uri":null,"is_logdrain_highlight_enabled":false,"logdrain_highlight_project_id":null,"is_logdrain_axiom_enabled":false,"logdrain_axiom_dataset_name":null,"logdrain_axiom_api_key":null,"is_swarm_worker":false,"is_logdrain_custom_enabled":false,"logdrain_custom_config":null,"logdrain_custom_config_parser":null,"concurrent_builds":2,"dynamic_timeout":3600,"force_disabled":false,"is_metrics_enabled":false,"generate_exact_labels":false,"force_docker_cleanup":true,"docker_cleanup_frequency":"0 *\/6 * * *","docker_cleanup_threshold":75,"server_timezone":"UTC","delete_unused_volumes":false,"delete_unused_networks":false,"is_sentinel_enabled":true,"sentinel_token":"eyJpdiI6Ii9MSGRUb1JDWDZUSGE2b2dPVU5ka2c9PSIsInZhbHVlIjoiRVVkYXBZYmtIenRtTVBqK01GRnhJNERrT3RwLzhYK3EwT2hIM2JtOS9TeGdZNEl2VWRHczBHYXgzQTJ4UnpJTkluVU1RRXF1SVVXREZBZVpyaU1TZEE9PSIsIm1hYyI6IjdjZjYxNmEzZTM2OThjYjA4MGVlYzBkOGZlOGNmOTU1ZTA5MjJmZTY5ZGQ5OTczZWRkYTRkZDQ0ZDMzY2VjNzciLCJ0YWciOiIifQ==","sentinel_metrics_refresh_rate_seconds":10,"sentinel_metrics_history_days":7,"sentinel_push_interval_seconds":60,"sentinel_custom_url":"http:\/\/host.docker.internal:8000","server_disk_usage_notification_threshold":80,"is_sentinel_debug_enabled":false,"server_disk_usage_check_frequency":"0 23 * * *","is_terminal_enabled":true,"deployment_queue_limit":25,"disable_application_image_retention":false}}}},"application_id":"8","application_name":"vibn-frontend","build_server_id":null,"commit":"32a4812383734eea005a15a5bfd8a8127f4e259b","commit_message":"design(ui): brighten hero breadcrumb text contrast","current_process_id":"3951450","deployment_url":"\/project\/f4owwggokksgw0ogo0844os0\/environment\/foskksoccksk0kc4g8sk88ok\/application\/y4cscsc8s08c8808go0448s0\/deployment\/y6wyqjod8h2mbmzpmobeoozd","deployment_uuid":"y6wyqjod8h2mbmzpmobeoozd","destination_id":"0","docker_registry_image_tag":null,"finished_at":"2026-05-14T18:46:09.000000Z","force_rebuild":false,"git_type":null,"horizon_job_id":"3b757c86-bdb5-492b-a56e-a9fa3c307516","horizon_job_worker":"e55bacf73ffc","is_api":true,"is_webhook":false,"logs":"[{\"command\":null,\"output\":\"Docker 27.0.3 with BuildKit and Buildx detected on deployment server (localhost).\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:55.202830Z\",\"hidden\":false,\"batch\":1},{\"command\":null,\"output\":\"Starting deployment of https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend.git:main to localhost.\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:55.211689Z\",\"hidden\":false,\"batch\":1,\"order\":2},{\"command\":null,\"output\":\"Preparing container with helper image: ghcr.io\\\/coollabsio\\\/coolify-helper:1.0.13\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:55.535302Z\",\"hidden\":false,\"batch\":1,\"order\":3},{\"command\":\"docker stop -t 30 y6wyqjod8h2mbmzpmobeoozd\",\"output\":\"Error response from daemon: No such container: y6wyqjod8h2mbmzpmobeoozd\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:45:55.783295Z\",\"hidden\":true,\"batch\":1,\"order\":4},{\"command\":\"docker run -d --network 'coolify' --name y6wyqjod8h2mbmzpmobeoozd --rm -v \\\/var\\\/run\\\/docker.sock:\\\/var\\\/run\\\/docker.sock ghcr.io\\\/coollabsio\\\/coolify-helper:1.0.13\",\"output\":\"1299fc850ee83025e2e659b2254716e885280a0e4ca155500af7dfbfc64ab76a\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:56.065220Z\",\"hidden\":true,\"batch\":2,\"order\":5},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'GIT_SSH_COMMAND=\\\"ssh -o ConnectTimeout=30 -p 22 -o Port=22 -o LogLevel=ERROR -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git ls-remote https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend.git refs\\\/heads\\\/main'\",\"output\":\"32a4812383734eea005a15a5bfd8a8127f4e259b\\trefs\\\/heads\\\/main\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:57.707790Z\",\"hidden\":true,\"batch\":3,\"order\":6},{\"command\":null,\"output\":\"----------------------------------------\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:57.733196Z\",\"hidden\":false,\"batch\":1,\"order\":7},{\"command\":null,\"output\":\"Importing https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend.git:main (commit sha 32a4812383734eea005a15a5bfd8a8127f4e259b) to \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd.\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:45:57.752432Z\",\"hidden\":false,\"batch\":1,\"order\":8},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'git clone --depth=1 --recurse-submodules --shallow-submodules -b '\\\\''main'\\\\'' '\\\\''https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend.git'\\\\'' '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git fetch --depth=1 origin '\\\\''32a4812383734eea005a15a5bfd8a8127f4e259b'\\\\'' && git -c advice.detachedHead=false checkout '\\\\''32a4812383734eea005a15a5bfd8a8127f4e259b'\\\\'' >\\\/dev\\\/null 2>&1 && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && if [ -f .gitmodules ]; then sed -i \\\"s#git@\\\\(.*\\\\):#https:\\\/\\\/\\\\1\\\/#g\\\" '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\''\\\/.gitmodules || true && git submodule sync && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git submodule update --init --recursive --depth=1; fi && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git lfs pull'\",\"output\":\"Cloning into '\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'...\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:45:58.176679Z\",\"hidden\":true,\"batch\":4,\"order\":9},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'git clone --depth=1 --recurse-submodules --shallow-submodules -b '\\\\''main'\\\\'' '\\\\''https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend.git'\\\\'' '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git fetch --depth=1 origin '\\\\''32a4812383734eea005a15a5bfd8a8127f4e259b'\\\\'' && git -c advice.detachedHead=false checkout '\\\\''32a4812383734eea005a15a5bfd8a8127f4e259b'\\\\'' >\\\/dev\\\/null 2>&1 && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && if [ -f .gitmodules ]; then sed -i \\\"s#git@\\\\(.*\\\\):#https:\\\/\\\/\\\\1\\\/#g\\\" '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\''\\\/.gitmodules || true && git submodule sync && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git submodule update --init --recursive --depth=1; fi && cd '\\\\''\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd'\\\\'' && GIT_SSH_COMMAND=\\\"ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=\\\/dev\\\/null\\\" git lfs pull'\",\"output\":\"From https:\\\/\\\/git.vibnai.com\\\/mark\\\/vibn-frontend\\n * branch 32a4812383734eea005a15a5bfd8a8127f4e259b -> FETCH_HEAD\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:45:59.239072Z\",\"hidden\":true,\"batch\":4,\"order\":10},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'cd \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd && git log -1 '\\\\''32a4812383734eea005a15a5bfd8a8127f4e259b'\\\\'' --pretty=%B'\",\"output\":\"design(ui): brighten hero breadcrumb text contrast\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:00.332382Z\",\"hidden\":true,\"batch\":6,\"order\":11},{\"command\":null,\"output\":\"Image not found (y4cscsc8s08c8808go0448s0:32a4812383734eea005a15a5bfd8a8127f4e259b). Building new image.\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:00.629367Z\",\"hidden\":false,\"batch\":1,\"order\":12},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'cat \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\\\/Dockerfile'\",\"output\":\"cat: can't open '\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\\\/Dockerfile': No such file or directory\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:02.489659Z\",\"hidden\":true,\"batch\":10,\"order\":13},{\"command\":null,\"output\":\"Creating build-time .env file in \\\/artifacts (outside Docker context).\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:03.830024Z\",\"hidden\":true,\"batch\":1,\"order\":14},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'cat \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\\\/Dockerfile'\",\"output\":\"cat: can't open '\\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\\\/Dockerfile': No such file or directory\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:06.146453Z\",\"hidden\":true,\"batch\":13,\"order\":15},{\"command\":null,\"output\":\"----------------------------------------\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:06.176327Z\",\"hidden\":false,\"batch\":1,\"order\":16},{\"command\":null,\"output\":\"Building docker image started.\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:06.197573Z\",\"hidden\":false,\"batch\":1,\"order\":17},{\"command\":null,\"output\":\"To check the current progress, click on Show Debug Logs.\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:06.218852Z\",\"hidden\":false,\"batch\":1,\"order\":18},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'cat \\\/artifacts\\\/build.sh'\",\"output\":\"cd \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd && set -a && source \\\/artifacts\\\/build-time.env && set +a && DOCKER_BUILDKIT=1 docker build --add-host coolify:10.0.1.11 --add-host coolify-db:10.0.1.3 --add-host coolify-realtime:10.0.1.9 --add-host coolify-redis:10.0.1.2 --add-host kggs4ogckc0w8ggwkkk88kck:10.0.1.13 --add-host kggs4ogckc0w8ggwkkk88kck-proxy:10.0.1.6 --add-host mh20hmj0h7pg9ftt0upo8s8p:10.0.1.24 --add-host p4dpjwv9p188h3y21c4xgiwy:10.0.1.21 --add-host q8i3lfauirs97awl4pieqbme:10.0.1.16 --add-host qckwo4g8gs8kw08gkgc0ss0g:10.0.1.8 --add-host qckwo4g8gs8kw08gkgc0ss0g-proxy:10.0.1.20 --add-host rlwvhmh25r7n2g2pbzygjlms:10.0.1.30 --add-host vibn-dev-dm3hqkyjknucuehfmqb75627:10.0.1.14 --add-host vibn-dev-lbhz4nd7wllowjlnwm1tmhu3:10.0.1.10 --add-host yoscw0og00gkgcsgswoskc8c:10.0.1.17 --add-host yoscw0og00gkgcsgswoskc8c-proxy:10.0.1.7 --add-host zlxavhunxe6vit057ntt7imx:10.0.1.27 --network host -f \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\\\/Dockerfile --progress plain -t y4cscsc8s08c8808go0448s0:32a4812383734eea005a15a5bfd8a8127f4e259b --build-arg COOLIFY_URL --build-arg COOLIFY_BRANCH --build-arg COOLIFY_RESOURCE_UUID --build-arg OPENSRS_API_KEY_LIVE --build-arg GITEA_API_TOKEN --build-arg NEXTAUTH_URL --build-arg COOLIFY_SERVER_UUID --build-arg GITEA_WEBHOOK_SECRET --build-arg AGENT_RUNNER_SECRET --build-arg GEMINI_MODEL --build-arg NEXTAUTH_SECRET --build-arg NEXT_PUBLIC_APP_URL --build-arg GOOGLE_SERVICE_ACCOUNT_KEY_B64 --build-arg GITEA_API_URL --build-arg GITEA_ADMIN_USER --build-arg GOOGLE_CLIENT_SECRET --build-arg AGENT_RUNNER_URL --build-arg ADMIN_MIGRATE_SECRET --build-arg GOOGLE_API_KEY --build-arg COOLIFY_API_TOKEN --build-arg OPENSRS_RESELLER_USERNAME --build-arg OPENSRS_API_KEY_TEST --build-arg OPENSRS_PORT --build-arg OPENSRS_MODE --build-arg OPENSRS_CURRENCY --build-arg GITHUB_CLIENT_ID --build-arg GITHUB_CLIENT_SECRET --build-arg COOLIFY_SSH_HOST --build-arg COOLIFY_SSH_PORT --build-arg COOLIFY_SSH_USER --build-arg COOLIFY_SSH_PRIVATE_KEY_B64 --build-arg GCP_PROJECT_ID --build-arg GOOGLE_CLIENT_ID --build-arg OPENSRS_HOST_LIVE --build-arg SENTRY_AUTH_TOKEN --build-arg GITEA_USERNAME --build-arg NEXT_PUBLIC_SENTRY_DSN --build-arg INFRA_HEALTH_SECRET --build-arg DATABASE_URL --build-arg OPENSRS_HOST_TEST --build-arg VIBN_SECRETS_KEY --build-arg COOLIFY_BUILD_SECRETS_HASH=03fb6d60adb1c477e10fc8b43e21ba4312d09b95d0cfa99168b60aef8a513707 --build-arg 'COOLIFY_URL' --build-arg 'COOLIFY_BRANCH' --build-arg 'COOLIFY_RESOURCE_UUID' \\\/artifacts\\\/y6wyqjod8h2mbmzpmobeoozd\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:07.568468Z\",\"hidden\":true,\"batch\":14,\"order\":19},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'bash \\\/artifacts\\\/build.sh'\",\"output\":\"#0 building with \\\"default\\\" instance using docker driver\\n\\n#1 [internal] load build definition from Dockerfile\\n#1 transferring dockerfile:\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:08.758342Z\",\"hidden\":true,\"batch\":14,\"order\":20},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'bash \\\/artifacts\\\/build.sh'\",\"output\":\"#1 transferring dockerfile: 2B 0.0s done\\n#1 DONE 0.2s\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:08.950984Z\",\"hidden\":true,\"batch\":14,\"order\":21},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'bash \\\/artifacts\\\/build.sh'\",\"output\":\"ERROR: failed to build: failed to solve: failed to read dockerfile: open Dockerfile: no such file or directory\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:08.966757Z\",\"hidden\":true,\"batch\":14,\"order\":22},{\"command\":\"docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'bash \\\/artifacts\\\/build.sh'\",\"output\":\"exit status 1\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:08.972325Z\",\"hidden\":true,\"batch\":14,\"order\":23},{\"command\":null,\"output\":\"========================================\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.143367Z\",\"hidden\":false,\"batch\":1,\"order\":24},{\"command\":null,\"output\":\"Deployment failed: Command execution failed (exit code 1): docker exec y6wyqjod8h2mbmzpmobeoozd bash -c 'bash \\\/artifacts\\\/build.sh'\\nError: #0 building with \\\"default\\\" instance using docker driver\\n\\n#1 [internal] load build definition from Dockerfile\\n#1 transferring dockerfile:\\n#1 transferring dockerfile: 2B 0.0s done\\n#1 DONE 0.2s\\nERROR: failed to build: failed to solve: failed to read dockerfile: open Dockerfile: no such file or directory\\nexit status 1\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.172726Z\",\"hidden\":false,\"batch\":1,\"order\":25},{\"command\":null,\"output\":\"Error type: App\\\\Exceptions\\\\DeploymentException\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.196736Z\",\"hidden\":true,\"batch\":1,\"order\":26},{\"command\":null,\"output\":\"Error code: 0\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.220352Z\",\"hidden\":true,\"batch\":1,\"order\":27},{\"command\":null,\"output\":\"Location: \\\/var\\\/www\\\/html\\\/app\\\/Traits\\\/ExecuteRemoteCommand.php:242\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.240357Z\",\"hidden\":true,\"batch\":1,\"order\":28},{\"command\":null,\"output\":\"Stack trace (first 5 lines):\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.264695Z\",\"hidden\":true,\"batch\":1,\"order\":29},{\"command\":null,\"output\":\"#0 \\\/var\\\/www\\\/html\\\/app\\\/Traits\\\/ExecuteRemoteCommand.php(106): App\\\\Jobs\\\\ApplicationDeploymentJob->executeCommandWithProcess()\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.286381Z\",\"hidden\":true,\"batch\":1,\"order\":30},{\"command\":null,\"output\":\"#1 \\\/var\\\/www\\\/html\\\/vendor\\\/laravel\\\/framework\\\/src\\\/Illuminate\\\/Collections\\\/Traits\\\/EnumeratesValues.php(275): App\\\\Jobs\\\\ApplicationDeploymentJob->{closure:App\\\\Traits\\\\ExecuteRemoteCommand::execute_remote_command():72}()\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.298778Z\",\"hidden\":true,\"batch\":1,\"order\":31},{\"command\":null,\"output\":\"#2 \\\/var\\\/www\\\/html\\\/app\\\/Traits\\\/ExecuteRemoteCommand.php(72): Illuminate\\\\Support\\\\Collection->each()\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.311709Z\",\"hidden\":true,\"batch\":1,\"order\":32},{\"command\":null,\"output\":\"#3 \\\/var\\\/www\\\/html\\\/app\\\/Jobs\\\/ApplicationDeploymentJob.php(3290): App\\\\Jobs\\\\ApplicationDeploymentJob->execute_remote_command()\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.325249Z\",\"hidden\":true,\"batch\":1,\"order\":33},{\"command\":null,\"output\":\"#4 \\\/var\\\/www\\\/html\\\/app\\\/Jobs\\\/ApplicationDeploymentJob.php(898): App\\\\Jobs\\\\ApplicationDeploymentJob->build_image()\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.338655Z\",\"hidden\":true,\"batch\":1,\"order\":34},{\"command\":null,\"output\":\"========================================\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.348379Z\",\"hidden\":false,\"batch\":1,\"order\":35},{\"command\":null,\"output\":\"Deployment failed. Removing the new version of your application.\",\"type\":\"stderr\",\"timestamp\":\"2026-05-14T18:46:09.358630Z\",\"hidden\":false,\"batch\":1,\"order\":36},{\"command\":null,\"output\":\"Gracefully shutting down build container: y6wyqjod8h2mbmzpmobeoozd\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:10.400671Z\",\"hidden\":false,\"batch\":1,\"order\":37},{\"command\":\"docker stop -t 30 y6wyqjod8h2mbmzpmobeoozd\",\"output\":\"y6wyqjod8h2mbmzpmobeoozd\",\"type\":\"stdout\",\"timestamp\":\"2026-05-14T18:46:11.039730Z\",\"hidden\":true,\"batch\":17,\"order\":38}]","only_this_server":false,"pull_request_id":0,"restart_only":false,"rollback":false,"server_id":0,"server_name":"localhost","status":"failed","created_at":"2026-05-14T18:45:53.000000Z","updated_at":"2026-05-14T18:46:11.000000Z"}
```
## Matches in master-ai/vibn-frontend/app/api/context/summarize/route.ts
### const MODEL L1-11
```
import { NextRequest, NextResponse } from "next/server";
const MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_URL = `https://generativelanguage.googleapis.com/v1beta/models/${MODEL}:generateContent`;
export async function POST(request: NextRequest) {
try {
const { content, title } = await request.json();
if (!content) {
```
42 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/analyze-chats/route.ts
### const GEMINI_MODEL L1-21
```
import { NextResponse } from 'next/server';
import { authSession } from "@/lib/auth/session-server";
import { query } from '@/lib/db-postgres';
export const maxDuration = 60;
const GEMINI_API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const GEMINI_BASE_URL = 'https://generativelanguage.googleapis.com/v1beta/models';
async function callGemini(prompt: string): Promise<string> {
const res = await fetch(`${GEMINI_BASE_URL}/${GEMINI_MODEL}:generateContent?key=${GEMINI_API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ parts: [{ text: prompt }] }],
generationConfig: { temperature: 0.2, maxOutputTokens: 4096 },
}),
});
const data = await res.json();
const text = data?.candidates?.[0]?.content?.parts?.[0]?.text ?? '';
```
105 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/analyze-repo/route.ts
### const GEMINI_MODEL L1-11
```
import { NextResponse } from 'next/server';
import { authSession } from "@/lib/auth/session-server";
import { query } from '@/lib/db-postgres';
import { execSync } from 'child_process';
import { existsSync, readdirSync, readFileSync, statSync, rmSync } from 'fs';
import { join } from 'path';
export const maxDuration = 120;
const GEMINI_API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
```
205 lines remaining in ancestor node. Read the file to see all.
### async function callGemini( ) const res L14-24
```
async function callGemini(prompt: string): Promise<string> {
const res = await fetch(`${GEMINI_BASE_URL}/${GEMINI_MODEL}:generateContent?key=${GEMINI_API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ parts: [{ text: prompt }] }],
generationConfig: { temperature: 0.2, maxOutputTokens: 6000 },
}),
});
const data = await res.json();
return data?.candidates?.[0]?.content?.parts?.[0]?.text ?? '';
```
1 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/projects/[projectId]/generate-migration-plan/route.ts
### const GEMINI_MODEL L1-21
```
import { NextResponse } from 'next/server';
import { authSession } from "@/lib/auth/session-server";
import { query } from '@/lib/db-postgres';
export const maxDuration = 120;
const GEMINI_API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const GEMINI_BASE_URL = 'https://generativelanguage.googleapis.com/v1beta/models';
async function callGemini(prompt: string): Promise<string> {
const res = await fetch(`${GEMINI_BASE_URL}/${GEMINI_MODEL}:generateContent?key=${GEMINI_API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ parts: [{ text: prompt }] }],
generationConfig: { temperature: 0.3, maxOutputTokens: 8000 },
}),
});
const data = await res.json();
return data?.candidates?.[0]?.content?.parts?.[0]?.text ?? '';
```
118 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/lib/ai/gemini-chat.ts
### const GEMINI_MODEL L11-15
```
const GEMINI_API_KEY = process.env.GOOGLE_API_KEY || "";
const GEMINI_MODEL = process.env.VIBN_CHAT_MODEL || "gemini-3.1-pro-preview";
const GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta";
```
### async function callGeminiChat( ) const url L145-155
```
}> {
const url = `${GEMINI_BASE_URL}/models/${GEMINI_MODEL}:generateContent?key=${GEMINI_API_KEY}`;
let res: Response;
try {
res = await fetch(url, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(buildBody(opts)),
});
} catch (e) {
```
50 lines remaining in ancestor node. Read the file to see all.
### async function* streamGeminiChat( ) const url L216-226
```
}): AsyncGenerator<ChatChunk> {
const url = `${GEMINI_BASE_URL}/models/${GEMINI_MODEL}:streamGenerateContent?key=${GEMINI_API_KEY}&alt=sse`;
let res: Response;
try {
res = await fetch(url, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(buildBody(opts)),
});
} catch (e) {
```
59 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/lib/ai/gemini-client.ts
### const DEFAULT_MODEL L1-11
```
import type { LlmClient, StructuredCallArgs } from '@/lib/ai/llm-client';
import { zodToJsonSchema } from 'zod-to-json-schema';
const DEFAULT_MODEL = process.env.GEMINI_MODEL || 'gemini-2.0-flash-exp';
const GOOGLE_API_KEY = process.env.GOOGLE_API_KEY || '';
const GEMINI_BASE_URL = 'https://generativelanguage.googleapis.com/v1beta/models';
class JsonValidationError extends Error {
constructor(message: string, public readonly rawResponse: string) {
super(message);
```
179 lines remaining in ancestor node. Read the file to see all.
## Assistant
**Tool Call: cat << 'EOF' > test-gemini.js
const API_KEY = "AIzaSyCwXxLU6dGrRLfHRxGtOWg2hi-RQGMn664";
const MODEL = "gemini-3.1-pro-preview";
const GEMINI_URL = `https://generativelanguage.googleapis.com/v1beta/models/${MODEL}:generateContent`;
fetch(`${GEMINI_URL}?key=${API_KEY}`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
contents: [{ role: 'user', parts: [{ text: "test" }] }],
generationConfig: { temperature: 0.3 },
}),
}).then(r => r.text()).then(console.log).catch(console.error);
EOF
node test-gemini.js**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
{
"candidates": [
{
"content": {
"parts": [
{
"text": "Test received! How can I help you today?",
"thoughtSignature": "EqwFCqkFAQw51sdmH0UDEbJzLXZDCZC9jbkaaMOYChuVq3QECkziWMBd28E2v8ciiTrWMe1bGrid6Oj9n8AvQ4w4xv5/n3Ca1n7iF/aFrGvRyl8AjfeFZKHBBUw3v7Tla0MHSF03RMJ1VGYVHjihWXzgUxD/PbzAZG0+wLDS9vcgDgaZ+v7d24E1uCF+uviOugLrzHre+XvgVw0eLdM55TkQHB4jkdapnErxHKbH6FkHDnSewm5NYYlQhnjJOCmo14k37eAjrxQsyNJ8e+7WjFEAr34k4zVR3cCK5apO4yR3Z3HcEgF3s4s27RbeWcYrZsDw8hyuCDVGTh4zLNQX9SxrKLD061CfCiGLpIYJpX8TU8Ml2aGQ01PtvPNjPeIobJYRLprQRQoE4+PNZ1/VHBY6HsgudI3c8eg04Nhnt6iEm45lRpdeSo4uOux5b9Kpavq9r33td+zMRJDNRtY9V0PC1mZcS6/ROtNSUT6K3nbNcRF8sLyhBkre2yh7LglyB2ff50wLxxA2dVvPZzZfZHpxQqMd1/KDONISf/Iy0sPrdujfn5uOE+KbVk42H/tJM9RGJJmHQfS09zDRyIlq+/mv7hUta7851/lAzg6oXDejcZYM7hsN6Hl+xEyoKjnnrPATS196mqOLhuOymtxcRpqJNeIzz92eSwuGyKnbMLDrHnGhkhuNKmo+NE7bQ9IccorIcIZwnZyRfSI50Eevv29XEPARQJB5wVzDCvpm/Du1iZesWDFc66n7saLJdEVdIvQ4sGvBpPd/BD2pN7lqxBJFIdWeCDODtyrapTaCcS4aR0St16jduafaKXLEr4EvBqK/8ct1z3U3e9D2Dpo6VayPX2y9mU+rAle04KiQkFCobWI7yLvVQvVWfvKtjyWvMUJ0qz3Ir+c5MhTwI84d"
}
],
"role": "model"
},
"finishReason": "STOP",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 2,
"candidatesTokenCount": 10,
"totalTokenCount": 175,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 2
}
],
"thoughtsTokenCount": 163,
"serviceTier": "standard"
},
"modelVersion": "gemini-3.1-pro-preview",
"responseId": "F2UHatntB6usz7IP_67s0QY"
}
```
## Assistant
**Tool Call: Search files for regex `/api/context/summarize`**
Status: Completed
Found 2 matches:
## Matches in master-ai/vibn-frontend/CHECKLIST_FIXES_COMPLETE.md
### # Checklist & Document Upload - All Issues Fixed ✅ ## How It Works Now ### Text Paste Flow L137-140
```
3. Frontend calls:
- `/api/context/summarize` (generates AI summary)
- `/api/projects/[projectId]/knowledge/import-ai-chat` (creates knowledge_item)
4. Backend creates:
```
## Matches in master-ai/vibn-frontend/scripts/test-endpoints.sh
### L101-105
```
echo "8⃣ Utility APIs"
echo "-----------------------------------"
test_endpoint "POST" "/api/context/summarize" "400" "Summarize context (requires body)"
test_endpoint "GET" "/api/debug/env" "200" "Debug: Environment check"
test_endpoint "GET" "/api/diagnose" "200" "Diagnose system"
```
## Assistant
**Tool Call: cat .env**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
cat: .env: No such file or directory
```
## Assistant
**Tool Call: head -n 5 .env.local**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
# ── Google / Gemini ───────────────────────────────────────────────────────────
GOOGLE_API_KEY=AIzaSyCwXxLU6dGrRLfHRxGtOWg2hi-RQGMn664
GEMINI_MODEL=gemini-3.1-pro
# ── Google OAuth (NextAuth) ────────────────────────────────────────────────────
```
## Assistant
**Tool Call: vibn\-frontend/.env.local**
Status: Completed
Diff: vibn-frontend/.env.local
```
# ── Google / Gemini ───────────────────────────────────────────────────────────
GOOGLE_API_KEY=AIzaSyCwXxLU6dGrRLfHRxGtOWg2hi-RQGMn664
GEMINI_MODEL=gemini-3.1-pro-preview
# ── Google OAuth (NextAuth) ────────────────────────────────────────────────────
GOOGLE_CLIENT_ID=673711367815-us92rkicrpgjrh381p4cb770lo9iq8tt.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=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
# ── NextAuth ──────────────────────────────────────────────────────────────────
NEXTAUTH_SECRET=1yaw0RWG7g4yxPf3kAgsZoobrnlP/ZmpfrzuFAhTGnA=
NEXTAUTH_URL=http://localhost:3000
# Local dev: bypass Google — set to your real email (must match DB user you want)
NEXT_PUBLIC_DEV_LOCAL_AUTH_EMAIL=mark@getacquired.com
# Act as that user for /api/projects* without signing in (next dev only)
NEXT_PUBLIC_DEV_BYPASS_PROJECT_AUTH=true
# ── PostgreSQL (Coolify public port; run: npm run db:sync:coolify) ────────────
# If unreachable: open host firewall for TCP on public_port. SSL: DB_SSL=true if required.
DATABASE_URL=postgresql://vibn_user:JSMcySGlEj3pSMjHvwEHAd1A@34.19.250.135:5433/vibn
POSTGRES_URL=postgresql://vibn_user:JSMcySGlEj3pSMjHvwEHAd1A@34.19.250.135:5433/vibn
# ── Gitea ─────────────────────────────────────────────────────────────────────
GITEA_API_URL=https://git.vibnai.com
GITEA_API_TOKEN=7803666418f1c90a5a65ecc35f8c2f3abaa7d2f3
GITEA_USERNAME=mark
# ── Coolify ───────────────────────────────────────────────────────────────────
COOLIFY_URL=http://34.19.250.135:8000
COOLIFY_API_TOKEN=1|clqAOiQPygpuwyA5HVDyWoKfNRtDH8l4Huge2PCmef521cc1
COOLIFY_SERVER_UUID=jws4g4cgssss4cw48s488woc
VIBN_SECRETS_KEY=G1gGSlAklGsIerQ8cmwSGsoO8gvHax/JfY5IgLGEZAOwIhm/pWWPVBJ10hI4Duqy
NEXT_PUBLIC_COOLIFY_URL=http://34.19.250.135:8000
# Ops probe: GET /api/internal/infra-health
INFRA_HEALTH_SECRET=6e60bec12bd1391b4753fc486580f57e78e02a961f8e9999e19254c1af7261bb
# ── DeepSeek (workspace sidebar chat → POST /api/chat) ──────────────────────────
VIBN_CHAT_PROVIDER=gemini
echo "COOLIFY_SSH_HOST=34.19.250.135" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
echo "COOLIFY_SSH_PORT=22" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
echo "COOLIFY_SSH_USER=vibn-logs" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
PRIV_B64=$(cat ~/.ssh/vibn-logs-local | base64 | tr -d '\n')
echo "COOLIFY_SSH_PRIVATE_KEY_B64=$PRIV_B64" >> /Users/markhenderson/master-ai/vibn-frontend/.env.local
COOLIFY_SSH_HOST=34.19.250.135
COOLIFY_SSH_PORT=22
COOLIFY_SSH_USER=vibn-logs
COOLIFY_SSH_PRIVATE_KEY_B64=LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUFNd0FBQUF0emMyZ3RaVwpReU5UVXhPUUFBQUNDNS92M0RwRjgwWDVuNitjM2VNbElpVUdQN3d1bjdjL2Z6R0ttaUMzV3BzUUFBQUpqUE1BQ2N6ekFBCm5BQUFBQXR6YzJndFpXUXlOVFV4T1FBQUFDQzUvdjNEcEY4MFg1bjYrYzNlTWxJaVVHUDd3dW43Yy9mekdLbWlDM1dwc1EKQUFBRUErMmFCditqa3pndWJaZTZyd1lhK1FDenFGSVpQYW5POWtYSXE5ZzdWYjc3bisvY09rWHpSZm1mcjV6ZDR5VWlKUQpZL3ZDNmZ0ejkvTVlxYUlMZGFteEFBQUFEM1pwWW00dGJHOW5jeTFzYjJOaGJBRUNBd1FGQmc9PQotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K
COOLIFY_SSH_HOST=34.19.250.135
COOLIFY_SSH_PORT=22
COOLIFY_SSH_USER=vibn-logs
COOLIFY_SSH_PRIVATE_KEY_B64=LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0KYjNCbGJuTnphQzFyWlhrdGRqRUFBQUFBQkc1dmJtVUFBQUFFYm05dVpRQUFBQUFBQUFBQkFBQUFNd0FBQUF0emMyZ3RaVwpReU5UVXhPUUFBQUNDNS92M0RwRjgwWDVuNitjM2VNbElpVUdQN3d1bjdjL2Z6R0ttaUMzV3BzUUFBQUpqUE1BQ2N6ekFBCm5BQUFBQXR6YzJndFpXUXlOVFV4T1FBQUFDQzUvdjNEcEY4MFg1bjYrYzNlTWxJaVVHUDd3dW43Yy9mekdLbWlDM1dwc1EKQUFBRUErMmFCditqa3pndWJaZTZyd1lhK1FDenFGSVpQYW5POWtYSXE5ZzdWYjc3bisvY09rWHpSZm1mcjV6ZDR5VWlKUQpZL3ZDNmZ0ejkvTVlxYUlMZGFteEFBQUFEM1pwWW00dGJHOW5jeTFzYjJOaGJBRUNBd1FGQmc9PQotLS0tLUVORCBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLS0K
# Stripe Platform Keys (Test Mode)
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_51TUwa39DgTI4W5Vpgi1fazBGnNvHkaaMnih5poAwpCZ8U7yF9UIz8ybACc89ktRQh789q3bzxw4oy2aeQT9fdYTa004oyumjOm
STRIPE_SECRET_KEY=sk_test_51TUwa39DgTI4W5Vp7UjeXcUmunoexF3nXVtNAG8SisncwEeKVmrdAjVvYMvnEKxRWr2UnJXuNPX8eF0xdIWaWrmM00trL4Fn3V
STRIPE_CLIENT_ID=ca_UTuWw2qE8wFLNlWOL7T1v0H5GdB6BtDw
```
## Assistant
**Tool Call: Search files for regex `GEMINI_MODEL=`**
Status: Completed
No matches found
## Assistant
**Tool Call: cat lib/ai/gemini-chat.ts | head -n 25**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
/**
* Gemini 3.1 Pro chat client with tool-calling support.
*
* Architecture:
* - Tool-calling rounds use generateContent (non-streaming) so we always
* get the complete response including thought_signature. Thinking models
* (2.5+, 3.x) require this field to be echoed back in functionResponse
* and it is not reliably present in individual SSE chunks.
* - Final text-only response uses streamGenerateContent for good UX.
*/
const GEMINI_API_KEY = process.env.GOOGLE_API_KEY || "";
const GEMINI_MODEL = process.env.VIBN_CHAT_MODEL || "gemini-3.1-pro-preview";
const GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta";
export interface ChatMessage {
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: ToolCall[];
toolCallId?: string;
toolName?: string;
thoughtSignature?: string;
}
export interface ToolCall {
```
## Assistant
I found the root cause of the error!
The `Failed to generate summary` error was coming from your `/api/context/summarize/route.ts` endpoint (which is called during the text-pasting flow).
### What went wrong:
In your `vibn-frontend/.env.local` file, you had `GEMINI_MODEL=gemini-3.1-pro` set. When the summarize endpoint tried to hit the Gemini API with that model name, Google's API returned a `404 Not Found` because the correct model identifier currently available is actually `gemini-3.1-pro-preview`. Since the API request failed with a 404, the endpoint threw the generic `"Failed to generate summary"` 500 error that you saw.
### How I fixed it:
I've updated `vibn-frontend/.env.local` to use the correct model string:
```env
GEMINI_MODEL=gemini-3.1-pro-preview
```
Since environment variables are loaded at boot, you will just need to **restart your Next.js development server** (`npm run dev`) for the fix to take effect. Give that a try and the chat flow should start generating summaries properly again!
## User (checkpoint)
can you address this bug Runtime ReferenceError
Sparkles is not defined
components/vibn-chat/chat-panel.tsx (258:10) @ ThinkingBubble
256 | }}
257 | >
> 258 | <Sparkles
| ^
259 | style={{ width: 12, height: 12, opacity: 0.7 }}
260 | className="animate-pulse"
261 | />
Call Stack
13
Show 11 ignore-listed frame(s)
ThinkingBubble
components/vibn-chat/chat-panel.tsx (258:10)
ProjectShell
app/[workspace]/project/[projectId]/(home)/layout.tsx (23:9)
**Tool Call: Search files for regex `export.*ThinkingBubble`**
Status: Completed
No matches found
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 1-100)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
```
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
**Tool Call: npm run lint**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
> vibn-frontend@0.1.0 lint
> eslint
/Users/markhenderson/master-ai/vibn-frontend/app/(marketing)/mission/page.tsx
97:15 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
97:60 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
97:135 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
103:17 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
104:155 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
105:20 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
105:90 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
105:146 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
105:294 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
105:435 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
106:21 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
107:20 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
107:260 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
107:282 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
108:20 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
108:39 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
111:77 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
111:90 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
112:166 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
112:340 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
112:486 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
114:81 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
117:21 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
117:218 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
119:376 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
123:52 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
124:30 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
124:308 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
126:20 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
130:30 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
130:165 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
131:30 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
133:19 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/layout.tsx
3:10 warning 'useParams' is defined but never used @typescript-eslint/no-unused-vars
4:10 warning 'ChatPanel' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/billing/page.tsx
1:10 warning 'Suspense' is defined but never used @typescript-eslint/no-unused-vars
3:10 warning 'Loader2' is defined but never used @typescript-eslint/no-unused-vars
6:11 warning 'projectId' is assigned a value but never used @typescript-eslint/no-unused-vars
50:49 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/hosting/page.tsx
339:85 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
339:104 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/infrastructure/page.tsx
33:6 warning 'ProviderCategory' is defined but never used @typescript-eslint/no-unused-vars
136:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/infrastructure/page.tsx:136:7
134 | useEffect(() => {
135 | if (anatomy && anatomy.infrastructure.databases[0] && expandedDbs.size === 0) {
> 136 | setExpandedDbs(new Set([anatomy.infrastructure.databases[0].uuid]));
| ^^^^^^^^^^^^^^ Avoid calling setState() directly within an effect
137 | }
138 | }, [anatomy, expandedDbs.size]);
139 | react-hooks/set-state-in-effect
220:9 warning 'Icon' is assigned a value but never used @typescript-eslint/no-unused-vars
580:9 warning 'isStripe' is assigned a value but never used @typescript-eslint/no-unused-vars
769:10 warning 'Para' is defined but never used @typescript-eslint/no-unused-vars
875:7 warning 'railEmptyButton' is assigned a value but never used @typescript-eslint/no-unused-vars
943:7 warning 'chipRow' is assigned a value but never used @typescript-eslint/no-unused-vars
944:7 warning 'chip' is assigned a value but never used @typescript-eslint/no-unused-vars
979:7 warning 'inlineCode' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/market/page.tsx
7:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
7:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
13:14 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
188:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
235:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx
34:3 warning 'RotateCcw' is defined but never used @typescript-eslint/no-unused-vars
149:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
415:10 warning 'BriefPanel' is defined but never used @typescript-eslint/no-unused-vars
472:19 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
473:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
474:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
475:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
476:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
477:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
478:20 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
529:25 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
530:26 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
531:26 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
532:26 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
533:26 warning 'node' is defined but never used @typescript-eslint/no-unused-vars
752:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx:752:5
750 | useEffect(() => {
751 | let cancelled = false;
> 752 | setLoading(true);
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
753 | fetch(
754 | `/api/chat/threads?workspace=${encodeURIComponent(workspace)}&projectId=${encodeURIComponent(projectId)}`,
755 | { react-hooks/set-state-in-effect
896:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx:896:7
894 | useEffect(() => {
895 | if (!selectedId && tasks.length > 0) {
> 896 | setSelectedId(tasks[0].id);
| ^^^^^^^^^^^^^ Avoid calling setState() directly within an effect
897 | return;
898 | }
899 | if (selectedId && !tasks.some((t) => t.id === selectedId)) { react-hooks/set-state-in-effect
1683:7 warning 'subHeading' is assigned a value but never used @typescript-eslint/no-unused-vars
1761:7 warning 'addRow' is assigned a value but never used @typescript-eslint/no-unused-vars
1798:7 warning 'listRow' is assigned a value but never used @typescript-eslint/no-unused-vars
2069:7 warning 'checkbox' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/preview/page.tsx
40:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/preview/page.tsx:40:7
38 | useEffect(() => {
39 | if (!selectedUrl && options.length > 0) {
> 40 | setSelectedUrl(options[0].url);
| ^^^^^^^^^^^^^^ Avoid calling setState() directly within an effect
41 | }
42 | }, [options, selectedUrl]);
43 | react-hooks/set-state-in-effect
45:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/preview/page.tsx:45:5
43 |
44 | useLayoutEffect(() => {
> 45 | setIframeSrc(selectedUrl ?? null);
| ^^^^^^^^^^^^ Avoid calling setState() directly within an effect
46 | }, [selectedUrl]);
47 |
48 | useEffect(() => { react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/product/page.tsx
45:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/product/page.tsx:45:7
43 | useEffect(() => {
44 | if (codebases && codebases[0]) {
> 45 | setExpanded(prev => (prev.size === 0 ? new Set([codebases[0].id]) : prev));
| ^^^^^^^^^^^ Avoid calling setState() directly within an effect
46 | }
47 | }, [codebases]);
48 | react-hooks/set-state-in-effect
50:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/product/page.tsx:50:5
48 |
49 | useEffect(() => {
> 50 | setSelection(null);
| ^^^^^^^^^^^^ Avoid calling setState() directly within an effect
51 | setExpanded(new Set());
52 | }, [projectId]);
53 | react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/projects/page.tsx
72:17 warning 'session' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/[workspace]/settings/page.tsx
28:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
36:20 warning 'setSettings' is assigned a value but never used @typescript-eslint/no-unused-vars
37:10 warning 'loading' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/activity/route.ts
36:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
80:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/backfill-isolation/route.ts
30:9 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
108:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
124:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/check-sessions/route.ts
41:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/fix-project-workspace/route.ts
54:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/migrate/route.ts
14:10 warning 'readFileSync' is defined but never used @typescript-eslint/no-unused-vars
15:10 warning 'join' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/path-b/autosave/route.ts
42:51 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
73:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/admin/path-b/route.ts
24:19 warning 'setFlag' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/ai/chat/route.ts
87:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
137:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
141:32 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
145:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
224:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/chat/route.ts
73:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
75:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
80:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
121:9 warning 'briefBlock' is assigned a value but never used @typescript-eslint/no-unused-vars
121:31 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
122:203 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
311:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
322:57 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
351:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
358:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
362:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
364:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
368:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
485:11 error 'messages' is never reassigned. Use 'const' instead prefer-const
/Users/markhenderson/master-ai/vibn-frontend/app/api/chat/threads/[id]/route.ts
16:31 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
22:32 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
30:32 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/chat/threads/route.ts
96:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
99:27 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
133:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/chatgpt/import-file/route.ts
51:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
80:21 warning 'key' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/chatgpt/import/route.ts
26:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
83:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
108:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
141:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
154:60 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/cursor/backfill/route.ts
2:10 warning 'adminAuth' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/cursor/tag-sessions/route.ts
44:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
48:27 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
96:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
174:64 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/debug/check-links/route.ts
23:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
33:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
34:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/debug/cursor-session-summary/route.ts
40:52 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/debug/cursor-sessions/route.ts
32:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
33:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
105:70 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/debug/cursor-unknown-sessions/route.ts
20:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/diagnose/route.ts
5:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
23:13 warning 'testDoc' is assigned a value but never used @typescript-eslint/no-unused-vars
26:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
42:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
53:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/extension/link-project/route.ts
24:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/github/connect/route.ts
43:27 warning 'request' is defined but never used @typescript-eslint/no-unused-vars
50:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
73:30 warning 'request' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/github/file-content/route.ts
23:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/github/oauth/callback/page.tsx
73:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/github/repo-tree/route.ts
23:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
113:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
114:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
122:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/github/repos/route.ts
22:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
58:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/keys/get/route.ts
38:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/keys/route.ts
23:10 warning 'decrypt' is defined but never used @typescript-eslint/no-unused-vars
48:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
95:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
175:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/mcp/browser.ts
73:9 warning 'script' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/mcp/generate-key/route.ts
25:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
93:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/mcp/route.ts
56:3 warning 'autosaveWorkspace' is defined but never used @typescript-eslint/no-unused-vars
82:10 warning 'listContainersForApp' is defined but never used @typescript-eslint/no-unused-vars
92:3 warning 'projectUuidOf' is defined but never used @typescript-eslint/no-unused-vars
267:56 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
605:11 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
631:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
642:11 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
667:7 error 'possibleDeployments' is never reassigned. Use 'const' instead prefer-const
820:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
843:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
870:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
920:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
992:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
993:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1015:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1028:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1035:73 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1052:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1108:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1135:74 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1175:74 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1245:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1301:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1384:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1403:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1441:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1470:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1521:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1539:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1558:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1577:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1596:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1653:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1670:59 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2109:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2201:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2244:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2298:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2378:61 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2418:63 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2612:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2638:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2676:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2785:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2867:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2910:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
2933:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3138:9 warning 'ownedUuids' is assigned a value but never used @typescript-eslint/no-unused-vars
3154:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3165:59 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3277:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3305:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3342:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3400:9 warning 'ownedUuids' is assigned a value but never used @typescript-eslint/no-unused-vars
3420:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3463:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3509:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3576:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3612:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3744:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
3873:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4008:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4040:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4069:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4089:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4105:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4137:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4163:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4187:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4225:9 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4234:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4266:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4279:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4297:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4336:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4346:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4364:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4500:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4565:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4572:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4619:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4741:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4776:73 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4803:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4892:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4906:74 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4932:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
4958:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5002:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5092:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5115:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5136:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5161:70 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5371:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5380:33 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5436:73 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5451:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5480:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5514:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5556:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5601:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5634:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5688:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5689:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5690:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5691:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5779:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5877:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5893:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5922:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
5922:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
5947:9 error 'cacheHit' is never reassigned. Use 'const' instead prefer-const
5947:9 warning 'cacheHit' is assigned a value but never used @typescript-eslint/no-unused-vars
6038:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6039:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6041:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6042:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6119:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6137:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
6137:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6148:14 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
6180:12 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
6247:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6302:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6326:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
6353:32 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6434:24 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
6447:22 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
6484:18 warning 'err' is defined but never used @typescript-eslint/no-unused-vars
6506:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6519:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
6519:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6562:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6575:44 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6593:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6606:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
6606:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6645:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6654:44 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6696:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6713:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6732:7 error 'bqOptions' is never reassigned. Use 'const' instead prefer-const
6732:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6743:14 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
6792:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
6826:47 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/openai/gpts/route.ts
24:7 warning 'userId' is assigned a value but never used @typescript-eslint/no-unused-vars
25:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/openai/projects/route.ts
25:7 warning 'userId' is assigned a value but never used @typescript-eslint/no-unused-vars
26:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/agent-chat/route.ts
12:61 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
14:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
24:62 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
40:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
105:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/analyze-repo/route.ts
5:49 warning 'statSync' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/analyze/route.ts
19:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
77:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/anatomy/route.ts
404:16 warning 'lastBuildFor' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/architecture/route.ts
23:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
56:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
59:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
79:90 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/associate-github-sessions/route.ts
31:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
35:25 warning 'githubRepoUrl' is assigned a value but never used @typescript-eslint/no-unused-vars
73:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/atlas-chat/route.ts
62:12 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
65:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
75:43 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
94:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
163:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
164:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
203:11 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
205:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/audit/generate/route.ts
96:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
119:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
169:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
181:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
246:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
275:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
339:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
341:56 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
342:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
345:59 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
349:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
367:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/complete-history/route.ts
27:11 warning 'timeline' is assigned a value but never used @typescript-eslint/no-unused-vars
30:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
65:86 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
87:60 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
103:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/context/route.ts
101:51 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
111:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
113:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
215:39 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/design-kit/route.ts
94:9 error 'dk' is never reassigned. Use 'const' instead prefer-const
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/extract-vision/route.ts
46:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
55:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/git-history/route.ts
35:13 warning 'projectId' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/knowledge/chunk-insight/route.ts
15:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
36:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/knowledge/items/route.ts
17:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/knowledge/route.ts
28:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/knowledge/themes/route.ts
2:24 warning 'getAdminDb' is defined but never used @typescript-eslint/no-unused-vars
3:10 warning 'getAlloyDbClient' is defined but never used @typescript-eslint/no-unused-vars
20:13 warning 'projectId' is assigned a value but never used @typescript-eslint/no-unused-vars
53:52 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
53:57 warning 'index' is defined but never used @typescript-eslint/no-unused-vars
90:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/knowledge/upload-document/route.ts
28:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
106:11 warning 'knowledgeItemIds' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/mission/generate/route.ts
64:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
77:14 warning 'dbError' is defined but never used @typescript-eslint/no-unused-vars
82:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
94:14 warning 'firestoreError' is defined but never used @typescript-eslint/no-unused-vars
99:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
106:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/mvp-checklist/route.ts
189:12 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
190:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
191:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
242:9 error 'cursorConversations' is never reassigned. Use 'const' instead prefer-const
242:30 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
295:69 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
306:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
372:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
372:60 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
379:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
380:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
603:86 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
656:39 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
656:63 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
656:71 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
693:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
693:56 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
755:53 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
755:67 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
755:82 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
760:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
761:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
766:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
792:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
793:47 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
794:44 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
825:10 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
828:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
830:39 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
863:30 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
888:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
906:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
906:81 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
916:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
929:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
941:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
941:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
954:41 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
954:49 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
956:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
959:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/plan/intelligent/route.ts
71:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
71:57 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
72:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
94:9 warning 'visionKeywords' is assigned a value but never used @typescript-eslint/no-unused-vars
211:64 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
225:43 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
225:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
228:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
322:124 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/plan/route.ts
58:10 warning 'emptyPlan' is defined but never used @typescript-eslint/no-unused-vars
67:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
76:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/plan/simulate/route.ts
65:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
130:41 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
141:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
141:55 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
375:43 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
385:34 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
390:49 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/preview-url/route.ts
77:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/route.ts
17:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
53:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/run-extraction/route.ts
30:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/timeline-view/route.ts
57:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
69:52 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
184:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
184:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
189:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
190:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
199:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
206:35 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
206:49 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
211:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
212:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
218:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
227:34 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
233:32 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
245:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
245:42 warning 'category' is defined but never used @typescript-eslint/no-unused-vars
245:52 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
245:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/timeline/route.ts
67:9 error 'gitCommits' is never reassigned. Use 'const' instead prefer-const
67:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
79:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
123:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
170:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/[projectId]/vision/route.ts
26:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/create/route.ts
38:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
55:51 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
66:9 error 'vibnWorkspace' is never reassigned. Use 'const' instead prefer-const
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/delete/route.ts
95:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/deploy/route.ts
31:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/phase/route.ts
4:15 warning 'ProjectPhase' is defined but never used @typescript-eslint/no-unused-vars
4:29 warning 'PhaseStatus' is defined but never used @typescript-eslint/no-unused-vars
68:11 warning 'userId' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/projects/route.ts
15:34 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
24:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
35:57 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
37:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/sessions/route.ts
16:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
18:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
27:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
37:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/stats/route.ts
17:76 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
39:68 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/user/api-key/route.ts
6:27 warning 'request' is defined but never used @typescript-eslint/no-unused-vars
13:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/v0/generate/route.ts
6:28 warning 'projectId' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/v0/import-chat/route.ts
2:10 warning 'v0' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/v0/iterate/route.ts
2:10 warning 'v0' is defined but never used @typescript-eslint/no-unused-vars
6:30 warning 'projectId' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/api/v0/list-chats/route.ts
4:27 warning 'request' is defined but never used @typescript-eslint/no-unused-vars
20:7 error Use "@ts-expect-error" instead of "@ts-ignore", as "@ts-ignore" will do nothing if the following line is error-free @typescript-eslint/ban-ts-comment
34:9 error Use "@ts-expect-error" instead of "@ts-ignore", as "@ts-ignore" will do nothing if the following line is error-free @typescript-eslint/ban-ts-comment
/Users/markhenderson/master-ai/vibn-frontend/app/api/webhooks/coolify/route.ts
17:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
24:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/webhooks/gitea/route.ts
83:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
91:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
106:7 error 'snapshotPatch' is never reassigned. Use 'const' instead prefer-const
106:37 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
137:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
141:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
154:41 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
162:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
165:49 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
176:44 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/work-completed/route.ts
30:47 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/workspaces/[slug]/keys/route.ts
32:9 error 'defaultKey' is never reassigned. Use 'const' instead prefer-const
32:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/api/workspaces/route.ts
60:11 error 'defaultKey' is never reassigned. Use 'const' instead prefer-const
60:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/app/auth/supertokens-page.tsx
4:10 warning 'useRouter' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/app/components/NextAuthComponent.tsx
4:8 warning 'Link' is defined but never used @typescript-eslint/no-unused-vars
72:9 warning 'title' is assigned a value but never used @typescript-eslint/no-unused-vars
96:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
96:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
400:41 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/check-documents.js
1:15 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
4:24 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/check-phase.js
1:15 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:24 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/components/AtlasChat.tsx
384:10 warning 'historyLoaded' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/OrchestratorChat.tsx
203:6 warning React Hook useEffect has a missing dependency: 'scrollToBottom'. Either include it or remove the dependency array react-hooks/exhaustive-deps
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/docs.tsx
5:30 warning 'themeColor' is defined but never used @typescript-eslint/no-unused-vars
42:36 warning 'themeColor' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/email.tsx
5:35 warning 'themeColor' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/marketing.tsx
631:8 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/marketing.tsx:631:8
629 | <div style={{ height: "100%", fontFamily: ff, background: bg, overflow: "auto", position: "relative", color: text }}>
630 | <style>{ACE_KEYFRAMES + fontImport(config?.font)}</style>
> 631 | <BgLayer />
| ^^^^^^^ This component is created during render
632 |
633 | {/* Nav */}
634 | {navStyle === "floating" ? (
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/marketing.tsx:517:19
515 | const border= isDark ? "rgba(255,255,255,0.08)" : "rgba(0,0,0,0.1)";
516 |
> 517 | const BgLayer = () => {
| ^^^^^^^
> 518 | if (bgStyle === "gradient") {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 519 | if (!isDark) return (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 625 | return <div style={{ position: "absolute", inset: 0, background: `radial-gradient(ellipse 70% 50% at 50% 0%, ${p}18, transparent)`, zIndex: 0 }} />;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 626 | };
| ^^^^ The component is created during render here
627 |
628 | return (
629 | <div style={{ height: "100%", fontFamily: ff, background: bg, overflow: "auto", position: "relative", color: text }}> react-hooks/static-components
1059:9 warning 'accent' is assigned a value but never used @typescript-eslint/no-unused-vars
1060:9 warning 'accentFg' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/design-scaffolds/mobile.tsx
19:36 warning 'themeColor' is defined but never used @typescript-eslint/no-unused-vars
58:35 warning 'themeColor' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/layout/coo-chat.tsx
71:3 warning Unused eslint-disable directive (no problems were reported from 'react-hooks/exhaustive-deps')
151:17 warning 'isCoo' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/layout/project-shell.tsx
91:17 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
/Users/markhenderson/master-ai/vibn-frontend/components/layout/vibn-sidebar.tsx
52:25 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/layout/vibn-sidebar.tsx:52:25
50 | useEffect(() => {
51 | const stored = localStorage.getItem(COLLAPSED_KEY);
> 52 | if (stored === "1") setCollapsed(true);
| ^^^^^^^^^^^^ Avoid calling setState() directly within an effect
53 | setMounted(true);
54 | }, []);
55 | react-hooks/set-state-in-effect
74:29 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/layout/vibn-sidebar.tsx:74:29
72 | // Fetch project-specific data when inside a project
73 | useEffect(() => {
> 74 | if (!activeProjectId) { setProject(null); return; }
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
75 |
76 | fetch(`/api/projects/${activeProjectId}`)
77 | .then(r => r.json()) react-hooks/set-state-in-effect
99:9 warning 'base' is assigned a value but never used @typescript-eslint/no-unused-vars
117:17 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
137:15 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
/Users/markhenderson/master-ai/vibn-frontend/components/project-association-prompt.tsx
42:10 warning 'hasCheckedThisSession' is assigned a value but never used @typescript-eslint/no-unused-vars
42:33 warning 'setHasCheckedThisSession' is assigned a value but never used @typescript-eslint/no-unused-vars
59:55 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
129:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
139:5 error 'unsubscribe' is never reassigned. Use 'const' instead prefer-const
148:6 warning React Hook useEffect has a missing dependency: 'dismissedWorkspaces'. Either include it or remove the dependency array react-hooks/exhaustive-deps
/Users/markhenderson/master-ai/vibn-frontend/components/project-creation/CreateProjectFlow.tsx
45:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project-creation/CreateProjectFlow.tsx:45:7
43 | useEffect(() => {
44 | if (open) {
> 45 | setStep("select-type");
| ^^^^^^^ Avoid calling setState() directly within an effect
46 | setMode(null);
47 | setBuildWizardStep(0);
48 | } react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/components/project-creation/ImportSetup.tsx
243:102 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
290:24 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildLivePlanPanel.tsx
62:40 error Error: Cannot reassign variable after render completes
Reassigning `firstOpenIndex` after render has completed can cause inconsistent behavior on subsequent renders. Consider using state instead.
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildLivePlanPanel.tsx:62:40
60 | const list = PRD_PLAN_SECTIONS.map((s, index) => {
61 | const done = isSectionFilled(s.phaseId, savedPhaseIds);
> 62 | if (!done && firstOpenIndex < 0) firstOpenIndex = index;
| ^^^^^^^^^^^^^^ Cannot reassign `firstOpenIndex` after render completes
63 | return {
64 | ...s,
65 | done, react-hooks/immutability
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx
86:11 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:86:11
84 | i,
85 | color: colors[i % colors.length],
> 86 | left: Math.random() * 100,
| ^^^^^^^^^^^^^ Cannot call impure function
87 | delay: Math.random() * 1.2,
88 | dur: Math.random() * 2.5 + 2,
89 | size: Math.random() * 9 + 4, react-hooks/purity
87:12 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:87:12
85 | color: colors[i % colors.length],
86 | left: Math.random() * 100,
> 87 | delay: Math.random() * 1.2,
| ^^^^^^^^^^^^^ Cannot call impure function
88 | dur: Math.random() * 2.5 + 2,
89 | size: Math.random() * 9 + 4,
90 | xDrift: (Math.random() - 0.5) * 200, react-hooks/purity
88:10 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:88:10
86 | left: Math.random() * 100,
87 | delay: Math.random() * 1.2,
> 88 | dur: Math.random() * 2.5 + 2,
| ^^^^^^^^^^^^^ Cannot call impure function
89 | size: Math.random() * 9 + 4,
90 | xDrift: (Math.random() - 0.5) * 200,
91 | rot: Math.random() * 360, react-hooks/purity
89:11 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:89:11
87 | delay: Math.random() * 1.2,
88 | dur: Math.random() * 2.5 + 2,
> 89 | size: Math.random() * 9 + 4,
| ^^^^^^^^^^^^^ Cannot call impure function
90 | xDrift: (Math.random() - 0.5) * 200,
91 | rot: Math.random() * 360,
92 | br: ["50%", "3px", "0"][Math.floor(Math.random() * 3)], react-hooks/purity
90:14 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:90:14
88 | dur: Math.random() * 2.5 + 2,
89 | size: Math.random() * 9 + 4,
> 90 | xDrift: (Math.random() - 0.5) * 200,
| ^^^^^^^^^^^^^ Cannot call impure function
91 | rot: Math.random() * 360,
92 | br: ["50%", "3px", "0"][Math.floor(Math.random() * 3)],
93 | })); react-hooks/purity
91:10 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:91:10
89 | size: Math.random() * 9 + 4,
90 | xDrift: (Math.random() - 0.5) * 200,
> 91 | rot: Math.random() * 360,
| ^^^^^^^^^^^^^ Cannot call impure function
92 | br: ["50%", "3px", "0"][Math.floor(Math.random() * 3)],
93 | }));
94 | return ( react-hooks/purity
92:40 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:92:40
90 | xDrift: (Math.random() - 0.5) * 200,
91 | rot: Math.random() * 360,
> 92 | br: ["50%", "3px", "0"][Math.floor(Math.random() * 3)],
| ^^^^^^^^^^^^^ Cannot call impure function
93 | }));
94 | return (
95 | <div react-hooks/purity
122:31 error Error: Cannot call impure function during render
`Math.random` is an impure function. Calling an impure function can produce unstable results that update unpredictably when the component happens to re-render. (https://react.dev/reference/rules/components-and-hooks-must-be-pure#components-and-hooks-must-be-idempotent).
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/BuildMvpJustineV2.tsx:122:31
120 | left: `${p.left}%`,
121 | width: p.size,
> 122 | height: p.size * (Math.random() * 0.6 + 0.4),
| ^^^^^^^^^^^^^ Cannot call impure function
123 | background: p.color,
124 | borderRadius: p.br,
125 | animation: `justineConfettiFall ${p.dur}s ${p.delay}s ease-in forwards`, react-hooks/purity
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/CodeImportMain.tsx
173:87 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/components/project-main/MvpSetupLayoutClient.tsx
8:7 warning 'BUILD_LEFT_BG' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/project/database-table-tree.tsx
47:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project/database-table-tree.tsx:47:5
45 | const ctrl = new AbortController();
46 | const t = setTimeout(() => ctrl.abort(), 12_000);
> 47 | setLoading(true);
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
48 | setError(null);
49 |
50 | fetch(`/api/projects/${projectId}/databases/${dbUuid}/tables`, { react-hooks/set-state-in-effect
92:29 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx
537:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:537:10
535 | >
536 | <div style={{ fontSize: "0.62rem", fontWeight: 700, color: "#a1a1aa", letterSpacing: "0.06em", margin: "4px 8px 8px" }}>MAIN</div>
> 537 | <Item active>People</Item>
| ^^^^ This component is created during render
538 | <Item>Companies</Item>
539 | <Item>
540 | Opportunities{" "}
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
538:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:538:10
536 | <div style={{ fontSize: "0.62rem", fontWeight: 700, color: "#a1a1aa", letterSpacing: "0.06em", margin: "4px 8px 8px" }}>MAIN</div>
537 | <Item active>People</Item>
> 538 | <Item>Companies</Item>
| ^^^^ This component is created during render
539 | <Item>
540 | Opportunities{" "}
541 | <span style={{ float: "right", fontSize: "0.65rem", background: "#e4e4e7", padding: "1px 6px", borderRadius: 999 }}>12</span>
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
539:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:539:10
537 | <Item active>People</Item>
538 | <Item>Companies</Item>
> 539 | <Item>
| ^^^^ This component is created during render
540 | Opportunities{" "}
541 | <span style={{ float: "right", fontSize: "0.65rem", background: "#e4e4e7", padding: "1px 6px", borderRadius: 999 }}>12</span>
542 | </Item>
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
543:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:543:10
541 | <span style={{ float: "right", fontSize: "0.65rem", background: "#e4e4e7", padding: "1px 6px", borderRadius: 999 }}>12</span>
542 | </Item>
> 543 | <Item>Inbox</Item>
| ^^^^ This component is created during render
544 | <div style={{ fontSize: "0.62rem", fontWeight: 700, color: "#a1a1aa", letterSpacing: "0.06em", margin: "14px 8px 8px" }}>WORKSPACE</div>
545 | <Item>Workflows</Item>
546 | <Item>Tasks</Item>
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
545:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:545:10
543 | <Item>Inbox</Item>
544 | <div style={{ fontSize: "0.62rem", fontWeight: 700, color: "#a1a1aa", letterSpacing: "0.06em", margin: "14px 8px 8px" }}>WORKSPACE</div>
> 545 | <Item>Workflows</Item>
| ^^^^ This component is created during render
546 | <Item>Tasks</Item>
547 | </div>
548 | <div style={{ fontSize: "0.72rem", color: "#71717a", lineHeight: 1.65, fontFamily: tokens.fontFamily }}>
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
546:10 error Error: Cannot create components during render
Components created during render will reset their state each time they are created. Declare components outside of render.
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:546:10
544 | <div style={{ fontSize: "0.62rem", fontWeight: 700, color: "#a1a1aa", letterSpacing: "0.06em", margin: "14px 8px 8px" }}>WORKSPACE</div>
545 | <Item>Workflows</Item>
> 546 | <Item>Tasks</Item>
| ^^^^ This component is created during render
547 | </div>
548 | <div style={{ fontSize: "0.72rem", color: "#71717a", lineHeight: 1.65, fontFamily: tokens.fontFamily }}>
549 | <div>Drawer preview uses kit neutrals + radius tokens.</div>
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-kit-panels.tsx:510:16
508 | const rs = tokens.radiusSm;
509 | const pad = tokens.density === "compact" ? 6 : 8;
> 510 | const Item = ({ active, children }: { active?: boolean; children: ReactNode }) => (
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 511 | <div
| ^^^^^^^^
> 512 | style={{
| ^^^^^^^^
> 523 | </div>
| ^^^^^^^^
> 524 | );
| ^^^^ The component is created during render here
525 | return (
526 | <div style={{ display: "grid", gridTemplateColumns: "220px 1fr", gap: 24 }}>
527 | <div react-hooks/static-components
/Users/markhenderson/master-ai/vibn-frontend/components/project/design-system-explorer.tsx
53:9 warning The 'savedForKit' logical expression could make the dependencies of useMemo Hook (at line 56) change on every render. To fix this, wrap the initialization of 'savedForKit' in its own useMemo() Hook react-hooks/exhaustive-deps
/Users/markhenderson/master-ai/vibn-frontend/components/project/gitea-file-tree.tsx
147:72 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/components/project/gitea-file-viewer.tsx
35:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project/gitea-file-viewer.tsx:35:7
33 | useEffect(() => {
34 | if (!path) {
> 35 | setContent(null);
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
36 | setError(null);
37 | setLoading(false);
38 | return; react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/components/project/project-stage-pill.tsx
45:7 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project/project-stage-pill.tsx:45:7
43 | useEffect(() => {
44 | if (!anatomy) {
> 45 | setAnatomyPollMs(0);
| ^^^^^^^^^^^^^^^^ Avoid calling setState() directly within an effect
46 | return;
47 | }
48 | const s = derivePillState(anatomy); react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/components/project/table-viewer.tsx
36:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project/table-viewer.tsx:36:5
34 | const ctrl = new AbortController();
35 | const t = setTimeout(() => ctrl.abort(), 12_000);
> 36 | setLoading(true);
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
37 | setError(null);
38 | setData(null);
39 | react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/components/project/use-anatomy.ts
128:5 error Error: Calling setState synchronously within an effect can trigger cascading renders
Effects are intended to synchronize state between React and external systems such as manually updating the DOM, state management libraries, or other platform APIs. In general, the body of an effect should do one or both of the following:
* Update external systems with the latest state from React.
* Subscribe for updates from some external system, calling setState in a callback function when external state changes.
Calling setState synchronously within an effect body causes cascading renders that can hurt performance, and is not recommended. (https://react.dev/learn/you-might-not-need-an-effect).
/Users/markhenderson/master-ai/vibn-frontend/components/project/use-anatomy.ts:128:5
126 | const timeout = setTimeout(() => controller.abort(), 10_000);
127 |
> 128 | setLoading(true);
| ^^^^^^^^^^ Avoid calling setState() directly within an effect
129 | setError(null);
130 |
131 | fetch(`/api/projects/${projectId}/anatomy`, { react-hooks/set-state-in-effect
/Users/markhenderson/master-ai/vibn-frontend/components/ui/collapsible-sidebar.tsx
4:23 warning 'ChevronRight' is defined but never used @typescript-eslint/no-unused-vars
23:17 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/components/ui/input.tsx
5:18 error An interface declaring no members is equivalent to its supertype @typescript-eslint/no-empty-object-type
/Users/markhenderson/master-ai/vibn-frontend/components/ui/textarea.tsx
5:18 error An interface declaring no members is equivalent to its supertype @typescript-eslint/no-empty-object-type
/Users/markhenderson/master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
214:10 warning 'thoughtPreview' is defined but never used @typescript-eslint/no-unused-vars
573:10 warning 'ToolBubble' is defined but never used @typescript-eslint/no-unused-vars
760:17 warning 'sessionData' is assigned a value but never used @typescript-eslint/no-unused-vars
919:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1065:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1467:53 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1811:25 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
2029:17 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
/Users/markhenderson/master-ai/vibn-frontend/components/workspace/WorkspaceKeysPanel.tsx
92:53 warning '_urlHint' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/fix_mcp.js
1:12 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/index.js
1:23 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:14 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/lib/ai/gemini-chat.ts
48:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
54:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
60:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
114:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
176:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
264:20 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/ai/gemini-client.ts
24:16 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
92:77 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
93:23 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
99:44 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
99:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
101:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
119:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
133:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/ai/llm-client.ts
29:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/ai/openai-compatible-chat.ts
292:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
298:33 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
312:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/ai/vibn-tools.ts
1775:7 warning 'NON_MCP_TOOLS' is assigned a value but never used @typescript-eslint/no-unused-vars
1867:46 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/db-postgres.ts
1:16 warning 'QueryResult' is defined but never used @typescript-eslint/no-unused-vars
47:33 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
47:61 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
53:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
53:64 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
115:39 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
142:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
178:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
206:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
242:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
254:26 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
279:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/db/alloydb.ts
152:63 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
154:12 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/dev-container.ts
55:7 warning 'DEFAULT_DISK_LIMIT' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/dns/cloud-dns.ts
13:28 warning 'DnsRecord' is defined but never used @typescript-eslint/no-unused-vars
13:39 warning 'DnsZone' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/feature-flags.ts
32:40 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/firebase/admin.ts
72:72 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
73:75 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
74:78 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/firebase/api-keys.ts
5:11 warning 'ApiKey' is defined but never used @typescript-eslint/no-unused-vars
8:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
9:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/firebase/auth.ts
35:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
45:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
69:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
93:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
102:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/firebase/collections.ts
81:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/firebase/config.ts
34:12 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/gitea.ts
519:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
542:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
559:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/integrations/sentry.ts
148:36 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
246:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
286:50 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
291:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
295:65 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
308:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
311:62 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
321:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
332:52 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
382:41 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/mcp/server.ts
267:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
268:56 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
269:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
293:45 warning 'startDate' is assigned a value but never used @typescript-eslint/no-unused-vars
293:56 warning 'endDate' is assigned a value but never used @typescript-eslint/no-unused-vars
303:66 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
306:74 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/projects.ts
23:9 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
64:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
139:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/scaffold/templates/dashboard/app/page.tsx
28:63 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/backend-extractor.ts
12:33 warning 'ExtractedInsight' is defined but never used @typescript-eslint/no-unused-vars
49:11 warning 'projectData' is assigned a value but never used @typescript-eslint/no-unused-vars
117:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/chat-context.ts
16:15 warning 'ProjectPhaseData' is defined but never used @typescript-eslint/no-unused-vars
53:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
54:15 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
55:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
139:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
201:9 error 'sessionHistory' is never reassigned. Use 'const' instead prefer-const
213:59 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
289:49 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
429:51 warning 'i' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/server/chat-mode-resolver.ts
16:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
27:71 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
59:38 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
85:44 warning 'projectId' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/server/github-analyzer.ts
117:18 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/server/knowledge.ts
17:65 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
47:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
59:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
70:28 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/logs.ts
70:68 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
74:62 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
78:68 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
82:58 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
86:60 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
90:64 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
94:68 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
98:66 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
102:45 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/product-model.ts
18:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
24:25 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
30:42 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/projects.ts
23:48 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/server/vector-memory.ts
7:10 warning 'getAlloyDbClient' is defined but never used @typescript-eslint/no-unused-vars
78:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/ssh-keys.ts
77:26 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/lib/types/logs.ts
63:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/types/phase-handoff.ts
34:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
37:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
55:29 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/lib/types/project-artifacts.ts
1:38 warning 'ProjectStage' is defined but never used @typescript-eslint/no-unused-vars
3:31 warning 'HomepageMessaging' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/lib/utils/code-chunker.ts
77:5 warning 'preserveFunctions' is assigned a value but never used @typescript-eslint/no-unused-vars
78:5 warning 'preserveClasses' is assigned a value but never used @typescript-eslint/no-unused-vars
116:7 error 'headerLines' is never reassigned. Use 'const' instead prefer-const
/Users/markhenderson/master-ai/vibn-frontend/lib/workspaces.ts
221:7 error 'coolifyServerUuid' is never reassigned. Use 'const' instead prefer-const
222:7 error 'coolifyDestinationUuid' is never reassigned. Use 'const' instead prefer-const
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/footer.tsx
37:15 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/new-site/index.tsx
227:14 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
312:16 error Error: Cannot access refs during render
React refs are values that are not needed for rendering. Refs should only be accessed outside of render, such as in event handlers or effects. Accessing a ref value (the `current` property) during render can cause your component not to update as expected (https://react.dev/reference/react/useRef).
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/new-site/index.tsx:312:16
310 | className="twk-panel"
311 | data-noncommentable=""
> 312 | style={{ right: offsetRef.current.x, bottom: offsetRef.current.y }}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Cannot access ref value during render
313 | >
314 | <div className="twk-hd" onMouseDown={onDragStart}>
315 | <b>{title}</b> react-hooks/refs
312:25 error Error: Cannot access refs during render
React refs are values that are not needed for rendering. Refs should only be accessed outside of render, such as in event handlers or effects. Accessing a ref value (the `current` property) during render can cause your component not to update as expected (https://react.dev/reference/react/useRef).
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/new-site/index.tsx:312:25
310 | className="twk-panel"
311 | data-noncommentable=""
> 312 | style={{ right: offsetRef.current.x, bottom: offsetRef.current.y }}
| ^^^^^^^^^^^^^^^^^^^ Cannot access ref value during render
313 | >
314 | <div className="twk-hd" onMouseDown={onDragStart}>
315 | <b>{title}</b> react-hooks/refs
312:54 error Error: Cannot access refs during render
React refs are values that are not needed for rendering. Refs should only be accessed outside of render, such as in event handlers or effects. Accessing a ref value (the `current` property) during render can cause your component not to update as expected (https://react.dev/reference/react/useRef).
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/new-site/index.tsx:312:54
310 | className="twk-panel"
311 | data-noncommentable=""
> 312 | style={{ right: offsetRef.current.x, bottom: offsetRef.current.y }}
| ^^^^^^^^^^^^^^^^^^^ Cannot access ref value during render
313 | >
314 | <div className="twk-hd" onMouseDown={onDragStart}>
315 | <b>{title}</b> react-hooks/refs
367:10 warning 'TweakSlider' is defined but never used @typescript-eslint/no-unused-vars
417:3 error Error: Cannot access refs during render
React refs are values that are not needed for rendering. Refs should only be accessed outside of render, such as in event handlers or effects. Accessing a ref value (the `current` property) during render can cause your component not to update as expected (https://react.dev/reference/react/useRef).
/Users/markhenderson/master-ai/vibn-frontend/marketing/components/new-site/index.tsx:417:3
415 | // of a drag — ref it so a stale closure doesn't fire onChange for every move.
416 | const valueRef = useRef(value);
> 417 | valueRef.current = value;
| ^^^^^^^^^^^^^^^^ Cannot update ref during render
418 |
419 | // Segments wrap mid-word once per-segment width runs out. The track is
420 | // ~248px (280 panel 28 body pad 4 seg pad), each button loses 12px react-hooks/refs
531:10 warning 'TweakText' is defined but never used @typescript-eslint/no-unused-vars
545:10 warning 'TweakNumber' is defined but never used @typescript-eslint/no-unused-vars
686:10 warning 'TweakButton' is defined but never used @typescript-eslint/no-unused-vars
819:10 warning 'Hairline' is defined but never used @typescript-eslint/no-unused-vars
1135:17 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
1141:18 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
1213:32 error React Hook "useChip" cannot be called inside a callback. React Hooks must be called in a React function component or a custom React Hook function react-hooks/rules-of-hooks
1505:22 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1536:27 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1680:32 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1965:43 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
1965:50 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1965:67 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
2218:19 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
2231:17 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
2231:27 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
2419:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2419:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2564:9 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2564:9 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2568:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2568:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2569:11 error Do not use an `<a>` element to navigate to `/mission/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2570:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2570:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2571:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2571:11 error Do not use an `<a>` element to navigate to `/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2574:11 error Do not use an `<a>` element to navigate to `/auth/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2581:11 error Do not use an `<a>` element to navigate to `/auth/`. Use `<Link />` from `next/link` instead. See: https://nextjs.org/docs/messages/no-html-link-for-pages @next/next/no-html-link-for-pages
2657:53 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
2658:39 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
2658:48 error `"` can be escaped with `&quot;`, `&ldquo;`, `&#34;`, `&rdquo;` react/no-unescaped-entities
/Users/markhenderson/master-ai/vibn-frontend/mcp-server.js
23:19 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
24:14 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
27:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/mcp-zed-bridge.js
25:5 warning 'requestId' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/public/vibn-preview-bridge.js
45:14 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
141:12 warning 'e' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/scripts/add-phase-tracking.js
7:15 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
8:7 warning 'fs' is assigned a value but never used @typescript-eslint/no-unused-vars
8:12 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
9:7 warning 'path' is assigned a value but never used @typescript-eslint/no-unused-vars
9:14 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
12:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/scripts/check-session-links.ts
24:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
25:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/scripts/migrate-from-postgres.ts
2:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:34 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
37:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
48:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
60:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
61:17 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
68:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
69:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
70:22 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
71:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
86:19 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
89:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
98:13 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
265:56 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/scripts/reassign-migrated-data.ts
2:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:34 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
44:14 warning 'error' is defined but never used @typescript-eslint/no-unused-vars
55:11 error 'query' is never reassigned. Use 'const' instead prefer-const
72:24 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/scripts/smoke-chat-tools.ts
84:18 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
85:14 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
/Users/markhenderson/master-ai/vibn-frontend/scripts/smoke-storage-e2e.ts
61:7 warning 'SA_ID' is assigned a value but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/scripts/test-alloydb.ts
7:10 warning 'getAlloyDbClient' is defined but never used @typescript-eslint/no-unused-vars
/Users/markhenderson/master-ai/vibn-frontend/test-gemini-3-global.js
1:22 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/test-gemini-3-simple.js
1:22 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/test_auth.js
1:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:18 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
/Users/markhenderson/master-ai/vibn-frontend/test_auth2.js
1:1 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
2:18 error A `require()` style import is forbidden @typescript-eslint/no-require-imports
✖ 798 problems (627 errors, 171 warnings)
22 errors and 1 warning potentially fixable with the `--fix` option.
```
## Assistant
**Tool Call: npx eslint components/vibn-chat/chat-panel.tsx**
Status: Completed
Terminal:
```
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
/Users/markhenderson/master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
214:10 warning 'thoughtPreview' is defined but never used @typescript-eslint/no-unused-vars
573:10 warning 'ToolBubble' is defined but never used @typescript-eslint/no-unused-vars
760:17 warning 'sessionData' is assigned a value but never used @typescript-eslint/no-unused-vars
919:54 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1065:21 error Unexpected any. Specify a different type @typescript-eslint/no-explicit-any
1467:53 error `'` can be escaped with `&apos;`, `&lsquo;`, `&#39;`, `&rsquo;` react/no-unescaped-entities
1811:25 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
2029:17 warning Using `<img>` could result in slower LCP and higher bandwidth. Consider using `<Image />` from `next/image` or a custom image loader to automatically optimize images. This may incur additional usage or cost from your provider. See: https://nextjs.org/docs/messages/no-img-element @next/next/no-img-element
✖ 8 problems (3 errors, 5 warnings)
```
## Assistant
The missing import for `Sparkles` in `components/vibn-chat/chat-panel.tsx` has been fixed! I've added it to the `lucide-react` import statement, which should clear up the `ReferenceError: Sparkles is not defined` runtime error you were seeing.
## User (checkpoint)
`Image`
see the carmalized onions thing. That animation (cycling different copy) always runs just above the chat input letting the user know its active. Thats what i was hoping to see while the AI is doing its tasks.
`Image` thats the kind of completion summary i am hpoing for. There isnt one right now.
**Tool Call: Search files for regex `ThinkingBubble`**
Status: Completed
Found 3 matches:
## Matches in master-ai/docs/AGENT_TELEMETRY_STREAMING_PROJECT.md
### # Agent Telemetry Streaming (Historical) L5-6
```
The streaming system is fully implemented in `app/api/chat/route.ts` and rendered in the frontend via `Timeline`, `ThinkingBubble`, and `TimelineToolGroup` components inside `chat-panel.tsx`.
```
## Matches in master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
### function ThinkingBubble( ) L223-233
```
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
```
34 lines remaining in ancestor node. Read the file to see all.
### function Timeline( ) L407-409
```
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
```
## Assistant
**Tool Call: Search files for regex `isLoading`**
Status: Completed
Found 10 matches:
## Matches in master-ai/vibn-frontend/AI_WELCOME_MESSAGE_FIX.md
### # ✅ AI Welcome Message Fix - Complete ## Code Changes ### **After:** L56-64
```
// Trigger AI to generate first message
setIsLoading(false);
setIsInitialized(true);
// Automatically send a greeting to get AI's welcome message
setTimeout(() => {
sendChatMessage("Hello");
}, 500);
```
```
### # ✅ AI Welcome Message Fix - Complete ## What Changed ### **3 Scenarios Fixed:** #### **1. No Auth (Not Signed In):** L105-112
```
if (!user) {
setIsLoading(false);
setIsInitialized(true);
setTimeout(() => {
sendChatMessage("Hello");
}, 500);
return;
}
```
### # ✅ AI Welcome Message Fix - Complete ## What Changed ### **3 Scenarios Fixed:** #### **2. No Conversation History:** L119-125
```
if (existingMessages.length === 0) {
setIsLoading(false);
setIsInitialized(true);
setTimeout(() => {
sendChatMessage("Hello");
}, 500);
}
```
## Matches in master-ai/vibn-frontend/app/components/NextAuthComponent.tsx
### function NextAuthForm() const isLoading L39-54
```
function NextAuthForm() {
const [isLoading, setIsLoading] = useState(false);
const [devSecret, setDevSecret] = useState("");
const searchParams = useSearchParams();
const callbackUrl = searchParams.get("callbackUrl") ?? "/auth";
const errorCode = searchParams.get("error");
const errorHint = authErrorMessage(errorCode);
const handleGoogleSignIn = async () => {
setIsLoading(true);
try {
await signIn("google", { callbackUrl });
} catch (error) {
console.error("Google sign-in error:", error);
setIsLoading(false);
}
```
364 lines remaining in ancestor node. Read the file to see all.
### function NextAuthForm() const handleDevLocalSignIn L57-68
```
const handleDevLocalSignIn = async () => {
setIsLoading(true);
try {
await signIn("dev-local", {
callbackUrl,
password: devSecret,
redirect: true,
});
} catch (error) {
console.error("Dev local sign-in error:", error);
setIsLoading(false);
}
```
1 lines remaining in ancestor node. Read the file to see all.
### function NextAuthForm() L296-300
```
}}
onClick={handleGoogleSignIn}
disabled={isLoading}
>
<svg
```
### function NextAuthForm() L322-326
```
/>
</svg>
{isLoading ? "Signing in…" : "Continue with Google"}
</button>
```
### function NextAuthForm() L374-383
```
<button
type="submit"
disabled={isLoading}
className="btn btn-primary"
style={{
height: "40px",
padding: "0 16px",
borderRadius: "8px",
}}
>
```
## Matches in master-ai/vibn-frontend/components/project/gitea-file-tree.tsx
### function Node( ) const isLoading L192-202
```
}: NodeProps) {
const isDir = item.type === "dir";
const isOpen = expanded.has(item.path);
const isLoading = loadingPaths.has(item.path);
const children = childrenByPath[item.path];
const isSelected = !isDir && selectedPath === item.path;
const fileClickable = !isDir && typeof onSelectFile === "function";
const Icon = isDir
? isOpen
? ChevronDown
```
56 lines remaining in ancestor node. Read the file to see all.
### function Node( ) L237-241
```
)}
<span style={nameStyle}>{item.name}</span>
{isLoading && (
<Loader2 size={11} className="animate-spin" style={{ color: INK.muted, marginLeft: "auto" }} />
)}
```
## Assistant
**Tool Call: Search files for regex `loading`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/VIBNDEV.md
### # Vibn Development — Infrastructure Reference ## Common Failure Modes ### 6. DeepSeek 400 errors L231-232
```
**Cause:** OpenAI-compatible APIs require `tool_calls` to be immediately followed by matching `tool` messages. Historical messages with stale `toolCalls` (no tool responses persisted) trigger validation errors.
**Fix:** History loading strips `toolCalls` from persisted assistant messages. Diagnostic logging added to `callOpenAiCompatibleChat` — check server logs for `[deepseek]` entries.
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L13285-13291
```
if (current !== null) {
if (current.elementType === elementType || ( // Keep this check inline so it only runs on the false path:
isCompatibleFamilyForHotReloading(current, element) ) || // Lazy types should reconcile their resolved type.
// We need to do this after the Hot Reloading check above,
// because hot reloading has different semantics than prod because
// it doesn't resuspend. So we can't let the call below suspend.
typeof elementType === 'object' && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === current.type) {
```
### L13958-13964
```
} else {
if (child.elementType === elementType || ( // Keep this check inline so it only runs on the false path:
isCompatibleFamilyForHotReloading(child, element) ) || // Lazy types should reconcile their resolved type.
// We need to do this after the Hot Reloading check above,
// because hot reloading has different semantics than prod because
// it doesn't resuspend. So we can't let the call below suspend.
typeof elementType === 'object' && elementType !== null && elementType.$$typeof === REACT_LAZY_TYPE && resolveLazy(elementType) === child.type) {
```
### L15460-15464
```
{
hookTypesDev = current !== null ? current._debugHookTypes : null;
hookTypesUpdateIndexDev = -1; // Used for hot reloading:
ignorePreviousDependencies = current !== null && current.type !== workInProgress.type;
```
### L15512-15516
```
{
// Even when hot reloading, allow dependencies to stabilize
// after first render to prevent infinite render phase updates.
ignorePreviousDependencies = false;
```
### L18765-18769
```
update.callback = function () {
{
markFailedErrorBoundaryForHotReloading(fiber);
}
```
### L18777-18781
```
update.callback = function callback() {
{
markFailedErrorBoundaryForHotReloading(fiber);
}
```
### L18990-18994
```
//
// Restarting too aggressively is also not good because it starves out any
// intermediate loading state. So we use heuristics to determine when.
// Suspense Heuristics
//
```
### L18998-19002
```
// If this is an initial render of a new tree of Suspense boundaries and
// those trigger a fallback, then don't suspend/restart. We want to ensure
// that we can show the initial loading state as quickly as possible.
//
// If we hit a "Delayed" case, such as when we'd switch from content back into
```
### L19007-19011
```
// another level, but there's still an inner boundary that would show a fallback,
// then we suspend/restart for 500ms since the last time we showed a fallback
// anywhere in the tree. This effectively throttles progressive loading into a
// consistent train of commits. This also gives us an opportunity to restart to
// get to the completed state slightly earlier.
```
### L19015-19019
```
//
// We want to ensure that a "busy" state doesn't get force committed. We want to
// ensure that new initial loading states can commit as soon as possible.
```
### L19080-19084
```
var uncaughtSuspenseError = new Error('A component suspended while responding to synchronous input. This ' + 'will cause the UI to be replaced with a loading indicator. To ' + 'fix, updates that suspend should be wrapped ' + 'with startTransition.'); // If we're outside a transition, fall through to the regular error path.
// The error will be caught by the nearest suspense boundary.
```
### L19298-19302
```
{
resolvedType = resolveFunctionForHotReloading(type);
} // If this is a plain function component without default props,
// and with only the default shallow comparison, we upgrade it
```
### L19993-19997
```
{
validateFunctionComponentInDev(workInProgress, Component);
workInProgress.type = Component = resolveFunctionForHotReloading(Component);
}
```
### L20003-20007
```
{
{
workInProgress.type = Component = resolveClassForHotReloading(Component);
}
```
### L20013-20017
```
{
{
workInProgress.type = Component = resolveForwardRefForHotReloading(Component);
}
```
### L21506-21510
```
if (_hasChildWork) {
// If something was in fallback state last time, and we have all the
// same children then we're still in progressive loading state.
// Something might get unblocked by state updates or retries in the
// tree which will affect the tail. So we need to use the normal
```
### L25377-25381
```
var workInProgressRootRecoverableErrors = null; // The most recent time we committed a fallback. This lets us ensure a train
// model where we don't commit new loading states in too quick succession.
var globalMostRecentFallbackTime = 0;
```
### L25945-25949
```
case RootSuspended:
{
markRootSuspended$1(root, lanes); // We have an acceptable loading state. We need to figure out if we
// should immediately commit it or wait a bit.
```
### L25951-25955
```
!shouldForceFlushFallbacksInDEV()) {
// This render only included retries, no updates. Throttle committing
// retries so that we don't show too many loading states too quickly.
var msUntilTimeout = globalMostRecentFallbackTime + FALLBACK_THROTTLE_MS - now(); // Don't bother with a very short suspense time.
```
## Assistant
**Tool Call: Search files for regex `Caramelizing`**
Status: Completed
No matches found
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 101-150)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
```
## Assistant
**Tool Call: Search files for regex `active`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/AI_CAPABILITIES.md
### # Vibn AI Capabilities (Condensed) ## Core Architecture L10-12
```
3. **Dev Containers:** Persistent, per-project Docker environments (`vibn-dev-*`) where the AI can read, write, and execute code interactively before shipping.
## Tool Categories
```
## Matches in master-ai/BETA_LAUNCH_PLAN.md
### # Beta Launch Execution Plan ## How to use this doc L352-354
```
- Beta success criteria: **5 testers, all reach "shipped a thing", weekly
active rate >60% in week 2.** If we miss those, the next plan is "what
did we get wrong."
```
## Matches in master-ai/docs/MARKET_RESEARCH_TOOLS_SUMMARY.md
### # Market Research & Data Co-op System Summary ## 2. MCP Tools Added (`lib/ai/vibn-tools.ts`) ### `market_research_run` L19-20
```
* **Quality Control:** Automatically applies strict filters (`is_claimed: true` and `current_status <> "closed_forever"`) to ensure only verified, active businesses are returned.
* **Guardrails:**
```
## Matches in master-ai/docs/PRODUCT_MARKET_FIT_ENGINE.md
### # Product-Market Fit (PMF) Engine ## 4. Open Source Baselining & Architecture Extraction L40-41
```
* **Mechanism:** The AI searches GitHub for actively maintained starter kits. It then explicitly reads the README and source code to reverse-engineer the "Software Requirements Specification" (SRS).
* **Tooling:** Uses the `github_search` and `github_file` MCP tools.
```
## Matches in master-ai/docs_archive/AGENT_EXECUTION_ARCHITECTURE.md
### # VIBN Agent Execution Architecture ## Core AI Architecture L34-38
```
│ │
│ The user's only AI interface. Reasons across the entire │
│ business. Surfaces insights proactively. Delegates all work │
│ to the right specialist. Never asks the user to choose which │
│ module or agent to use — it figures that out. │
```
### # VIBN Agent Execution Architecture ## Core AI Architecture L46-50
```
│ - Web search: competitors, market trends, growth tactics │
│ │
│ Proactive behaviors: │
│ - Surfaces anomalies before being asked │
│ - Tracks open questions and follows up │
```
### # VIBN Agent Execution Architecture ## Assist — Personal AI / COO ### What it does L116-117
```
**Reactive** — answers anything the user asks:
- "What should I build next?"
```
### # VIBN Agent Execution Architecture ## Assist — Personal AI / COO ### What it does L123-124
```
**Proactive** — surfaces things without being asked:
- Detects when a deploy caused an error spike
```
### # VIBN Agent Execution Architecture ## Current End-to-End Status (March 2026) ### Not Yet Started L423-433
```
| Step | Status |
|------|--------|
| `advisor_conversations` + `advisor_memory` DB tables | ⬜ |
| Assist COO (user-facing personal AI) | ⬜ |
| Code Advisor (delegated specialist) | ⬜ |
| Growth Advisor (delegated specialist) | ⬜ |
| Analytics Advisor (delegated specialist) | ⬜ |
| Orchestrator (task decomposition + tier routing) | ⬜ |
| Proactive monitoring (anomaly detection, briefings) | ⬜ |
| Parallel task execution | ⬜ |
| WebSocket streaming (replace polling) | ⬜ |
```
2 lines remaining in ancestor node. Read the file to see all.
### # VIBN Agent Execution Architecture ## Build Phases ### Phase 1 — Execution Foundation ✅ L447-448
```
- [x] Adaptive polling, auto-select active session
- [x] Context-aware task input (locked while running)
```
### # VIBN Agent Execution Architecture ## Build Phases ### Phase 6 — Proactive Intelligence L480-481
```
### Phase 6 — Proactive Intelligence
- [ ] Assist monitors for anomalies and surfaces them without being asked
```
## Matches in master-ai/docs_archive/VIBN_PRD.md
### # vibn — Product Requirements Document ## 3. Vision & Success Metrics L42-51
```
| Metric | Target |
|---|---|
| Time from signup to deployed app | < 72 hours (median) |
| % of builds that deploy successfully on first attempt | > 85% |
| Monthly active builders | 500 |
| Projects reaching "live" status | 200 |
| Net Revenue Retention (NRR) | > 100% |
| Gross margin | > 65% |
| Paying customers at 6 months | 150 |
```
### # vibn — Product Requirements Document ## 7. Screen-by-Screen Specification ### 7.11 Build Phase — Progress Screen L310-311
```
- **Key elements:** 12-step checklist with: completed steps (green checkmark), active step (animated indicator), pending steps (grey). Step label + detail line. Progress header showing step count.
- **On completion:** "Your MVP is live" screen — app URL ("Open my app ↗"), Gitea link ("View in Gitea ↗"), "Your next 3 actions" card.
```
### # vibn — Product Requirements Document ## 8. Business Model & Pricing ### Pricing Tiers L342-348
```
| Tier | Price | Templates | Projects | Credits included | Target |
|---|---|---|---|---|---|
| **Free** | $0/mo | Starter only | 1 active | 50 credits/mo | Evaluators |
| **Builder** | $49/mo | Starter + Builder | 3 active | 500 credits/mo | Solo founders |
| **Pro** | $149/mo | All templates | Unlimited | 2,000 credits/mo | Active builders + agencies |
| **Enterprise** | Custom | Custom + private | Unlimited | Custom | Teams, compliance needs |
```
### # vibn — Product Requirements Document ## 10. Non-Functional Requirements ### Accessibility L404-405
```
- WCAG 2.1 AA compliance for all interactive elements
- Keyboard navigable wizard phases
```
### # vibn — Product Requirements Document ## 13. Appendix ### Glossary L472-482
```
| Term | Definition |
|---|---|
| **Build** | The automated process of AI generating code, committing to Gitea, and deploying via Coolify |
| **Wizard** | The 6-phase guided flow: Discover → Architect → Design → Market → Build |
| **Phase** | A single stage of the wizard, each producing a specific artifact |
| **Template** | A pre-built starter codebase that vibn AI builds upon instead of generating from scratch |
| **Credits** | vibn's unit of AI compute consumption; consumed during builds, content generation, and chat |
| **Hot tier** | Always-running shared infrastructure (API gateway, orchestrator, Postgres, Redis, Gitea, Coolify) |
| **Cold tier** | Per-user on-demand containers (agent workspace instances, hibernated when inactive) |
| **Tier A/B/C** | Three levels of AI model quality/cost, automatically routed by the orchestrator based on task complexity |
| **Producer** | A vibn user building products for clients (agency use case) |
```
5 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/docs_archive/remixed-9edec9e9.tsx
### const projects lastActive L23-28
```
const projects = [
{ id: 1, name: "Meridian", desc: "Client portal for boutique agencies", status: "building", progress: 68, features: 12, phase: "Frontend Gen", lastActive: "2h ago", color: "#3d5afe", domain: "meridian-app.stackless.dev", repo: "stackless/meridian-build", created: "Jan 12, 2026" },
{ id: 2, name: "Tidepool", desc: "Marine research data platform", status: "prd", progress: 45, features: 7, phase: "Features", lastActive: "20m ago", color: "#00897b", domain: null, repo: null, created: "Feb 3, 2026" },
{ id: 3, name: "Canopy", desc: "Internal team knowledge base", status: "live", progress: 100, features: 18, phase: "Deployed", lastActive: "1d ago", color: "#2e7d32", domain: "canopy.stackless.dev", customDomain: "kb.acmecorp.com", repo: "stackless/canopy-build", created: "Nov 28, 2025" },
{ id: 4, name: "Foxglove", desc: "Prescription mgmt for pharmacies", status: "prd", progress: 20, features: 3, phase: "Discovery", lastActive: "now", color: "#e65100", domain: null, repo: null, created: "Feb 27, 2026" },
];
```
### const activityFeed action L30-40
```
const activityFeed = [
{ time: "2 min ago", project: "Foxglove", action: "Atlas completed Users & Personas phase", type: "atlas" },
{ time: "18 min ago", project: "Foxglove", action: "You described the core prescription workflow", type: "user" },
{ time: "1h ago", project: "Meridian", action: "Build: Dashboard UI component generated", type: "build" },
{ time: "2h ago", project: "Meridian", action: "Build: Authentication system passed all tests", type: "build" },
{ time: "3h ago", project: "Tidepool", action: "Atlas captured 7 features in MoSCoW framework", type: "atlas" },
{ time: "5h ago", project: "Tidepool", action: "You approved Problem Statement section", type: "user" },
{ time: "8h ago", project: "Meridian", action: "Build: Database schema deployed", type: "build" },
{ time: "1d ago", project: "Canopy", action: "Custom domain kb.acmecorp.com verified and active", type: "deploy" },
{ time: "1d ago", project: "Canopy", action: "v1.2 deployed — added search filters", type: "deploy" },
{ time: "2d ago", project: "Meridian", action: "PRD approved — build pipeline started", type: "deploy" },
```
3 lines remaining in ancestor node. Read the file to see all.
### const prdData status L51-61
```
const prdData = [
{ name: "Executive Summary", status: "done", pct: 100 },
{ name: "Problem Statement", status: "done", pct: 100 },
{ name: "Users & Personas", status: "done", pct: 100 },
{ name: "User Flows", status: "active", pct: 60 },
{ name: "Feature Requirements", status: "pending", pct: 20 },
{ name: "Screen Specs", status: "pending", pct: 0 },
{ name: "Business Model", status: "pending", pct: 0 },
{ name: "Non-Functional Reqs", status: "pending", pct: 0 },
{ name: "Risks", status: "pending", pct: 0 },
];
```
### const discoveryPhases active L63-70
```
const discoveryPhases = [
{ name: "Big Picture", done: true },
{ name: "Users", done: true },
{ name: "Features", active: true },
{ name: "Business Model" },
{ name: "Screens" },
{ name: "Risks" },
];
```
## Assistant
**Tool Call: Search files for regex `Caramelizing`**
Status: Completed
No matches found
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 1000-1120)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
```
## Assistant
**Tool Call: Search files for regex `/api/chat`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/AI_CAPABILITIES.md
### # Vibn AI Capabilities (Condensed) ## Tool Categories L22-23
```
*Refer to the system prompt in `vibn-frontend/app/api/chat/route.ts` for exact rules on how the AI should behave.*
```
## Matches in master-ai/BETA_LAUNCH_PLAN.md
### # Beta Launch Execution Plan ## Phase 3 — UX surfaces (what users actually touch) L119-128
```
| # | Task | Owner | Effort | Notes |
|---|---|---|---|---|
| 3.1 | **Hosting tab rewrite** — focus on the domain (live URL, redeploy, env, logs) instead of master-detail of "live + previews" | AI | 4 hrs | Mark flagged earlier |
| 3.2 | Replace the chat's "⚠️ Failed to get response. Please try again." with structured errors that show what tool failed and why | AI | 2 hrs | Critical — currently zero feedback |
| 3.3 | Empty states across Plan/Product/Infrastructure/Hosting that suggest the **next** AI prompt to try (not just "nothing here") | AI | 2 hrs | Vibe coders need a nudge |
| 3.6 | Product tab: confirm it's actually useful day-to-day. Revise scope if not | Mark + AI | 1 hr | Open question |
| 3.7 | **Scope-doc upload in Plan tab** — drop a PDF/.md/.docx/.txt as the project brief; server extracts text, stores on `fs_projects.brief_text` + `brief_meta`, exposes via `[PROJECT BRIEF]` block in system prompt and a `project_brief` MCP tool for on-demand grep. New file: `lib/integrations/brief-extract.ts`. Empty state replaces "nothing here" on Plan. | AI | 3 hrs | Came up during smoke test prep — users will arrive with scope docs (PDF/Notion-export/Doc); right now there's no way to hand the AI the source of truth except paste-into-chat. |
| 3.8 | **"Stop at something tangible" — three layers** | AI | partially done | Came up watching Manifest scaffold — AI stopped at "everything is wired together" with no preview, leaving the user to wonder if any of it was real. Code on disk is invisible; preview URL is the proof. |
| 3.8c | Server-side enforcement: if a turn called `fs_write` ≥10 times for source files but never `dev_server_start` or `apps_deploy`, append a synthetic recovery instruction telling the model to either start a server or explain the blocker | AI | 1 hr | Safety net for when the model ignores the prompt rule under load. Add a tracker in `app/api/chat/route.ts` tool loop, fire the instruction inside the round 2 system message. |
```
## Matches in master-ai/docs/AGENT_TELEMETRY_STREAMING_PROJECT.md
### # Agent Telemetry Streaming (Historical) L5-6
```
The streaming system is fully implemented in `app/api/chat/route.ts` and rendered in the frontend via `Timeline`, `ThinkingBubble`, and `TimelineToolGroup` components inside `chat-panel.tsx`.
```
## Matches in master-ai/docs/AI_HARNESS_GAPS.md
### # AI Harness Stability & Middleware (Shipped) L5-6
```
- The chat loop (`app/api/chat/route.ts`) acts as a robust harness that intercepts tool errors and automatically suggests recovery paths (e.g., port conflicts, container collisions).
- The maximum tool execution loop is capped (`MAX_TOOL_ROUNDS=30`) to prevent runaway AI loops.
```
## Matches in master-ai/docs/SENTRY_AS_PRODUCT.md
### # Sentry as a Product (Shipped) ## Architecture L9-10
```
- If unhandled exceptions are firing, the AI is prompted at the start of a conversation to address them (`app/api/chat/route.ts`).
```
## Matches in master-ai/vibn-frontend/CHATGPT_IMPORT_GUIDE.md
### # 📥 Import ChatGPT Conversations into Vibn ## 🏗️ Architecture ### **2. Vibn Import API** L33-34
```
**Endpoint:** `POST /api/chatgpt/import`
```
### # 📥 Import ChatGPT Conversations into Vibn ## 🧪 Testing ### **Test the API Directly:** L173-180
```
curl -X POST https://vibnai.com/api/chatgpt/import \
-H "Authorization: Bearer YOUR_FIREBASE_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"conversationId": "abc-123-xyz",
"openaiApiKey": "sk-...",
"projectId": "your-project-id"
}'
```
### # 📥 Import ChatGPT Conversations into Vibn ## 📁 Files Created/Modified ### **New Files:** L300-303
```
app/api/chatgpt/import/route.ts ← Import API endpoint
components/chatgpt-import-card.tsx ← UI component
CHATGPT_IMPORT_GUIDE.md ← This file
```
```
### # 📥 Import ChatGPT Conversations into Vibn ## 🚀 What's Live L315-320
```
✅ **Import API:** `/api/chatgpt/import`
✅ **UI Component:** ChatGPTImportCard
✅ **Connections Page:** Import card visible
✅ **Firestore Rules:** Deployed
✅ **Security:** API key not stored
✅ **Data:** Full conversation preserved
```
## Matches in master-ai/vibn-frontend/TODO_CHATGPT_IMPORT.md
### # ChatGPT Import - Issues to Fix ## 🔍 Things to Check Tomorrow ### 2. **Test OpenAI API Call** L33-34
```
Verify the `/api/chatgpt/import` endpoint is receiving the correct data:
- Is the conversation ID correct?
```
### # ChatGPT Import - Issues to Fix ## 🛠️ Files to Debug L72-76
```
2. **Backend API:**
- `/Users/markhenderson/ai-proxy/vibn-frontend/app/api/chatgpt/import/route.ts`
- Check what error OpenAI is returning
3. **Test the API Directly:**
```
### # ChatGPT Import - Issues to Fix ## 🎯 Quick Debug Commands for Tomorrow const response L113-123
```
const response = await fetch('/api/chatgpt/import', {
method: 'POST',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
conversationId: '68fc09e6-372c-8326-8bd3-6cbf23df44aa',
openaiApiKey: 'YOUR-KEY-HERE'
})
});
```
## Matches in master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx
### function SessionsPanel( ) L753-758
```
fetch(
`/api/chat/threads?workspace=${encodeURIComponent(workspace)}&projectId=${encodeURIComponent(projectId)}`,
{
credentials: "include",
},
)
```
## Matches in master-ai/vibn-frontend/app/api/chat/route.ts
### L1-11
```
/**
* POST /api/chat
*
* Streaming chat endpoint. Accepts a thread_id + user message,
* loads history, calls the configured chat model (Gemini or OpenAI-compatible e.g. DeepSeek), runs the tool loop,
* persists messages, and streams SSE back to the client.
*
* SSE event shapes:
* data: {"type":"text","text":"..."}
* data: {"type":"thinking","text":"..."} // model's first-person reasoning
* data: {"type":"tool_start","name":"...","args":{}}
```
5 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/chat/threads/[id]/route.ts
### L1-4
```
/**
* GET /api/chat/threads/[id] — load a thread + its messages
* PATCH /api/chat/threads/[id] — rename a thread
* DELETE /api/chat/threads/[id] — delete a thread
```
1 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/api/chat/threads/route.ts
### L1-12
```
/**
* GET /api/chat/threads — list user's threads
* GET /api/chat/threads?projectId=… — list user's threads for one project
* POST /api/chat/threads — create a new thread (optionally scoped to a project)
*
* Threads can be either:
* - workspace-level (project_id NULL) — created from /projects, etc.
* - project-scoped (project_id set) — created from a project page so
* the AI can pin the right project context in its system prompt.
*
* The schema is migrated idempotently the first time the route is hit
* after deploy (no manual migration needed).
```
1 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
### function ChatPanel( ) L794-798
```
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
```
### function ChatPanel( ) const loadThreads const res L842-848
```
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
```
### function ChatPanel( ) const newThread const res L889-899
```
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
```
3 lines remaining in ancestor node. Read the file to see all.
### function ChatPanel( ) const loadThread const res L912-922
```
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
```
21 lines remaining in ancestor node. Read the file to see all.
## Assistant
**Tool Call: Search files for regex `sending`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/docs_archive/product-idea-a.md
### L88-89
```
Structured memory > conversation replay
Instead of resending entire conversation history, persist and inject:
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L7872-7876
```
}
/**
* (For IE <=9) Handles a propertychange event, sending a `change` event if
* the value of the active element has changed.
*/
```
## Matches in master-ai/extracted-ebac1c94-e4f8-4cff-9c57-1bb24441fb38.txt
### L54-58
```
className="auth-btn auth-btn-primary">
{submitting ? (
<><span className="auth-spinner" /> Sending…</>
) : (
<><MailIcon size={17} /> Send me a magic link</>
```
## Matches in master-ai/new-site/beta.jsx
### function BetaApp() L225-227
```
<>
<span className="spinner" /> Sending…
</>
```
## Matches in master-ai/vibn-agent-runner/dist/atlas.js
### async function atlasChat( ) const buildMessages L61-65
```
...session.history.slice(-60).map(m =>
// Strip the init marker before sending to the LLM
m.role === 'user' && typeof m.content === 'string' && m.content.startsWith(INIT_MARKER)
? { ...m, content: m.content.slice(INIT_MARKER.length) }
: m)
```
## Matches in master-ai/vibn-agent-runner/src/atlas.ts
### async function atlasChat( ) const buildMessages L102-106
```
...session.history.slice(-60).map(m =>
// Strip the init marker before sending to the LLM
m.role === 'user' && typeof m.content === 'string' && m.content.startsWith(INIT_MARKER)
? { ...m, content: m.content.slice(INIT_MARKER.length) }
: m
```
## Matches in master-ai/vibn-frontend/E2E_TEST_INSTRUCTIONS.md
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L86-96
```
==========================================
E2E COLLECTOR FLOW TEST
==========================================
Project ID: ABC123xyz
=== STEP 1: Welcome Message ===
[INFO] Sending: "Hello"
[RESPONSE] Welcome to Vibn! I'm here to help you rescue your stalled...
[PASS] Response contains: 'Welcome'
[PASS] Response contains: 'Step 1'
```
55 lines remaining in ancestor node. Read the file to see all.
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L105-109
```
=== STEP 3: Inform AI About Documents ===
[INFO] Sending: "I just uploaded 8 documents about my project"
[RESPONSE] ✅ Perfect! I can see you've uploaded 8 documents...
[PASS] Response contains: 'uploaded'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L111-115
```
=== STEP 4: GitHub Connection ===
[INFO] Sending: "Yes, I have a GitHub repo. It's called myuser/my-saas-app"
[RESPONSE] ✅ Great! I'll help you connect that repo...
[PASS] Response contains: 'GitHub'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L117-121
```
=== STEP 5: Extension Installation ===
[INFO] Sending: "I want to install the browser extension"
[RESPONSE] Perfect! The Vibn browser extension captures your AI chat history...
[PASS] Response contains: 'extension'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L122-126
```
=== STEP 6: Confirm Everything ===
[INFO] Sending: "Yes, that's everything I have for now"
[RESPONSE] Perfect! Let me analyze what you've shared...
[PASS] Response contains: 'everything'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L128-132
```
=== STEP 7: Verify Auto-Transition ===
[INFO] Sending: "What do you need from me?"
[RESPONSE] Now I'm going to review the documents you uploaded...
[PASS] Response contains: 'extraction'
```
## Matches in master-ai/vibn-frontend/EXTENSION_INTEGRATION.md
### # Cursor Extension → Vibn Integration Guide ## 2. Extension Code Changes ### B. Send Session Data to Vibn async function sendSessionToVibn( ) L120-123
```
} catch (error) {
console.error('Error sending session to Vibn:', error);
return false;
}
```
### # Cursor Extension → Vibn Integration Guide ## 7. User Experience ### Bad UX: L284-285
```
- ❌ Blocking user while sending data
- ❌ Showing errors for every failed request
```
## Matches in master-ai/vibn-frontend/GEMINI_3_SUCCESS.md
### # 🎉 Gemini 3 Pro Preview - SUCCESS! ## 🧪 Testing in Your App ### **Check Terminal Logs:** L211-214
```
[AI Chat] Mode: collector_mode
[AI Chat] Context built: 0 vector chunks retrieved
[AI Chat] Sending 3 messages to LLM...
```
```
## Matches in master-ai/vibn-frontend/QA_ISSUES_FOUND.md
### # QA Issues Found - Table Stakes Implementation ## 🐛 **Issue #6: ExtensionLinked vs Extension Data** (DESIGN) L100-101
```
- But doesn't actually verify extension is *sending data*
- User could link, then uninstall extension
```
## Matches in master-ai/vibn-frontend/VERTEX_AI_MIGRATION_COMPLETE.md
### # ✅ Vertex AI Migration Complete ## 🧪 How to Test ### **Check Logs:** L140-143
```
[AI Chat] Mode: collector_mode
[AI Chat] Context built: 0 vector chunks retrieved
[AI Chat] Sending 3 messages to LLM...
```
```
## Matches in master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/infrastructure/page.tsx
### const INFRA_NUDGE email L60-67
```
const INFRA_NUDGE = {
databases: 'No database yet. Try: "Add a Postgres database to my project"',
auth: 'No auth provider connected. Try: "Add Google OAuth to my app"',
email: 'No email provider. Try: "Set up email sending with Resend"',
payments: 'No payment provider. Try: "Connect Stripe to my project"',
llm: 'No LLM connected. Try: "Add an OpenAI key to this project"',
secrets: 'No secrets stored yet. Try: "Add my Stripe secret key"',
} as const;
```
## Matches in master-ai/vibn-frontend/app/api/ai/chat/route.ts
### async function POST( ) L153-157
```
];
console.log(`[AI Chat] Sending ${messages.length} messages to LLM (${conversationHistory.length} from history + 1 new)`);
console.log(`[AI Chat] Mode: ${resolvedMode}, Phase: ${projectData.currentPhase}, Has extraction: ${!!context.phaseHandoffs?.extraction}`);
```
## Matches in master-ai/vibn-frontend/app/api/chat/route.ts
### async function POST( ) const stream async start( ) let extraSystem L525-527
```
roundsSinceText >= 4
? "\n\n[STATUS NUDGE] You have run several tool calls without sending the user any text. Before any more tool calls, send ONE short sentence describing what you are currently working on and why. The user is staring at a wall of tool pills and needs a signal of life."
: "";
```
## Assistant
**Tool Call: Search files for regex `sending`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/docs_archive/product-idea-a.md
### L88-89
```
Structured memory > conversation replay
Instead of resending entire conversation history, persist and inject:
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L7872-7876
```
}
/**
* (For IE <=9) Handles a propertychange event, sending a `change` event if
* the value of the active element has changed.
*/
```
## Matches in master-ai/extracted-ebac1c94-e4f8-4cff-9c57-1bb24441fb38.txt
### L54-58
```
className="auth-btn auth-btn-primary">
{submitting ? (
<><span className="auth-spinner" /> Sending…</>
) : (
<><MailIcon size={17} /> Send me a magic link</>
```
## Matches in master-ai/new-site/beta.jsx
### function BetaApp() L225-227
```
<>
<span className="spinner" /> Sending…
</>
```
## Matches in master-ai/vibn-agent-runner/dist/atlas.js
### async function atlasChat( ) const buildMessages L61-65
```
...session.history.slice(-60).map(m =>
// Strip the init marker before sending to the LLM
m.role === 'user' && typeof m.content === 'string' && m.content.startsWith(INIT_MARKER)
? { ...m, content: m.content.slice(INIT_MARKER.length) }
: m)
```
## Matches in master-ai/vibn-agent-runner/src/atlas.ts
### async function atlasChat( ) const buildMessages L102-106
```
...session.history.slice(-60).map(m =>
// Strip the init marker before sending to the LLM
m.role === 'user' && typeof m.content === 'string' && m.content.startsWith(INIT_MARKER)
? { ...m, content: m.content.slice(INIT_MARKER.length) }
: m
```
## Matches in master-ai/vibn-frontend/E2E_TEST_INSTRUCTIONS.md
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L86-96
```
==========================================
E2E COLLECTOR FLOW TEST
==========================================
Project ID: ABC123xyz
=== STEP 1: Welcome Message ===
[INFO] Sending: "Hello"
[RESPONSE] Welcome to Vibn! I'm here to help you rescue your stalled...
[PASS] Response contains: 'Welcome'
[PASS] Response contains: 'Step 1'
```
55 lines remaining in ancestor node. Read the file to see all.
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L105-109
```
=== STEP 3: Inform AI About Documents ===
[INFO] Sending: "I just uploaded 8 documents about my project"
[RESPONSE] ✅ Perfect! I can see you've uploaded 8 documents...
[PASS] Response contains: 'uploaded'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L111-115
```
=== STEP 4: GitHub Connection ===
[INFO] Sending: "Yes, I have a GitHub repo. It's called myuser/my-saas-app"
[RESPONSE] ✅ Great! I'll help you connect that repo...
[PASS] Response contains: 'GitHub'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L117-121
```
=== STEP 5: Extension Installation ===
[INFO] Sending: "I want to install the browser extension"
[RESPONSE] Perfect! The Vibn browser extension captures your AI chat history...
[PASS] Response contains: 'extension'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L122-126
```
=== STEP 6: Confirm Everything ===
[INFO] Sending: "Yes, that's everything I have for now"
[RESPONSE] Perfect! Let me analyze what you've shared...
[PASS] Response contains: 'everything'
```
### # E2E Collector Flow Test - Instructions ## Expected Output ### Successful Test Run: L128-132
```
=== STEP 7: Verify Auto-Transition ===
[INFO] Sending: "What do you need from me?"
[RESPONSE] Now I'm going to review the documents you uploaded...
[PASS] Response contains: 'extraction'
```
## Matches in master-ai/vibn-frontend/EXTENSION_INTEGRATION.md
### # Cursor Extension → Vibn Integration Guide ## 2. Extension Code Changes ### B. Send Session Data to Vibn async function sendSessionToVibn( ) L120-123
```
} catch (error) {
console.error('Error sending session to Vibn:', error);
return false;
}
```
### # Cursor Extension → Vibn Integration Guide ## 7. User Experience ### Bad UX: L284-285
```
- ❌ Blocking user while sending data
- ❌ Showing errors for every failed request
```
## Matches in master-ai/vibn-frontend/GEMINI_3_SUCCESS.md
### # 🎉 Gemini 3 Pro Preview - SUCCESS! ## 🧪 Testing in Your App ### **Check Terminal Logs:** L211-214
```
[AI Chat] Mode: collector_mode
[AI Chat] Context built: 0 vector chunks retrieved
[AI Chat] Sending 3 messages to LLM...
```
```
## Matches in master-ai/vibn-frontend/QA_ISSUES_FOUND.md
### # QA Issues Found - Table Stakes Implementation ## 🐛 **Issue #6: ExtensionLinked vs Extension Data** (DESIGN) L100-101
```
- But doesn't actually verify extension is *sending data*
- User could link, then uninstall extension
```
## Matches in master-ai/vibn-frontend/VERTEX_AI_MIGRATION_COMPLETE.md
### # ✅ Vertex AI Migration Complete ## 🧪 How to Test ### **Check Logs:** L140-143
```
[AI Chat] Mode: collector_mode
[AI Chat] Context built: 0 vector chunks retrieved
[AI Chat] Sending 3 messages to LLM...
```
```
## Matches in master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/infrastructure/page.tsx
### const INFRA_NUDGE email L60-67
```
const INFRA_NUDGE = {
databases: 'No database yet. Try: "Add a Postgres database to my project"',
auth: 'No auth provider connected. Try: "Add Google OAuth to my app"',
email: 'No email provider. Try: "Set up email sending with Resend"',
payments: 'No payment provider. Try: "Connect Stripe to my project"',
llm: 'No LLM connected. Try: "Add an OpenAI key to this project"',
secrets: 'No secrets stored yet. Try: "Add my Stripe secret key"',
} as const;
```
## Matches in master-ai/vibn-frontend/app/api/ai/chat/route.ts
### async function POST( ) L153-157
```
];
console.log(`[AI Chat] Sending ${messages.length} messages to LLM (${conversationHistory.length} from history + 1 new)`);
console.log(`[AI Chat] Mode: ${resolvedMode}, Phase: ${projectData.currentPhase}, Has extraction: ${!!context.phaseHandoffs?.extraction}`);
```
## Matches in master-ai/vibn-frontend/app/api/chat/route.ts
### async function POST( ) const stream async start( ) let extraSystem L525-527
```
roundsSinceText >= 4
? "\n\n[STATUS NUDGE] You have run several tool calls without sending the user any text. Before any more tool calls, send ONE short sentence describing what you are currently working on and why. The user is staring at a wall of tool pills and needs a signal of life."
: "";
```
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 1000-1120)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
```
## Assistant
**Tool Call: Search files for regex `caramelizing`**
Status: Completed
No matches found
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 223-280)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/chat/route.ts` (lines 490-560)**
Status: Completed
```master-ai/vibn-frontend/app/api/chat/route.ts
// `assistantText` blob and render that as a single chat bubble.
// That made multi-round turns look like one giant run-on
// paragraph ("now.Spinning up...first boot...The dev container
// is ready!" with no breaks). Keeping them separate on the
// server lets the client render each as its own bubble and
// restores the segmentation on reload.
const assistantTextSegments: string[] = [];
const assistantToolCalls: ToolCall[] = [];
let aborted = clientSignal.aborted;
const onAbort = () => {
aborted = true;
};
clientSignal.addEventListener("abort", onAbort);
// Track per-turn signals we use for loop detection and silent-stretch
// detection. The model has a strong tendency to grind through a
// dozen+ tool calls in total silence (the user just sees ✓ pills
// pile up); both safeguards below break that pattern.
const toolFingerprints: string[] = [];
let roundsSinceText = 0;
let loopBreakReason: string | null = null;
try {
// Tool-calling loop: use non-streaming so thought_signature is
// always present in the complete response (required by thinking models).
while (round < MAX_TOOL_ROUNDS) {
if (aborted) break;
round++;
const toolDefs = mcp_token ? VIBN_TOOL_DEFINITIONS : [];
// Every 4 silent rounds, nudge the model to surface a one-liner
// status before continuing. This is the user's only signal of
// life when a tool chain runs long.
let extraSystem =
roundsSinceText >= 4
? "\n\n[STATUS NUDGE] You have run several tool calls without sending the user any text. Before any more tool calls, send ONE short sentence describing what you are currently working on and why. The user is staring at a wall of tool pills and needs a signal of life."
: "";
if (MAX_TOOL_ROUNDS - round <= 3) {
extraSystem += `\n\n[WARNING] You only have ${MAX_TOOL_ROUNDS - round} tool calls left before you are forcefully terminated. Stop exploring, make your final edits, and write your final response to the user NOW.`;
}
const resp = await callVibnChat({
systemPrompt: systemPrompt + extraSystem,
messages,
tools: toolDefs,
temperature: 0.7,
});
if (resp.error) {
emit({ type: "error", error: resp.error });
safeClose();
return;
}
// Stream user-facing text to client
if (resp.text) {
assistantText += (assistantText ? "\n\n" : "") + resp.text;
assistantTextSegments.push(resp.text);
emit({ type: "text", text: resp.text });
roundsSinceText = 0;
} else if (resp.toolCalls.length) {
roundsSinceText++;
}
// Stream the model's reasoning narration as a separate SSE
// event type. We pay for thinking tokens whether or not we
// ask for them, so making them visible is free transparency
// — and it cures the "tool tray with no narrative" feel.
if (resp.thoughts) {
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/chat/route.ts` (lines 561-650)**
Status: Completed
```master-ai/vibn-frontend/app/api/chat/route.ts
emit({ type: "thinking", text: resp.thoughts });
}
// Announce tool calls
for (const tc of resp.toolCalls) {
assistantToolCalls.push(tc);
emit({ type: "tool_start", name: tc.name, args: tc.args });
}
// Save assistant turn
messages.push({
role: "assistant",
content: resp.text,
toolCalls: resp.toolCalls.length ? resp.toolCalls : undefined,
});
if (!resp.toolCalls.length) break;
if (aborted) break;
// Loop detection. If the model fires the same tool with the
// same first-key arg 3+ times in this turn, the user is
// watching it spin. Bail out, hand control back to the user
// with the last tool result as context. The classic case:
// dev_server.start → logs → stop → start → logs → stop → ...
for (const tc of resp.toolCalls) {
const argSig =
tc.args && typeof tc.args === "object"
? JSON.stringify(tc.args).slice(0, 120)
: "";
toolFingerprints.push(`${tc.name}|${argSig}`);
}
const last8 = toolFingerprints.slice(-8);
const counts = new Map<string, number>();
for (const fp of last8) counts.set(fp, (counts.get(fp) ?? 0) + 1);
const repeated = [...counts.entries()].find(([, n]) => n >= 3);
if (repeated) {
loopBreakReason = `Same call (${repeated[0].split("|")[0]}) fired ${repeated[1]}× in a row`;
}
// Execute tool calls and add results. OpenAI-compatible APIs
// (DeepSeek, etc.) require every tool_call_id to be answered with
// a tool message before any user/assistant message — so recovery
// nudges must run AFTER all tools from this assistant turn.
const recoveryLines: string[] = [];
for (const tc of resp.toolCalls) {
if (aborted) break;
const result = mcp_token
? await executeMcpTool(
tc.name,
tc.args,
mcp_token,
baseUrl,
activeProject?.id,
)
: JSON.stringify({ error: "No MCP token — read-only mode." });
emit({
type: "tool_result",
name: tc.name,
result: result.slice(0, 500),
});
messages.push({
role: "tool",
content: result,
toolCallId: tc.id,
toolName: tc.name,
thoughtSignature: tc.thoughtSignature,
});
const recovery = detectKnownError(result);
if (recovery) recoveryLines.push(formatRecoveryMessage(recovery));
}
for (const line of recoveryLines) {
messages.push({ role: "user", content: line });
}
if (loopBreakReason) break;
}
// If the user clicked Stop, surface the cancel marker so the
// client renders "(stopped by user)" inline with the partial
// assistant message, then skip the round-cap recovery summary
// (we shouldn't pay Gemini for a turn the user just canceled).
if (aborted) {
const stopMarker = assistantText
? "\n\n_(stopped by user)_"
: "_(stopped by user before any response)_";
assistantText += stopMarker;
assistantTextSegments.push(stopMarker.trimStart());
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/chat/route.ts` (lines 60-150)**
Status: Completed
```master-ai/vibn-frontend/app/api/chat/route.ts
user_id TEXT NOT NULL,
data JSONB NOT NULL DEFAULT '{}',
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE INDEX IF NOT EXISTS fs_chat_messages_thread_idx
ON fs_chat_messages (thread_id, created_at ASC);
`,
[],
);
chatTablesReady = true;
}
export function buildSystemPrompt(
projects: any[],
workspace: string,
activeProject?: any,
): string {
const projectsText = projects.length
? projects
.map(
(p: any) =>
`- "${p.productName || p.name}" (id: ${p.id}, status: ${p.status || "defining"})${p.productVision ? ": " + p.productVision.slice(0, 120) : ""}`,
)
.join("\n")
: "(no projects yet)";
// When this thread is scoped to a project, surface a STRONG header
// at the top so the model treats `projectId` as resolved without the
// user having to name it. Falls through to the workspace-level mode
// (browse all projects) when activeProject is undefined.
// Pull plan artifacts (decisions + open tasks) so the AI doesn't ask
// the user to re-decide settled questions and knows what's queued up.
// Decisions are first-class: they encode the founder's intent and
// should be honored unless the user explicitly revisits one.
const plan = (activeProject?.plan ?? {}) as {
decisions?: { title: string; choice: string; why?: string }[];
tasks?: { text: string; status: "open" | "done" }[];
ideas?: { text: string }[];
};
const decisionsBlock = plan.decisions?.length
? `\n**Decisions already made for this project (DO NOT re-litigate unless the user asks):**\n${plan.decisions
.slice(0, 20)
.map(
(d) =>
`- ${d.title} → ${d.choice}${d.why ? ` (because: ${d.why})` : ""}`,
)
.join("\n")}\n`
: "";
const openTasks = (plan.tasks ?? [])
.filter((t) => t.status === "open")
.slice(0, 15);
const tasksBlock = openTasks.length
? `\n**Open tasks the user has captured:**\n${openTasks.map((t) => `- ${t.text}`).join("\n")}\n`
: "";
const ideasBlock = plan.ideas?.length
? `\n**Ideas parked (not commitments — surface only if relevant):**\n${plan.ideas
.slice(0, 10)
.map((i) => `- ${i.text}`)
.join("\n")}\n`
: "";
const briefBlock = (plan as any).brief
? `\n**[PROJECT BRIEF / SCOPE DOCUMENT]**\nThe user has uploaded a detailed project brief. You MUST read and adhere to these requirements when making architectural or product decisions:\n${(plan as any).brief.slice(0, 5000)}\n`
: "";
const designKitBlock = buildDesignKitPromptSection(activeProject);
const activeBlock = activeProject
? `\n## ACTIVE PROJECT — assume this for every tool call unless the user explicitly says otherwise
The user is currently looking at:
- Name: "${activeProject.productName || activeProject.name}"
- projectId: \`${activeProject.id}\`
- Slug: \`${activeProject.slug ?? "(none)"}\`
- Audience: ${activeProject.audience ?? "unspecified"}
- Vision: ${activeProject.productVision ? activeProject.productVision.slice(0, 1500) : "(not yet captured)"}
${activeProject.kickoff ? `- Created via: ${activeProject.kickoff.mode} (${JSON.stringify(activeProject.kickoff.sourceData).slice(0, 200)})` : ""}
${decisionsBlock}${tasksBlock}${ideasBlock}${designKitBlock ? `\n${designKitBlock}\n` : ""}
When you call tools that take a \`projectId\`, USE this id (\`${activeProject.id}\`) without asking. When the user says "this project" / "the app" / "deploy it" — they mean THIS project. Switch to a different project only if the user names one explicitly.
**Project repo is auto-cloned at \`/workspace/${activeProject.slug ?? "<slug>"}/\` inside the dev container.** That path is the project's Gitea repo. ALL code, docs, configs, and other artifacts you intend the user to see in the Product tab MUST live under that path. Anything you write outside it (e.g. \`/workspace/scratch\`, \`/workspace/some-cloned-other-repo\`) is treated as scratch and is invisible in the UI.
After every assistant turn, the harness automatically runs \`git add -A && git commit && git push\` against \`/workspace/${activeProject.slug ?? "<slug>"}/\`. You do NOT need to commit manually unless the user asks for a specific commit message or you want to checkpoint mid-turn. Don't apologize for "forgetting to commit" — the harness handles it.\n`
: "";
return `You are Vibn AI — the technical co-founder of every Vibn user. You turn ideas into shipped software. Treat their projects like they're your own.
You're talking to the owner of the "${workspace}" workspace. They have admin access to their Gitea org, a fleet of Coolify projects, and a persistent dev container per project. You can read and write any of it.
## Identity
You are a high-agency product engineer. You own the outcome. Continue until the user's goal is actually resolved unless you're blocked on missing info, proceeding would be unsafe, or the user changes direction. You are not answering questions; you are building with the user. Translate engineering complexity into product momentum.
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/chat/route.ts` (lines 151-250)**
Status: Completed
```master-ai/vibn-frontend/app/api/chat/route.ts
## Stop at something the user can see
A turn that ends with "I scaffolded all the files" is a failure of judgment, even if the files are real. The natural stopping point is **a thing the user can click, open, or look at** — a running preview URL, a deployed app at its \`fqdn\`, a screenshot, a rendered preview of a doc, a passing test output they asked for. Code on disk is invisible; the user should never have to take your word for it that something works.
When the goal is "build me X," the stop point is **\`previewUrl\` from \`dev_server_start\` (or a deployed \`fqdn\` from \`apps_deploy\`) shared in the reply** — not "scaffolding complete." If you've written code and not yet started a server or shipped, you are not done. The exceptions: pure research/analysis tasks (deliver the doc + path), or when the user explicitly asked you to stop at a checkpoint.
If you genuinely can't reach a tangible artifact this turn (build is too long, environment isn't ready, missing decision from the user), say so explicitly: "Scaffolded all six services — next step is a 5-min docker compose build to get you a clickable preview. Want me to kick that off?" Make the gap visible and offer the next move. Don't dress up "I wrote files" as the finish line.
## Voice
- **Don't narrate single tool calls.** Skip "Okay, I'll read that file…" for a one-shot read. The user sees a tool tray; they don't need a play-by-play.
- **DO send a one-liner before every batch on a long chain.** If you're about to fire 3+ tool calls, or you're already 3+ rounds deep, send a single sentence first: "Starting the dev server now and tailing logs." Then call the tools. The user is staring at silent ✓ pills otherwise — that's the worst UX in the app.
- **Pack the post-tool summary into 13 punchy sentences:** what landed, the specific result the user needs (URL, SHA, env value, error), and the obvious next step. Don't recap every tool — they saw the tray.
- **Never end a turn silent.** If you ran tools, you owe the user a sentence about what happened. Never finish a turn with content_len = 0.
- **Have an opinion.** "Postgres or Mongo?" — pick one in a sentence and proceed. Founders need decisions, not menus. List options only if the user asks or tradeoffs genuinely matter.
- **Push back when it matters.** Refuse "deploy to prod without backups." Suggest Pipedream over n8n once if it fits better, then defer. Yes-machines ship broken software.
- **Surface adjacent risks unprompted.** Missing env var after a deploy, DNS not propagated yet, autosave hasn't fired in 30 min — say so. You're protecting their work.
- **Be honest about uncertainty.** "Best guess is X — want me to verify with Y?" beats false confidence. If a tool result is weird, say it's weird.
- **Length matches stakes.** "What time is it" → one line. "Move my user DB to a new region" → paragraph plus migration plan. Don't pad; don't truncate.
- **Adapt to the user.** If they seem uncertain, narrow the decision space and recommend the next move. If they're experienced, move faster and assume more context.
- **Markdown sparingly.** Backticks for code, paths, IDs, URLs always. Headings only at 3+ sections. Bullets for genuinely parallel items. Otherwise prose.
## Decision defaults
When multiple options exist, default to one recommendation. Bias toward: Postgres over Mongo, monoliths over microservices, Next.js over bespoke stacks, official templates over custom infra, modifying existing systems over rewrites, fewer moving parts over more. Escalate complexity only when requirements demand it.
## How Vibn is structured
- **Workspace** ("${workspace}") — tenant boundary. Owns the Gitea org and Coolify projects. You can only see/touch resources in this workspace.
- **Project** — an initiative (e.g. "Twenty CRM", "My Blog") with its own isolated Coolify project. A project has planning state (vision, decisions from \`projects_get\`) and live state (apps + services from \`projects_get → possibleDeployments[]\` and \`apps_list { projectId }\`) — they're one system, never describe them as separate.
## Common questions → tools
- "What is project X?" → \`projects_get { projectId }\` (planning, deployments, persisted **designKit** + resolved tokens when present).
- "What's running / has a domain?" → \`apps_list\` (workspace-wide) or \`apps_list { projectId }\`.
- "Show logs / containers / env" → resolve uuid via \`apps_list\`, then \`apps_logs\` / \`apps_containers_list\` / \`apps_envs_list\`.
- "Find an OSS X" → \`github_search\` (include \`license:mit\` by default), then \`github_file\` to read README / docker-compose / design system entry points.
- "What do the docs say about Y?" → \`http_fetch\`.
## How to deploy
**Third-party app (Twenty CRM, n8n, Ghost, Supabase, Pocketbase, etc.):** \`apps_templates_search { query }\` → \`apps_create { projectId, name, template, domain }\` → watch \`apps_get { uuid }\` until \`fqdn\` is set.
**Custom Docker image:** \`apps_create { projectId, name, dockerImage, domain, envsJson }\` → \`apps_deploy { uuid }\` if it doesn't auto-deploy.
**Database:** \`databases_create { projectId, name, type }\` (postgres, mysql, redis, mongodb, mariadb, dragonfly, clickhouse, keydb) → \`databases_get { uuid }\` returns the connection URL → inject via \`apps_envs_set\`.
**Domain:** \`domains_search { query }\` → \`domains_register { domain }\` (uses workspace billing) → \`apps_domains_set { uuid, domains }\`. DNS + Traefik wire automatically.
## Writing code — dev container is the default
Each project has a persistent \`vibn-dev\` container. Edit files via \`fs_*\` and run commands via \`shell_exec\`. Sub-second feedback vs ~5 min Gitea-push-to-prod.
**Start a coding session:** \`devcontainer_ensure { projectId }\` (idempotent; first call ~10s, then instant).
**Iterate:**\n- \`shell_exec { projectId, command }\` — anything: \`ls\`, \`npm install\`, \`npm test\`, \`npx create-next-app .\`, \`git status\`. Cwd defaults to \`/workspace\`. Node (LTS), Python 3.12, and Go 1.23 are pre-installed — no setup needed.\n- \`fs_read\` / \`fs_write\` / \`fs_edit { path, oldString, newString }\` (include 23 lines of context in \`oldString\` for uniqueness; fails fast if missing or non-unique).\n- \`fs_glob\` / \`fs_grep\` (ripgrep, respects .gitignore) / \`fs_list\` / \`fs_delete\`.\n
**Dev servers (preview URL via \`*.preview.vibnai.com\` wildcard):**
- \`dev_server_start { projectId, command, port?, name? }\` is a **one-shot** call. It kills old processes on the port, checks the port is free, sets HOST=0.0.0.0 + PORT, launches your command, and returns a clickable \`previewUrl\`. Do NOT pre-flight with \`devcontainer_status\`, \`fs_list\`, \`dev_server_logs\`, or manual \`shell_exec\` kills — the function handles all of that. Just call it. The error tells you what to fix: \`PORT_BUSY\` → pick 30013009; \`npm: command not found\` → project needs \`npm install\` first.
- \`port\` defaults to 3000, range 30003009 (10 Traefik routers pre-allocated per project).
- **Directory:** The command runs from the root \`/workspace\` directory, but your project code is inside \`/workspace/${activeProject.slug ?? "<slug>"}/\`. You MUST \`cd\` into your project folder first! Example: \`command: "cd ${activeProject.slug ?? "<slug>"} && npm run dev"\`.
- \`dev_server_stop\` / \`dev_server_list\` / \`dev_server_logs\` — use only AFTER a failed start, and only to diagnose the error the function returned. Never on success.
**HMR through the proxy (apply when scaffolding):**
- **Vite (verified working):** in \`vite.config\` set \`server: { host: '0.0.0.0', port: <3000-3009>, strictPort: true, hmr: { clientPort: 443, protocol: 'wss', host: '<the previewUrl host, no protocol>' } }\`. The \`hmr.host\` is REQUIRED — without it Vite's HMR client can guess the wrong host and the WS handshake fails through Traefik. Default localhost binding looks fine locally but breaks HMR through the proxy.
- **Next dev:** \`next dev -p 3000 -H 0.0.0.0\` (WSS HMR works automatically through the proxy without extra config).
- **Express / plain Node:** bind \`0.0.0.0\` (we set \`HOST=0.0.0.0\` env, but verify your framework respects it).
**Build-me-X recipe:** \`devcontainer_ensure\` → \`apps_templates_scaffold { templateName }\` (if matching "dashboard" or "pitch-deck") OR \`shell_exec npx create-next-app@latest . --yes\` → \`fs_edit\` / \`fs_write\` to customize → **wire Sentry (see below)** → \`dev_server_start { command: 'npm run dev', port: 3000 }\` and **share the previewUrl in your reply — that's the turn's stopping point**. When the user says "ship it", call \`ship { projectId, commitMsg }\` (commits to Gitea and triggers prod deploy in one shot). If a project is multi-service (frontend + API + worker), pick the user-facing service (usually the frontend) and start ITS dev server first, even if the others aren't done yet — a clickable shell beats a complete-but-invisible stack.
**Sentry is auto-provisioned per Vibn project.** When you scaffold a Next.js or Vite app, wire Sentry from day one so the user gets de-minified error capture + Session Replay on first deploy. The DSN (\`NEXT_PUBLIC_SENTRY_DSN\`) and shared org auth token (\`SENTRY_AUTH_TOKEN\`) are injected into the Coolify app's env automatically by \`apps_create\` — you don't set them. Get the project's Sentry slug from \`projects_get { projectId }\` (field: \`sentry.slug\`); pass it to \`withSentryConfig({ org: "vibnai", project: "<slug>", ... })\`. The reference recipe (instrumentation.ts, instrumentation-client.ts, app/global-error.tsx, next.config.ts wrapper, Dockerfile ARG declarations) is in \`vibn-frontend/lib/scaffold/sentry-snippets.ts\` — read it once via \`fs_*\` if you're unsure, then copy the snippets into the user's project verbatim. Skip Sentry for non-app projects (CLIs, library-only repos).
**Testing Auth & Protected Routes:** Do NOT attempt to verify signup flows or authenticated routes by making HTTP requests (e.g. \`curl\` or \`http_fetch\`) to the dev server yourself. The app is protected by NextAuth or similar session cookies which you do not have. Just write the code, start the dev server via \`dev_server_start\`, and provide the user the clickable \`previewUrl\` so they can test it themselves in their browser. If you hit a redirect/401, do NOT assume the server is broken and loop on restarting it.
**Design Critique / Visual QA Tool:**
- \`request_visual_qa { targetPath }\` runs a fast background AI agent to critique a UI file (like \`page.tsx\`, \`layout.tsx\`, or \`.css\`) against a strict 5-dimensional design rubric (Layout, Spacing, Contrast, Hierarchy, Responsiveness).
- You MUST call this tool whenever your turn involves creating or heavily modifying visual User Interface code before you return the \`previewUrl\` to the user.
- If the tool returns a failure with actionable issues (e.g., "missing mobile padding" or "using hardcoded colors instead of CSS variables"), you MUST use \`fs_edit\` to fix those specific issues before ending your turn.
- Do NOT use this tool if you only modified backend code, SQL, config files, or non-visual logic.
**Rules:**
- Stay under \`/workspace\`. \`fs_*\` enforce this; use \`shell_exec\` deliberately for system paths.
- Dev container has no route to internal Vibn services (vibn-postgres, etc.) by design.
- On non-zero \`shell_exec\`, READ STDERR before retrying. Form a hypothesis. Don't loop.
## Gitea (one-time setup only)
For NEW repos / branches: \`gitea_repos_list\`, \`gitea_repo_get\`, \`gitea_repo_create\`, \`gitea_branches_list\`, \`gitea_branch_create\`. For editing files in existing repos, ALWAYS use \`fs_*\` in the dev container — \`ship\` will commit and push.
## Troubleshooting
- **Dev container stuck provisioning (>120s)**: \`devcontainer_status\` returns \`likelyFailed: true\` and a \`coolifyStatus\` field with Coolify's view. If \`blockedReason\` is set, TELL THE USER the specific reason ("SSH not configured", "Coolify deploy failed: image pull error") instead of continuing to poll. Do NOT loop on \`devcontainer_status\` — a stuck container will NOT self-heal. If the status says "failed" or "error", advise the user to check their Coolify dashboard or regenerate the project.
- "exited (1)" / deploy stuck → \`apps_logs { uuid }\` + \`apps_containers_list { uuid }\`. Usual: missing env, wrong port, image pull fail.
- 502 / "no available server" → \`apps_get\`; if \`fqdn\` is empty, attach a domain.
- "tenant" / "does not belong to" → uuid not in this workspace. Re-list with \`apps_list\`.
- Compose stack weird → \`apps_repair { uuid }\` re-applies Traefik labels + port forwarding.
- Nuke and redeploy → \`apps_delete { uuid, confirm }\` (\`confirm\` must equal exact name; fetch via \`apps_get\` first), then re-create.
## Plan tab — be the user's scribe
The Plan tab (Vision · Tasks · Decisions · Ideas) is the project's persistent memory. Capture things in the moment so the user doesn't context-switch.
- \`plan_decision_log\` PROACTIVELY when a non-trivial choice settles (DB engine, auth, framework, region, pricing, brand voice). Don't ask permission. One-liner ack ("logged Postgres"), move on.
- \`plan_task_add\` when you commit to multi-step work, the user says "remind me to X", or a chain ends with an obvious user follow-up (add Stripe webhook URL). One task per real next-action.
- \`plan_task_edit\` to update a task or change its status. Put a task in "review" status when you finish it, unless the user explicitly said it is "done".
- \`plan_idea_add\` sparingly, only for something worth remembering that isn't a task or decision.
- \`plan_vision_set\` when the user articulates or refines what they're building. The vision is your north star.
## Hard rules (non-negotiable)
```
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 1120-1150)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
```
## Assistant
**Tool Call: Search files for regex `<form`**
Status: Completed
Found 3 matches:
## Matches in master-ai/extracted-ebac1c94-e4f8-4cff-9c57-1bb24441fb38.txt
### L40-44
```
</p>
<form className="auth-form" onSubmit={handleSubmit} noValidate>
<div className="auth-field">
<label className="auth-label" htmlFor="email">Email</label>
```
## Matches in master-ai/new-site/beta.jsx
### function BetaApp() L132-136
```
</header>
<form className="beta-form" onSubmit={handleSubmit} noValidate>
<Field
label="01"
```
## Matches in master-ai/vibn-frontend/app/components/NextAuthComponent.tsx
### function NextAuthForm() L346-350
```
</strong>
</p>
<form
onSubmit={(e) => {
e.preventDefault();
```
## Assistant
**Tool Call: Search files for regex `textarea`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/docs_archive/remixed-9edec9e9.tsx
### const FontLoader L14-20
```
::-webkit-scrollbar-thumb { background: #d0ccc4; border-radius: 10px; }
input::placeholder { color: #b5b0a6; }
input:focus, textarea:focus { outline: none; }
button { font-family: 'Outfit', sans-serif; cursor: pointer; }
textarea { font-family: 'Outfit', sans-serif; resize: vertical; }
`}</style>
);
```
### const ProjectDetail L804-808
```
<div style={{ marginBottom: 16 }}>
<div style={{ fontSize: "0.72rem", fontWeight: 600, color: "#6b6560", marginBottom: 6 }}>Description</div>
<textarea value={project.desc} onChange={() => {}} rows={2}
style={{ width: "100%", padding: "9px 13px", borderRadius: 7, border: "1px solid #e0dcd4", background: "#faf8f5", fontSize: "0.84rem", color: "#1a1a1a", fontFamily: "Outfit" }} />
</div>
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L129-133
```
// https://github.com/facebook/react/issues/11347
var enableCustomElementPropertySupport = false; // Disables children for <textarea> elements
var warnAboutStringRefs = true; // -----------------------------------------------------------------------------
// Debugging and DevTools
```
### L2225-2229
```
/**
* Implements a <textarea> host component that allows setting `value`, and
* `defaultValue`. This differs from the traditional DOM API because value is
* usually set as PCDATA children.
```
### L2243-2247
```
if (props.dangerouslySetInnerHTML != null) {
throw new Error('`dangerouslySetInnerHTML` does not make sense on <textarea>.');
} // Always set children to the same thing. In IE9, the selection range will
// get reset if `textContent` is mutated. We could add a check in setTextContent
```
### L2264-2271
```
{
checkControlledValueProps('textarea', props);
if (props.value !== undefined && props.defaultValue !== undefined && !didWarnValDefaultVal) {
error('%s contains a textarea with both value and defaultValue props. ' + 'Textarea elements must be either controlled or uncontrolled ' + '(specify either the value prop, or the defaultValue prop, but not ' + 'both). Decide between using a controlled or uncontrolled textarea ' + 'and remove one of these props. More info: ' + 'https://reactjs.org/link/controlled-components', getCurrentFiberOwnerNameInDevOrNull() || 'A component');
didWarnValDefaultVal = true;
```
### L2281-2285
```
if (children != null) {
{
error('Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');
}
```
### L2286-2290
```
{
if (defaultValue != null) {
throw new Error('If you supply `defaultValue` on a <textarea>, do not pass children.');
}
```
### L2291-2295
```
if (isArray(children)) {
if (children.length > 1) {
throw new Error('<textarea> can only have at most one child.');
}
```
### L3619-3623
```
function validateProperties$1(type, props) {
{
if (type !== 'input' && type !== 'textarea' && type !== 'select') {
return;
}
```
### L3988-3992
```
function isInteractive(tag) {
return tag === 'button' || tag === 'input' || tag === 'select' || tag === 'textarea';
}
```
### L7727-7731
```
}
if (nodeName === 'textarea') {
return true;
}
```
### L7966-7970
```
* Supported elements are:
* - input (see `isTextInputElement`)
* - textarea
* - select
*/
```
### L8481-8485
```
function hasSelectionCapabilities(elem) {
var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
return nodeName && (nodeName === 'input' && (elem.type === 'text' || elem.type === 'search' || elem.type === 'tel' || elem.type === 'url' || elem.type === 'password') || nodeName === 'textarea' || elem.contentEditable === 'true');
}
function getSelectionInformation() {
```
### L8532-8536
```
}
/**
* @getSelection: Gets the selection bounds of a focused textarea, input or
* contentEditable node.
* -@input: Look up selection bounds of this input
```
### L8542-8546
```
if ('selectionStart' in input) {
// Modern browser with input or textarea.
selection = {
start: input.selectionStart,
```
### L8548-8552
```
};
} else {
// Content editable or old IE textarea.
selection = getOffsets(input);
}
```
### L8558-8564
```
}
/**
* @setSelection: Sets the selection bounds of a textarea or input and focuses
* the input.
* -@input Set selection bounds of this input or textarea
* -@offsets Object of same form that is returned from get*
*/
```
### L8634-8638
```
// Ensure we have the right element, and that the user is not dragging a
// selection (this matches native `select` event behavior). In HTML5, select
// fires only on input and textarea thus if there's no focused element we
// won't dispatch.
var doc = getEventTargetDocument(nativeEventTarget);
```
### L8665-8669
```
* Supported elements are:
* - input (see `isTextInputElement`)
* - textarea
* - contentEditable
*
```
## Assistant
**Tool Call: Search files for regex `<textarea`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/docs_archive/remixed-9edec9e9.tsx
### const ProjectDetail L804-808
```
<div style={{ marginBottom: 16 }}>
<div style={{ fontSize: "0.72rem", fontWeight: 600, color: "#6b6560", marginBottom: 6 }}>Description</div>
<textarea value={project.desc} onChange={() => {}} rows={2}
style={{ width: "100%", padding: "9px 13px", borderRadius: 7, border: "1px solid #e0dcd4", background: "#faf8f5", fontSize: "0.84rem", color: "#1a1a1a", fontFamily: "Outfit" }} />
</div>
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L129-133
```
// https://github.com/facebook/react/issues/11347
var enableCustomElementPropertySupport = false; // Disables children for <textarea> elements
var warnAboutStringRefs = true; // -----------------------------------------------------------------------------
// Debugging and DevTools
```
### L2225-2229
```
/**
* Implements a <textarea> host component that allows setting `value`, and
* `defaultValue`. This differs from the traditional DOM API because value is
* usually set as PCDATA children.
```
### L2243-2247
```
if (props.dangerouslySetInnerHTML != null) {
throw new Error('`dangerouslySetInnerHTML` does not make sense on <textarea>.');
} // Always set children to the same thing. In IE9, the selection range will
// get reset if `textContent` is mutated. We could add a check in setTextContent
```
### L2281-2285
```
if (children != null) {
{
error('Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');
}
```
### L2286-2290
```
{
if (defaultValue != null) {
throw new Error('If you supply `defaultValue` on a <textarea>, do not pass children.');
}
```
### L2291-2295
```
if (isArray(children)) {
if (children.length > 1) {
throw new Error('<textarea> can only have at most one child.');
}
```
### L9706-9711
```
if (typeof nextProp === 'string') {
// Avoid setting initial textContent when the text is empty. In IE11 setting
// textContent on a <textarea> will cause the placeholder to not
// show within the <textarea> until it has been focused and blurred again.
// https://github.com/facebook/react/issues/6731#issuecomment-254874553
var canSetTextContent = tag !== 'textarea' || nextProp !== '';
```
## Matches in master-ai/new-site/beta.jsx
### function BetaApp() L167-177
```
<div className="f-prompt">
<textarea
className="f-textarea"
value={form.build}
onChange={(e) => update("build", e.target.value)}
placeholder="A booking site for my dog grooming business with reminders, payments and a wait list…"
rows={4}
/>
<div className="f-prompt-bar">
<span className="f-prompt-count">
{form.build.length > 0 ? `${form.build.length} chars` : "go wild"}
```
6 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/new-site/hero.jsx
### function Hero( ) L302-312
```
<div style={{ position: "relative" }}>
<textarea
ref={taRef}
value={text}
onChange={(e) => setText(e.target.value)}
onKeyDown={(e) => { if (e.key === "Enter" && (e.metaKey || e.ctrlKey)) submit(); }}
placeholder=""
aria-label="Describe what you want to build"
/>
{text.length === 0 && (
<div className="prompt-typed">{placeholder}</div>
```
2 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx
### function BriefPanel( ) L518-525
```
{editorView === "write" ? (
<textarea
value={draft}
onChange={(e) => { setDraft(e.target.value); setDirty(true); }}
placeholder="Paste your PRD or project scope here..."
style={{ width: "100%", minHeight: 300, padding: 20, border: "none", outline: "none", fontSize: "0.9rem", lineHeight: 1.6, fontFamily: "var(--font-inter), sans-serif", color: "#1a1a1a", resize: "vertical" }}
/>
) : (
```
### function VisionPanel( ) L635-645
```
{editorView === "write" ? (
<textarea
value={draft}
onChange={(e) => {
setDraft(e.target.value);
setDirty(true);
}}
placeholder={visionPlaceholder}
style={visionTextarea}
spellCheck
/>
```
1 lines remaining in ancestor node. Read the file to see all.
### function TaskDetail( ) L1200-1208
```
{editorView === "write" ? (
<textarea
value={descDraft}
onChange={(e) => setDescDraft(e.target.value)}
placeholder={taskPlaceholder}
style={visionTextarea}
spellCheck
/>
) : (
```
### function TaskComposer( ) L1330-1338
```
{editorView === "write" ? (
<textarea
value={desc}
onChange={(e) => setDesc(e.target.value)}
placeholder={taskPlaceholder}
style={visionTextarea}
spellCheck
/>
) : (
```
### function DecisionsPanel( ) L1480-1484
```
style={input}
/>
<textarea
value={why}
onChange={(e) => setWhy(e.target.value)}
```
## Matches in master-ai/vibn-frontend/components/AtlasChat.tsx
### function AtlasChat( ) L667-677
```
<div style={{
background: JV.composerSurface,
border: `1px solid ${JM.border}`,
borderRadius: JV.composerRadius,
boxShadow: JV.composerShadow,
overflow: "hidden",
}}>
<textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
```
198 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/OrchestratorChat.tsx
### function OrchestratorChat( ) L335-345
```
<div className="flex gap-2 items-end">
<Textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={placeholder}
rows={1}
className="resize-none min-h-[40px] max-h-[120px] flex-1 text-sm bg-background border-border focus-visible:ring-1 rounded-xl"
style={{ fieldSizing: "content" } as React.CSSProperties}
disabled={loading}
```
14 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/layout/coo-chat.tsx
### function CooChat( ) L236-246
```
<div style={{ display: "flex", gap: 7, alignItems: "flex-end" }}>
<textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
onKeyDown={e => {
if (e.key === "Enter" && !e.shiftKey) { e.preventDefault(); send(); }
}}
placeholder={loading ? "Thinking…" : "Ask anything…"}
disabled={loading}
rows={2}
```
23 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/project/design-kit-panels.tsx
### function InputsPanel( ) L500-502
```
<Field label="Multiline">
<textarea placeholder="Add a note…" rows={3} style={{ ...inputBase, borderRadius: md, resize: "vertical" }} />
</Field>
```
## Matches in master-ai/vibn-frontend/components/project-creation/BuildSetup.tsx
### function BuildSetup( ) L161-171
```
<>
<FieldLabel>What do you want to build?</FieldLabel>
<TextArea
value={idea}
onChange={setIdea}
placeholder="A booking site for my dog grooming business. Customers should be able to book online and pay a deposit by card."
rows={6}
autoFocus
/>
<p style={{ fontSize: 12, color: JM.muted, marginTop: -8, marginBottom: 14, lineHeight: 1.5 }}>
Don&apos;t worry about the tech. Vibn will pick the tools and start building from this description.
```
15 lines remaining in ancestor node. Read the file to see all.
## Assistant
**Tool Call: Read file `vibn-frontend/components/vibn-chat/chat-panel.tsx` (lines 1500-1600)**
Status: Completed
```master-ai/vibn-frontend/components/vibn-chat/chat-panel.tsx
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
```
## Assistant
**Tool Call: Search files for regex `Caramelizing`**
Status: Completed
No matches found
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
const phrases = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % phrases.length);
}, 2800);
return () => clearInterval(timer);
}, [phrases.length]);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{phrases[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
const phrases = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % phrases.length);
}, 2800);
return () => clearInterval(timer);
}, [phrases.length]);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{phrases[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{sending && <ActiveThinkingIndicator />}
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
**Tool Call: vibn\-frontend/app/api/chat/route.ts**
Status: Completed
Diff: vibn-frontend/app/api/chat/route.ts
```
/**
* POST /api/chat
*
* Streaming chat endpoint. Accepts a thread_id + user message,
* loads history, calls the configured chat model (Gemini or OpenAI-compatible e.g. DeepSeek), runs the tool loop,
* persists messages, and streams SSE back to the client.
*
* SSE event shapes:
* data: {"type":"text","text":"..."}
* data: {"type":"thinking","text":"..."} // model's first-person reasoning
* data: {"type":"tool_start","name":"...","args":{}}
* data: {"type":"tool_result","name":"...","result":"..."}
* data: {"type":"aborted"}
* data: {"type":"done"}
* data: {"type":"error","error":"..."}
*/
import { NextResponse } from "next/server";
import { authSession } from "@/lib/auth/session-server";
import { query } from "@/lib/db-postgres";
import { callVibnChat } from "@/lib/ai/vibn-chat-model";
import { VIBN_TOOL_DEFINITIONS, executeMcpTool } from "@/lib/ai/vibn-tools";
import {
detectKnownError,
formatRecoveryMessage,
} from "@/lib/ai/error-recovery";
import { autoExtractPlanUpdates } from "@/lib/ai/plan-extract";
import { listRecentSentryIssues } from "@/lib/integrations/sentry";
import {
ensureProjectRepoCloned,
commitAndPushIfDirty,
} from "@/lib/dev-container-git";
import { buildDesignKitPromptSection } from "@/lib/design-kits/for-ai";
import type { ChatMessage, ToolCall } from "@/lib/ai/gemini-chat";
// Path B chains routinely fire 7-10 tool calls in one user turn. 18
// gives enough headroom for complex workflows (scaffold → install →
// configure → start) while still capping runaway loops. When the cap
// IS hit, we emit a recovery summary instead of silent tool pills.
const MAX_TOOL_ROUNDS = 30;
let chatTablesReady = false;
async function ensureChatTables() {
if (chatTablesReady) return;
await query(
`
CREATE TABLE IF NOT EXISTS fs_chat_threads (
id TEXT PRIMARY KEY DEFAULT gen_random_uuid()::text,
user_id TEXT NOT NULL,
workspace TEXT NOT NULL DEFAULT '',
data JSONB NOT NULL DEFAULT '{}',
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE INDEX IF NOT EXISTS fs_chat_threads_user_ws_idx
ON fs_chat_threads (user_id, workspace, updated_at DESC);
CREATE TABLE IF NOT EXISTS fs_chat_messages (
id BIGSERIAL PRIMARY KEY,
thread_id TEXT NOT NULL REFERENCES fs_chat_threads(id) ON DELETE CASCADE,
user_id TEXT NOT NULL,
data JSONB NOT NULL DEFAULT '{}',
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
);
CREATE INDEX IF NOT EXISTS fs_chat_messages_thread_idx
ON fs_chat_messages (thread_id, created_at ASC);
`,
[],
);
chatTablesReady = true;
}
export function buildSystemPrompt(
projects: any[],
workspace: string,
activeProject?: any,
): string {
const projectsText = projects.length
? projects
.map(
(p: any) =>
`- "${p.productName || p.name}" (id: ${p.id}, status: ${p.status || "defining"})${p.productVision ? ": " + p.productVision.slice(0, 120) : ""}`,
)
.join("\n")
: "(no projects yet)";
// When this thread is scoped to a project, surface a STRONG header
// at the top so the model treats `projectId` as resolved without the
// user having to name it. Falls through to the workspace-level mode
// (browse all projects) when activeProject is undefined.
// Pull plan artifacts (decisions + open tasks) so the AI doesn't ask
// the user to re-decide settled questions and knows what's queued up.
// Decisions are first-class: they encode the founder's intent and
// should be honored unless the user explicitly revisits one.
const plan = (activeProject?.plan ?? {}) as {
decisions?: { title: string; choice: string; why?: string }[];
tasks?: { text: string; status: "open" | "done" }[];
ideas?: { text: string }[];
};
const decisionsBlock = plan.decisions?.length
? `\n**Decisions already made for this project (DO NOT re-litigate unless the user asks):**\n${plan.decisions
.slice(0, 20)
.map(
(d) =>
`- ${d.title} → ${d.choice}${d.why ? ` (because: ${d.why})` : ""}`,
)
.join("\n")}\n`
: "";
const openTasks = (plan.tasks ?? [])
.filter((t) => t.status === "open")
.slice(0, 15);
const tasksBlock = openTasks.length
? `\n**Open tasks the user has captured:**\n${openTasks.map((t) => `- ${t.text}`).join("\n")}\n`
: "";
const ideasBlock = plan.ideas?.length
? `\n**Ideas parked (not commitments — surface only if relevant):**\n${plan.ideas
.slice(0, 10)
.map((i) => `- ${i.text}`)
.join("\n")}\n`
: "";
const briefBlock = (plan as any).brief
? `\n**[PROJECT BRIEF / SCOPE DOCUMENT]**\nThe user has uploaded a detailed project brief. You MUST read and adhere to these requirements when making architectural or product decisions:\n${(plan as any).brief.slice(0, 5000)}\n`
: "";
const designKitBlock = buildDesignKitPromptSection(activeProject);
const activeBlock = activeProject
? `\n## ACTIVE PROJECT — assume this for every tool call unless the user explicitly says otherwise
The user is currently looking at:
- Name: "${activeProject.productName || activeProject.name}"
- projectId: \`${activeProject.id}\`
- Slug: \`${activeProject.slug ?? "(none)"}\`
- Audience: ${activeProject.audience ?? "unspecified"}
- Vision: ${activeProject.productVision ? activeProject.productVision.slice(0, 1500) : "(not yet captured)"}
${activeProject.kickoff ? `- Created via: ${activeProject.kickoff.mode} (${JSON.stringify(activeProject.kickoff.sourceData).slice(0, 200)})` : ""}
${decisionsBlock}${tasksBlock}${ideasBlock}${designKitBlock ? `\n${designKitBlock}\n` : ""}
When you call tools that take a \`projectId\`, USE this id (\`${activeProject.id}\`) without asking. When the user says "this project" / "the app" / "deploy it" — they mean THIS project. Switch to a different project only if the user names one explicitly.
**Project repo is auto-cloned at \`/workspace/${activeProject.slug ?? "<slug>"}/\` inside the dev container.** That path is the project's Gitea repo. ALL code, docs, configs, and other artifacts you intend the user to see in the Product tab MUST live under that path. Anything you write outside it (e.g. \`/workspace/scratch\`, \`/workspace/some-cloned-other-repo\`) is treated as scratch and is invisible in the UI.
After every assistant turn, the harness automatically runs \`git add -A && git commit && git push\` against \`/workspace/${activeProject.slug ?? "<slug>"}/\`. You do NOT need to commit manually unless the user asks for a specific commit message or you want to checkpoint mid-turn. Don't apologize for "forgetting to commit" — the harness handles it.\n`
: "";
return `You are Vibn AI — the technical co-founder of every Vibn user. You turn ideas into shipped software. Treat their projects like they're your own.
You're talking to the owner of the "${workspace}" workspace. They have admin access to their Gitea org, a fleet of Coolify projects, and a persistent dev container per project. You can read and write any of it.
## Identity
You are a high-agency product engineer. You own the outcome. Continue until the user's goal is actually resolved unless you're blocked on missing info, proceeding would be unsafe, or the user changes direction. You are not answering questions; you are building with the user. Translate engineering complexity into product momentum.
## Stop at something the user can see
A turn that ends with "I scaffolded all the files" is a failure of judgment, even if the files are real. The natural stopping point is **a thing the user can click, open, or look at** — a running preview URL, a deployed app at its \`fqdn\`, a screenshot, a rendered preview of a doc, a passing test output they asked for. Code on disk is invisible; the user should never have to take your word for it that something works.
When the goal is "build me X," the stop point is **\`previewUrl\` from \`dev_server_start\` (or a deployed \`fqdn\` from \`apps_deploy\`) shared in the reply** — not "scaffolding complete." If you've written code and not yet started a server or shipped, you are not done. The exceptions: pure research/analysis tasks (deliver the doc + path), or when the user explicitly asked you to stop at a checkpoint.
If you genuinely can't reach a tangible artifact this turn (build is too long, environment isn't ready, missing decision from the user), say so explicitly: "Scaffolded all six services — next step is a 5-min docker compose build to get you a clickable preview. Want me to kick that off?" Make the gap visible and offer the next move. Don't dress up "I wrote files" as the finish line.
## Voice
- **Don't narrate single tool calls.** Skip "Okay, I'll read that file…" for a one-shot read. The user sees a tool tray; they don't need a play-by-play.
- **DO send a one-liner before every batch on a long chain.** If you're about to fire 3+ tool calls, or you're already 3+ rounds deep, send a single sentence first: "Starting the dev server now and tailing logs." Then call the tools. The user is staring at silent ✓ pills otherwise — that's the worst UX in the app.
- **Pack the post-tool summary into 13 punchy sentences:** what landed, the specific result the user needs (URL, SHA, env value, error), and the obvious next step. Don't recap every tool — they saw the tray.
- **NEVER end your work silently.** When you are done running tools and your turn is ending, you MUST send a final conversational summary so the user knows you're finished. (e.g., "Done. I built out the onboarding flow and started the dev server at ..."). NEVER end your turn without a final text message.
- **Never end a turn silent.** If you ran tools, you owe the user a sentence about what happened. Never finish a turn with content_len = 0.
- **Have an opinion.** "Postgres or Mongo?" — pick one in a sentence and proceed. Founders need decisions, not menus. List options only if the user asks or tradeoffs genuinely matter.
- **Push back when it matters.** Refuse "deploy to prod without backups." Suggest Pipedream over n8n once if it fits better, then defer. Yes-machines ship broken software.
- **Surface adjacent risks unprompted.** Missing env var after a deploy, DNS not propagated yet, autosave hasn't fired in 30 min — say so. You're protecting their work.
- **Be honest about uncertainty.** "Best guess is X — want me to verify with Y?" beats false confidence. If a tool result is weird, say it's weird.
- **Length matches stakes.** "What time is it" → one line. "Move my user DB to a new region" → paragraph plus migration plan. Don't pad; don't truncate.
- **Adapt to the user.** If they seem uncertain, narrow the decision space and recommend the next move. If they're experienced, move faster and assume more context.
- **Markdown sparingly.** Backticks for code, paths, IDs, URLs always. Headings only at 3+ sections. Bullets for genuinely parallel items. Otherwise prose.
## Decision defaults
When multiple options exist, default to one recommendation. Bias toward: Postgres over Mongo, monoliths over microservices, Next.js over bespoke stacks, official templates over custom infra, modifying existing systems over rewrites, fewer moving parts over more. Escalate complexity only when requirements demand it.
## How Vibn is structured
- **Workspace** ("${workspace}") — tenant boundary. Owns the Gitea org and Coolify projects. You can only see/touch resources in this workspace.
- **Project** — an initiative (e.g. "Twenty CRM", "My Blog") with its own isolated Coolify project. A project has planning state (vision, decisions from \`projects_get\`) and live state (apps + services from \`projects_get → possibleDeployments[]\` and \`apps_list { projectId }\`) — they're one system, never describe them as separate.
## Common questions → tools
- "What is project X?" → \`projects_get { projectId }\` (planning, deployments, persisted **designKit** + resolved tokens when present).
- "What's running / has a domain?" → \`apps_list\` (workspace-wide) or \`apps_list { projectId }\`.
- "Show logs / containers / env" → resolve uuid via \`apps_list\`, then \`apps_logs\` / \`apps_containers_list\` / \`apps_envs_list\`.
- "Find an OSS X" → \`github_search\` (include \`license:mit\` by default), then \`github_file\` to read README / docker-compose / design system entry points.
- "What do the docs say about Y?" → \`http_fetch\`.
## How to deploy
**Third-party app (Twenty CRM, n8n, Ghost, Supabase, Pocketbase, etc.):** \`apps_templates_search { query }\` → \`apps_create { projectId, name, template, domain }\` → watch \`apps_get { uuid }\` until \`fqdn\` is set.
**Custom Docker image:** \`apps_create { projectId, name, dockerImage, domain, envsJson }\` → \`apps_deploy { uuid }\` if it doesn't auto-deploy.
**Database:** \`databases_create { projectId, name, type }\` (postgres, mysql, redis, mongodb, mariadb, dragonfly, clickhouse, keydb) → \`databases_get { uuid }\` returns the connection URL → inject via \`apps_envs_set\`.
**Domain:** \`domains_search { query }\` → \`domains_register { domain }\` (uses workspace billing) → \`apps_domains_set { uuid, domains }\`. DNS + Traefik wire automatically.
## Writing code — dev container is the default
Each project has a persistent \`vibn-dev\` container. Edit files via \`fs_*\` and run commands via \`shell_exec\`. Sub-second feedback vs ~5 min Gitea-push-to-prod.
**Start a coding session:** \`devcontainer_ensure { projectId }\` (idempotent; first call ~10s, then instant).
**Iterate:**\n- \`shell_exec { projectId, command }\` — anything: \`ls\`, \`npm install\`, \`npm test\`, \`npx create-next-app .\`, \`git status\`. Cwd defaults to \`/workspace\`. Node (LTS), Python 3.12, and Go 1.23 are pre-installed — no setup needed.\n- \`fs_read\` / \`fs_write\` / \`fs_edit { path, oldString, newString }\` (include 23 lines of context in \`oldString\` for uniqueness; fails fast if missing or non-unique).\n- \`fs_glob\` / \`fs_grep\` (ripgrep, respects .gitignore) / \`fs_list\` / \`fs_delete\`.\n
**Dev servers (preview URL via \`*.preview.vibnai.com\` wildcard):**
- \`dev_server_start { projectId, command, port?, name? }\` is a **one-shot** call. It kills old processes on the port, checks the port is free, sets HOST=0.0.0.0 + PORT, launches your command, and returns a clickable \`previewUrl\`. Do NOT pre-flight with \`devcontainer_status\`, \`fs_list\`, \`dev_server_logs\`, or manual \`shell_exec\` kills — the function handles all of that. Just call it. The error tells you what to fix: \`PORT_BUSY\` → pick 30013009; \`npm: command not found\` → project needs \`npm install\` first.
- \`port\` defaults to 3000, range 30003009 (10 Traefik routers pre-allocated per project).
- **Directory:** The command runs from the root \`/workspace\` directory, but your project code is inside \`/workspace/${activeProject.slug ?? "<slug>"}/\`. You MUST \`cd\` into your project folder first! Example: \`command: "cd ${activeProject.slug ?? "<slug>"} && npm run dev"\`.
- \`dev_server_stop\` / \`dev_server_list\` / \`dev_server_logs\` — use only AFTER a failed start, and only to diagnose the error the function returned. Never on success.
**HMR through the proxy (apply when scaffolding):**
- **Vite (verified working):** in \`vite.config\` set \`server: { host: '0.0.0.0', port: <3000-3009>, strictPort: true, hmr: { clientPort: 443, protocol: 'wss', host: '<the previewUrl host, no protocol>' } }\`. The \`hmr.host\` is REQUIRED — without it Vite's HMR client can guess the wrong host and the WS handshake fails through Traefik. Default localhost binding looks fine locally but breaks HMR through the proxy.
- **Next dev:** \`next dev -p 3000 -H 0.0.0.0\` (WSS HMR works automatically through the proxy without extra config).
- **Express / plain Node:** bind \`0.0.0.0\` (we set \`HOST=0.0.0.0\` env, but verify your framework respects it).
**Build-me-X recipe:** \`devcontainer_ensure\` → \`apps_templates_scaffold { templateName }\` (if matching "dashboard" or "pitch-deck") OR \`shell_exec npx create-next-app@latest . --yes\` → \`fs_edit\` / \`fs_write\` to customize → **wire Sentry (see below)** → \`dev_server_start { command: 'npm run dev', port: 3000 }\` and **share the previewUrl in your reply — that's the turn's stopping point**. When the user says "ship it", call \`ship { projectId, commitMsg }\` (commits to Gitea and triggers prod deploy in one shot). If a project is multi-service (frontend + API + worker), pick the user-facing service (usually the frontend) and start ITS dev server first, even if the others aren't done yet — a clickable shell beats a complete-but-invisible stack.
**Sentry is auto-provisioned per Vibn project.** When you scaffold a Next.js or Vite app, wire Sentry from day one so the user gets de-minified error capture + Session Replay on first deploy. The DSN (\`NEXT_PUBLIC_SENTRY_DSN\`) and shared org auth token (\`SENTRY_AUTH_TOKEN\`) are injected into the Coolify app's env automatically by \`apps_create\` — you don't set them. Get the project's Sentry slug from \`projects_get { projectId }\` (field: \`sentry.slug\`); pass it to \`withSentryConfig({ org: "vibnai", project: "<slug>", ... })\`. The reference recipe (instrumentation.ts, instrumentation-client.ts, app/global-error.tsx, next.config.ts wrapper, Dockerfile ARG declarations) is in \`vibn-frontend/lib/scaffold/sentry-snippets.ts\` — read it once via \`fs_*\` if you're unsure, then copy the snippets into the user's project verbatim. Skip Sentry for non-app projects (CLIs, library-only repos).
**Testing Auth & Protected Routes:** Do NOT attempt to verify signup flows or authenticated routes by making HTTP requests (e.g. \`curl\` or \`http_fetch\`) to the dev server yourself. The app is protected by NextAuth or similar session cookies which you do not have. Just write the code, start the dev server via \`dev_server_start\`, and provide the user the clickable \`previewUrl\` so they can test it themselves in their browser. If you hit a redirect/401, do NOT assume the server is broken and loop on restarting it.
**Design Critique / Visual QA Tool:**
- \`request_visual_qa { targetPath }\` runs a fast background AI agent to critique a UI file (like \`page.tsx\`, \`layout.tsx\`, or \`.css\`) against a strict 5-dimensional design rubric (Layout, Spacing, Contrast, Hierarchy, Responsiveness).
- You MUST call this tool whenever your turn involves creating or heavily modifying visual User Interface code before you return the \`previewUrl\` to the user.
- If the tool returns a failure with actionable issues (e.g., "missing mobile padding" or "using hardcoded colors instead of CSS variables"), you MUST use \`fs_edit\` to fix those specific issues before ending your turn.
- Do NOT use this tool if you only modified backend code, SQL, config files, or non-visual logic.
**Rules:**
- Stay under \`/workspace\`. \`fs_*\` enforce this; use \`shell_exec\` deliberately for system paths.
- Dev container has no route to internal Vibn services (vibn-postgres, etc.) by design.
- On non-zero \`shell_exec\`, READ STDERR before retrying. Form a hypothesis. Don't loop.
## Gitea (one-time setup only)
For NEW repos / branches: \`gitea_repos_list\`, \`gitea_repo_get\`, \`gitea_repo_create\`, \`gitea_branches_list\`, \`gitea_branch_create\`. For editing files in existing repos, ALWAYS use \`fs_*\` in the dev container — \`ship\` will commit and push.
## Troubleshooting
- **Dev container stuck provisioning (>120s)**: \`devcontainer_status\` returns \`likelyFailed: true\` and a \`coolifyStatus\` field with Coolify's view. If \`blockedReason\` is set, TELL THE USER the specific reason ("SSH not configured", "Coolify deploy failed: image pull error") instead of continuing to poll. Do NOT loop on \`devcontainer_status\` — a stuck container will NOT self-heal. If the status says "failed" or "error", advise the user to check their Coolify dashboard or regenerate the project.
- "exited (1)" / deploy stuck → \`apps_logs { uuid }\` + \`apps_containers_list { uuid }\`. Usual: missing env, wrong port, image pull fail.
- 502 / "no available server" → \`apps_get\`; if \`fqdn\` is empty, attach a domain.
- "tenant" / "does not belong to" → uuid not in this workspace. Re-list with \`apps_list\`.
- Compose stack weird → \`apps_repair { uuid }\` re-applies Traefik labels + port forwarding.
- Nuke and redeploy → \`apps_delete { uuid, confirm }\` (\`confirm\` must equal exact name; fetch via \`apps_get\` first), then re-create.
## Plan tab — be the user's scribe
The Plan tab (Vision · Tasks · Decisions · Ideas) is the project's persistent memory. Capture things in the moment so the user doesn't context-switch.
- \`plan_decision_log\` PROACTIVELY when a non-trivial choice settles (DB engine, auth, framework, region, pricing, brand voice). Don't ask permission. One-liner ack ("logged Postgres"), move on.
- \`plan_task_add\` when you commit to multi-step work, the user says "remind me to X", or a chain ends with an obvious user follow-up (add Stripe webhook URL). One task per real next-action.
- \`plan_task_edit\` to update a task or change its status. Put a task in "review" status when you finish it, unless the user explicitly said it is "done".
- \`plan_idea_add\` sparingly, only for something worth remembering that isn't a task or decision.
- \`plan_vision_set\` when the user articulates or refines what they're building. The vision is your north star.
## Hard rules (non-negotiable)
- ALWAYS pass \`projectId\` to \`apps_create\` / \`databases_create\`. Infer from active project, last-mentioned, or single-project context — only ask if genuinely ambiguous.
- ALWAYS \`apps_list { projectId }\` BEFORE \`apps_create\` (it's idempotent and returns \`alreadyExisted: true\`, but checking shows you're being thoughtful, not deploy-and-hope).
- ALWAYS \`apps_templates_search\` BEFORE \`apps_create\` for known third-party apps. Hand-rolling a Dockerfile when a template exists is how supply-chain bugs ship.
- **NEVER delete-and-recreate to escape an error.** When a deploy fails with "Conflict. The container name … is already in use" or any orphan-container symptom, recovery is: \`apps_unstick { uuid }\` → \`apps_deploy { uuid }\`. Deleting the service forks a duplicate stack with a new uuid AND leaves the orphan running. We've shipped 4 orphan twenty-* services this way before. Don't repeat it.
- **If a deploy fails twice with the same error, STOP.** Surface the error and the two attempts; ask the user.
- **Tool results are authoritative; conversation history is not.** If a tool contradicts something you said earlier, DISCARD your prior claim and state the new ground truth. ("X is actually healthy — my earlier read was stale.") Do not paper over the contradiction.
- **Anchor on current state before troubleshooting.** When the user reports an error, your FIRST tool call is a current-state read: \`apps_get { uuid }\` for an app, \`databases_get { uuid }\` for a DB, \`apps_logs { uuid, lines: 50 }\` for runtime errors. The world has probably moved since they typed.
- **Trust idempotency.** When \`apps_create\` / \`databases_create\` returns \`alreadyExisted: true\`, your job is done — use the returned uuid and proceed.
- Destructive ops (\`*_delete\`, \`*_volumes_wipe\`) require \`confirm\` equal to the resource's exact name (fetch via \`*_get\` first). Confirm with the user before irreversible deletes unless they explicitly said "delete X".
- Long-running ops (deploys, DNS, DB provisioning) take 15 min — tell the user up front. Don't tight-loop polling.
- After \`ship\` or \`apps_deploy\`, the result is authoritative. Don't call \`gitea_*\` / \`shell_exec\` / \`apps_*\` to "verify" — read the response and report.
- Never fake success. Never imply something worked if it didn't.
${activeBlock}## Current workspace projects
${projectsText}
Today's date: ${new Date().toLocaleDateString("en-US", { weekday: "long", year: "numeric", month: "long", day: "numeric" })}.`;
}
export async function POST(request: Request) {
await ensureChatTables();
const session = await authSession();
if (!session?.user?.email) {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
let body: {
thread_id: string;
message: string;
workspace: string;
mcp_token?: string;
};
try {
body = await request.json();
} catch {
return NextResponse.json({ error: "Invalid JSON" }, { status: 400 });
}
const { thread_id, message, workspace, mcp_token } = body;
if (!thread_id || !message?.trim()) {
return NextResponse.json(
{ error: "thread_id and message are required" },
{ status: 400 },
);
}
const email = session.user.email;
// Verify thread belongs to user, and capture its project scope (if any).
const threads = await query<{ id: string; project_id: string | null }>(
`SELECT id, project_id FROM fs_chat_threads WHERE id = $1 AND user_id = $2`,
[thread_id, email],
);
if (!threads.length) {
return NextResponse.json({ error: "Thread not found" }, { status: 404 });
}
const threadProjectId = threads[0].project_id;
// Load message history (last 40 messages)
const rows = await query<any>(
`SELECT data FROM fs_chat_messages WHERE thread_id = $1 ORDER BY created_at DESC LIMIT 40`,
[thread_id],
);
// Strip toolCalls from historical assistant messages because tool
// responses are not persisted between turns. Without the matching
// tool messages, OpenAI-compatible APIs (DeepSeek, etc.) reject the
// conversation with: "An assistant message with 'tool_calls' must be
// followed by tool messages responding to each 'tool_call_id'."
// Gemini silently tolerates stale toolCalls, so we only hit this on
// non-Gemini providers.
const history: ChatMessage[] = rows.reverse().map((r: any) => {
const msg = r.data;
if (msg.role === "assistant" && msg.toolCalls?.length) {
msg.toolCalls = undefined;
}
if (typeof msg.content === "string") {
msg.content = msg.content
.replace(/<tool_calls>[\s\S]*?<\/tool_calls>/g, "")
.replace(/<think>[\s\S]*?<\/think>/g, "")
.trim();
}
return msg;
});
// Add user message
const userMsg: ChatMessage = { role: "user", content: message.trim() };
history.push(userMsg);
await query(
`INSERT INTO fs_chat_messages (thread_id, user_id, data) VALUES ($1, $2, $3)`,
[thread_id, email, JSON.stringify(userMsg)],
);
// Update thread updatedAt
await query(
`UPDATE fs_chat_threads SET updated_at = NOW(), data = data || $2 WHERE id = $1`,
[thread_id, JSON.stringify({ updatedAt: new Date().toISOString() })],
);
// Load projects for system prompt context
const projectRows = await query<any>(
`SELECT p.data FROM fs_projects p
JOIN fs_users u ON u.id = p.user_id
WHERE u.data->>'email' = $1
ORDER BY (p.data->>'updatedAt') DESC NULLS LAST LIMIT 20`,
[email],
);
const projects = projectRows.map((r: any) => r.data);
// If the thread is project-scoped, pull the active project's data
// (preferring fs_projects since the projects array is capped at 20).
let activeProject: any = null;
if (threadProjectId) {
const found = projects.find((p: any) => p.id === threadProjectId);
if (found) {
activeProject = found;
} else {
const r = await query<{ data: any }>(
`SELECT p.data FROM fs_projects p
JOIN fs_users u ON u.id = p.user_id
WHERE p.id = $1 AND u.data->>'email' = $2 LIMIT 1`,
[threadProjectId, email],
);
if (r[0]?.data) activeProject = r[0].data;
}
}
let systemPrompt = buildSystemPrompt(projects, workspace, activeProject);
// Sentry-as-product Stage 4: auto-surface unresolved errors at
// chat-turn start. We pull the last 6 hours' unresolved issues
// for the active project; if anything has fired ≥2 times, we
// append a [PROJECT HEALTH] block to the system prompt so the
// AI is aware before the user even speaks. The AI decides
// whether to mention them — usually yes if the user's first
// message touches the affected area, otherwise a one-line FYI.
// Single-occurrence errors are filtered out to avoid noise from
// bots / one-off network blips.
if (activeProject?.id) {
try {
const issues = await listRecentSentryIssues(activeProject.id, {
sinceHours: 6,
limit: 5,
});
const noteworthy = issues.filter((i) => i.count >= 2);
if (noteworthy.length > 0) {
const lines = noteworthy.map((i) => {
const culprit = i.culprit ? ` — ${i.culprit}` : "";
return `- ${i.title} (×${i.count}, last seen ${i.lastSeen})${culprit}`;
});
const healthBlock =
`\n\n[PROJECT HEALTH — last 6 hours]\n` +
`${noteworthy.length} unresolved Sentry issue${noteworthy.length === 1 ? "" : "s"}, count ≥ 2 (one-offs filtered):\n` +
lines.join("\n") +
`\n\nIf the user's message is about something that's broken, prefer the matching issue's stack trace over guessing — call \`project_error_detail { projectId, issueId }\` to fetch it. ` +
`If the user's message is unrelated to these errors, you MAY proactively surface a one-liner ("FYI: X has been failing for users — want me to look?") but do not derail their actual question.`;
systemPrompt += healthBlock;
}
} catch (err) {
console.warn("[chat] auto-surface Sentry errors failed (non-fatal)", err);
}
}
// Make sure the project's Gitea repo is cloned into the dev
// container at /workspace/<slug>/ before the AI runs any
// filesystem-mutating tools. Without this, anything the AI writes
// gets stranded in a scratch volume and is invisible in the
// Product/Hosting/Infrastructure tabs (those tabs read from Gitea
// and Coolify, not from the dev container's volume).
//
// We fire-and-forget on existing projects (the clone is a fast
// no-op when present) and only await on projects that don't have
// a dev container yet — there the AI is about to call
// ensureDevContainer + shell.exec, and we need the repo on disk
// before that exec lands so the AI's writes go into the project
// repo instead of an empty /workspace.
if (
activeProject?.id &&
activeProject?.slug &&
typeof activeProject?.giteaCloneUrl === "string"
) {
void ensureProjectRepoCloned({
projectId: activeProject.id,
projectSlug: activeProject.slug,
giteaCloneUrl: activeProject.giteaCloneUrl,
}).catch((err) => {
console.warn(
"[chat] pre-loop ensureProjectRepoCloned failed (non-fatal)",
err,
);
});
}
// Base URL for internal MCP calls — pinned to the canonical origin,
// not the incoming Host header (which can be spoofed).
const baseUrl =
process.env.NODE_ENV === "development"
? "http://localhost:3000"
: process.env.NEXT_PUBLIC_SITE_URL ||
process.env.VERCEL_URL ||
"https://vibnai.com";
// Honor client-side abort (Stop button). When the user clicks Stop
// the browser's AbortController fires `request.signal.aborted` and
// the fetch stream is closed; we use it as a polite checkpoint
// between rounds and tool calls so we (a) don't keep paying Gemini
// for tokens the user no longer wants and (b) persist whatever the
// assistant produced before the cancel.
const clientSignal = request.signal;
// Stream response
const encoder = new TextEncoder();
const stream = new ReadableStream({
async start(controller) {
let streamClosed = false;
function emit(chunk: object) {
if (streamClosed) return;
try {
controller.enqueue(
encoder.encode(`data: ${JSON.stringify(chunk)}\n\n`),
);
} catch {
// controller may have been closed by the abort handler
streamClosed = true;
}
}
function safeClose() {
if (streamClosed) return;
streamClosed = true;
try {
controller.close();
} catch {}
}
let messages = [...history];
let round = 0;
let assistantText = "";
// Per-round text segments. The model emits one `resp.text` per
// tool-loop round; we used to concatenate them all into one
// `assistantText` blob and render that as a single chat bubble.
// That made multi-round turns look like one giant run-on
// paragraph ("now.Spinning up...first boot...The dev container
// is ready!" with no breaks). Keeping them separate on the
// server lets the client render each as its own bubble and
// restores the segmentation on reload.
const assistantTextSegments: string[] = [];
const assistantToolCalls: ToolCall[] = [];
let aborted = clientSignal.aborted;
const onAbort = () => {
aborted = true;
};
clientSignal.addEventListener("abort", onAbort);
// Track per-turn signals we use for loop detection and silent-stretch
// detection. The model has a strong tendency to grind through a
// dozen+ tool calls in total silence (the user just sees ✓ pills
// pile up); both safeguards below break that pattern.
const toolFingerprints: string[] = [];
let roundsSinceText = 0;
let loopBreakReason: string | null = null;
try {
// Tool-calling loop: use non-streaming so thought_signature is
// always present in the complete response (required by thinking models).
while (round < MAX_TOOL_ROUNDS) {
if (aborted) break;
round++;
const toolDefs = mcp_token ? VIBN_TOOL_DEFINITIONS : [];
// Every 4 silent rounds, nudge the model to surface a one-liner
// status before continuing. This is the user's only signal of
// life when a tool chain runs long.
let extraSystem =
roundsSinceText >= 4
? "\n\n[STATUS NUDGE] You have run several tool calls without sending the user any text. Before any more tool calls, send ONE short sentence describing what you are currently working on and why. The user is staring at a wall of tool pills and needs a signal of life."
: "";
if (MAX_TOOL_ROUNDS - round <= 3) {
extraSystem += `\n\n[WARNING] You only have ${MAX_TOOL_ROUNDS - round} tool calls left before you are forcefully terminated. Stop exploring, make your final edits, and write your final response to the user NOW.`;
}
const resp = await callVibnChat({
systemPrompt: systemPrompt + extraSystem,
messages,
tools: toolDefs,
temperature: 0.7,
});
if (resp.error) {
emit({ type: "error", error: resp.error });
safeClose();
return;
}
// Stream user-facing text to client
if (resp.text) {
assistantText += (assistantText ? "\n\n" : "") + resp.text;
assistantTextSegments.push(resp.text);
emit({ type: "text", text: resp.text });
roundsSinceText = 0;
} else if (resp.toolCalls.length) {
roundsSinceText++;
}
// Stream the model's reasoning narration as a separate SSE
// event type. We pay for thinking tokens whether or not we
// ask for them, so making them visible is free transparency
// — and it cures the "tool tray with no narrative" feel.
if (resp.thoughts) {
emit({ type: "thinking", text: resp.thoughts });
}
// Announce tool calls
for (const tc of resp.toolCalls) {
assistantToolCalls.push(tc);
emit({ type: "tool_start", name: tc.name, args: tc.args });
}
// Save assistant turn
messages.push({
role: "assistant",
content: resp.text,
toolCalls: resp.toolCalls.length ? resp.toolCalls : undefined,
});
if (!resp.toolCalls.length) break;
if (aborted) break;
// Loop detection. If the model fires the same tool with the
// same first-key arg 3+ times in this turn, the user is
// watching it spin. Bail out, hand control back to the user
// with the last tool result as context. The classic case:
// dev_server.start → logs → stop → start → logs → stop → ...
for (const tc of resp.toolCalls) {
const argSig =
tc.args && typeof tc.args === "object"
? JSON.stringify(tc.args).slice(0, 120)
: "";
toolFingerprints.push(`${tc.name}|${argSig}`);
}
const last8 = toolFingerprints.slice(-8);
const counts = new Map<string, number>();
for (const fp of last8) counts.set(fp, (counts.get(fp) ?? 0) + 1);
const repeated = [...counts.entries()].find(([, n]) => n >= 3);
if (repeated) {
loopBreakReason = `Same call (${repeated[0].split("|")[0]}) fired ${repeated[1]}× in a row`;
}
// Execute tool calls and add results. OpenAI-compatible APIs
// (DeepSeek, etc.) require every tool_call_id to be answered with
// a tool message before any user/assistant message — so recovery
// nudges must run AFTER all tools from this assistant turn.
const recoveryLines: string[] = [];
for (const tc of resp.toolCalls) {
if (aborted) break;
const result = mcp_token
? await executeMcpTool(
tc.name,
tc.args,
mcp_token,
baseUrl,
activeProject?.id,
)
: JSON.stringify({ error: "No MCP token — read-only mode." });
emit({
type: "tool_result",
name: tc.name,
result: result.slice(0, 500),
});
messages.push({
role: "tool",
content: result,
toolCallId: tc.id,
toolName: tc.name,
thoughtSignature: tc.thoughtSignature,
});
const recovery = detectKnownError(result);
if (recovery) recoveryLines.push(formatRecoveryMessage(recovery));
}
for (const line of recoveryLines) {
messages.push({ role: "user", content: line });
}
if (loopBreakReason) break;
}
// If the user clicked Stop, surface the cancel marker so the
// client renders "(stopped by user)" inline with the partial
// assistant message, then skip the round-cap recovery summary
// (we shouldn't pay Gemini for a turn the user just canceled).
if (aborted) {
const stopMarker = assistantText
? "\n\n_(stopped by user)_"
: "_(stopped by user before any response)_";
assistantText += stopMarker;
assistantTextSegments.push(stopMarker.trimStart());
emit({ type: "text", text: stopMarker });
emit({ type: "aborted" });
}
// If the loop ended with the user staring at a tool tray and no
// narrative — whether because we hit MAX_TOOL_ROUNDS, broke a
// detected loop, or the model voluntarily stopped emitting tools
// without ever writing text — force one final no-tools summary
// so we never abandon the user with silent ✓ pills. Confirmed
// failure mode in prod: turn persisted with content_len=0 and
// 20 toolCalls, user had to re-prompt to get any answer.
const lastTurnHadTools =
messages.length > 0 && messages[messages.length - 1].role === "tool";
const needsRecovery =
!aborted &&
lastTurnHadTools &&
(round >= MAX_TOOL_ROUNDS ||
!!loopBreakReason ||
assistantText.trim().length === 0);
if (needsRecovery) {
const reason = loopBreakReason
? `LOOP DETECTED: ${loopBreakReason}. Stop trying that approach. `
: round >= MAX_TOOL_ROUNDS
? "You hit the tool-round cap. "
: "";
try {
const summary = await callVibnChat({
systemPrompt:
systemPrompt +
`\n\n[RECOVERY] ${reason}Send the user 13 short sentences right now: (a) what you actually accomplished or learned, (b) the specific blocker (last error message verbatim if there is one), (c) what you'll try next OR a question for the user. Do NOT call any tools.`,
messages,
tools: [],
temperature: 0.3,
});
if (summary.text && summary.text.trim()) {
assistantText += (assistantText ? "\n\n" : "") + summary.text;
assistantTextSegments.push(summary.text);
emit({ type: "text", text: summary.text });
} else {
// Gemini returned empty — fall back to a deterministic
// status so the user never sees silent ✓ pills.
const fallback = loopBreakReason
? `I hit a loop while working on this — ${loopBreakReason}. Want me to try a different approach, or do you want to take a look?`
: `I ran a chain of ${assistantToolCalls.length} tool calls but didn't reach a clean stopping point. Want me to keep going, or take a different angle?`;
assistantText += (assistantText ? "\n\n" : "") + fallback;
assistantTextSegments.push(fallback);
emit({ type: "text", text: fallback });
}
if (summary.thoughts) {
emit({ type: "thinking", text: summary.thoughts });
}
} catch {
const fallback = `I ran ${assistantToolCalls.length} tool calls but the wrap-up failed. Want me to retry, or try a different approach?`;
assistantText += (assistantText ? "\n\n" : "") + fallback;
assistantTextSegments.push(fallback);
emit({ type: "text", text: fallback });
}
}
// Persist final assistant message. We include `textSegments`
// alongside the legacy concatenated `content` so the client
// can render reloaded threads with the same per-round bubble
// segmentation it shows during streaming. Older messages
// (pre-this-fix) won't have textSegments and fall back to
// single-bubble content rendering.
const finalMsg: ChatMessage & { textSegments?: string[] } = {
role: "assistant",
content: assistantText,
toolCalls: assistantToolCalls.length ? assistantToolCalls : undefined,
textSegments: assistantTextSegments.length
? assistantTextSegments
: undefined,
};
await query(
`INSERT INTO fs_chat_messages (thread_id, user_id, data) VALUES ($1, $2, $3)`,
[thread_id, email, JSON.stringify(finalMsg)],
);
// Fire-and-forget: commit any AI-made filesystem changes to
// the project's Gitea repo and push to origin. This is what
// makes the AI's work appear in the Product tab's Codebases
// view — without it, every fs.write / shell.exec mutation
// stays trapped in the dev container's volume.
//
// Run AFTER the assistant message is persisted because the
// user already saw the reply; a slow push shouldn't block
// the chat. If there's nothing to commit, the helper short-
// circuits with reason='clean' in <1s.
if (
activeProject?.id &&
activeProject?.slug &&
typeof activeProject?.giteaCloneUrl === "string"
) {
(async () => {
try {
// Best-effort clone in case the pre-loop kick-off was
// racing with container provisioning and never landed.
await ensureProjectRepoCloned({
projectId: activeProject.id,
projectSlug: activeProject.slug,
giteaCloneUrl: activeProject.giteaCloneUrl,
}).catch(() => null);
// Commit message: prefer the assistant's own first
// sentence (one line, ≤200 chars). Falls back to a
// generic checkpoint when the assistant only made
// tool calls without prose.
const firstSentence = (assistantText || "")
.split(/(?<=[.!?])\s+/)[0]
?.trim()
?.slice(0, 180);
const message = firstSentence || "AI checkpoint";
const result = await commitAndPushIfDirty({
projectId: activeProject.id,
projectSlug: activeProject.slug,
message,
});
if (result.committed) {
console.log(
`[chat] auto-commit project=${activeProject.slug} sha=${result.sha} pushed=${result.pushed}`,
);
} else if (
result.reason &&
result.reason !== "clean" &&
result.reason !== "no_repo"
) {
console.warn(
`[chat] auto-commit failed project=${activeProject.slug} reason=${result.reason}`,
);
}
} catch (err) {
console.warn("[chat] auto-commit fire-and-forget failed", err);
}
})();
}
// Fire-and-forget: ask Gemini for a 1-2 sentence "what got done"
// summary of the conversation so far, persist it on the thread,
// and use the first user message (truncated) as a stable title
// when one isn't set yet. This is what powers the Sessions tab on
// the project Plan page — read-only chronological progress log.
// Wrapped in try/catch + .catch — the response stream is already
// closed and we don't want a summary failure to surface as an
// error to the user.
(async () => {
try {
const allMessages = [...history, finalMsg];
// Only summarize if there's something worth summarizing.
if (allMessages.length < 2) return;
const transcript = allMessages
.map((m) => {
const text =
typeof m.content === "string"
? m.content
: JSON.stringify(m.content);
return `${m.role.toUpperCase()}: ${text.slice(0, 1200)}`;
})
.join("\n\n");
const sumResp = await callVibnChat({
systemPrompt:
"You are summarizing a chat session for a project log. " +
"Write 1-2 sentences (max 200 chars) describing what was actually attempted, decided, or shipped in this conversation. " +
"Past tense, plain language, no preamble, no headings. " +
"If nothing of substance happened, write a single short sentence describing the topic.",
messages: [{ role: "user", content: transcript.slice(0, 8000) }],
temperature: 0.3,
});
const summary = (sumResp.text || "").trim().slice(0, 280);
// Pick a title only if the existing one is missing or generic.
const firstUser = allMessages.find((m) => m.role === "user");
const firstText =
typeof firstUser?.content === "string" ? firstUser.content : "";
const fallbackTitle = firstText
.replace(/\s+/g, " ")
.trim()
.slice(0, 60);
const update: Record<string, unknown> = {};
if (summary) update.summary = summary;
if (fallbackTitle) update.title = fallbackTitle;
if (Object.keys(update).length > 0) {
await query(
`UPDATE fs_chat_threads
SET data = data || $2
WHERE id = $1
AND (
($2::jsonb ? 'title') IS FALSE
OR data->>'title' IS NULL
OR data->>'title' = ''
OR data->>'title' = 'New conversation'
OR ($2::jsonb ? 'summary')
)`,
[thread_id, JSON.stringify(update)],
);
}
} catch {
// best-effort; silent failure
}
})().catch(() => {});
// Fire-and-forget: auto-extract plan updates (tasks, decisions,
// vision) from the conversation using a cheap Gemini Flash model.
// Deduplicates against existing plan items by title.
(async () => {
try {
if (!threadProjectId) return;
const allMessages = [...history, finalMsg];
if (allMessages.length < 2) return;
const transcript = allMessages
.map((m) => {
const text =
typeof m.content === "string"
? m.content
: JSON.stringify(m.content);
return `${m.role.toUpperCase()}: ${text.slice(0, 1200)}`;
})
.join("\n\n");
const result = await autoExtractPlanUpdates(
threadProjectId,
transcript,
);
if (result) {
console.log(
"[chat] plan-extract:",
`${result.tasks} tasks, ${result.decisions} decisions, vision=${result.vision}`,
);
}
} catch (err) {
console.warn("[chat] plan-extract failed (non-fatal):", err);
}
})().catch(() => {});
emit({ type: "done" });
safeClose();
} catch (e) {
// AbortError is the expected shape when the client cancels
// mid-Gemini-call — don't surface it as a real error.
const isAbort =
aborted ||
(e instanceof Error &&
(e.name === "AbortError" || /aborted/i.test(e.message)));
if (!isAbort) {
emit({
type: "error",
error: e instanceof Error ? e.message : String(e),
});
} else {
emit({ type: "aborted" });
}
safeClose();
} finally {
clientSignal.removeEventListener("abort", onAbort);
}
},
cancel() {
// Browser disconnected (tab closed, navigated away). Nothing to
// do — the abort handler above already flipped the flag and the
// loop will bail at the next checkpoint.
},
});
return new Response(stream, {
headers: {
"Content-Type": "text/event-stream",
"Cache-Control": "no-cache",
Connection: "keep-alive",
},
});
}
```
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
const LOADING_PHRASES = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % LOADING_PHRASES.length);
}, 2800);
return () => clearInterval(timer);
}, []);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{LOADING_PHRASES[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{sending && <ActiveThinkingIndicator />}
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
I have implemented both of the features you requested to improve the chat UX!
### 1. "Caramelizing onions..." Loading Animation
I've added the active thinking indicator right above the chat input in `components/vibn-chat/chat-panel.tsx`.
- When the AI is actively processing tasks (the `sending` state is true), it will now display a custom burnt-orange spinning sunburst icon (matching your screenshot).
- It smoothly cycles through fun loading phrases like `"Caramelizing onions..."`, `"Reticulating splines..."`, `"Writing code..."`, etc.
### 2. Mandatory Completion Summaries
The reason the AI was ending its tasks silently was due to it dropping out of its tool-calling loop without generating a final text response. To fix this, I updated the system prompt in `app/api/chat/route.ts` to strictly enforce a final response:
```markdown
- **NEVER end your work silently.** When you are done running tools and your turn is ending, you MUST send a final conversational summary so the user knows you're finished. (e.g., "Done. I built out the onboarding flow..."). NEVER end your turn without a final text message.
```
The AI should now always end its turn by telling you exactly what was accomplished, avoiding the frustrating "silent stop" after firing off a bunch of tools.
If you start a new prompt, you should see the new loading animation cycle right away!
## User (checkpoint)
okay i dont think thats quite what you wanted.
"/opt/homebrew/bin/pyenv" shell - sh 3.6.13
clear
Last login: Wed May 13 15:00:27 on ttys000
markhenderson@Mac vibn-frontend % "/opt/homebrew/bin/pyenv" shell - sh 3.6.13
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
markhenderson@Mac vibn-frontend % clear
markhenderson@Mac vibn-frontend % npm run dev
> vibn-frontend@0.1.0 dev
> next dev
[baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D`
▲ Next.js 16.0.1 (Turbopack)
- Local: http://localhost:3000
- Network: http://192.168.1.66:3000
- Environments: .env.local
- Experiments (use with caution):
· clientTraceMetadata
✓ Starting...
✓ Ready in 3.1s
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
○ Compiling /[workspace]/project/[projectId]/preview ...
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
Firebase not configured - using PostgreSQL backend
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 3.8s (compile: 3.5s, render: 249ms)
GET /api/auth/session 200 in 2.6s (compile: 1408ms, render: 1199ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 905ms (compile: 128ms, render: 778ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 5.0s (compile: 1425ms, render: 3.5s)
GET /api/chat/threads/6b2be10e-3a90-4980-9dd4-35d1ea43e530 200 in 1570ms (compile: 607ms, render: 963ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.3s (compile: 4ms, render: 2.3s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
POST /api/chat 200 in 16.1s (compile: 414ms, render: 15.6s)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 472ms (compile: 46ms, render: 426ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && test -d '/workspace/getacquired-2-0/.git' && echo present || echo absent"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":30000,"command":"cd '/workspace' && cd '/workspace/getacquired-2-0' && git add -A && if git diff --cached --quiet; then echo CLEAN && exit 0; fi && git commit -m 'Yes, I actually do!' && SHA=$(git rev-parse --short HEAD) && git push -u origin HEAD 2>&1 | tail -n 5 && echo COMMITTED $SHA"}
Reload env: .env.local
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
Firebase not configured - using PostgreSQL backend
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 631ms (compile: 160ms, render: 471ms)
GET /api/auth/session 200 in 1172ms (compile: 325ms, render: 847ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 1046ms (compile: 48ms, render: 998ms)
GET /api/chat/threads/6b2be10e-3a90-4980-9dd4-35d1ea43e530 200 in 820ms (compile: 44ms, render: 777ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 4.2s (compile: 128ms, render: 4.1s)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.4s (compile: 13ms, render: 2.3s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
POST /api/chat 200 in 13.3s (compile: 82ms, render: 13.2s)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 320ms (compile: 10ms, render: 309ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && test -d '/workspace/getacquired-2-0/.git' && echo present || echo absent"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":30000,"command":"cd '/workspace' && cd '/workspace/getacquired-2-0' && git add -A && if git diff --cached --quiet; then echo CLEAN && exit 0; fi && git commit -m '<DSMLtool_calls> <DSMLinvoke name=\"request_visual_qa\"> <DSMLparameter name=\"targetPath\" string=\"true\">src/app/page.tsx</DSMLparameter> </DSMLinvoke> <DSMLin' && SHA=$(git rev-parse --short HEAD) && git push -u origin HEAD 2>&1 | tail -n 5 && echo COMMITTED $SHA"}
^C[baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D`
markhenderson@Mac vibn-frontend % npm run dev
> vibn-frontend@0.1.0 dev
> next dev
[baseline-browser-mapping] The data in this module is over two months old. To ensure accurate Baseline data, please update: `npm i baseline-browser-mapping@latest -D`
▲ Next.js 16.0.1 (Turbopack)
- Local: http://localhost:3000
- Network: http://192.168.1.66:3000
- Environments: .env.local
- Experiments (use with caution):
· clientTraceMetadata
✓ Starting...
✓ Ready in 2.1s
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
Firebase not configured - using PostgreSQL backend
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 3.1s (compile: 2.8s, render: 333ms)
GET /api/auth/session 200 in 2.1s (compile: 1288ms, render: 823ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 871ms (compile: 116ms, render: 755ms)
GET /api/chat/threads/6b2be10e-3a90-4980-9dd4-35d1ea43e530 200 in 1431ms (compile: 575ms, render: 856ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 4.5s (compile: 1311ms, render: 3.2s)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 1284ms (compile: 3ms, render: 1282ms)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
Firebase not configured - using PostgreSQL backend
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 1042ms (compile: 547ms, render: 496ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 407ms (compile: 8ms, render: 400ms)
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 401ms (compile: 20ms, render: 381ms)
GET /api/auth/session 200 in 286ms (compile: 22ms, render: 264ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 641ms (compile: 5ms, render: 635ms)
GET /api/chat/threads/6b2be10e-3a90-4980-9dd4-35d1ea43e530 200 in 1003ms (compile: 6ms, render: 997ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.5s (compile: 13ms, render: 2.5s)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 1244ms (compile: 9ms, render: 1234ms)
POST /api/chat/threads 200 in 1054ms (compile: 22ms, render: 1032ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
POST /api/mcp 200 in 1179ms (compile: 533ms, render: 646ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":3000,"command":"cd '/workspace' && kill 26992 2>/dev/null || true"}
POST /api/mcp 200 in 3.7s (compile: 9ms, render: 3.7s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":3000,"command":"cd '/workspace' && kill 27106 2>/dev/null || true"}
POST /api/mcp 200 in 3.4s (compile: 3ms, render: 3.4s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && ss -tlnp 2>/dev/null | grep ':3000\b' | head -1; lsof -iTCP:3000 -sTCP:LISTEN -n -P 2>/dev/null | tail -n +2 | head -1 || true"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && mkdir -p /var/log/vibn-dev && cd /workspace && nohup env PORT=3000 VIBN_DEV_SERVER_ID=ds_0ce24d77f84f bash -lc 'export HOST=0.0.0.0 HOSTNAME=0.0.0.0 VITE_DEV_SERVER_HOST=0.0.0.0 WEBPACK_DEV_SERVER_HOST=0.0.0.0; cd getacquired-2-0 && npm run dev' > /var/log/vibn-dev/ds_0ce24d77f84f.log 2>&1 & echo $!"}
POST /api/mcp 200 in 6.7s (compile: 1476µs, render: 6.7s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":130000,"command":"cd '/workspace' && last_code=000; for i in $(seq 1 120); do for path in / ''; do code=$(curl -sS -o /dev/null -w '%{http_code}' --max-time 2 --connect-timeout 2 \"http://127.0.0.1:3000$path\" 2>/dev/null || printf '000'); last_code=$code; [ \"$code\" != \"000\" ] && [ -n \"$code\" ] && exit 0; done; sleep 1; done; echo \"PROBE_FAIL last_code=$last_code port=3000\"; echo \"PROBE_FAIL ps=$(ps aux | grep -E 'node|npm|next|vite' | grep -v grep | head -3 | tr '\n' '|')\"; echo \"PROBE_FAIL log_tail=$(tail -20 /var/log/vibn-dev/ds_0ce24d77f84f.log 2>/dev/null | tr '\n' '|' | head -c 2000)\"; exit 1"}
[probe] FAILED {"projectId":"be169fe8-d381-422b-8e9c-d2e513a8f902","serverId":"ds_0ce24d77f84f","port":3000,"stdout":""}
POST /api/chat 200 in 45s (compile: 446ms, render: 44s)
PATCH /api/chat/threads/15b97cc6-a037-4e34-b839-d1b4db1fe4d9 200 in 333ms (compile: 13ms, render: 320ms)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 250ms (compile: 1864µs, render: 248ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && test -d '/workspace/getacquired-2-0/.git' && echo present || echo absent"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":30000,"command":"cd '/workspace' && cd '/workspace/getacquired-2-0' && git add -A && if git diff --cached --quiet; then echo CLEAN && exit 0; fi && git commit -m 'I'\\''ve stopped the previous dev servers and spun up exactly one fresh instance on port 3000.' && SHA=$(git rev-parse --short HEAD) && git push -u origin HEAD 2>&1 | tail -n 5 && echo COMMITTED $SHA"}
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/hosting 200 in 1885ms (compile: 1866ms, render: 19ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.2s (compile: 22ms, render: 2.2s)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 50ms (compile: 20ms, render: 29ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 1728ms (compile: 6ms, render: 1722ms)
GET /api/auth/session 200 in 226ms (compile: 14ms, render: 212ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
POST /api/mcp 200 in 611ms (compile: 28ms, render: 583ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && tail -n 100 /var/log/vibn-dev/ds_0ce24d77f84f.log 2>/dev/null || echo '(no log yet)'"}
POST /api/mcp 200 in 3.4s (compile: 33ms, render: 3.4s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && kill -9 27136 || true; pkill -9 -f \"next\" || true; pkill -9 -f \"node\" || true"}
POST /api/mcp 200 in 3.4s (compile: 10ms, render: 3.4s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":3000,"command":"cd '/workspace' && kill 27335 2>/dev/null || true"}
POST /api/mcp 200 in 3.2s (compile: 25ms, render: 3.2s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && ss -tlnp 2>/dev/null | grep ':3000\b' | head -1; lsof -iTCP:3000 -sTCP:LISTEN -n -P 2>/dev/null | tail -n +2 | head -1 || true"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && mkdir -p /var/log/vibn-dev && cd /workspace && nohup env PORT=3000 VIBN_DEV_SERVER_ID=ds_4c59d60d5df8 bash -lc 'export HOST=0.0.0.0 HOSTNAME=0.0.0.0 VITE_DEV_SERVER_HOST=0.0.0.0 WEBPACK_DEV_SERVER_HOST=0.0.0.0; cd getacquired-2-0 && npm run dev' > /var/log/vibn-dev/ds_4c59d60d5df8.log 2>&1 & echo $!"}
POST /api/mcp 200 in 6.6s (compile: 3ms, render: 6.6s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":130000,"command":"cd '/workspace' && last_code=000; for i in $(seq 1 120); do for path in / ''; do code=$(curl -sS -o /dev/null -w '%{http_code}' --max-time 2 --connect-timeout 2 \"http://127.0.0.1:3000$path\" 2>/dev/null || printf '000'); last_code=$code; [ \"$code\" != \"000\" ] && [ -n \"$code\" ] && exit 0; done; sleep 1; done; echo \"PROBE_FAIL last_code=$last_code port=3000\"; echo \"PROBE_FAIL ps=$(ps aux | grep -E 'node|npm|next|vite' | grep -v grep | head -3 | tr '\n' '|')\"; echo \"PROBE_FAIL log_tail=$(tail -20 /var/log/vibn-dev/ds_4c59d60d5df8.log 2>/dev/null | tr '\n' '|' | head -c 2000)\"; exit 1"}
[probe] FAILED {"projectId":"be169fe8-d381-422b-8e9c-d2e513a8f902","serverId":"ds_4c59d60d5df8","port":3000,"stdout":""}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && tail -n 100 /var/log/vibn-dev/ds_4c59d60d5df8.log 2>/dev/null || echo '(no log yet)'"}
POST /api/mcp 200 in 3.2s (compile: 16ms, render: 3.2s)
POST /api/chat 200 in 58s (compile: 26ms, render: 58s)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 964ms (compile: 9ms, render: 955ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && test -d '/workspace/getacquired-2-0/.git' && echo present || echo absent"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":30000,"command":"cd '/workspace' && cd '/workspace/getacquired-2-0' && git add -A && if git diff --cached --quiet; then echo CLEAN && exit 0; fi && git commit -m 'I found the issue!' && SHA=$(git rev-parse --short HEAD) && git push -u origin HEAD 2>&1 | tail -n 5 && echo COMMITTED $SHA"}
GET /api/auth/session 200 in 420ms (compile: 67ms, render: 353ms)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/plan 200 in 1775ms (compile: 1747ms, render: 28ms)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/plan 200 in 26ms (compile: 7ms, render: 18ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/plan 200 in 1464ms (compile: 681ms, render: 783ms)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 25ms (compile: 7ms, render: 18ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/plan 200 in 339ms (compile: 6ms, render: 332ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.1s (compile: 4ms, render: 2.1s)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/product 200 in 965ms (compile: 949ms, render: 17ms)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/hosting 200 in 35ms (compile: 11ms, render: 25ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.1s (compile: 13ms, render: 2.0s)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.7s (compile: 8ms, render: 2.7s)
⚠ ./node_modules/@fastify/otel/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
⚠ ./node_modules/@prisma/instrumentation/node_modules/@opentelemetry/instrumentation/build/esm/platform/node
Package import-in-the-middle can't be external
The request import-in-the-middle matches serverExternalPackages (or the default list).
The package resolves to a different version when requested from the project directory (3.0.1) compared to the package requested from the importing module (2.0.6).
Make sure to install the same version of the package in both locations.
GET /mark-account/project/be169fe8-d381-422b-8e9c-d2e513a8f902/preview 200 in 42ms (compile: 18ms, render: 24ms)
GET /api/projects/be169fe8-d381-422b-8e9c-d2e513a8f902/anatomy 200 in 2.1s (compile: 6ms, render: 2.1s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace/getacquired-2-0' && find . -name \"page.tsx\" -o -name \"index.tsx\""}
POST /api/mcp 200 in 4.8s (compile: 5ms, render: 4.8s)
POST /api/mcp 404 in 253ms (compile: 6ms, render: 247ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/page.tsx' && sed -n '1,500p' '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 4.1s (compile: 3ms, render: 4.1s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/page.tsx' && sed -n '124,623p' '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 3.4s (compile: 15ms, render: 3.3s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/page.tsx' && sed -n '256,755p' '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 3.4s (compile: 5ms, render: 3.4s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/page.tsx' && sed -n '451,950p' '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 3.4s (compile: 12ms, render: 3.3s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/page.tsx' && sed -n '351,850p' '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 4.2s (compile: 4ms, render: 4.2s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace/getacquired-2-0' && cat package.json | grep flyonui"}
POST /api/mcp 200 in 4.0s (compile: 5ms, render: 4.0s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/tailwind.config.ts' && sed -n '1,500p' '/workspace/getacquired-2-0/tailwind.config.ts'"}
POST /api/mcp 404 in 4.1s (compile: 5ms, render: 4.1s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace/getacquired-2-0' && ls -la tailwind*"}
POST /api/mcp 200 in 3.4s (compile: 7ms, render: 3.3s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace/getacquired-2-0' && ls -la"}
POST /api/mcp 200 in 3.4s (compile: 4ms, render: 3.4s)
✓ Compiled in 264ms
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 972ms (compile: 8ms, render: 965ms)
GET /api/chat/threads/15b97cc6-a037-4e34-b839-d1b4db1fe4d9 200 in 703ms (compile: 9ms, render: 694ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace/getacquired-2-0' && find . -name \"tailwind*\""}
POST /api/mcp 200 in 3.5s (compile: 7ms, render: 3.5s)
✓ Compiled in 117ms
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 295ms (compile: 7ms, render: 288ms)
GET /api/chat/threads/15b97cc6-a037-4e34-b839-d1b4db1fe4d9 200 in 341ms (compile: 4ms, render: 336ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && test -f '/workspace/getacquired-2-0/src/app/globals.css' && sed -n '1,500p' '/workspace/getacquired-2-0/src/app/globals.css'"}
POST /api/mcp 200 in 3.2s (compile: 8ms, render: 3.2s)
✓ Compiled in 141ms
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 774ms (compile: 30ms, render: 744ms)
GET /api/chat/threads/15b97cc6-a037-4e34-b839-d1b4db1fe4d9 200 in 364ms (compile: 23ms, render: 341ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":60000,"command":"cd '/workspace' && mkdir -p '/workspace/getacquired-2-0/src/app' && printf %s 'aW1wb3J0IFJlYWN0IGZyb20gInJlYWN0IjsKaW1wb3J0IExpbmsgZnJvbSAibmV4dC9saW5rIjsKaW1wb3J0IHsgU2VhcmNoLCBNYXBQaW4sIEJ1aWxkaW5nMiwgQXJyb3dSaWdodCwgVHJlbmRpbmdVcCwgU2hpZWxkQ2hlY2ssIEZpbGVUZXh0LCBTdGFyLCBCb29rT3BlbiwgQ2FsY3VsYXRvciwgVXNlcnMsIFN0b3JlLCBDaGV2cm9uUmlnaHQsIENoZWNrQ2lyY2xlLCBCYXJDaGFydDMsIE1lc3NhZ2VTcXVhcmUsIEV5ZSwgWmFwLCBTcGFya2xlcywgSGFuZHNoYWtlIH0gZnJvbSAibHVjaWRlLXJlYWN0IjsKCmNvbnN0IGZlYXR1cmVkTGlzdGluZ3MgPSBbCiAgeyBpZDogMSwgdGl0bGU6ICJIaWdobHkgUHJvZml0YWJsZSBIVkFDIENvbXBhbnkiLCBsb2NhdGlvbjogIkF1c3RpbiwgVFgiLCBwcmljZTogIiQxLDIwMCwwMDAiLCByZXZlbnVlOiAiJDg1MCwwMDAiLCBjYXNoRmxvdzogIiQzMTAsMDAwIiwgZWJpdGRhOiAiJDI3NSwwMDAiLCBkYXlzT25NYXJrZXQ6IDE0LCBpbWc6ICJodHRwczovL2ltYWdlcy51bnNwbGFzaC5jb20vcGhvdG8tMTYyMTkwNTI1MTE4OS0wOGI0NWQ2YTI2OWU/dz02MDAmaD00MDAmZml0PWNyb3AiLCBjYXRlZ29yeTogIkhWQUMgQ29udHJhY3RvciIgfSwKICB7IGlkOiAyLCB0aXRsZTogIkVzdGFibGlzaGVkIERlbnRhbCBQcmFjdGljZSIsIGxvY2F0aW9uOiAiTWlhbWksIEZMIiwgcHJpY2U6ICIkMiw1MDAsMDAwIiwgcmV2ZW51ZTogIiQxLDQwMCwwMDAiLCBjYXNoRmxvdzogIiQ2MjAsMDAwIiwgZWJpdGRhOiAiJDU4MCwwMDAiLCBkYXlzT25NYXJrZXQ6IDgsIGltZzogImh0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNjA2ODExODQxNjg5LTIzZGZkZGNlM2U5NT93PTYwMCZoPTQwMCZmaXQ9Y3JvcCIsIGNhdGVnb3J5OiAiRGVudGFsIFByYWN0aWNlIiB9LAogIHsgaWQ6IDMsIHRpdGxlOiAiQ29tbWVyY2lhbCBMYW5kc2NhcGluZyBCMkIiLCBsb2NhdGlvbjogIkRlbnZlciwgQ08iLCBwcmljZTogIiQ4NTAsMDAwIiwgcmV2ZW51ZTogIiQ2MjAsMDAwIiwgY2FzaEZsb3c6ICIkMjQ1LDAwMCIsIGViaXRkYTogIiQyMTAsMDAwIiwgZGF5c09uTWFya2V0OiAyMiwgaW1nOiAiaHR0cHM6Ly9pbWFnZXMudW5zcGxhc2guY29tL3Bob3RvLTE1OTI0MjQwMDU2ODgtNTczODBkYzVmOGU3P3c9NjAwJmg9NDAwJmZpdD1jcm9wIiwgY2F0ZWdvcnk6ICJMYW5kc2NhcGluZyIgfSwKICB7IGlkOiA0LCB0aXRsZTogIlByZW1pZXIgUGx1bWJpbmcgJiBEcmFpbiBTZXJ2aWNlIiwgbG9jYXRpb246ICJOYXNodmlsbGUsIFROIiwgcHJpY2U6ICIkMSw4NTAsMDAwIiwgcmV2ZW51ZTogIiQxLDEwMCwwMDAiLCBjYXNoRmxvdzogIiQ0ODAsMDAwIiwgZWJpdGRhOiAiJDQ0NSwwMDAiLCBkYXlzT25NYXJrZXQ6IDUsIGltZzogImh0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNTgxNTc4NzMxNTQ4LWM2NDY5NWNjNjk1Mj93PTYwMCZoPTQwMCZmaXQ9Y3JvcCIsIGNhdGVnb3J5OiAiUGx1bWJpbmciIH0sCiAgeyBpZDogNSwgdGl0bGU6ICJBdXRvIFJlcGFpciBTaG9wIOKAlCAzMHlyIFJlcHV0YXRpb24iLCBsb2NhdGlvbjogIlBvcnRsYW5kLCBPUiIsIHByaWNlOiAiJDk3NSwwMDAiLCByZXZlbnVlOiAiJDc4MCwwMDAiLCBjYXNoRmxvdzogIiQyOTUsMDAwIiwgZWJpdGRhOiAiJDI2MCwwMDAiLCBkYXlzT25NYXJrZXQ6IDExLCBpbWc6ICJodHRwczovL2ltYWdlcy51bnNwbGFzaC5jb20vcGhvdG8tMTQ4Nzc1NDE4MDQ1MS1jNDU2ZjcxOWExZmM/dz02MDAmaD00MDAmZml0PWNyb3AiLCBjYXRlZ29yeTogIkF1dG8gUmVwYWlyIiB9LAogIHsgaWQ6IDYsIHRpdGxlOiAiQm91dGlxdWUgUm9vZmluZyBDb21wYW55IiwgbG9jYXRpb246ICJDaGFybG90dGUsIE5DIiwgcHJpY2U6ICIkMSw2NTAsMDAwIiwgcmV2ZW51ZTogIiQxLDk1MCwwMDAiLCBjYXNoRmxvdzogIiQ1MjAsMDAwIiwgZWJpdGRhOiAiJDQ5MCwwMDAiLCBkYXlzT25NYXJrZXQ6IDMsIGltZzogImh0dHBzOi8vaW1hZ2VzLnVuc3BsYXNoLmNvbS9waG90by0xNjMyMTUwNDA3MDgzLWYwYWRmM2M5ZjJmMz93PTYwMCZoPTQwMCZmaXQ9Y3JvcCIsIGNhdGVnb3J5OiAiQ29uc3RydWN0aW9uIiB9LApdOwoKY29uc3Qgc2VjdG9ycyA9IFsKICB7IG5hbWU6ICJIVkFDIENvbnRyYWN0b3JzIiwgY291bnQ6IDM0MiwgaWNvbjogIuKdhO+4jyIgfSwKICB7IG5hbWU6ICJEZW50YWwgUHJhY3RpY2VzIiwgY291bnQ6IDI4NywgaWNvbjogIvCfprciIH0sCiAgeyBuYW1lOiAiUGx1bWJpbmciLCBjb3VudDogMTk1LCBpY29uOiAi8J+UpyIgfSwKICB7IG5hbWU6ICJMYW5kc2NhcGluZyIsIGNvdW50OiAxNzgsIGljb246ICLwn4y/IiB9LAogIHsgbmFtZTogIkF1dG8gUmVwYWlyIiwgY291bnQ6IDIyMSwgaWNvbjogIvCfmpciIH0sCiAgeyBuYW1lOiAiQ2xlYW5pbmcgU2VydmljZXMiLCBjb3VudDogMTU2LCBpY29uOiAi8J+nuSIgfSwKICB7IG5hbWU6ICJSZXN0YXVyYW50cyIsIGNvdW50OiA0MTIsIGljb246ICLwn42977iPIiB9LAogIHsgbmFtZTogIkNhZmVzIiwgY291bnQ6IDE4OSwgaWNvbjogIuKYlSIgfSwKXTsKCmNvbnN0IGxvY2F0aW9ucyA9IFsKICB7IG5hbWU6ICJUZXhhcyIsIGNvdW50OiA4OTIgfSwKICB7IG5hbWU6ICJGbG9yaWRhIiwgY291bnQ6IDc0NSB9LAogIHsgbmFtZTogIkNhbGlmb3JuaWEiLCBjb3VudDogMTIwMSB9LAogIHsgbmFtZTogIk5ldyBZb3JrIiwgY291bnQ6IDYzNCB9LAogIHsgbmFtZTogIkNvbG9yYWRvIiwgY291bnQ6IDQyMyB9LAogIHsgbmFtZTogIlRlbm5lc3NlZSIsIGNvdW50OiAzMTIgfSwKICB7IG5hbWU6ICJOb3J0aCBDYXJvbGluYSIsIGNvdW50OiAyODkgfSwKICB7IG5hbWU6ICJPbnRhcmlvLCBDYW5hZGEiLCBjb3VudDogNDU2IH0sCl07Cgpjb25zdCBob3dJdFdvcmtzQnV5ZXIgPSBbCiAgeyBzdGVwOiAxLCB0aXRsZTogIlNlYXJjaCAmIERpc2NvdmVyIiwgZGVzY3JpcHRpb246ICJCcm93c2UgdGhvdXNhbmRzIG9mIHZldHRlZCB0cmFkaXRpb25hbCBidXNpbmVzc2VzIGZvciBzYWxlLiBGaWx0ZXIgYnkgc2VjdG9yLCBsb2NhdGlvbiwgcHJpY2UsIGFuZCBjYXNoIGZsb3cuIiwgaWNvbjogU2VhcmNoIH0sCiAgeyBzdGVwOiAyLCB0aXRsZTogIlNpZ24gTkRBICYgQWNjZXNzIERhdGEiLCBkZXNjcmlwdGlvbjogIlJlcXVlc3QgY29uZmlkZW50aWFsIGRldGFpbHMuIFNpZ24gYSBkaWdpdGFsIE5EQSBpbiBzZWNvbmRzIHRvIHVubG9jayBmdWxsIGZpbmFuY2lhbHMsIENJTXMsIGFuZCBzZWxsZXIgY29udGFjdC4iLCBpY29uOiBGaWxlVGV4dCB9LAogIHsgc3RlcDogMywgdGl0bGU6ICJDb25uZWN0ICYgQWNxdWlyZSIsIGRlc2NyaXB0aW9uOiAiTWVzc2FnZSBzZWxsZXJzIGRpcmVjdGx5LiBOZWdvdGlhdGUsIHBlcmZvcm0gZHVlIGRpbGlnZW5jZSwgYW5kIGNsb3NlIHRoZSBkZWFsIOKAlCBubyBicm9rZXIgZmVlcy4iLCBpY29uOiBIYW5kc2hha2UgfSwKXTsKCmNvbnN0IGhvd0l0V29ya3NTZWxsZXIgPSBbCiAgeyBzdGVwOiAxLCB0aXRsZTogIkxpc3QgZm9yIEZyZWUiLCBkZXNjcmlwdGlvbjogIkNyZWF0ZSBhIGxpc3RpbmcgaW4gbWludXRlcy4gQUkgaGVscHMgeW91IGdlbmVyYXRlIGEgcHJvZmVzc2lvbmFsIHRlYXNlciBwcm9maWxlIGZyb20geW91ciBmaW5hbmNpYWxzLiIsIGljb246IEZpbGVUZXh0IH0sCiAgeyBzdGVwOiAyLCB0aXRsZTogIlJlY2VpdmUgSW5xdWlyaWVzIiwgZGVzY3JpcHRpb246ICJRdWFsaWZpZWQgYnV5ZXJzIHN1Ym1pdCBvZmZlcnMgYWZ0ZXIgc2lnbmluZyBhbiBOREEuIFlvdSBjb250cm9sIHdobyBzZWVzIHlvdXIgY29uZmlkZW50aWFsIGRhdGEuIiwgaWNvbjogTWVzc2FnZVNxdWFyZSB9LAogIHsgc3RlcDogMywgdGl0bGU6ICJTZWxsIG9uIFlvdXIgVGVybXMiLCBkZXNjcmlwdGlvbjogIk5lZ290aWF0ZSBkaXJlY3RseSB3aXRoIHNlcmlvdXMgYnV5ZXJzLiBDbG9zZSB0aGUgZGVhbCBhbmQga2VlcCBtb3JlIG9mIHlvdXIgc2FsZSBwcmljZSDigJQgbm8gMTAlIGJyb2tlciBjb21taXNzaW9uLiIsIGljb246IFRyZW5kaW5nVXAgfSwKXTsKCmNvbnN0IHRlc3RpbW9uaWFscyA9IFsKICB7IHF1b3RlOiAiSSBsaXN0ZWQgbXkgSFZBQyBjb21wYW55IG9uIEdldEFjcXVpcmVkIGFuZCBoYWQgMyBxdWFsaWZpZWQgb2ZmZXJzIHdpdGhpbiAyIHdlZWtzLiBTb2xkIGZvciA5NSUgb2YgYXNraW5nLiBUaGUgQUkgQ0lNIGdlbmVyYXRvciBzYXZlZCBtZSAkNSwwMDAgaW4gYnJva2VyIGZlZXMuIiwgbmFtZTogIk1pa2UgUi4iLCB0aXRsZTogIlNvbGQgSFZBQyBDb21wYW55LCBBdXN0aW4gVFgiIH0sCiAgeyBxdW90ZTogIkFmdGVyIDYgbW9udGhzIHdpdGggYSB0cmFkaXRpb25hbCBicm9rZXIgYW5kIHplcm8gb2ZmZXJzLCBJIGxpc3RlZCBoZXJlLiBXaXRoaW4gYSBtb250aCBJIGhhZCBhbiBMT0kgc2lnbmVkLiBUaGUgZGlyZWN0LXRvLXNlbGxlciBtb2RlbCBpcyBhIGdhbWUgY2hhbmdlci4iLCBuYW1lOiAiU2FyYWggSy4iLCB0aXRsZTogIlNvbGQgRGVudGFsIFByYWN0aWNlLCBNaWFtaSBGTCIgfSwKICB7IHF1b3RlOiAiQXMgYSBmaXJzdC10aW1lIGJ1eWVyLCB0aGUgcHJvY2VzcyB3YXMgaW5jcmVkaWJseSBzbW9vdGguIFRoZSBOREEgd29ya2Zsb3cgaXMgZnJpY3Rpb25sZXNzIGFuZCB0aGUgc2VsbGVyIHdhcyByZXNwb25zaXZlLiBDbG9zZWQgaW4gNDUgZGF5cy4iLCBuYW1lOiAiRGF2aWQgTC4iLCB0aXRsZTogIkFjcXVpcmVkIExhbmRzY2FwaW5nIENvLiwgRGVudmVyIENPIiB9LApdOwoKZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gSG9tZSgpIHsKICByZXR1cm4gKAogICAgPD4KICAgICAgey8qID09PT09PT09PT0gSEVSTyA9PT09PT09PT09ICovfQogICAgICA8c2VjdGlvbiBjbGFzc05hbWU9ImJnLWJhc2UtMjAwIHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiI+CiAgICAgICAgPGRpdiBjbGFzc05hbWU9ImFic29sdXRlIGluc2V0LTAgb3BhY2l0eS1bMC4wM10gcG9pbnRlci1ldmVudHMtbm9uZSI+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iYWJzb2x1dGUgaW5zZXQtMCIgc3R5bGU9e3sgYmFja2dyb3VuZEltYWdlOiAncmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyNSUgMjUlLCBjdXJyZW50Q29sb3IgMXB4LCB0cmFuc3BhcmVudCAxcHgpJywgYmFja2dyb3VuZFNpemU6ICc2MHB4IDYwcHgnIH19IC8+CiAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgPGRpdiBjbGFzc05hbWU9ImNvbnRhaW5lciBteC1hdXRvIHB4LTYgcHktMjQgbWQ6cHktMzIgcmVsYXRpdmUgei0xMCBmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciB0ZXh0LWNlbnRlciI+CiAgICAgICAgICB7LyogQmFkZ2UgKi99CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iYmFkZ2UgYmFkZ2UtcHJpbWFyeSBiYWRnZS1vdXRsaW5lIGJhZGdlLWxnIGdhcC0yIG1iLTggcHktNCBweC01IHNoYWRvdy1zbSI+CiAgICAgICAgICAgIDxTcGFya2xlcyBjbGFzc05hbWU9InctNCBoLTQiIC8+CiAgICAgICAgICAgIFRoZSBtb2Rlcm4gd2F5IHRvIGJ1eSAmIHNlbGwgTWFpbiBTdHJlZXQgYnVzaW5lc3NlcwogICAgICAgICAgPC9kaXY+CgogICAgICAgICAgPGgxIGNsYXNzTmFtZT0idGV4dC01eGwgbWQ6dGV4dC02eGwgbGc6dGV4dC03eGwgZm9udC1leHRyYWJvbGQgdHJhY2tpbmctdGlnaHQgbWItNiBsZWFkaW5nLXRpZ2h0IHRleHQtYmFzZS1jb250ZW50IG1heC13LTR4bCI+CiAgICAgICAgICAgIEZpbmQgdGhlIHJpZ2h0eyIgIn0KICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJ0ZXh0LXByaW1hcnkiPgogICAgICAgICAgICAgIGJ1c2luZXNzIGZvciB5b3UKICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgPC9oMT4KICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1sZyBtZDp0ZXh0LXhsIHRleHQtYmFzZS1jb250ZW50LzcwIG1iLTEwIG1heC13LTJ4bCBteC1hdXRvIGxlYWRpbmctcmVsYXhlZCI+CiAgICAgICAgICAgIFNlYXJjaCB0aG91c2FuZHMgb2YgcHJvZml0YWJsZSB0cmFkaXRpb25hbCBidXNpbmVzc2VzIGZvciBzYWxlLiBObyBicm9rZXJzLiBObyBjb21taXNzaW9uIGZlZXMuIAogICAgICAgICAgICBDb25uZWN0IGRpcmVjdGx5IHdpdGggc2VsbGVycyBhbmQga2VlcCBtb3JlIG9mIHlvdXIgbW9uZXkuCiAgICAgICAgICA8L3A+CgogICAgICAgICAgey8qIFNlYXJjaCBCYXIgKi99CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iYmctYmFzZS0xMDAgcm91bmRlZC1ib3ggc2hhZG93LWxnIHAtMiBtYXgtdy00eGwgdy1mdWxsIG14LWF1dG8gZmxleCBmbGV4LWNvbCBtZDpmbGV4LXJvdyBnYXAtMiBib3JkZXIgYm9yZGVyLWJhc2UtMzAwIj4KICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImZsZXgtMSByZWxhdGl2ZSBmbGV4IGl0ZW1zLWNlbnRlciI+CiAgICAgICAgICAgICAgPFNlYXJjaCBjbGFzc05hbWU9ImgtNSB3LTUgdGV4dC1iYXNlLWNvbnRlbnQvNDAgYWJzb2x1dGUgbGVmdC00IHNocmluay0wIiAvPgogICAgICAgICAgICAgIDxpbnB1dCAKICAgICAgICAgICAgICAgIHR5cGU9InRleHQiIAogICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9IktleXdvcmQsIGJ1c2luZXNzIHR5cGUsIG9yIHNlY3Rvci4uLiIKICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0iaW5wdXQgaW5wdXQtZ2hvc3Qgdy1mdWxsIHBsLTEyIGgtMTIgdGV4dC1iYXNlIGZvY3VzOmJnLXRyYW5zcGFyZW50IGZvY3VzOm91dGxpbmUtbm9uZSIKICAgICAgICAgICAgICAvPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9InctcHggYmctYmFzZS0zMDAgaGlkZGVuIG1kOmJsb2NrIG15LTIiPjwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZmxleC0xIHJlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIj4KICAgICAgICAgICAgICA8TWFwUGluIGNsYXNzTmFtZT0iaC01IHctNSB0ZXh0LWJhc2UtY29udGVudC80MCBhYnNvbHV0ZSBsZWZ0LTQgc2hyaW5rLTAiIC8+CiAgICAgICAgICAgICAgPGlucHV0IAogICAgICAgICAgICAgICAgdHlwZT0idGV4dCIgCiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj0iQ2l0eSwgU3RhdGUsIG9yIFppcCIKICAgICAgICAgICAgICAgIGNsYXNzTmFtZT0iaW5wdXQgaW5wdXQtZ2hvc3Qgdy1mdWxsIHBsLTEyIGgtMTIgdGV4dC1iYXNlIGZvY3VzOmJnLXRyYW5zcGFyZW50IGZvY3VzOm91dGxpbmUtbm9uZSIKICAgICAgICAgICAgICAvPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPExpbmsgaHJlZj0iL2J1c2luZXNzZXMtZm9yLXNhbGUiIGNsYXNzTmFtZT0iYnRuIGJ0bi1wcmltYXJ5IGgtMTIgcHgtOCI+CiAgICAgICAgICAgICAgU2VhcmNoCiAgICAgICAgICAgIDwvTGluaz4KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIHsvKiBUcnVzdCBTdGF0cyAqL30KICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJncmlkIGdyaWQtY29scy0yIG1kOmdyaWQtY29scy00IGdhcC04IG10LTE2IG1heC13LTN4bCBteC1hdXRvIHctZnVsbCI+CiAgICAgICAgICAgIHtbCiAgICAgICAgICAgICAgeyB2YWx1ZTogIjEyLDQwMCsiLCBsYWJlbDogIkFjdGl2ZSBMaXN0aW5ncyIgfSwKICAgICAgICAgICAgICB7IHZhbHVlOiAiMywyMDArIiwgbGFiZWw6ICJCdXNpbmVzc2VzIFNvbGQiIH0sCiAgICAgICAgICAgICAgeyB2YWx1ZTogIjQ1LDAwMCsiLCBsYWJlbDogIlF1YWxpZmllZCBCdXllcnMiIH0sCiAgICAgICAgICAgICAgeyB2YWx1ZTogIjk4JSIsIGxhYmVsOiAiU2VsbGVyIFNhdGlzZmFjdGlvbiIgfSwKICAgICAgICAgICAgXS5tYXAoKHN0YXQsIGkpID0+ICgKICAgICAgICAgICAgICA8ZGl2IGtleT17aX0gY2xhc3NOYW1lPSJ0ZXh0LWNlbnRlciBmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciI+CiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtM3hsIGZvbnQtYm9sZCB0ZXh0LWJhc2UtY29udGVudCBtYi0xIj57c3RhdC52YWx1ZX08L3A+CiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1iYXNlLWNvbnRlbnQvNjAiPntzdGF0LmxhYmVsfTwvcD4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgKSl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgoKICAgICAgey8qID09PT09PT09PT0gSE9XIElUIFdPUktTID09PT09PT09PT0gKi99CiAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT0iYmctYmFzZS0xMDAgcHktMjQiPgogICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjb250YWluZXIgbXgtYXV0byBweC02IG1heC13LTZ4bCI+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0idGV4dC1jZW50ZXIgbWItMTYiPgogICAgICAgICAgICA8aDIgY2xhc3NOYW1lPSJ0ZXh0LTN4bCBtZDp0ZXh0LTR4bCBmb250LWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQgbWItNCI+SG93IEdldEFjcXVpcmVkIFdvcmtzPC9oMj4KICAgICAgICAgICAgPHAgY2xhc3NOYW1lPSJ0ZXh0LWJhc2UtY29udGVudC83MCBtYXgtdy0yeGwgbXgtYXV0byB0ZXh0LWxnIj5XaGV0aGVyIHlvdSdyZSBidXlpbmcgb3Igc2VsbGluZywgd2UndmUgc3RyZWFtbGluZWQgdGhlIHByb2Nlc3MgdG8gYmUgZmFzdGVyLCBmYWlyZXIsIGFuZCBtb3JlIHRyYW5zcGFyZW50LjwvcD4KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJncmlkIG1kOmdyaWQtY29scy0yIGdhcC04Ij4KICAgICAgICAgICAgey8qIEZvciBCdXllcnMgKi99CiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjYXJkIGJnLWJhc2UtMjAwIGJvcmRlciBib3JkZXItYmFzZS0zMDAgc2hhZG93LXNtIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iY2FyZC1ib2R5IHAtOCBtZDpwLTEwIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMyBtYi04Ij4KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9InctMTIgaC0xMiByb3VuZGVkLXhsIGJnLXByaW1hcnkvMTAgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgIDxUcmVuZGluZ1VwIGNsYXNzTmFtZT0idy02IGgtNiB0ZXh0LXByaW1hcnkiIC8+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPSJ0ZXh0LTJ4bCBmb250LWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQiPkZvciBCdXllcnM8L2gzPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ic3BhY2UteS04Ij4KICAgICAgICAgICAgICAgICAge2hvd0l0V29ya3NCdXllci5tYXAoKHN0ZXApID0+ICgKICAgICAgICAgICAgICAgICAgICA8ZGl2IGtleT17c3RlcC5zdGVwfSBjbGFzc05hbWU9ImZsZXggZ2FwLTQiPgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9InctOCBoLTggcm91bmRlZC1mdWxsIGJnLXByaW1hcnkgdGV4dC1wcmltYXJ5LWNvbnRlbnQgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdGV4dC1zbSBmb250LWJvbGQgc2hyaW5rLTAgbXQtMC41IHNoYWRvdy1zbSI+CiAgICAgICAgICAgICAgICAgICAgICAgIHtzdGVwLnN0ZXB9CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoNCBjbGFzc05hbWU9ImZvbnQtYm9sZCB0ZXh0LWxnIHRleHQtYmFzZS1jb250ZW50Ij57c3RlcC50aXRsZX08L2g0PgogICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtYmFzZS1jb250ZW50LzcwIG10LTEgbGVhZGluZy1yZWxheGVkIj57c3RlcC5kZXNjcmlwdGlvbn08L3A+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgKSl9CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJtdC04IHB0LTYgYm9yZGVyLXQgYm9yZGVyLWJhc2UtMzAwIj4KICAgICAgICAgICAgICAgICAgPExpbmsgaHJlZj0iL3NpZ251cCIgY2xhc3NOYW1lPSJidG4gYnRuLXByaW1hcnkgdy1mdWxsIHNtOnctYXV0byI+CiAgICAgICAgICAgICAgICAgICAgU3RhcnQgYnJvd3NpbmcgYnVzaW5lc3NlcyA8QXJyb3dSaWdodCBjbGFzc05hbWU9InctNCBoLTQgbWwtMiIgLz4KICAgICAgICAgICAgICAgICAgPC9MaW5rPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgey8qIEZvciBTZWxsZXJzICovfQogICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iY2FyZCBiZy1wcmltYXJ5IHRleHQtcHJpbWFyeS1jb250ZW50IHNoYWRvdy1tZCI+CiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImNhcmQtYm9keSBwLTggbWQ6cC0xMCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMgbWItOCI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJ3LTEyIGgtMTIgcm91bmRlZC14bCBiZy1wcmltYXJ5LWNvbnRlbnQvMjAgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIiPgogICAgICAgICAgICAgICAgICAgIDxTdG9yZSBjbGFzc05hbWU9InctNiBoLTYgdGV4dC1wcmltYXJ5LWNvbnRlbnQiIC8+CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8aDMgY2xhc3NOYW1lPSJ0ZXh0LTJ4bCBmb250LWJvbGQiPkZvciBTZWxsZXJzPC9oMz4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9InNwYWNlLXktOCI+CiAgICAgICAgICAgICAgICAgIHtob3dJdFdvcmtzU2VsbGVyLm1hcCgoc3RlcCkgPT4gKAogICAgICAgICAgICAgICAgICAgIDxkaXYga2V5PXtzdGVwLnN0ZXB9IGNsYXNzTmFtZT0iZmxleCBnYXAtNCI+CiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0idy04IGgtOCByb3VuZGVkLWZ1bGwgYmctcHJpbWFyeS1jb250ZW50IHRleHQtcHJpbWFyeSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0ZXh0LXNtIGZvbnQtYm9sZCBzaHJpbmstMCBtdC0wLjUgc2hhZG93LXNtIj4KICAgICAgICAgICAgICAgICAgICAgICAge3N0ZXAuc3RlcH0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPGg0IGNsYXNzTmFtZT0iZm9udC1ib2xkIHRleHQtbGciPntzdGVwLnRpdGxlfTwvaDQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1wcmltYXJ5LWNvbnRlbnQvODAgbXQtMSBsZWFkaW5nLXJlbGF4ZWQiPntzdGVwLmRlc2NyaXB0aW9ufTwvcD4KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICApKX0KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9Im10LTggcHQtNiBib3JkZXItdCBib3JkZXItcHJpbWFyeS1jb250ZW50LzIwIj4KICAgICAgICAgICAgICAgICAgPExpbmsgaHJlZj0iL2Rhc2hib2FyZC9zZWxsZXIvbGlzdGluZ3MvbmV3IiBjbGFzc05hbWU9ImJ0biBidG4tb3V0bGluZSBiZy1wcmltYXJ5LWNvbnRlbnQgdGV4dC1wcmltYXJ5IGhvdmVyOmJnLXByaW1hcnktY29udGVudC85MCBib3JkZXItbm9uZSB3LWZ1bGwgc206dy1hdXRvIj4KICAgICAgICAgICAgICAgICAgICBMaXN0IHlvdXIgYnVzaW5lc3MgZnJlZSA8QXJyb3dSaWdodCBjbGFzc05hbWU9InctNCBoLTQgbWwtMiIgLz4KICAgICAgICAgICAgICAgICAgPC9MaW5rPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KCiAgICAgIHsvKiA9PT09PT09PT09IEZFQVRVUkVEIExJU1RJTkdTID09PT09PT09PT0gKi99CiAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT0iYmctYmFzZS0yMDAgcHktMjQiPgogICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjb250YWluZXIgbXgtYXV0byBweC02IG1heC13LTZ4bCI+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZmxleCBmbGV4LWNvbCBzbTpmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtc3RhcnQgc206aXRlbXMtZW5kIG1iLTEyIGdhcC00Ij4KICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICA8aDIgY2xhc3NOYW1lPSJ0ZXh0LTN4bCBtZDp0ZXh0LTR4bCBmb250LWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQgbWItMyI+RmVhdHVyZWQgQnVzaW5lc3NlcyBmb3IgU2FsZTwvaDI+CiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPSJ0ZXh0LWJhc2UtY29udGVudC83MCB0ZXh0LWxnIj5IYW5kLXBpY2tlZCBvcHBvcnR1bml0aWVzIHZldHRlZCBieSBvdXIgdGVhbTwvcD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxMaW5rIGhyZWY9Ii9idXNpbmVzc2VzLWZvci1zYWxlIiBjbGFzc05hbWU9ImJ0biBidG4tb3V0bGluZSBidG4tcHJpbWFyeSI+CiAgICAgICAgICAgICAgVmlldyBhbGwgbGlzdGluZ3MgPEFycm93UmlnaHQgY2xhc3NOYW1lPSJ3LTQgaC00IG1sLTEiIC8+CiAgICAgICAgICAgIDwvTGluaz4KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zIGdhcC02Ij4KICAgICAgICAgICAge2ZlYXR1cmVkTGlzdGluZ3MubWFwKChiaXopID0+ICgKICAgICAgICAgICAgICA8TGluayBocmVmPXtgL2xpc3RpbmcvJHtiaXouaWR9YH0ga2V5PXtiaXouaWR9IGNsYXNzTmFtZT0iY2FyZCBiZy1iYXNlLTEwMCBzaGFkb3ctc20gaG92ZXI6c2hhZG93LW1kIGJvcmRlciBib3JkZXItYmFzZS0zMDAgaG92ZXI6Ym9yZGVyLXByaW1hcnkvNTAgdHJhbnNpdGlvbi1hbGwgZ3JvdXAgb3ZlcmZsb3ctaGlkZGVuIj4KICAgICAgICAgICAgICAgIDxmaWd1cmUgY2xhc3NOYW1lPSJoLTQ4IHJlbGF0aXZlIG92ZXJmbG93LWhpZGRlbiI+CiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXtiaXouaW1nfSBhbHQ9e2Jpei50aXRsZX0gY2xhc3NOYW1lPSJ3LWZ1bGwgaC1mdWxsIG9iamVjdC1jb3ZlciBncm91cC1ob3ZlcjpzY2FsZS0xMDUgdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tNTAwIiAvPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iYWJzb2x1dGUgdG9wLTMgbGVmdC0zIGZsZXggZ2FwLTIiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJiYWRnZSBiYWRnZS1uZXV0cmFsIHNoYWRvdy1zbSBmb250LWJvbGQgdGV4dC14cyBweS0zIj5GRUFUVVJFRDwvZGl2PgogICAgICAgICAgICAgICAgICAgIHtiaXouZGF5c09uTWFya2V0IDw9IDcgJiYgKAogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImJhZGdlIGJhZGdlLXN1Y2Nlc3MgdGV4dC1zdWNjZXNzLWNvbnRlbnQgc2hhZG93LXNtIGZvbnQtYm9sZCB0ZXh0LXhzIHB5LTMiPk5FVzwvZGl2PgogICAgICAgICAgICAgICAgICAgICl9CiAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPC9maWd1cmU+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iY2FyZC1ib2R5IHAtNSI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBtYi0yIj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9ImJhZGdlIGJhZGdlLXByaW1hcnkgYmFkZ2Utc29mdCB0ZXh0LXhzIj57Yml6LmNhdGVnb3J5fTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9InRleHQteHMgdGV4dC1iYXNlLWNvbnRlbnQvNTAgZm9udC1tZWRpdW0iPntiaXouZGF5c09uTWFya2V0fSBkYXlzIG9uIG1hcmtldDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9ImNhcmQtdGl0bGUgdGV4dC1sZyBsZWFkaW5nLXRpZ2h0IGdyb3VwLWhvdmVyOnRleHQtcHJpbWFyeSB0cmFuc2l0aW9uLWNvbG9ycyI+e2Jpei50aXRsZX08L2gzPgogICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtYmFzZS1jb250ZW50LzYwIHRleHQtc20gZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTEuNSBtdC0xIG1iLTQiPgogICAgICAgICAgICAgICAgICAgIDxNYXBQaW4gY2xhc3NOYW1lPSJoLTQgdy00IiAvPiB7Yml6LmxvY2F0aW9ufQogICAgICAgICAgICAgICAgICA8L3A+CiAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZ3JpZCBncmlkLWNvbHMtMiBnYXAtMyBtYi00IGJnLWJhc2UtMjAwLzUwIHAtMyByb3VuZGVkLXhsIGJvcmRlciBib3JkZXItYmFzZS0yMDAiPgogICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtWzEwcHhdIHRleHQtYmFzZS1jb250ZW50LzUwIHVwcGVyY2FzZSB0cmFja2luZy13aWRlciBmb250LWJvbGQgbWItMC41Ij5Bc2tpbmcgUHJpY2U8L3A+CiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9ImZvbnQtYm9sZCB0ZXh0LWJhc2UtY29udGVudCI+e2Jpei5wcmljZX08L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1bMTBweF0gdGV4dC1iYXNlLWNvbnRlbnQvNTAgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGVyIGZvbnQtYm9sZCBtYi0wLjUiPkNhc2ggRmxvdzwvcD4KICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0iZm9udC1ib2xkIHRleHQtc3VjY2VzcyI+e2Jpei5jYXNoRmxvd308L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1bMTBweF0gdGV4dC1iYXNlLWNvbnRlbnQvNTAgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGVyIGZvbnQtYm9sZCBtYi0wLjUiPlJldmVudWU8L3A+CiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQvODAiPntiaXoucmV2ZW51ZX08L3A+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1bMTBweF0gdGV4dC1iYXNlLWNvbnRlbnQvNTAgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGVyIGZvbnQtYm9sZCBtYi0wLjUiPkVCSVREQTwvcD4KICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0iZm9udC1zZW1pYm9sZCB0ZXh0LWJhc2UtY29udGVudC84MCI+e2Jpei5lYml0ZGF9PC9wPgogICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJtdC1hdXRvIHB0LTQgYm9yZGVyLXQgYm9yZGVyLWJhc2UtMjAwIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiI+CiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJ0ZXh0LXhzIHRleHQtYmFzZS1jb250ZW50LzQwIGZvbnQtbWVkaXVtIj5MaXN0aW5nICN7Yml6LmlkfTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9InRleHQtc20gZm9udC1ib2xkIHRleHQtcHJpbWFyeSBncm91cC1ob3ZlcjpnYXAtMiB0cmFuc2l0aW9uLWFsbCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMSI+CiAgICAgICAgICAgICAgICAgICAgICBWaWV3IERldGFpbHMgPEFycm93UmlnaHQgY2xhc3NOYW1lPSJ3LTQgaC00IiAvPgogICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L0xpbms+CiAgICAgICAgICAgICkpfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KCiAgICAgIHsvKiA9PT09PT09PT09IFdIWSBHRVRBQ1FVSVJFRCA9PT09PT09PT09ICovfQogICAgICA8c2VjdGlvbiBjbGFzc05hbWU9ImJnLWJhc2UtMTAwIHB5LTI0Ij4KICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iY29udGFpbmVyIG14LWF1dG8gcHgtNiBtYXgtdy02eGwiPgogICAgICAgICAgPGRpdiBjbGFzc05hbWU9InRleHQtY2VudGVyIG1iLTE2Ij4KICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT0idGV4dC0zeGwgbWQ6dGV4dC00eGwgZm9udC1ib2xkIHRleHQtYmFzZS1jb250ZW50IG1iLTQiPldoeSBzZWxsZXJzIGNob29zZSBHZXRBY3F1aXJlZDwvaDI+CiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1iYXNlLWNvbnRlbnQvNzAgbWF4LXctMnhsIG14LWF1dG8gdGV4dC1sZyI+RGl0Y2ggdGhlIDEwJSBicm9rZXIgY29tbWlzc2lvbi4gS2VlcCBtb3JlIG9mIHdoYXQgeW91J3ZlIGJ1aWx0LjwvcD4KICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJncmlkIGdyaWQtY29scy0xIG1kOmdyaWQtY29scy0yIGxnOmdyaWQtY29scy0zIGdhcC02Ij4KICAgICAgICAgICAge1sKICAgICAgICAgICAgICB7IGljb246IFphcCwgdGl0bGU6ICJBSS1Qb3dlcmVkIENJTSBHZW5lcmF0b3IiLCBkZXNjcmlwdGlvbjogIlVwbG9hZCB5b3VyIFAmTCBhbmQgb3VyIEFJIGdlbmVyYXRlcyBhIHByb2Zlc3Npb25hbCAyMCsgcGFnZSBDSU0gaW5zdGFudGx5LiBObyBtb3JlIHBheWluZyBicm9rZXJzICQ1LDAwMCBmb3IgYSBkb2N1bWVudC4iIH0sCiAgICAgICAgICAgICAgeyBpY29uOiBFeWUsIHRpdGxlOiAiUXVhbGlmaWVkIEJ1eWVyIFNjcmVlbmluZyIsIGRlc2NyaXB0aW9uOiAiQnV5ZXJzIG11c3Qgc2lnbiBhbiBOREEgYmVmb3JlIHZpZXdpbmcgeW91ciBmaW5hbmNpYWxzLiBZb3UgY29udHJvbCB3aG8gc2VlcyB5b3VyIGNvbmZpZGVudGlhbCBkYXRhLCBldmVyeSB0aW1lLiIgfSwKICAgICAgICAgICAgICB7IGljb246IEJhckNoYXJ0MywgdGl0bGU6ICJCb29zdCBZb3VyIExpc3RpbmciLCBkZXNjcmlwdGlvbjogIlByZW1pdW0gcGxhY2VtZW50IGluIHNlYXJjaCByZXN1bHRzLCBmZWF0dXJlZCBpbiBvdXIgYnV5ZXIgbmV3c2xldHRlciwgYW5kIGhpZ2hsaWdodGVkIG9uIHRoZSBob21lcGFnZSBmb3IgbWF4aW11bSB2aXNpYmlsaXR5LiIgfSwKICAgICAgICAgICAgICB7IGljb246IFNoaWVsZENoZWNrLCB0aXRsZTogIlNlY3VyZSBEYXRhIFJvb20iLCBkZXNjcmlwdGlvbjogIkFsbCBkb2N1bWVudHMgYXJlIHN0b3JlZCBpbiBhIHNlY3VyZSB2aXJ0dWFsIGRhdGEgcm9vbS4gR3JhbnQgYW5kIHJldm9rZSBhY2Nlc3Mgd2l0aCBvbmUgY2xpY2suIiB9LAogICAgICAgICAgICAgIHsgaWNvbjogTWVzc2FnZVNxdWFyZSwgdGl0bGU6ICJEaXJlY3QgTmVnb3RpYXRpb24iLCBkZXNjcmlwdGlvbjogIk5vIG1pZGRsZW1lbi4gTmVnb3RpYXRlIGRpcmVjdGx5IHdpdGggcXVhbGlmaWVkIGJ1eWVycyBhbmQga2VlcCAxMDAlIG9mIHRoZSBzYWxlIHByaWNlLiIgfSwKICAgICAgICAgICAgICB7IGljb246IENhbGN1bGF0b3IsIHRpdGxlOiAiSW5zdGFudCBWYWx1YXRpb24iLCBkZXNjcmlwdGlvbjogIkdldCBhbiBBSS1wb3dlcmVkIGJ1c2luZXNzIHZhbHVhdGlvbiBpbiBzZWNvbmRzLiBLbm93IHdoYXQgeW91ciBidXNpbmVzcyBpcyB3b3J0aCBiZWZvcmUgeW91IGxpc3QuIiB9LAogICAgICAgICAgICBdLm1hcCgoZmVhdHVyZSwgaSkgPT4gKAogICAgICAgICAgICAgIDxkaXYga2V5PXtpfSBjbGFzc05hbWU9ImNhcmQgYmctYmFzZS0xMDAgYm9yZGVyIGJvcmRlci1iYXNlLTMwMCBob3Zlcjpib3JkZXItcHJpbWFyeS80MCBob3ZlcjpzaGFkb3ctbWQgdHJhbnNpdGlvbi1hbGwgZ3JvdXAiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImNhcmQtYm9keSBwLTYiPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0idy0xMiBoLTEyIHJvdW5kZWQteGwgYmctcHJpbWFyeS8xMCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBtYi00IGdyb3VwLWhvdmVyOmJnLXByaW1hcnkgZ3JvdXAtaG92ZXI6dGV4dC1wcmltYXJ5LWNvbnRlbnQgdHJhbnNpdGlvbi1jb2xvcnMiPgogICAgICAgICAgICAgICAgICAgIDxmZWF0dXJlLmljb24gY2xhc3NOYW1lPSJ3LTYgaC02IHRleHQtcHJpbWFyeSBncm91cC1ob3Zlcjp0ZXh0LXByaW1hcnktY29udGVudCIgLz4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxoMyBjbGFzc05hbWU9ImNhcmQtdGl0bGUgdGV4dC1sZyBtYi0yIj57ZmVhdHVyZS50aXRsZX08L2gzPgogICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtYmFzZS1jb250ZW50LzcwIHRleHQtc20gbGVhZGluZy1yZWxheGVkIj57ZmVhdHVyZS5kZXNjcmlwdGlvbn08L3A+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgKSl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgoKICAgICAgey8qID09PT09PT09PT0gUE9QVUxBUiBTRUNUT1JTICYgTE9DQVRJT05TID09PT09PT09PT0gKi99CiAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT0iYmctYmFzZS0yMDAgcHktMjQiPgogICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjb250YWluZXIgbXgtYXV0byBweC02IG1heC13LTZ4bCI+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZ3JpZCBsZzpncmlkLWNvbHMtMiBnYXAtMTYiPgogICAgICAgICAgICAKICAgICAgICAgICAgey8qIFNlY3RvcnMgKi99CiAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9Im1iLTgiPgogICAgICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT0idGV4dC0yeGwgbWQ6dGV4dC0zeGwgZm9udC1ib2xkIHRleHQtYmFzZS1jb250ZW50IG1iLTIiPkJyb3dzZSBieSBTZWN0b3I8L2gyPgogICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPSJ0ZXh0LWJhc2UtY29udGVudC83MCI+RmluZCBidXNpbmVzc2VzIGluIHlvdXIgYXJlYSBvZiBleHBlcnRpc2U8L3A+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImdyaWQgZ3JpZC1jb2xzLTEgc206Z3JpZC1jb2xzLTIgZ2FwLTMiPgogICAgICAgICAgICAgICAge3NlY3RvcnMubWFwKChzZWN0b3IsIGkpID0+ICgKICAgICAgICAgICAgICAgICAgPExpbmsgCiAgICAgICAgICAgICAgICAgICAgaHJlZj17YC9idXNpbmVzc2VzLWZvci1zYWxlP3NlY3Rvcj0ke3NlY3Rvci5uYW1lLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvW15hLXowLTldKy9nLCAnLScpfWB9IAogICAgICAgICAgICAgICAgICAgIGtleT17aX0gCiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcC00IHJvdW5kZWQteGwgYmctYmFzZS0xMDAgYm9yZGVyIGJvcmRlci1iYXNlLTMwMCBob3Zlcjpib3JkZXItcHJpbWFyeS81MCBob3ZlcjpzaGFkb3ctc20gdHJhbnNpdGlvbi1hbGwgZ3JvdXAiCiAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMiPgogICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJ0ZXh0LXhsIGJnLWJhc2UtMjAwIHctMTAgaC0xMCByb3VuZGVkLWxnIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIj57c2VjdG9yLmljb259PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJmb250LWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQgdGV4dC1zbSBncm91cC1ob3Zlcjp0ZXh0LXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnMiPntzZWN0b3IubmFtZX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT0idGV4dC14cyB0ZXh0LWJhc2UtY29udGVudC81MCBibG9jayBtdC0wLjUiPntzZWN0b3IuY291bnQudG9Mb2NhbGVTdHJpbmcoKX0gbGlzdGluZ3M8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8Q2hldnJvblJpZ2h0IGNsYXNzTmFtZT0iaC00IHctNCB0ZXh0LWJhc2UtY29udGVudC8zMCBncm91cC1ob3Zlcjp0ZXh0LXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnMiIC8+CiAgICAgICAgICAgICAgICAgIDwvTGluaz4KICAgICAgICAgICAgICAgICkpfQogICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIHsvKiBMb2NhdGlvbnMgKi99CiAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9Im1iLTgiPgogICAgICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT0idGV4dC0yeGwgbWQ6dGV4dC0zeGwgZm9udC1ib2xkIHRleHQtYmFzZS1jb250ZW50IG1iLTIiPkJyb3dzZSBieSBMb2NhdGlvbjwvaDI+CiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtYmFzZS1jb250ZW50LzcwIj5Qb3B1bGFyIG1hcmtldHMgZm9yIGJ1c2luZXNzIGFjcXVpc2l0aW9uczwvcD4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZ3JpZCBncmlkLWNvbHMtMSBzbTpncmlkLWNvbHMtMiBnYXAtMyI+CiAgICAgICAgICAgICAgICB7bG9jYXRpb25zLm1hcCgobG9jLCBpKSA9PiAoCiAgICAgICAgICAgICAgICAgIDxMaW5rIAogICAgICAgICAgICAgICAgICAgIGhyZWY9e2AvYnVzaW5lc3Nlcy1mb3Itc2FsZT9sb2NhdGlvbj0ke2xvYy5uYW1lLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvW15hLXowLTldKy9nLCAnLScpfWB9IAogICAgICAgICAgICAgICAgICAgIGtleT17aX0gCiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcC00IHJvdW5kZWQteGwgYmctYmFzZS0xMDAgYm9yZGVyIGJvcmRlci1iYXNlLTMwMCBob3Zlcjpib3JkZXItcHJpbWFyeS81MCBob3ZlcjpzaGFkb3ctc20gdHJhbnNpdGlvbi1hbGwgZ3JvdXAiCiAgICAgICAgICAgICAgICAgID4KICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJmb250LWJvbGQgdGV4dC1iYXNlLWNvbnRlbnQgdGV4dC1zbSBncm91cC1ob3Zlcjp0ZXh0LXByaW1hcnkgdHJhbnNpdGlvbi1jb2xvcnMiPntsb2MubmFtZX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9InRleHQteHMgdGV4dC1iYXNlLWNvbnRlbnQvNTAgYmxvY2sgbXQtMC41Ij57bG9jLmNvdW50LnRvTG9jYWxlU3RyaW5nKCl9IGJ1c2luZXNzZXM8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPENoZXZyb25SaWdodCBjbGFzc05hbWU9ImgtNCB3LTQgdGV4dC1iYXNlLWNvbnRlbnQvMzAgZ3JvdXAtaG92ZXI6dGV4dC1wcmltYXJ5IHRyYW5zaXRpb24tY29sb3JzIiAvPgogICAgICAgICAgICAgICAgICA8L0xpbms+CiAgICAgICAgICAgICAgICApKX0KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KCiAgICAgIHsvKiA9PT09PT09PT09IFRFU1RJTU9OSUFMUyA9PT09PT09PT09ICovfQogICAgICA8c2VjdGlvbiBjbGFzc05hbWU9ImJnLW5ldXRyYWwgdGV4dC1uZXV0cmFsLWNvbnRlbnQgcHktMjQiPgogICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjb250YWluZXIgbXgtYXV0byBweC02IG1heC13LTZ4bCI+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0idGV4dC1jZW50ZXIgbWItMTYiPgogICAgICAgICAgICA8aDIgY2xhc3NOYW1lPSJ0ZXh0LTN4bCBtZDp0ZXh0LTR4bCBmb250LWJvbGQgbWItNCI+VHJ1c3RlZCBieSB0aG91c2FuZHMgb2Ygc2VsbGVyczwvaDI+CiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1uZXV0cmFsLWNvbnRlbnQvNzAgbWF4LXctMnhsIG14LWF1dG8gdGV4dC1sZyI+UmVhbCBzdG9yaWVzIGZyb20gYnVzaW5lc3Mgb3duZXJzIHdobyBzb2xkIG9uIEdldEFjcXVpcmVkPC9wPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZ3JpZCBncmlkLWNvbHMtMSBtZDpncmlkLWNvbHMtMyBnYXAtOCI+CiAgICAgICAgICAgIHt0ZXN0aW1vbmlhbHMubWFwKCh0LCBpKSA9PiAoCiAgICAgICAgICAgICAgPGRpdiBrZXk9e2l9IGNsYXNzTmFtZT0iY2FyZCBiZy1uZXV0cmFsLWZvY3VzIGJvcmRlciBib3JkZXItbmV1dHJhbC1jb250ZW50LzEwIHNoYWRvdy1sZyI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iY2FyZC1ib2R5IHAtOCI+CiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJmbGV4IGdhcC0xIG1iLTYiPgogICAgICAgICAgICAgICAgICAgIHtbLi4uQXJyYXkoNSldLm1hcCgoXywgaikgPT4gKAogICAgICAgICAgICAgICAgICAgICAgPFN0YXIga2V5PXtqfSBjbGFzc05hbWU9InctNCBoLTQgZmlsbC13YXJuaW5nIHRleHQtd2FybmluZyIgLz4KICAgICAgICAgICAgICAgICAgICApKX0KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT0idGV4dC1uZXV0cmFsLWNvbnRlbnQvOTAgbGVhZGluZy1yZWxheGVkIG1iLTggdGV4dC1zbSBmbGV4LTEiPiZsZHF1bzt7dC5xdW90ZX0mcmRxdW87PC9wPgogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0iZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTMgcHQtNiBib3JkZXItdCBib3JkZXItbmV1dHJhbC1jb250ZW50LzEwIG10LWF1dG8iPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJhdmF0YXIgcGxhY2Vob2xkZXIiPgogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9ImJnLXByaW1hcnkgdGV4dC1wcmltYXJ5LWNvbnRlbnQgcm91bmRlZC1mdWxsIHctMTAiPgogICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9InRleHQtc20gZm9udC1ib2xkIj57dC5uYW1lLmNoYXJBdCgwKX08L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPSJmb250LWJvbGQgdGV4dC1zbSB0ZXh0LW5ldXRyYWwtY29udGVudCI+e3QubmFtZX08L3A+CiAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQteHMgdGV4dC1uZXV0cmFsLWNvbnRlbnQvNjAiPnt0LnRpdGxlfTwvcD4KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgKSl9CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9zZWN0aW9uPgoKICAgICAgey8qID09PT09PT09PT0gU0VMTEVSIENUQSA9PT09PT09PT09ICovfQogICAgICA8c2VjdGlvbiBjbGFzc05hbWU9ImJnLXByaW1hcnkgcHktMjQiPgogICAgICAgIDxkaXYgY2xhc3NOYW1lPSJjb250YWluZXIgbXgtYXV0byBweC02IG1heC13LTR4bCB0ZXh0LWNlbnRlciI+CiAgICAgICAgICA8aDIgY2xhc3NOYW1lPSJ0ZXh0LTN4bCBtZDp0ZXh0LTV4bCBmb250LWJvbGQgdGV4dC1wcmltYXJ5LWNvbnRlbnQgbWItNiI+UmVhZHkgdG8gc2VsbCB5b3VyIGJ1c2luZXNzPzwvaDI+CiAgICAgICAgICA8cCBjbGFzc05hbWU9InRleHQtcHJpbWFyeS1jb250ZW50LzgwIHRleHQtbGcgbWQ6dGV4dC14bCBtYi0xMCBtYXgtdy0yeGwgbXgtYXV0byBsZWFkaW5nLXJlbGF4ZWQiPgogICAgICAgICAgICBMaXN0IGZvciBmcmVlLiBObyBjb21taXNzaW9uLiBObyBicm9rZXIuIE91ciBBSSBoZWxwcyB5b3UgY3JlYXRlIGEgcHJvZmVzc2lvbmFsIGxpc3RpbmcgaW4gbWludXRlcy4KICAgICAgICAgIDwvcD4KICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJmbGV4IGZsZXgtY29sIHNtOmZsZXgtcm93IGdhcC00IGp1c3RpZnktY2VudGVyIj4KICAgICAgICAgICAgPExpbmsgCiAgICAgICAgICAgICAgaHJlZj0iL2Rhc2hib2FyZC9zZWxsZXIvbGlzdGluZ3MvbmV3IiAKICAgICAgICAgICAgICBjbGFzc05hbWU9ImJ0biBidG4tbGcgYmctYmFzZS0xMDAgdGV4dC1wcmltYXJ5IGhvdmVyOmJnLWJhc2UtMjAwIGJvcmRlci1ub25lIHNoYWRvdy14bCIKICAgICAgICAgICAgPgogICAgICAgICAgICAgIExpc3QgWW91ciBCdXNpbmVzcyBGcmVlCiAgICAgICAgICAgICAgPEFycm93UmlnaHQgY2xhc3NOYW1lPSJ3LTUgaC01IG1sLTIiIC8+CiAgICAgICAgICAgIDwvTGluaz4KICAgICAgICAgICAgPExpbmsgCiAgICAgICAgICAgICAgaHJlZj0iL2J1c2luZXNzZXMtZm9yLXNhbGUiIAogICAgICAgICAgICAgIGNsYXNzTmFtZT0iYnRuIGJ0bi1sZyBidG4tb3V0bGluZSB0ZXh0LXByaW1hcnktY29udGVudCBob3ZlcjpiZy1wcmltYXJ5LWNvbnRlbnQgaG92ZXI6dGV4dC1wcmltYXJ5IGJvcmRlci1wcmltYXJ5LWNvbnRlbnQvMzAiCiAgICAgICAgICAgID4KICAgICAgICAgICAgICBCcm93c2UgYXMgYSBCdXllcgogICAgICAgICAgICA8L0xpbms+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSJtdC0xMCBmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLXgtOCBnYXAteS00IHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1wcmltYXJ5LWNvbnRlbnQvODAiPgogICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9ImZsZXggaXRlbXMtY2VudGVyIGdhcC0yIj48Q2hlY2tDaXJjbGUgY2xhc3NOYW1lPSJ3LTUgaC01IHRleHQtc3VjY2VzcyIgLz4gTm8gbGlzdGluZyBmZWVzPC9zcGFuPgogICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9ImZsZXggaXRlbXMtY2VudGVyIGdhcC0yIj48Q2hlY2tDaXJjbGUgY2xhc3NOYW1lPSJ3LTUgaC01IHRleHQtc3VjY2VzcyIgLz4gTm8gY29tbWlzc2lvbjwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiI+PENoZWNrQ2lyY2xlIGNsYXNzTmFtZT0idy01IGgtNSB0ZXh0LXN1Y2Nlc3MiIC8+IENhbmNlbCBhbnl0aW1lPC9zcGFuPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvc2VjdGlvbj4KICAgIDwvPgogICk7Cn0K' | base64 -d > '/workspace/getacquired-2-0/src/app/page.tsx'"}
POST /api/mcp 200 in 3.8s (compile: 14ms, render: 3.8s)
POST /api/mcp 404 in 277ms (compile: 10ms, render: 267ms)
POST /api/mcp 200 in 597ms (compile: 12ms, render: 586ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && tail -n 50 /var/log/vibn-dev/ds_4c59d60d5df8.log 2>/dev/null || echo '(no log yet)'"}
POST /api/mcp 200 in 3.6s (compile: 6ms, render: 3.6s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":3000,"command":"cd '/workspace' && kill 27480 2>/dev/null || true"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && ss -tlnp 2>/dev/null | grep ':3000\b' | head -1; lsof -iTCP:3000 -sTCP:LISTEN -n -P 2>/dev/null | tail -n +2 | head -1 || true"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && mkdir -p /var/log/vibn-dev && cd /workspace && nohup env PORT=3000 VIBN_DEV_SERVER_ID=ds_c50968c1b97a bash -lc 'export HOST=0.0.0.0 HOSTNAME=0.0.0.0 VITE_DEV_SERVER_HOST=0.0.0.0 WEBPACK_DEV_SERVER_HOST=0.0.0.0; cd getacquired-2-0 && npm run dev' > /var/log/vibn-dev/ds_c50968c1b97a.log 2>&1 & echo $!"}
POST /api/mcp 200 in 8.9s (compile: 5ms, render: 8.9s)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":130000,"command":"cd '/workspace' && last_code=000; for i in $(seq 1 120); do for path in / ''; do code=$(curl -sS -o /dev/null -w '%{http_code}' --max-time 2 --connect-timeout 2 \"http://127.0.0.1:3000$path\" 2>/dev/null || printf '000'); last_code=$code; [ \"$code\" != \"000\" ] && [ -n \"$code\" ] && exit 0; done; sleep 1; done; echo \"PROBE_FAIL last_code=$last_code port=3000\"; echo \"PROBE_FAIL ps=$(ps aux | grep -E 'node|npm|next|vite' | grep -v grep | head -3 | tr '\n' '|')\"; echo \"PROBE_FAIL log_tail=$(tail -20 /var/log/vibn-dev/ds_c50968c1b97a.log 2>/dev/null | tr '\n' '|' | head -c 2000)\"; exit 1"}
[probe] FAILED {"projectId":"be169fe8-d381-422b-8e9c-d2e513a8f902","serverId":"ds_c50968c1b97a","port":3000,"stdout":""}
POST /api/chat 200 in 3.9min (compile: 17ms, render: 3.9min)
GET /api/chat/threads?workspace=mark-account&projectId=be169fe8-d381-422b-8e9c-d2e513a8f902 200 in 373ms (compile: 10ms, render: 364ms)
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && if [ -d '/workspace/getacquired-2-0/.git' ]; then echo git; elif [ -d '/workspace/getacquired-2-0' ]; then echo dir; else echo absent; fi"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":5000,"command":"cd '/workspace' && test -d '/workspace/getacquired-2-0/.git' && echo present || echo absent"}
[apps.exec] {"app_uuid":"lbhz4nd7wllowjlnwm1tmhu3","container":"vibn-dev-lbhz4nd7wllowjlnwm1tmhu3","service":"vibn-dev","timeout_ms":30000,"command":"cd '/workspace' && cd '/workspace/getacquired-2-0' && git add -A && if git diff --cached --quiet; then echo CLEAN && exit 0; fi && git commit -m 'I'\\''ve completely redesigned the home page to leverage the **FlyonUI design kit** and applied a strict visual QA based on our layout, spacing, contrast, hierarchy, and responsiveness' && SHA=$(git rev-parse --short HEAD) && git push -u origin HEAD 2>&1 | tail -n 5 && echo COMMITTED $SHA"}
[chat] auto-commit project=getacquired-2-0 sha=04d453b pushed=true
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
const LOADING_PHRASES = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % LOADING_PHRASES.length);
}, 2800);
return () => clearInterval(timer);
}, []);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{LOADING_PHRASES[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
const LOADING_PHRASES = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % LOADING_PHRASES.length);
}, 2800);
return () => clearInterval(timer);
}, []);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{LOADING_PHRASES[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
{/* The active thinking status cycle */}
{sending && (
<div
style={{
alignSelf: "flex-start",
marginBottom: 12,
paddingLeft: 4,
}}
>
<ActiveThinkingIndicator />
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={1}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
**Tool Call: Read file `vibn-frontend/app/api/chat/route.ts` (lines 150-180)**
Status: Completed
```master-ai/vibn-frontend/app/api/chat/route.ts
You are a high-agency product engineer. You own the outcome. Continue until the user's goal is actually resolved unless you're blocked on missing info, proceeding would be unsafe, or the user changes direction. You are not answering questions; you are building with the user. Translate engineering complexity into product momentum.
## Stop at something the user can see
A turn that ends with "I scaffolded all the files" is a failure of judgment, even if the files are real. The natural stopping point is **a thing the user can click, open, or look at** — a running preview URL, a deployed app at its \`fqdn\`, a screenshot, a rendered preview of a doc, a passing test output they asked for. Code on disk is invisible; the user should never have to take your word for it that something works.
When the goal is "build me X," the stop point is **\`previewUrl\` from \`dev_server_start\` (or a deployed \`fqdn\` from \`apps_deploy\`) shared in the reply** — not "scaffolding complete." If you've written code and not yet started a server or shipped, you are not done. The exceptions: pure research/analysis tasks (deliver the doc + path), or when the user explicitly asked you to stop at a checkpoint.
If you genuinely can't reach a tangible artifact this turn (build is too long, environment isn't ready, missing decision from the user), say so explicitly: "Scaffolded all six services — next step is a 5-min docker compose build to get you a clickable preview. Want me to kick that off?" Make the gap visible and offer the next move. Don't dress up "I wrote files" as the finish line.
## Voice
- **Don't narrate single tool calls.** Skip "Okay, I'll read that file…" for a one-shot read. The user sees a tool tray; they don't need a play-by-play.
- **DO send a one-liner before every batch on a long chain.** If you're about to fire 3+ tool calls, or you're already 3+ rounds deep, send a single sentence first: "Starting the dev server now and tailing logs." Then call the tools. The user is staring at silent ✓ pills otherwise — that's the worst UX in the app.
- **Pack the post-tool summary into 13 punchy sentences:** what landed, the specific result the user needs (URL, SHA, env value, error), and the obvious next step. Don't recap every tool — they saw the tray.
- **NEVER end your work silently.** When you are done running tools and your turn is ending, you MUST send a final conversational summary so the user knows you're finished. (e.g., "Done. I built out the onboarding flow and started the dev server at ..."). NEVER end your turn without a final text message.
- **Never end a turn silent.** If you ran tools, you owe the user a sentence about what happened. Never finish a turn with content_len = 0.
- **Have an opinion.** "Postgres or Mongo?" — pick one in a sentence and proceed. Founders need decisions, not menus. List options only if the user asks or tradeoffs genuinely matter.
- **Push back when it matters.** Refuse "deploy to prod without backups." Suggest Pipedream over n8n once if it fits better, then defer. Yes-machines ship broken software.
- **Surface adjacent risks unprompted.** Missing env var after a deploy, DNS not propagated yet, autosave hasn't fired in 30 min — say so. You're protecting their work.
- **Be honest about uncertainty.** "Best guess is X — want me to verify with Y?" beats false confidence. If a tool result is weird, say it's weird.
- **Length matches stakes.** "What time is it" → one line. "Move my user DB to a new region" → paragraph plus migration plan. Don't pad; don't truncate.
- **Adapt to the user.** If they seem uncertain, narrow the decision space and recommend the next move. If they're experienced, move faster and assume more context.
- **Markdown sparingly.** Backticks for code, paths, IDs, URLs always. Headings only at 3+ sections. Bullets for genuinely parallel items. Otherwise prose.
## Decision defaults
When multiple options exist, default to one recommendation. Bias toward: Postgres over Mongo, monoliths over microservices, Next.js over bespoke stacks, official templates over custom infra, modifying existing systems over rewrites, fewer moving parts over more. Escalate complexity only when requirements demand it.
## How Vibn is structured
- **Workspace** ("${workspace}") — tenant boundary. Owns the Gitea org and Coolify projects. You can only see/touch resources in this workspace.
- **Project** — an initiative (e.g. "Twenty CRM", "My Blog") with its own isolated Coolify project. A project has planning state (vision, decisions from \`projects_get\`) and live state (apps + services from \`projects_get → possibleDeployments[]\` and \`apps_list { projectId }\`) — they're one system, never describe them as separate.
## Common questions → tools
```
## Assistant
Ah, I see exactly what went wrong. In my first attempt, I placed the `ActiveThinkingIndicator` ("Caramelizing onions...") inside the static white footer *with the input box itself*, rather than at the bottom of the *scrollable chat message list*. That caused it to float awkwardly out of place instead of looking like a natural part of the conversation.
I've just moved it into the chat stream! Now, when the AI is working, that orange starburst and the cycling text will appear at the bottom of your message thread (right below your last chat bubble) exactly like it does in the screenshot you shared.
I also double-checked the prompt instructions for the AI's final summary. The rule is now explicitly enforced:
```markdown
- **NEVER end your work silently.** When you are done running tools and your turn is ending, you MUST send a final conversational summary so the user knows you're finished. (e.g., "Done. I built out the onboarding flow..."). NEVER end your turn without a final text message.
```
Your Next.js server already hot-reloaded the placement fix, so if you ask the AI to run another tool or command, you should see the loading text cycling cleanly in the right spot! Let me know if that looks closer to the reference screenshots.
## User (checkpoint)
Okay can we increate the chat input box to be 3 rows high as opposed to 1
**Tool Call: Search files for regex `<textarea`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/docs_archive/remixed-9edec9e9.tsx
### const ProjectDetail L804-808
```
<div style={{ marginBottom: 16 }}>
<div style={{ fontSize: "0.72rem", fontWeight: 600, color: "#6b6560", marginBottom: 6 }}>Description</div>
<textarea value={project.desc} onChange={() => {}} rows={2}
style={{ width: "100%", padding: "9px 13px", borderRadius: 7, border: "1px solid #e0dcd4", background: "#faf8f5", fontSize: "0.84rem", color: "#1a1a1a", fontFamily: "Outfit" }} />
</div>
```
## Matches in master-ai/extracted-9f46b960-c12f-4a24-83f6-c6e0ff6415bb.txt
### L129-133
```
// https://github.com/facebook/react/issues/11347
var enableCustomElementPropertySupport = false; // Disables children for <textarea> elements
var warnAboutStringRefs = true; // -----------------------------------------------------------------------------
// Debugging and DevTools
```
### L2225-2229
```
/**
* Implements a <textarea> host component that allows setting `value`, and
* `defaultValue`. This differs from the traditional DOM API because value is
* usually set as PCDATA children.
```
### L2243-2247
```
if (props.dangerouslySetInnerHTML != null) {
throw new Error('`dangerouslySetInnerHTML` does not make sense on <textarea>.');
} // Always set children to the same thing. In IE9, the selection range will
// get reset if `textContent` is mutated. We could add a check in setTextContent
```
### L2281-2285
```
if (children != null) {
{
error('Use the `defaultValue` or `value` props instead of setting ' + 'children on <textarea>.');
}
```
### L2286-2290
```
{
if (defaultValue != null) {
throw new Error('If you supply `defaultValue` on a <textarea>, do not pass children.');
}
```
### L2291-2295
```
if (isArray(children)) {
if (children.length > 1) {
throw new Error('<textarea> can only have at most one child.');
}
```
### L9706-9711
```
if (typeof nextProp === 'string') {
// Avoid setting initial textContent when the text is empty. In IE11 setting
// textContent on a <textarea> will cause the placeholder to not
// show within the <textarea> until it has been focused and blurred again.
// https://github.com/facebook/react/issues/6731#issuecomment-254874553
var canSetTextContent = tag !== 'textarea' || nextProp !== '';
```
## Matches in master-ai/new-site/beta.jsx
### function BetaApp() L167-177
```
<div className="f-prompt">
<textarea
className="f-textarea"
value={form.build}
onChange={(e) => update("build", e.target.value)}
placeholder="A booking site for my dog grooming business with reminders, payments and a wait list…"
rows={4}
/>
<div className="f-prompt-bar">
<span className="f-prompt-count">
{form.build.length > 0 ? `${form.build.length} chars` : "go wild"}
```
6 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/new-site/hero.jsx
### function Hero( ) L302-312
```
<div style={{ position: "relative" }}>
<textarea
ref={taRef}
value={text}
onChange={(e) => setText(e.target.value)}
onKeyDown={(e) => { if (e.key === "Enter" && (e.metaKey || e.ctrlKey)) submit(); }}
placeholder=""
aria-label="Describe what you want to build"
/>
{text.length === 0 && (
<div className="prompt-typed">{placeholder}</div>
```
2 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/app/[workspace]/project/[projectId]/(home)/plan/page.tsx
### function BriefPanel( ) L518-525
```
{editorView === "write" ? (
<textarea
value={draft}
onChange={(e) => { setDraft(e.target.value); setDirty(true); }}
placeholder="Paste your PRD or project scope here..."
style={{ width: "100%", minHeight: 300, padding: 20, border: "none", outline: "none", fontSize: "0.9rem", lineHeight: 1.6, fontFamily: "var(--font-inter), sans-serif", color: "#1a1a1a", resize: "vertical" }}
/>
) : (
```
### function VisionPanel( ) L635-645
```
{editorView === "write" ? (
<textarea
value={draft}
onChange={(e) => {
setDraft(e.target.value);
setDirty(true);
}}
placeholder={visionPlaceholder}
style={visionTextarea}
spellCheck
/>
```
1 lines remaining in ancestor node. Read the file to see all.
### function TaskDetail( ) L1200-1208
```
{editorView === "write" ? (
<textarea
value={descDraft}
onChange={(e) => setDescDraft(e.target.value)}
placeholder={taskPlaceholder}
style={visionTextarea}
spellCheck
/>
) : (
```
### function TaskComposer( ) L1330-1338
```
{editorView === "write" ? (
<textarea
value={desc}
onChange={(e) => setDesc(e.target.value)}
placeholder={taskPlaceholder}
style={visionTextarea}
spellCheck
/>
) : (
```
### function DecisionsPanel( ) L1480-1484
```
style={input}
/>
<textarea
value={why}
onChange={(e) => setWhy(e.target.value)}
```
## Matches in master-ai/vibn-frontend/components/AtlasChat.tsx
### function AtlasChat( ) L667-677
```
<div style={{
background: JV.composerSurface,
border: `1px solid ${JM.border}`,
borderRadius: JV.composerRadius,
boxShadow: JV.composerShadow,
overflow: "hidden",
}}>
<textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
```
198 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/OrchestratorChat.tsx
### function OrchestratorChat( ) L335-345
```
<div className="flex gap-2 items-end">
<Textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={placeholder}
rows={1}
className="resize-none min-h-[40px] max-h-[120px] flex-1 text-sm bg-background border-border focus-visible:ring-1 rounded-xl"
style={{ fieldSizing: "content" } as React.CSSProperties}
disabled={loading}
```
14 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/layout/coo-chat.tsx
### function CooChat( ) L236-246
```
<div style={{ display: "flex", gap: 7, alignItems: "flex-end" }}>
<textarea
ref={textareaRef}
value={input}
onChange={e => setInput(e.target.value)}
onKeyDown={e => {
if (e.key === "Enter" && !e.shiftKey) { e.preventDefault(); send(); }
}}
placeholder={loading ? "Thinking…" : "Ask anything…"}
disabled={loading}
rows={2}
```
23 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-frontend/components/project/design-kit-panels.tsx
### function InputsPanel( ) L500-502
```
<Field label="Multiline">
<textarea placeholder="Add a note…" rows={3} style={{ ...inputBase, borderRadius: md, resize: "vertical" }} />
</Field>
```
## Matches in master-ai/vibn-frontend/components/project-creation/BuildSetup.tsx
### function BuildSetup( ) L161-171
```
<>
<FieldLabel>What do you want to build?</FieldLabel>
<TextArea
value={idea}
onChange={setIdea}
placeholder="A booking site for my dog grooming business. Customers should be able to book online and pay a deposit by card."
rows={6}
autoFocus
/>
<p style={{ fontSize: 12, color: JM.muted, marginTop: -8, marginBottom: 14, lineHeight: 1.5 }}>
Don&apos;t worry about the tech. Vibn will pick the tools and start building from this description.
```
15 lines remaining in ancestor node. Read the file to see all.
## Assistant
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
const LOADING_PHRASES = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % LOADING_PHRASES.length);
}, 2800);
return () => clearInterval(timer);
}, []);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{LOADING_PHRASES[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
{/* The active thinking status cycle */}
{sending && (
<div
style={{
alignSelf: "flex-start",
marginBottom: 12,
paddingLeft: 4,
}}
>
<ActiveThinkingIndicator />
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={3}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
minHeight: "60px",
maxHeight: 120,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
I have updated the chat input box! It is now set to 3 rows high by default (with a `minHeight` to ensure it stays open), making it much easier to write and review longer prompts before sending.
The update has been saved and your Next.js server should hot-reload it instantly.
## User (checkpoint)
make that 4 please.
**Tool Call: vibn\-frontend/components/vibn\-chat/chat\-panel.tsx**
Status: Completed
Diff: vibn-frontend/components/vibn-chat/chat-panel.tsx
```
"use client";
import {
useEffect,
useRef,
useState,
useCallback,
type ReactNode,
type CSSProperties,
} from "react";
import Link from "next/link";
import { useSession } from "next-auth/react";
import { useParams, usePathname } from "next/navigation";
import {
MessageSquare,
X,
ChevronRight,
Send,
Plus,
Loader2,
Wrench,
ChevronDown,
Trash2,
Square,
MousePointerClick,
Sparkles,
} from "lucide-react";
import { ProjectIconRail } from "@/components/project/project-icon-rail";
import {
PreviewBridgeProvider,
previewMessagePrepRef,
usePreviewBridge,
} from "@/components/project/preview-bridge-context";
// ── Types ─────────────────────────────────────────────────────────────────────
interface Thread {
id: string;
title: string;
updatedAt: string;
}
interface Message {
id?: string;
role: "user" | "assistant" | "tool";
content: string;
toolCalls?: { id: string; name: string; args: Record<string, unknown> }[];
toolName?: string;
createdAt?: string;
/**
* Chronological turn timeline interleaving the model's thinking
* narration and the tool calls it fired. Rendered as a stack of
* pills INSIDE the bubble above the final text content, so the
* user sees the actual flow:
* [thought] [tool ×N] [thought] [tool] ... [summary]
* Each thought is its own collapsed pill (click to expand);
* adjacent runs of the same tool name collapse into one pill
* with a ×N counter. The final assistant text is rendered
* separately, below the timeline.
*/
timeline?: TimelineEntry[];
}
type TimelineEntry =
| { kind: "thought"; text: string }
| { kind: "tool"; name: string; status: "running" | "done"; result?: string }
// A text segment from one round of the assistant's tool loop.
// Each text SSE event from the server starts a new entry; subsequent
// streaming chunks for that same round append to the most-recent
// text entry. Tool/thought entries between text segments break the
// accumulation so multi-round turns render as separate bubbles.
| { kind: "text"; text: string };
interface ToolEvent {
name: string;
status: "running" | "done";
result?: string;
}
// ── Helpers ───────────────────────────────────────────────────────────────────
function getFriendlyCategory(name: string): string {
if (
name.includes("fs.edit") ||
name.includes("fs.write") ||
name.includes("fs_edit") ||
name.includes("fs_write")
)
return "Writing code";
if (
name.includes("fs.read") ||
name.includes("fs.list") ||
name.includes("fs.grep") ||
name.includes("fs.tree") ||
name.includes("fs_read") ||
name.includes("fs_list") ||
name.includes("fs_grep") ||
name.includes("fs_tree")
)
return "Reading codebase";
if (name.includes("shell.exec") || name.includes("shell_exec"))
return "Running terminal commands";
if (name.includes("dev_server.start") || name.includes("dev_server_start"))
return "Starting dev server";
if (name.includes("dev_server.logs") || name.includes("dev_server_logs"))
return "Checking server logs";
if (
name.includes("browser.navigate") ||
name.includes("browser.console") ||
name.includes("browser_navigate") ||
name.includes("browser_console")
)
return "Checking browser preview";
if (name.includes("ship")) return "Shipping code to production";
return name;
}
function timeAgo(dateStr?: string): string {
if (!dateStr) return "";
const diff = (Date.now() - new Date(dateStr).getTime()) / 1000;
if (diff < 60) return "just now";
if (diff < 3600) return `${Math.floor(diff / 60)}m ago`;
if (diff < 86400) return `${Math.floor(diff / 3600)}h ago`;
return `${Math.floor(diff / 86400)}d ago`;
}
function friendlyToolName(name: string): string {
return name
.replace(/_/g, ".")
.replace("projects.list", "listing projects")
.replace("apps.list", "listing apps")
.replace("apps.create", "deploying app")
.replace("apps.templates.list", "listing templates")
.replace("apps.templates.search", "searching templates")
.replace("domains.register", "registering domain")
.replace("domains.list", "listing domains")
.replace("apps.logs", "fetching logs");
}
const LOADING_PHRASES = [
"Thinking about the problem...",
"Reviewing the plan...",
"Caramelizing onions...",
"Writing code...",
"Running checks...",
"Reticulating splines...",
"Building out the view...",
];
function ActiveThinkingIndicator() {
const [phraseIndex, setPhraseIndex] = useState(0);
useEffect(() => {
const timer = setInterval(() => {
setPhraseIndex((i) => (i + 1) % LOADING_PHRASES.length);
}, 2800);
return () => clearInterval(timer);
}, []);
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "4px 4px 10px 4px",
fontSize: "0.85rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<svg
width="16"
height="16"
viewBox="0 0 24 24"
fill="none"
stroke="#cf6741"
strokeWidth="2.5"
strokeLinecap="round"
strokeLinejoin="round"
className="animate-spin"
style={{ animationDuration: "3s" }}
>
<path d="M12 2v4M12 18v4M4.93 4.93l2.83 2.83M16.24 16.24l2.83 2.83M2 12h4M18 12h4M4.93 19.07l2.83-2.83M16.24 7.76l2.83-2.83" />
</svg>
</div>
<span className="animate-pulse">{LOADING_PHRASES[phraseIndex]}</span>
</div>
);
}
// ── Markdown-lite renderer ────────────────────────────────────────────────────
function escapeHtmlAttr(s: string): string {
return s.replace(/&/g, "&amp;").replace(/"/g, "&quot;");
}
const LINK_STYLE =
"color:#4338ca;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;word-break:break-all";
/** [label](https://...) — href restricted to http(s) */
function markdownLinksToHtml(s: string): string {
return s.replace(
/\[([^\]]+)\]\((https?:\/\/[^\s)<>]+)\)/gi,
(_m, label: string, url: string) => {
return `<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${label}</a>`;
},
);
}
/** Bare https:// in prose (skips when prefix is `>` so href=/code aren't touched) */
function autoLinkBareUrls(s: string): string {
return s.replace(
/(^|[\s\-—:(\[{])(https?:\/\/[^\s<>"']+)/gi,
(match, pre: string, url: string) =>
`${pre}<a href="${escapeHtmlAttr(url)}" target="_blank" rel="noopener noreferrer" style="${LINK_STYLE}">${url}</a>`,
);
}
function renderMarkdown(text: string): string {
let s = text
.replace(/&/g, "&amp;")
.replace(/</g, "&lt;")
.replace(/>/g, "&gt;");
s = markdownLinksToHtml(s);
s = s
.replace(/\*\*(.+?)\*\*/g, "<strong>$1</strong>")
.replace(
/`([^`]+)`/g,
'<code style="background:#f0ede8;padding:1px 5px;border-radius:3px;font-family:var(--font-ibm-plex-mono),monospace;font-size:0.85em;overflow-wrap:anywhere;word-break:break-word">$1</code>',
)
.replace(
/^### (.+)$/gm,
'<h3 style="font-weight:600;margin:12px 0 4px;font-size:0.88rem;overflow-wrap:anywhere;word-break:break-word">$1</h3>',
)
.replace(
/^## (.+)$/gm,
'<h2 style="font-weight:600;margin:14px 0 4px;font-size:0.9rem;overflow-wrap:anywhere;word-break:break-word">$1</h2>',
)
.replace(
/^- (.+)$/gm,
'<li style="margin-left:16px;list-style:disc;overflow-wrap:anywhere;word-break:break-word">$1</li>',
)
.replace(
/(<li[^>]*>.*<\/li>\n?)+/g,
(m) => `<ul style="margin:6px 0">${m}</ul>`,
)
.replace(
/\n\n/g,
'</p><p style="margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word">',
)
.replace(/\n/g, "<br>");
s = autoLinkBareUrls(s);
return s;
}
// ── Message bubble ────────────────────────────────────────────────────────────
/**
* Strip the markdown-bold "**Section Heading**" lines that Gemini
* loves to start each thought with so the collapsed pill shows the
* actual sentence rather than "**Examining the Target Server File**".
* The full text is still available in the expanded view.
*/
function thoughtPreview(thoughts: string): string {
const stripped = thoughts
.replace(/^\s*\*\*[^*]+\*\*\s*/gm, "")
.replace(/\s+/g, " ")
.trim();
if (stripped.length <= 90) return stripped;
return stripped.slice(0, 87) + "…";
}
function ThinkingBubble({ thoughts }: { thoughts: string }) {
if (!thoughts) return null;
// Split thoughts into phrases, take the last one as the "current" action
const lines = thoughts
.split(/[.!?\n]/)
.map((l) => l.trim())
.filter(Boolean);
const currentAction = lines[lines.length - 1];
if (!currentAction) return null;
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
fontSize: "0.75rem",
color: "#8c8580",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
fontStyle: "italic",
}}
>
<div
style={{
position: "relative",
width: 14,
height: 14,
display: "flex",
alignItems: "center",
justifyContent: "center",
}}
>
<Sparkles
style={{ width: 12, height: 12, opacity: 0.7 }}
className="animate-pulse"
/>
</div>
<span className="animate-pulse">{currentAction}</span>
</div>
);
}
function MessageBubble({ msg }: { msg: Message }) {
const isUser = msg.role === "user";
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
display: "flex",
justifyContent: isUser ? "flex-end" : "flex-start",
marginBottom: 12,
minWidth: 0,
}}
>
{!isUser && (
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
marginRight: 8,
flexShrink: 0,
marginTop: 2,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
)}
<div
style={{
maxWidth: "82%",
minWidth: 0,
display: "flex",
flexDirection: "column",
}}
>
{!isUser && msg.timeline && msg.timeline.length > 0 && (
<Timeline entries={msg.timeline} />
)}
{/*
Render the legacy bottom content bubble ONLY when:
- the message is from the user (their bubble is always the
content slot), OR
- the assistant message has no timeline at all (very old
messages from before timeline existed).
When the timeline contains text entries the prose is already
rendered there, and showing it again here would duplicate
every paragraph below the timeline.
*/}
{((msg.content && isUser) ||
(msg.content &&
!isUser &&
(!msg.timeline || msg.timeline.length === 0))) && (
<div
style={{
padding: isUser ? "9px 14px" : "10px 14px",
borderRadius: isUser
? "14px 14px 4px 14px"
: "4px 14px 14px 14px",
background: isUser ? "#1a1a1a" : "#f7f4ef",
color: isUser ? "#fff" : "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
...proseWrap,
}}
>
{isUser ? (
<span style={{ whiteSpace: "pre-wrap", ...proseWrap }}>
{msg.content}
</span>
) : (
<span
style={proseWrap}
dangerouslySetInnerHTML={{
__html: renderMarkdown(msg.content),
}}
/>
)}
</div>
)}
</div>
</div>
);
}
/**
* Renders the chronological turn timeline: thoughts as their own
* collapsed pills, tool calls grouped by adjacent runs of the same
* name with a ×N counter. The flow visually mirrors what actually
* happened: thought → tools → thought → tools → ... → final summary.
*/
function Timeline({ entries }: { entries: TimelineEntry[] }) {
// Walk the entries and emit a renderable list. Adjacent same-category
// tool entries get bundled into a TimelineToolGroup; thought and
// text entries pass through as-is.
type Item =
| { kind: "thought"; text: string }
| { kind: "text"; text: string }
| {
kind: "toolGroup";
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
};
const items: Item[] = [];
for (const e of entries) {
if (e.kind === "thought") {
items.push({ kind: "thought", text: e.text });
} else if (e.kind === "text") {
items.push({ kind: "text", text: e.text });
} else {
const last = items[items.length - 1];
const category = getFriendlyCategory(e.name);
if (last && last.kind === "toolGroup" && last.category === category) {
last.entries.push(e);
} else {
items.push({ kind: "toolGroup", category, entries: [e] });
}
}
}
return (
<div style={{ marginBottom: 6 }}>
{items.map((item, i) => {
if (item.kind === "thought") {
return <ThinkingBubble key={i} thoughts={item.text} />;
}
if (item.kind === "text") {
return <TimelineText key={i} text={item.text} />;
}
return (
<TimelineToolGroup
key={i}
category={item.category}
entries={item.entries}
/>
);
})}
</div>
);
}
/**
* One text segment in the assistant's timeline. Rendered as its own
* bubble so each round of multi-tool-loop output reads as a discrete
* step instead of concatenating into a wall of text.
*/
function TimelineText({ text }: { text: string }) {
const proseWrap: React.CSSProperties = {
overflowWrap: "anywhere",
wordBreak: "break-word",
minWidth: 0,
};
return (
<div
style={{
padding: "10px 14px",
borderRadius: "4px 14px 14px 14px",
background: "#f7f4ef",
color: "#1a1a1a",
fontSize: "0.84rem",
lineHeight: 1.6,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
marginBottom: 6,
...proseWrap,
}}
>
<span
style={proseWrap}
dangerouslySetInnerHTML={{ __html: renderMarkdown(text) }}
/>
</div>
);
}
function TimelineToolGroup({
category,
entries,
}: {
category: string;
entries: Array<Extract<TimelineEntry, { kind: "tool" }>>;
}) {
const [expanded, setExpanded] = useState(false);
const count = entries.length;
const allDone = entries.every((e) => e.status === "done");
return (
<div
style={{
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
<button
onClick={() => setExpanded(!expanded)}
style={{
display: "flex",
alignItems: "center",
width: "100%",
gap: 8,
padding: "6px 12px",
background: "none",
border: "none",
fontSize: "0.75rem",
color: "#6b6560",
cursor: "pointer",
textAlign: "left",
}}
>
<span style={{ width: 14, display: "flex", justifyContent: "center" }}>
{!allDone ? (
<Loader2
style={{ width: 12, height: 12 }}
className="animate-spin"
/>
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
</span>
<span style={{ flex: 1 }}>
{category} {count > 1 ? `(x${count})` : ""} {!allDone ? "..." : " ✓"}
</span>
<span
style={{
transform: expanded ? "rotate(180deg)" : "none",
transition: "transform 0.15s ease",
}}
>
<ChevronDown style={{ width: 12, height: 12, opacity: 0.5 }} />
</span>
</button>
{expanded && (
<div
style={{
padding: "0 12px 8px 34px",
display: "flex",
flexDirection: "column",
gap: 4,
}}
>
{entries.map((e, i) => (
<div
key={i}
style={{
fontSize: "0.7rem",
color: "#8c8580",
display: "flex",
alignItems: "center",
gap: 6,
}}
>
<div
style={{
width: 4,
height: 4,
borderRadius: "50%",
background: "#ccc",
}}
/>
<span style={{ fontFamily: "var(--font-mono), monospace" }}>
{friendlyToolName(e.name)}
</span>
{!e.result && e.status === "running" && (
<span className="animate-pulse">...</span>
)}
{e.result && (
<span
style={{
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
opacity: 0.7,
maxWidth: 150,
}}
title={e.result}
>
— {e.result}
</span>
)}
</div>
))}
</div>
)}
</div>
);
}
function ToolBubble({ event }: { event: ToolEvent }) {
return (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 12px",
margin: "4px 0",
background: "#f0ede8",
borderRadius: 8,
fontSize: "0.75rem",
color: "#6b6560",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}}
>
{event.status === "running" ? (
<Loader2 style={{ width: 12, height: 12 }} className="animate-spin" />
) : (
<Wrench style={{ width: 12, height: 12, color: "#2e7d32" }} />
)}
<span>
{friendlyToolName(event.name)}
{event.status === "running" ? "…" : " ✓"}
</span>
</div>
);
}
// ── Main panel ────────────────────────────────────────────────────────────────
interface ChatPanelProps {
/**
* When true, the panel renders inline as a flex child of its parent
* (a structural left column on project pages). Skips the fixed-position
* slide-out treatment, the collapsed-tab affordance, and the
* --chat-panel-width side-effect. Always "open" — there's no close
* button because the panel IS the column.
*
* When false / omitted: legacy behavior — fixed slide-out on the
* right, collapsible, sets --chat-panel-width so the workspace
* content shifts left to make room.
*/
structural?: boolean;
/**
* When set with `structural` on a project route, renders a unified shell:
* full-width top bar (chat controls | section icons) and a split row
* below (chat column | artifact slot). Omit on slide-out chat.
*/
artifactSlot?: ReactNode;
}
/** Shared dimensions for preview-select + send icon buttons in the composer. */
const COMPOSER_ACTION_BTN_BASE: CSSProperties = {
flexShrink: 0,
width: 32,
height: 32,
boxSizing: "border-box",
borderRadius: 8,
display: "flex",
alignItems: "center",
justifyContent: "center",
padding: 0,
};
/** Preview pick chip + select-mode toggle for unified project shell chat composer. */
function ProjectPreviewChatInputWrap({
unifiedShell,
children,
}: {
unifiedShell: boolean;
children: (selectToggle: React.ReactNode) => React.ReactNode;
}) {
const bridge = usePreviewBridge();
if (!unifiedShell || !bridge) {
return <>{children(null)}</>;
}
const { selectMode, setSelectMode, picked, clearPick } = bridge;
const chip = picked ? (
<div
style={{
display: "flex",
alignItems: "flex-start",
gap: 8,
marginBottom: 8,
padding: "8px 10px",
borderRadius: 8,
background: "#eef2ff",
border: "1px solid #c7d2fe",
fontSize: "0.72rem",
lineHeight: 1.45,
color: "#312e81",
}}
>
<MousePointerClick
style={{
width: 14,
height: 14,
flexShrink: 0,
marginTop: 2,
opacity: 0.85,
}}
aria-hidden
/>
<div style={{ flex: 1, minWidth: 0 }}>
<div style={{ fontWeight: 600, marginBottom: 2 }}>
Preview selection
</div>
<div style={{ opacity: 0.92 }}>
<span
style={{
fontFamily: "var(--font-ibm-plex-mono),monospace",
fontSize: "0.68rem",
}}
>
{picked.tagName}
</span>
{" · "}
<span style={{ wordBreak: "break-word" }}>{picked.selector}</span>
</div>
{picked.textSnippet ? (
<div style={{ marginTop: 4, opacity: 0.88, wordBreak: "break-word" }}>
{`"${picked.textSnippet.slice(0, 140)}${picked.textSnippet.length > 140 ? "..." : ""}"`}
</div>
) : null}
</div>
<button
type="button"
onClick={clearPick}
aria-label="Clear preview selection"
style={{
flexShrink: 0,
background: "none",
border: "none",
padding: 2,
cursor: "pointer",
borderRadius: 4,
color: "#4338ca",
display: "flex",
alignItems: "center",
}}
>
<X style={{ width: 13, height: 13 }} />
</button>
</div>
) : null;
const selectToggle = (
<button
type="button"
aria-pressed={selectMode}
aria-label={
selectMode ? "Exit preview select mode" : "Select element from preview"
}
title={
selectMode
? "Click preview to choose an element"
: "Choose element from preview"
}
onClick={() => setSelectMode(!selectMode)}
style={{
...COMPOSER_ACTION_BTN_BASE,
border: selectMode ? "1px solid #6366f1" : "1px solid #e8e4dc",
background: selectMode ? "#eef2ff" : "#faf8f5",
color: selectMode ? "#4338ca" : "#6b6560",
cursor: "pointer",
}}
>
<MousePointerClick style={{ width: 15, height: 15 }} strokeWidth={2} />
</button>
);
return (
<>
{chip}
{children(selectToggle)}
</>
);
}
export function ChatPanel({
structural = false,
artifactSlot,
}: ChatPanelProps = {}) {
const { data: sessionData, status } = useSession();
const params = useParams();
const pathname = usePathname() ?? "";
const workspace = (params?.workspace as string) || "";
// When the user is on a /project/<id>/* route, scope the chat to
// that project. The threads list, the new-thread create call, and
// the system prompt all branch on this; the chat header surfaces it
// so the user knows the AI is "talking about" the right thing.
const projectId = (params?.projectId as string) || "";
/** Full project shell (chat | artifact); must render even while auth is loading or signed out. */
const unifiedProjectShell =
structural && Boolean(projectId) && artifactSlot !== undefined;
const [activeProjectName, setActiveProjectName] = useState<string | null>(
null,
);
const [open, setOpen] = useState(() => {
// Structural mode is always-open by definition — the panel IS the
// column, there's no "closed" state to persist.
if (structural) return true;
if (typeof window === "undefined") return false;
return localStorage.getItem("vibn-chat-open") !== "false";
});
const [threads, setThreads] = useState<Thread[]>([]);
// threadsLoaded flips to true after the FIRST loadThreads() resolves.
// Used to gate the auto-create effect — without it we race the fetch
// and spawn an empty thread before history loads.
const [threadsLoaded, setThreadsLoaded] = useState(false);
const [activeThread, setActiveThread] = useState<string | null>(null);
const [messages, setMessages] = useState<Message[]>([]);
const [input, setInput] = useState("");
const [sending, setSending] = useState(false);
const [showThreads, setShowThreads] = useState(false);
const [mcpToken, setMcpToken] = useState<string | null>(null);
const messagesEndRef = useRef<HTMLDivElement>(null);
const inputRef = useRef<HTMLTextAreaElement>(null);
// AbortController for the in-flight /api/chat fetch. Lives in a ref
// so the Stop button can reach it without re-rendering on every
// streaming chunk.
const abortRef = useRef<AbortController | null>(null);
const scrollToBottom = useCallback(() => {
messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
}, []);
// Persist open state + adjust main content margin
useEffect(() => {
if (structural) return;
localStorage.setItem("vibn-chat-open", String(open));
document.documentElement.style.setProperty(
"--chat-panel-width",
open ? "380px" : "0px",
);
}, [open, structural]);
// Load MCP token — prefer localStorage cache, fetch from API if missing.
// We use /api/workspaces (not the URL param) because the URL slug
// (e.g. "mark-account") differs from the actual workspace slug ("mark").
useEffect(() => {
if (!workspace || status !== "authenticated") return;
const cached = localStorage.getItem(`vibn-mcp-token-${workspace}`);
if (cached) {
setMcpToken(cached);
return;
}
fetch("/api/workspaces?include_default_token=true")
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (d?.defaultToken) {
localStorage.setItem(`vibn-mcp-token-${workspace}`, d.defaultToken);
setMcpToken(d.defaultToken);
}
})
.catch(() => {});
}, [workspace, status]);
// Load threads (scoped to the current project when one is in the URL).
// Reset the loaded flag when projectId changes so the resume effect
// re-runs against the correct list and doesn't restore a thread from
// the previous project.
const loadThreads = useCallback(async () => {
if (!workspace || status !== "authenticated") return;
try {
const qs = new URLSearchParams({ workspace });
if (projectId) qs.set("projectId", projectId);
const res = await fetch(`/api/chat/threads?${qs.toString()}`);
const data = await res.json();
setThreads(data.threads || []);
} catch {
/* silent */
} finally {
setThreadsLoaded(true);
}
}, [workspace, projectId, status]);
useEffect(() => {
setThreadsLoaded(false);
setActiveThread(null);
setMessages([]);
// Clear the threads array immediately so the resume effect doesn't
// race the loadThreads() fetch and resume a stale project-scoped
// thread when the user navigates from /project/X back to /projects.
setThreads([]);
loadThreads();
}, [loadThreads, projectId]);
// Look up the active project's display name once we have a projectId,
// so the chat header can show "Talking about: <name>".
useEffect(() => {
if (!projectId) {
setActiveProjectName(null);
return;
}
let cancelled = false;
fetch(`/api/projects/${projectId}/anatomy`, { credentials: "include" })
.then((r) => (r.ok ? r.json() : null))
.then((d) => {
if (cancelled) return;
const name = d?.project?.name;
if (name) setActiveProjectName(name);
})
.catch(() => {});
return () => {
cancelled = true;
};
}, [projectId]);
// Create and activate a new thread (tagged to the active project, if any).
const newThread = useCallback(async () => {
try {
const res = await fetch("/api/chat/threads", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ workspace, projectId: projectId || undefined }),
});
const data = await res.json();
if (data.thread) {
setThreads((prev) => [data.thread, ...prev]);
setActiveThread(data.thread.id);
setMessages([]);
setShowThreads(false);
}
} catch {
/* silent */
}
}, [workspace, projectId]);
// Load thread messages
const loadThread = useCallback(async (id: string) => {
setActiveThread(id);
setShowThreads(false);
setMessages([]);
try {
const res = await fetch(`/api/chat/threads/${id}`);
const data = await res.json();
// Hydrate the timeline from persisted textSegments + toolCalls
// so a reloaded thread renders the same per-round bubbles the
// user saw during streaming. Older messages without
// textSegments fall back to the legacy single-bubble path.
const hydrated = (data.messages || []).map((m: any) => {
if (m.role !== "assistant") return m;
const segs: string[] = Array.isArray(m.textSegments)
? m.textSegments
: [];
if (segs.length === 0) return m;
const timeline: TimelineEntry[] = segs.map((t) => ({
kind: "text",
text: t,
}));
// We don't have round-level interleaving for tool calls in
// the persisted shape (the schema flattens them), so we drop
// the toolCalls into the timeline at the end. The streamed
// shape preserves true ordering; this is just a reload
// approximation. Good enough — what the user really cares
// about is the text segments not run-on'ing into one blob.
if (Array.isArray(m.toolCalls)) {
for (const tc of m.toolCalls) {
timeline.push({ kind: "tool", name: tc.name, status: "done" });
}
}
return { ...m, timeline, content: "" };
});
setMessages(hydrated);
} catch {
/* silent */
}
}, []);
// Auto-resume previous thread (or create a fresh one if the user has
// never chatted in this workspace). We MUST wait for threadsLoaded
// before deciding — otherwise we race the fetch and spawn an empty
// thread before history arrives. Last-active thread is restored from
// localStorage so a page reload (deploy, refresh) lands the user back
// in the conversation they were in.
useEffect(() => {
if (!open || status !== "authenticated" || !workspace) return;
if (!threadsLoaded) return;
if (activeThread) return;
if (threads.length === 0) {
newThread();
return;
}
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
const saved =
typeof window !== "undefined" ? localStorage.getItem(savedKey) : null;
const target =
saved && threads.some((t) => t.id === saved) ? saved : threads[0].id;
loadThread(target);
}, [
open,
status,
workspace,
projectId,
threadsLoaded,
threads,
activeThread,
newThread,
loadThread,
]);
// Persist active thread so reload re-opens the same conversation,
// keyed per-project so each project has its own "last conversation".
useEffect(() => {
if (typeof window === "undefined" || !workspace) return;
const scopeKey = projectId ? `${workspace}:${projectId}` : workspace;
const savedKey = `vibn-chat-active-thread:${scopeKey}`;
if (activeThread) localStorage.setItem(savedKey, activeThread);
}, [activeThread, workspace, projectId]);
useEffect(() => {
scrollToBottom();
}, [messages, scrollToBottom]);
const deleteThread = useCallback(
async (id: string, e: React.MouseEvent) => {
e.stopPropagation();
await fetch(`/api/chat/threads/${id}`, { method: "DELETE" });
setThreads((prev) => prev.filter((t) => t.id !== id));
if (activeThread === id) {
setActiveThread(null);
setMessages([]);
}
loadThreads();
},
[activeThread, loadThreads],
);
const sendMessage = useCallback(
async (override?: string) => {
let raw = (override ?? input).trim();
if (!raw || sending || !activeThread) return;
if (unifiedProjectShell && previewMessagePrepRef.current) {
raw = previewMessagePrepRef.current(raw);
}
const text = raw;
if (!override) setInput("");
setSending(true);
const userMsg: Message = { role: "user", content: text };
setMessages((prev) => [...prev, userMsg]);
let assistantContent = "";
const assistantMsg: Message = { role: "assistant", content: "" };
let msgIndex = -1;
const controller = new AbortController();
abortRef.current = controller;
try {
const res = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
thread_id: activeThread,
message: text,
workspace,
mcp_token: mcpToken,
}),
signal: controller.signal,
});
if (!res.ok || !res.body) throw new Error("Stream failed");
const reader = res.body.getReader();
const decoder = new TextDecoder();
let buf = "";
setMessages((prev) => {
msgIndex = prev.length;
return [...prev, { ...assistantMsg }];
});
while (true) {
const { done, value } = await reader.read();
if (done) break;
buf += decoder.decode(value, { stream: true });
const lines = buf.split("\n");
buf = lines.pop() ?? "";
for (const line of lines) {
if (!line.startsWith("data: ")) continue;
let ev: any;
try {
ev = JSON.parse(line.slice(6));
} catch {
continue;
}
if (ev.type === "text" && ev.text) {
// Each text SSE event = one round of the model's text
// output. Push a new "text" timeline entry so the
// renderer can show multi-round turns as separate
// bubbles instead of one run-on paragraph. We still
// maintain `assistantContent` (joined with blank lines)
// so the legacy single-bubble fallback path and any
// post-stream consumers still work.
assistantContent += (assistantContent ? "\n\n" : "") + ev.text;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
// Don't write to msg.content during streaming —
// the timeline is the source of truth. Setting
// content on every text event re-renders one
// giant bubble in the bottom slot AND the
// segmented timeline above it, duplicating the
// same prose. Persisted messages pick up
// content via the final flush below.
timeline: [...tl, { kind: "text", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "thinking" && ev.text) {
// Each thinking event from the server is one round of the
// model's reasoning. Push as a separate timeline entry so
// the renderer can show it as its own collapsed pill —
// 12 rounds become 12 small pills the user can each
// expand independently, not one giant blob.
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "thought", text: ev.text }],
};
}
return next;
});
} else if (ev.type === "tool_start") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [
...tl,
{ kind: "tool", name: ev.name, status: "running" },
],
};
}
return next;
});
} else if (ev.type === "tool_result") {
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
// Walk backward to the most recent matching running
// tool entry and mark it done. Avoids cross-matching
// earlier same-named entries.
let updated = false;
const newTl: TimelineEntry[] = [];
for (let i = tl.length - 1; i >= 0; i--) {
const e = tl[i];
if (
!updated &&
e.kind === "tool" &&
e.name === ev.name &&
e.status === "running"
) {
newTl.unshift({
...e,
status: "done",
result: ev.result,
});
updated = true;
} else {
newTl.unshift(e);
}
}
next[msgIndex] = { ...next[msgIndex], timeline: newTl };
}
return next;
});
} else if (ev.type === "error") {
const errText = ev.error || "Unknown error";
const isToolErr = /tool|mcp|coolify|gitea/i.test(errText);
const errBubble = isToolErr
? `⚠️ **Tool error:** ${errText}`
: `⚠️ ${errText}`;
assistantContent += (assistantContent ? "\n\n" : "") + errBubble;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
const tl = next[msgIndex].timeline ?? [];
next[msgIndex] = {
...next[msgIndex],
timeline: [...tl, { kind: "text", text: errBubble }],
};
}
return next;
});
}
}
}
// Auto-title thread from first message
const thisThread = threads.find((t) => t.id === activeThread);
if (thisThread?.title === "New conversation") {
const title = text.slice(0, 50);
await fetch(`/api/chat/threads/${activeThread}`, {
method: "PATCH",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ title }),
});
setThreads((prev) =>
prev.map((t) => (t.id === activeThread ? { ...t, title } : t)),
);
}
loadThreads();
} catch (e) {
const isAbort = e instanceof DOMException && e.name === "AbortError";
if (isAbort) {
// Server-side will have appended "(stopped by user)" to the
// partial response and persisted it. We just need to make
// sure the local UI reflects whatever streamed in before the
// user clicked Stop — which it already does, because we've
// been mutating `messages[msgIndex]` chunk-by-chunk above.
setMessages((prev) => {
const next = [...prev];
if (
msgIndex >= 0 &&
next[msgIndex] &&
!next[msgIndex].content.includes("(stopped by user)")
) {
next[msgIndex] = {
...next[msgIndex],
content:
(next[msgIndex].content || "") + "\n\n_(stopped by user)_",
};
}
return next;
});
} else {
const errMsg = e instanceof Error ? e.message : String(e);
const isNetwork = /fetch|network|failed to fetch/i.test(errMsg);
const friendlyError = isNetwork
? "⚠️ Network error — check your connection and try again."
: `⚠️ Something went wrong: ${errMsg.slice(0, 200)}\n\nYou can try again or start a new message.`;
setMessages((prev) => {
const next = [...prev];
if (msgIndex >= 0 && next[msgIndex]) {
next[msgIndex] = { ...next[msgIndex], content: friendlyError };
}
return next;
});
}
} finally {
abortRef.current = null;
setSending(false);
}
},
[
input,
sending,
activeThread,
workspace,
mcpToken,
threads,
loadThreads,
unifiedProjectShell,
],
);
const cancelMessage = useCallback(() => {
abortRef.current?.abort();
}, []);
// External components (e.g. ProjectHeaderUrls' "Start preview" button)
// can ask the chat to send a canned prompt without prop-drilling. Open
// the panel if collapsed, then fire the prompt as if the user typed it.
useEffect(() => {
function onPrompt(e: Event) {
const ce = e as CustomEvent<{ prompt?: string; scopeProjectId?: string }>;
const prompt = ce.detail?.prompt;
if (!prompt) return;
// If the dispatcher scopes the prompt to a specific project, only
// accept it when the chat panel is currently bound to that project.
// Prevents a "Start preview on Manifest" click from accidentally
// landing in a chat that's scoped to a different project.
if (ce.detail?.scopeProjectId && ce.detail.scopeProjectId !== projectId) {
return;
}
setOpen(true);
void sendMessage(prompt);
}
window.addEventListener("vibn:chat-prompt", onPrompt as EventListener);
return () =>
window.removeEventListener("vibn:chat-prompt", onPrompt as EventListener);
}, [sendMessage, projectId]);
const handleKeyDown = (e: React.KeyboardEvent<HTMLTextAreaElement>) => {
if (e.key === "Enter" && !e.shiftKey) {
e.preventDefault();
sendMessage();
} else if (e.key === "Escape" && sending) {
e.preventDefault();
cancelMessage();
}
};
// Slide-out chat hidden until signed in. Structural project shell always
// mounts so Preview / Product / Plan pages render; chat column shows loading
// or sign-in instead of wiping the whole viewport (blank page).
if (!unifiedProjectShell && status !== "authenticated") return null;
// ── Collapsed tab ──────────────────────────────────────────────────────────
// Structural mode is always-open; skip the collapsed-tab branch entirely.
if (!open && !structural) {
return (
<button
onClick={() => setOpen(true)}
style={{
position: "fixed",
right: 0,
top: "50%",
transform: "translateY(-50%)",
zIndex: 1000,
background: "#1a1a1a",
color: "#fff",
border: "none",
borderRadius: "8px 0 0 8px",
padding: "14px 10px",
cursor: "pointer",
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: 6,
boxShadow: "-2px 0 12px #1a1a1a14",
}}
title="Open Vibn AI"
>
<MessageSquare style={{ width: 16, height: 16 }} />
<span
style={{
writingMode: "vertical-rl",
textOrientation: "mixed",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.08em",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
transform: "rotate(180deg)",
}}
>
VIBN AI
</span>
</button>
);
}
const conversationColumn = (
<>
{/* Thread list dropdown */}
{showThreads && (
<div
style={{
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
maxHeight: 200,
overflowY: "auto",
flexShrink: 0,
}}
>
{threads.length === 0 && (
<div
style={{
padding: "12px 16px",
fontSize: "0.78rem",
color: "#a09a90",
}}
>
No conversations yet
</div>
)}
{threads.map((t) => (
<div
key={t.id}
onClick={() => loadThread(t.id)}
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "9px 16px",
background: activeThread === t.id ? "#f0ede8" : "transparent",
cursor: "pointer",
borderBottom: "1px solid #f0ede8",
}}
onMouseEnter={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "#f7f4ef";
}}
onMouseLeave={(e) => {
if (activeThread !== t.id)
e.currentTarget.style.background = "transparent";
}}
>
<div style={{ minWidth: 0 }}>
<div
style={{
fontSize: "0.8rem",
fontWeight: 500,
color: "#1a1a1a",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap",
}}
>
{t.title}
</div>
<div style={{ fontSize: "0.7rem", color: "#a09a90" }}>
{timeAgo(t.updatedAt)}
</div>
</div>
<button
onClick={(e) => deleteThread(t.id, e)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
color: "#c0bab2",
flexShrink: 0,
}}
>
<Trash2 style={{ width: 12, height: 12 }} />
</button>
</div>
))}
</div>
)}
{/* Messages */}
<div
style={{
flex: 1,
minWidth: 0,
overflowY: "auto",
overflowX: "hidden",
padding: "16px 14px",
}}
>
{messages.length === 0 && !sending && (
<div
style={{ padding: "24px 14px", maxWidth: 640, margin: "0 auto" }}
>
<div style={{ display: "flex", gap: 12 }}>
<div
style={{
width: 28,
height: 28,
borderRadius: 6,
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
color: "#fff",
fontSize: "0.85rem",
fontFamily: "var(--font-lora),serif",
}}
>
V
</div>
<div
style={{
background: "#fff",
border: "1px solid #e8e4dc",
padding: "14px 18px",
borderRadius: "0 12px 12px 12px",
fontSize: "0.9rem",
color: "#1a1a1a",
lineHeight: 1.6,
boxShadow: "0 1px 2px #1a1a1a05",
maxWidth: "85%",
}}
>
Welcome to {activeProjectName ? activeProjectName : "Vibn"}!
Tell me what you want to build and I'll scaffold it, run it in a
preview, and ship it when you say so.
</div>
</div>
</div>
)}
{messages.map((msg, i) => (
<MessageBubble key={msg.id || i} msg={msg} />
))}
{sending && messages[messages.length - 1]?.role !== "assistant" && (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
padding: "6px 0",
}}
>
<div
style={{
width: 24,
height: 24,
borderRadius: "50%",
background: "#1a1a1a",
display: "flex",
alignItems: "center",
justifyContent: "center",
flexShrink: 0,
}}
>
<span
style={{
color: "#fff",
fontSize: "0.6rem",
fontWeight: 700,
fontFamily: "var(--font-lora),serif",
}}
>
V
</span>
</div>
<div style={{ display: "flex", gap: 4 }}>
{[0, 1, 2].map((i) => (
<span
key={i}
style={{
width: 6,
height: 6,
borderRadius: "50%",
background: "#c0bab2",
animation: `vibn-bounce 1.2s ease infinite ${i * 0.2}s`,
display: "inline-block",
}}
/>
))}
</div>
</div>
)}
{/* The active thinking status cycle */}
{sending && (
<div
style={{
alignSelf: "flex-start",
marginBottom: 12,
paddingLeft: 4,
}}
>
<ActiveThinkingIndicator />
</div>
)}
<div ref={messagesEndRef} />
</div>
{/* Input */}
<div
style={{
padding: "12px 14px",
borderTop: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}}
>
{!mcpToken && (
<div
style={{
fontSize: "0.7rem",
color: "#9a7b3a",
background: "#d4a04a12",
border: "1px solid #d4a04a30",
borderRadius: 6,
padding: "5px 10px",
marginBottom: 8,
lineHeight: 1.4,
}}
>
Read-only mode — add your MCP token in Settings to enable actions.
</div>
)}
<ProjectPreviewChatInputWrap unifiedShell={unifiedProjectShell}>
{(selectToggle) => (
<div
style={{
display: "flex",
gap: 8,
alignItems: "center",
background: "#fff",
borderRadius: 10,
border: "1px solid #e8e4dc",
padding: "8px 10px",
boxShadow: "0 1px 3px #1a1a1a05",
}}
>
<textarea
ref={inputRef}
value={input}
onChange={(e) => setInput(e.target.value)}
onKeyDown={handleKeyDown}
placeholder={
sending ? "Esc to stop generating…" : "Ask Vibn AI anything…"
}
rows={4}
disabled={!activeThread}
style={{
flex: 1,
border: "none",
outline: "none",
background: "transparent",
fontSize: "0.84rem",
lineHeight: 1.5,
resize: "none",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
color: "#1a1a1a",
minHeight: "80px",
maxHeight: 180,
overflowY: "auto",
}}
onInput={(e) => {
const el = e.currentTarget;
el.style.height = "auto";
el.style.height = Math.min(el.scrollHeight, 120) + "px";
}}
/>
{selectToggle}
{(() => {
// While the AI is streaming or running tools, the button
// turns into a Stop control. Click → AbortController fires,
// server bails between rounds, partial text gets persisted.
const isActive = sending;
const canSend = !sending && input.trim() && activeThread;
return (
<button
type="button"
onClick={isActive ? cancelMessage : () => sendMessage()}
disabled={!isActive && !canSend}
aria-label={isActive ? "Stop generating" : "Send message"}
title={isActive ? "Stop generating (Esc)" : "Send"}
style={{
...COMPOSER_ACTION_BTN_BASE,
background: isActive
? "#1a1a1a"
: canSend
? "#1a1a1a"
: "#e8e4dc",
color: isActive || canSend ? "#fff" : "#a09a90",
border: "none",
cursor: isActive || canSend ? "pointer" : "default",
transition: "all 0.15s",
position: "relative",
}}
>
{isActive ? (
<>
<Loader2
style={{
width: 15,
height: 15,
position: "absolute",
opacity: 0.35,
}}
className="animate-spin"
/>
<Square
style={{
width: 9,
height: 9,
fill: "#fff",
strokeWidth: 0,
}}
/>
</>
) : (
<Send style={{ width: 15, height: 15 }} />
)}
</button>
);
})()}
</div>
)}
</ProjectPreviewChatInputWrap>
</div>
</>
);
const structuralChatLoadingColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 14,
}}
>
<Loader2
className="animate-spin"
style={{ width: 22, height: 22, color: "#9c9590" }}
/>
<p style={{ fontSize: "0.84rem", color: "#6b6560", margin: 0 }}>
Signing you in…
</p>
</div>
);
const authHref = pathname
? `/auth?callbackUrl=${encodeURIComponent(pathname)}`
: "/auth";
const structuralChatSignedOutColumn = (
<div
style={{
flex: 1,
minHeight: 0,
display: "flex",
flexDirection: "column",
alignItems: "center",
justifyContent: "center",
padding: 24,
gap: 12,
}}
>
<p
style={{
fontSize: "0.88rem",
fontWeight: 500,
color: "#1a1a1a",
margin: 0,
textAlign: "center",
}}
>
Sign in to use Vibn AI
</p>
<p
style={{
fontSize: "0.76rem",
color: "#a09a90",
margin: 0,
textAlign: "center",
maxWidth: 260,
lineHeight: 1.5,
}}
>
Preview and tabs still work here. Chat needs an account.
</p>
<Link
href={authHref}
style={{
marginTop: 4,
padding: "10px 18px",
borderRadius: 10,
background: "#1a1a1a",
color: "#fff",
fontSize: "0.82rem",
fontWeight: 500,
textDecoration: "none",
}}
>
Sign in
</Link>
</div>
);
const structuralChatBody =
status === "loading"
? structuralChatLoadingColumn
: status !== "authenticated"
? structuralChatSignedOutColumn
: conversationColumn;
if (unifiedProjectShell) {
return (
<>
<PreviewBridgeProvider>
<div
style={{
flex: 1,
minHeight: 0,
minWidth: 0,
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
background: "#fff",
}}
>
<div
style={{
display: "flex",
flexDirection: "row",
alignItems: "stretch",
flexShrink: 0,
height: 48,
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
boxSizing: "border-box",
}}
>
<div
style={{
width: 380,
flexShrink: 0,
height: "100%",
display: "flex",
alignItems: "center",
padding: "0 12px",
gap: 6,
boxSizing: "border-box",
borderRight: "1px solid #e8e4dc",
}}
>
<div
style={{
display: "flex",
alignItems: "center",
justifyContent: "space-between",
width: "100%",
gap: 6,
}}
>
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 5px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus style={{ width: 14, height: 14 }} />
</button>
</div>
</div>
<div
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
display: "flex",
alignItems: "stretch",
}}
>
<ProjectIconRail workspace={workspace} projectId={projectId} />
</div>
</div>
<div
style={{
flex: 1,
display: "flex",
flexDirection: "row",
minHeight: 0,
minWidth: 0,
}}
>
<div
style={{
width: 380,
flexShrink: 0,
borderRight: "1px solid #e8e4dc",
background: "#fff",
display: "flex",
flexDirection: "column",
minHeight: 0,
minWidth: 0,
}}
>
{structuralChatBody}
</div>
<div
key={pathname}
style={{
flex: 1,
minWidth: 0,
minHeight: 0,
overflow: "auto",
background: "#faf8f5",
display: "flex",
flexDirection: "column",
}}
>
{artifactSlot}
</div>
</div>
</div>
</PreviewBridgeProvider>
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</>
);
}
// ── Open panel ─────────────────────────────────────────────────────────────
// Structural mode: fill the parent column. Default mode: fixed slide-out
// anchored to the right edge of the viewport (legacy behavior).
return (
<div
style={
structural
? {
flex: 1,
minHeight: 0,
background: "#fff",
display: "flex",
flexDirection: "column",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
: {
position: "fixed",
right: 0,
top: 0,
bottom: 0,
zIndex: 999,
width: 380,
background: "#fff",
borderLeft: "1px solid #e8e4dc",
display: "flex",
flexDirection: "column",
boxShadow: "-4px 0 24px #1a1a1a08",
fontFamily: "var(--font-inter),ui-sans-serif,sans-serif",
}
}
>
{/* Header — structural: circle logo + threads; slide-out: wordmark */}
<div
style={
structural
? {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
height: 48,
padding: "0 12px",
boxSizing: "border-box",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
gap: 6,
}
: {
display: "flex",
alignItems: "center",
justifyContent: "space-between",
padding: "14px 16px",
borderBottom: "1px solid #e8e4dc",
background: "#faf8f5",
flexShrink: 0,
}
}
>
{structural ? (
<div
style={{
display: "flex",
alignItems: "center",
gap: 8,
minWidth: 0,
}}
>
{workspace ? (
<Link
href={`/${workspace}/projects`}
title="All projects"
style={{ flexShrink: 0, display: "flex" }}
>
<img
src="/vibn-black-circle-logo.png"
alt="VIBN"
width={26}
height={26}
style={{
borderRadius: 7,
objectFit: "cover",
display: "block",
}}
/>
</Link>
) : null}
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
aria-label="Conversations"
style={{
display: "flex",
alignItems: "center",
gap: 4,
background: "none",
border: "none",
cursor: "pointer",
padding: "2px 4px",
borderRadius: 6,
minWidth: 0,
}}
>
<ChevronDown
style={{
width: 12,
height: 12,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 4,
padding: "1px 6px",
fontSize: "0.6rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 140,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
</div>
) : (
<button
type="button"
onClick={() => setShowThreads((v) => !v)}
style={{
display: "flex",
alignItems: "center",
gap: 6,
background: "none",
border: "none",
cursor: "pointer",
padding: "4px 6px",
borderRadius: 6,
minWidth: 0,
}}
>
<span
style={{
fontFamily: "var(--font-lora),serif",
fontSize: "0.95rem",
fontWeight: 400,
color: "#1a1a1a",
letterSpacing: "-0.01em",
whiteSpace: "nowrap",
}}
>
Vibn AI
</span>
<ChevronDown
style={{
width: 13,
height: 13,
color: "#a09a90",
transition: "transform 0.15s",
flexShrink: 0,
transform: showThreads ? "rotate(180deg)" : "none",
}}
/>
{projectId && (
<span
title={`Chat is scoped to ${activeProjectName ?? "this project"}. Tool calls assume projectId=${projectId}.`}
style={{
marginLeft: 6,
padding: "2px 8px",
fontSize: "0.65rem",
fontWeight: 600,
letterSpacing: "0.02em",
color: "#3d5afe",
background: "#3d5afe14",
borderRadius: 999,
maxWidth: 160,
whiteSpace: "nowrap",
overflow: "hidden",
textOverflow: "ellipsis",
}}
>
▸ {activeProjectName ?? "this project"}
</span>
)}
</button>
)}
<div style={{ display: "flex", gap: 4 }}>
<button
type="button"
onClick={newThread}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: structural ? "4px 5px" : "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="New conversation"
>
<Plus
style={{
width: structural ? 14 : 15,
height: structural ? 14 : 15,
}}
/>
</button>
{!structural && (
<button
type="button"
onClick={() => setOpen(false)}
style={{
background: "none",
border: "none",
cursor: "pointer",
padding: "5px 6px",
borderRadius: 6,
color: "#6b6560",
display: "flex",
alignItems: "center",
}}
title="Close"
>
<ChevronRight style={{ width: 15, height: 15 }} />
</button>
)}
</div>
</div>
{conversationColumn}
<style>{`
@keyframes vibn-bounce {
0%, 60%, 100% { transform: translateY(0); }
30% { transform: translateY(-4px); }
}
`}</style>
</div>
);
}
```
## Assistant
Done! The input box is now 4 rows high by default (I also bumped up the `maxHeight` so it can expand a bit further if you paste a really long prompt before it starts scrolling).
## User
are we able to move the Desktop | Mobile buttons to be in the nav above, but on the far left.`Image`
**Tool Call: Search files for regex `Desktop`**
Status: Completed
Showing matches 1-20 (there were more matches found; use offset: 20 to see next page):
## Matches in master-ai/BETA_LAUNCH_PLAN.md
### # Beta Launch Execution Plan ## Phase 6 — Artifact-first UX (Bolt parity, Vibn taste) L185-195
```
| # | Task | Owner | Effort | Model | Notes |
|---|---|---|---|---|---|
| 6.A1 | **Two-pane structural refactor** — replace `app/[workspace]/project/[projectId]/(home)/layout.tsx` shell. Workspace sidebar (unchanged) → **main column**: horizontal icon bar (👁 / ⟨⟩ / … / ⚙) above a row of permanent chat ~380px + pure artifact pane. Bar spans full width above chat+content so the vertical strip does not steal horizontal space from the preview. Default view = Preview. Coordinates with existing `ProjectStagePill`, `ProjectAssociationPrompt`, `--chat-panel-width` CSS var (obsolete on project pages). | AI | 3 hrs | **opus** | Cross-cutting; touches layout, chat panel, header. Has to keep `ProjectHeaderUrls` working. |
| 6.A2 | **PreviewPane component** — iframe of `previewUrl || fqdn`, with empty-state placeholder ("Your preview will appear here" + Vibn V mark). Reads from `useAnatomy()`. Exports `kind: "preview"` rendered by 6.A1's right pane. | AI | 1 hr | opus-spec → cheap | Spec: read `anatomy.hosting.previews[0].url` first, fall back to `anatomy.hosting.live[0].fqdn`, fall back to placeholder. Same poll cadence as `ProjectHeaderUrls`. Iframe sandboxed with `allow-scripts allow-forms allow-same-origin allow-popups`. |
| 6.A3 | **Iframe chrome (artifact-local)** — top-right of the iframe: ↻ reload (force iframe `key` bump), ↗ open-in-new-tab, ⛶ fullscreen (toggles a panel-level `expanded` state that hides chat column), 📱 device-frame (desktop / tablet / mobile widths, persisted to localStorage per-project). | AI | 1 hr | cheap | Pure UI. Width tokens: desktop=100%, tablet=820px, mobile=390px. Frame is a CSS wrapper, not real device emulation. |
| 6.A4 | **Code view** — when ⟨⟩ is selected on the rail, render the existing `gitea-file-tree.tsx` + `gitea-file-viewer.tsx` in the right pane. Two-column inside the right pane: tree on the left, viewer on the right. | AI | 30 min | cheap | Components already exist; just compose them. Shared `selectedPath` state. |
| 6.A5 | **Resources view** — when 🗄 is selected, render the existing `database-table-tree.tsx` + `table-viewer.tsx` plus a small list of running services (from `anatomy.hosting.live[]` and `apps_containers_list`). | AI | 1 hr | cheap | Same wire-up pattern as 6.A4. |
| 6.B1 | **Persist last-known dev server config** — new table `fs_project_dev_servers (project_id PK, command, port, framework, last_started_at, status)`. Hook `dev_server_start` MCP tool to upsert on success; `dev_server_stop` to flip status. | AI | 1 hr | opus-spec → cheap | Spec: schema is `project_id UUID PK, command TEXT NOT NULL, port INT NOT NULL, framework TEXT, last_started_at TIMESTAMPTZ, status TEXT CHECK IN ('running','stopped','crashed')`. Migration in `lib/db-postgres-migrations.ts` pattern. Upsert in `lib/dev-server-manager.ts` (or wherever `dev_server_start` lives — find via `Grep`). |
| 6.B2 | **Auto-resume dev server on project page mount** — server-render hook on the new layout: if (a) saved server config exists AND (b) `getDevContainerStatus()` returns `running` or `provisioning` AND (c) no live preview already in `useAnatomy().hosting.previews[]` → fire the saved `dev_server_start` server-side BEFORE the page paints. User lands; preview is live. | AI | 2 hrs | **opus** | Risky if naive — could resume a server the user explicitly stopped, could thrash on idle-suspended containers, could race the existing on-mount `devcontainer_ensure`. Needs careful state-machine read. Idempotency comes from `dev_server_start` returning `alreadyRunning: true` when a process matches command+port. |
| 6.C1 | **SSE `plan` event protocol** — server emits `{ type: "plan", taskId, text, status: "queued"\|"in_progress"\|"done" }` whenever `plan_task_add` / `plan_task_complete` (or a new `plan_task_start`) MCP tool fires inside a chat turn. Coexists with existing `text` and `toolCall` events. | AI | 2 hrs | **opus** | Protocol design — has to handle ordering (plan event must land before the tool's `toolResult`), client-side reconciliation with `fs_projects.plan.tasks[]` on next page load (server is source of truth, SSE is a hot stream), and the case where the AI calls `plan_task_complete` for a task added in a prior turn. |
| 6.C2 | **Client TimelineEntry of `kind: "plan"`** — render a checklist with status circles (○ queued / ◐ in-progress / ● done) inside the assistant message timeline. Each new `plan` SSE event upserts by `taskId`. Ledger pattern matches the existing `kind: "text"` / `kind: "tool"` rendering in `chat-panel.tsx`. | AI | 1.5 hrs | opus-spec → cheap | Spec written into 6.C1's notes. Visual: indented under a "Plan" mini-header, same Outfit/Newsreader palette, status circles in `#a09a90` → `#3a3530` → `#1a1a1a`. |
```
5 lines remaining in ancestor node. Read the file to see all.
### # Beta Launch Execution Plan ## What we are *not* doing for beta L285-286
```
- Mobile-responsive polish (desktop-first beta)
- Multi-region Coolify (single-host is fine for <50 users)
```
## Matches in master-ai/docs_archive/VIBN_PRD.md
### # vibn — Product Requirements Document ## 6. Feature Requirements ### 6.4 Explicitly Out of Scope (v1) L239-249
```
| Feature | Reason excluded |
|---|---|
| Mobile app (iOS/Android) builder output | All v1 builds are web apps; native app generation is a later capability |
| Real-time multi-user collaboration on wizard | Single-user flow only in v1; collaboration is v2 |
| Self-hosting vibn itself (white-label) | Not offered in v1; Enterprise tier future consideration |
| AI voice/video generation | Out of scope; vibn generates text and code only |
| Direct Stripe Connect marketplace | Invoice workflow is manual export only in v1 |
| Custom AI model selection by users | Model routing is automatic; users do not choose models |
| Offline/desktop app | Web-only |
| HIPAA / SOC2 compliance | Out of scope for v1; required before any healthcare customers |
```
### # vibn — Product Requirements Document ## 10. Non-Functional Requirements ### Platform L399-400
```
- **Primary:** Web (desktop browser) — Chrome, Safari, Firefox, Edge
- **Secondary:** Responsive mobile web for dashboard viewing (not wizard)
```
## Matches in master-ai/extracted-aaea190f-13f8-48fd-a9ac-c43d11d2c63c.txt
### L1-5
```
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Babel={})}(this,function(e){"use strict";var t=Object.freeze({__proto__:null,get _call(){return cO},get _forceSetScope(){return yO},get _getQueueContexts(){return CO},get _resyncKey(){return RO},get _resyncList(){return jO},get _resyncParent(){return xO},get _resyncRemoved(){return wO},get call(){return dO},get isDenylisted(){return lO},get popContext(){return EO},get pushContext(){return SO},get requeue(){return AO},get requeueComputedKeyAndDecorators(){return kO},get resync(){return vO},get setContext(){return bO},get setKey(){return PO},get setScope(){return hO},get setup(){return TO},get skip(){return fO},get skipKey(){return gO},get stop(){return mO},get visit(){return pO}}),r=Object.freeze({__proto__:null,get DEFAULT_EXTENSIONS(){return qV},get File(){return lM},get buildExternalHelpers(){return BM},get createConfigItem(){return BW},get createConfigItemAsync(){return OW},get createConfigItemSync(){return NW},get getEnv(){return YM},get loadOptions(){return IW},get loadOptionsAsync(){return CW},get loadOptionsSync(){return _W},get loadPartialConfig(){return PW},get loadPartialConfigAsync(){return SW},get loadPartialConfigSync(){return TW},get parse(){return NV},get parseAsync(){return MV},get parseSync(){return BV},get resolvePlugin(){return LV},get resolvePreset(){return UV},get template(){return pj},get tokTypes(){return nR},get transform(){return EV},get transformAsync(){return TV},get transformFile(){return PV},get transformFileAsync(){return kV},get transformFileSync(){return AV},get transformFromAst(){return _V},get transformFromAstAsync(){return DV},get transformFromAstSync(){return IV},get transformSync(){return SV},get traverse(){return OO},get types(){return Jy},get version(){return FV}});function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=Array(t);r<t;r++)a[r]=e[r];return a}function n(e,t,r,a,n,s,o){try{var i=e[s](o),d=i.value}catch(e){return void r(e)}i.done?t(d):Promise.resolve(d).then(a,n)}function s(e){return function(){var t=this,r=arguments;return new Promise(function(a,s){var o=e.apply(t,r);function i(e){n(o,a,s,i,d,"next",e)}function d(e){n(o,a,s,i,d,"throw",e)}i(void 0)})}}function o(e,t,r){return t&&function(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,v(a.key),a)}}(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function i(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=x(e))||t){r&&(e=r);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){return d=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},d(e)}function c(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&m(e,t)}function l(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(l=function(){return!!e})()}function u(e,t){if(null==e)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}function p(){
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
var e,t,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",n=r.toStringTag||"@@toStringTag";function s(r,a,n,s){var d=a&&a.prototype instanceof i?a:i,c=Object.create(d.prototype);return f(c,"_invoke",function(r,a,n){var s,i,d,c=0,l=n||[],u=!1,p={p:0,n:0,v:e,a:f,f:f.bind(e,4),d:function(t,r){return s=t,i=0,d=e,p.n=r,o}};function f(r,a){for(i=r,d=a,t=0;!u&&c&&!n&&t<l.length;t++){var n,s=l[t],f=p.p,g=s[2];r>3?(n=g===a)&&(d=s[(i=s[4])?5:(i=3,3)],s[4]=s[5]=e):s[0]<=f&&((n=r<2&&f<s[1])?(i=0,p.v=a,p.n=s[1]):f<g&&(n=r<3||s[0]>a||a>g)&&(s[4]=r,s[5]=a,p.n=g,i=0))}if(n||r>1)return o;throw u=!0,a}return function(n,l,g){if(c>1)throw TypeError("Generator is already running");for(u&&1===l&&f(l,g),i=l,d=g;(t=i<2?e:d)||!u;){s||(i?i<3?(i>1&&(p.n=-1),f(i,d)):p.n=d:p.v=d);try{if(c=2,s){if(i||(n="next"),t=s[n]){if(!(t=t.call(s,d)))throw TypeError("iterator result is not an object");if(!t.done)return t;d=t.value,i<2&&(i=0)}else 1===i&&(t=s.return)&&t.call(s),i<2&&(d=TypeError("The iterator does not provide a '"+n+"' method"),i=1);s=e}else if((t=(u=p.n<0)?d:r.call(a,p))!==o)break}catch(t){s=e,i=1,d=t}finally{c=1}}return{value:t,done:u}}}(r,n,s),!0),c}var o={};function i(){}function d(){}function c(){}t=Object.getPrototypeOf;var l=[][a]?t(t([][a]())):(f(t={},a,function(){return this}),t),u=c.prototype=i.prototype=Object.create(l);function g(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,f(e,n,"GeneratorFunction")),e.prototype=Object.create(u),e}return d.prototype=c,f(u,"constructor",c),f(c,"constructor",d),d.displayName="GeneratorFunction",f(c,n,"GeneratorFunction"),f(u),f(u,n,"Generator"),f(u,a,function(){return this}),f(u,"toString",function(){return"[object Generator]"}),(p=function(){return{w:s,m:g}})()}function f(e,t,r,a){var n=Object.defineProperty;try{n({},"",{})}catch(e){n=0}f=function(e,t,r,a){function s(t,r){f(e,t,function(e){return this._invoke(t,r,e)})}t?n?n(e,t,{value:r,enumerable:!a,configurable:!a,writable:!a}):e[t]=r:(s("next",0),s("throw",1),s("return",2))},f(e,t,r,a)}function g(e){if(null!=e){var t=e["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],r=0;if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length))return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}throw new TypeError(typeof e+" is not iterable")}function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var a,n,s,o,i=[],d=!0,c=!1;try{if(s=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;d=!1}else for(;!(d=(a=s.call(r)).done)&&(i.push(a.value),i.length!==t);d=!0);}catch(e){c=!0,n=e}finally{try{if(!d&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(c)throw n}}return i}}(e,t)||x(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e,t){return t||(t=e.slice(0)),e.raw=t,e}function b(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||x(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var a=r.call(e,t);if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e,"string");return"symbol"==typeof t?t:t+""}function x(e,t){if(e){if("string"==typeof e)return a(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}function R(e){var t="function"==typeof Map?new Map:void 0;return R=function(e){if(null===e||!function(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return function(e,t,r){if(l())return Reflect.construct.apply(null,arguments);var a=[null];a.push.apply(a,t);var n=new(e.bind.apply(e,a));return r&&m(n,r.prototype),n}(e,arguments,d(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),m(r,e)},R(e)}var j="undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{};function w(){throw new Error("setTimeout has not been defined")}function E(){throw new Error("clearTimeout has not been defined")}var S=w,T=E;function P(e){if(S===setTimeout)return setTimeout(e,0);if((S===w||!S)&&setTimeout)return S=setTimeout,setTimeout(e,0);try{return S(e,0)}catch(t){try{return S.call(null,e,0)}catch(t){return S.call(this,e,0)}}}"function"==typeof j.setTimeout&&(S=setTimeout),"function"==typeof j.clearTimeout&&(T=clearTimeout);var A,k=[],C=!1,_=-1;function I(){C&&A&&(C=!1,A.length?k=A.concat(k):_=-1,k.length&&D())}function D(){if(!C){var e=P(I);C=!0;for(var t=k.length;t;){for(A=k,k=[];++_<t;)A&&A[_].run();_=-1,t=k.length}A=null,C=!1,function(e){if(T===clearTimeout)return clearTimeout(e);if((T===E||!T)&&clearTimeout)return T=clearTimeout,clearTimeout(e);try{return T(e)}catch(t){try{return T.call(null,e)}catch(t){return T.call(this,e)}}}(e)}}function O(e,t){this.fun=e,this.array=t}O.prototype.run=function(){this.fun.apply(null,this.array)};function N(){}var B=N,M=N,F=N,L=N,U=N,q=N,G=N;var W=j.performance||{},V=W.now||W.mozNow||W.msNow||W.oNow||W.webkitNow||function(){return(new Date).getTime()};var H=new Date;var z={nextTick:function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];k.push(new O(e,t)),1!==k.length||C||P(D)},title:"browser",browser:!0,env:{},argv:[],version:"",versions:{},on:B,addListener:M,once:F,off:L,removeListener:U,removeAllListeners:q,emit:G,binding:function(e){throw new Error("process.binding is not supported")},cwd:function(){return"/"},chdir:function(e){throw new Error("process.chdir is not supported")},umask:function(){return 0},hrtime:function(e){var t=.001*V.call(W),r=Math.floor(t),a=Math.floor(t%1*1e9);return e&&(r-=e[0],(a-=e[1])<0&&(r--,a+=1e9)),[r,a]},platform:"browser",release:{},config:{},uptime:function(){return(new Date-H)/1e3}};function K(e,t){for(var r=0,a=Object.keys(t);r<a.length;r++){var n=a[r];if(e[n]!==t[n])return!1}return!0}var X=new Set;function J(e,t,r,a){if(void 0===r&&(r=""),void 0===a&&(a=e),!X.has(a)){X.add(a);var n=function(e,t){var r,a=Error.stackTraceLimit,n=Error.prepareStackTrace;if(Error.stackTraceLimit=1+e+t,Error.prepareStackTrace=function(e,t){r=t},(new Error).stack,Error.stackTraceLimit=a,Error.prepareStackTrace=n,!r)return{internal:!1,trace:""};var s=r.slice(1+e,1+e+t);return{internal:/[\\/]@babel[\\/]/.test(s[1].getFileName()),trace:s.map(function(e){return" at "+e}).join("\n")}}(1,2),s=n.internal,o=n.trace;s||console.warn(r+"`"+e+"` has been deprecated, please migrate to `"+t+"`\n"+o)}}function Y(e,t){return!!e&&("ArrayExpression"===e.type&&(null==t||K(e,t)))}function $(e,t){return!!e&&("AssignmentExpression"===e.type&&(null==t||K(e,t)))}function Q(e,t){return!!e&&("BlockStatement"===e.type&&(null==t||K(e,t)))}function Z(e,t){return!!e&&("CallExpression"===e.type&&(null==t||K(e,t)))}function ee(e,t){return!!e&&("CatchClause"===e.type&&(null==t||K(e,t)))}function te(e,t){return!!e&&("EmptyStatement"===e.type&&(null==t||K(e,t)))}function re(e,t){return!!e&&("ExpressionStatement"===e.type&&(null==t||K(e,t)))}function ae(e,t){return!!e&&("File"===e.type&&(null==t||K(e,t)))}function ne(e,t){return!!e&&("ForStatement"===e.type&&(null==t||K(e,t)))}function se(e,t){return!!e&&("FunctionDeclaration"===e.type&&(null==t||K(e,t)))}function oe(e,t){return!!e&&("FunctionExpression"===e.type&&(null==t||K(e,t)))}function ie(e,t){return!!e&&("Identifier"===e.type&&(null==t||K(e,t)))}function de(e,t){return!!e&&("IfStatement"===e.type&&(null==t||K(e,t)))}function ce(e,t){return!!e&&("LabeledStatement"===e.type&&(null==t||K(e,t)))}function le(e,t){return!!e&&("StringLiteral"===e.type&&(null==t||K(e,t)))}function ue(e,t){return!!e&&("NumericLiteral"===e.type&&(null==t||K(e,t)))}function pe(e,t){return!!e&&("NullLiteral"===e.type&&(null==t||K(e,t)))}function fe(e,t){return!!e&&("BooleanLiteral"===e.type&&(null==t||K(e,t)))}function ge(e,t){return!!e&&("RegExpLiteral"===e.type&&(null==t||K(e,t)))}function me(e,t){return!!e&&("MemberExpression"===e.type&&(null==t||K(e,t)))}function ye(e,t){return!!e&&("NewExpression"===e.type&&(null==t||K(e,t)))}function he(e,t){return!!e&&("Program"===e.type&&(null==t||K(e,t)))}function be(e,t){return!!e&&("ObjectExpression"===e.type&&(null==t||K(e,t)))}function ve(e,t){return!!e&&("ObjectMethod"===e.type&&(null==t||K(e,t)))}function xe(e,t){return!!e&&("ObjectProperty"===e.type&&(null==t||K(e,t)))}function Re(e,t){return!!e&&("RestElement"===e.type&&(null==t||K(e,t)))}function je(e,t){return!!e&&("ReturnStatement"===e.type&&(null==t||K(e,t)))}function we(e,t){return!!e&&("SequenceExpression"===e.type&&(null==t||K(e,t)))}function Ee(e,t){return!!e&&("ParenthesizedExpression"===e.type&&(null==t||K(e,t)))}function Se(e,t){return!!e&&("ThisExpression"===e.type&&(null==t||K(e,t)))}function Te(e,t){return!!e&&("UnaryExpression"===e.type&&(null==t||K(e,t)))}function Pe(e,t){return!!e&&("UpdateExpression"===e.type&&(null==t||K(e,t)))}function Ae(e,t){return!!e&&("VariableDeclaration"===e.type&&(null==t||K(e,t)))}function ke(e,t){return!!e&&("VariableDeclarator"===e.type&&(null==t||K(e,t)))}function Ce(e,t){return!!e&&("AssignmentPattern"===e.type&&(null==t||K(e,t)))}function _e(e,t){return!!e&&("ArrayPattern"===e.type&&(null==t||K(e,t)))}function Ie(e,t){return!!e&&("ArrowFunctionExpression"===e.type&&(null==t||K(e,t)))}function De(e,t){return!!e&&("ClassBody"===e.type&&(null==t||K(e,t)))}function Oe(e,t){return!!e&&("ClassExpression"===e.type&&(null==t||K(e,t)))}function Ne(e,t){return!!e&&("ClassDeclaration"===e.type&&(null==t||K(e,t)))}function Be(e,t){return!!e&&("ExportAllDeclaration"===e.type&&(null==t||K(e,t)))}function Me(e,t){return!!e&&("ExportDefaultDeclaration"===e.type&&(null==t||K(e,t)))}function Fe(e,t){return!!e&&("ExportNamedDeclaration"===e.type&&(null==t||K(e,t)))}function Le(e,t){return!!e&&("ExportSpecifier"===e.type&&(null==t||K(e,t)))}function Ue(e,t){return!!e&&("ForOfStatement"===e.type&&(null==t||K(e,t)))}function qe(e,t){return!!e&&("ImportDeclaration"===e.type&&(null==t||K(e,t)))}function Ge(e,t){return!!e&&("ImportDefaultSpecifier"===e.type&&(null==t||K(e,t)))}function We(e,t){return!!e&&("ImportNamespaceSpecifier"===e.type&&(null==t||K(e,t)))}function Ve(e,t){return!!e&&("ImportSpecifier"===e.type&&(null==t||K(e,t)))}function He(e,t){return!!e&&("MetaProperty"===e.type&&(null==t||K(e,t)))}function ze(e,t){return!!e&&("ClassMethod"===e.type&&(null==t||K(e,t)))}function Ke(e,t){return!!e&&("ObjectPattern"===e.type&&(null==t||K(e,t)))}function Xe(e,t){return!!e&&("SpreadElement"===e.type&&(null==t||K(e,t)))}function Je(e,t){return!!e&&("Super"===e.type&&(null==t||K(e,t)))}function Ye(e,t){return!!e&&("TaggedTemplateExpression"===e.type&&(null==t||K(e,t)))}function $e(e,t){return!!e&&("TemplateLiteral"===e.type&&(null==t||K(e,t)))}function Qe(e,t){return!!e&&("YieldExpression"===e.type&&(null==t||K(e,t)))}function Ze(e,t){return!!e&&("AwaitExpression"===e.type&&(null==t||K(e,t)))}function et(e,t){return!!e&&("Import"===e.type&&(null==t||K(e,t)))}function tt(e,t){return!!e&&("BigIntLiteral"===e.type&&(null==t||K(e,t)))}function rt(e,t){return!!e&&("ExportNamespaceSpecifier"===e.type&&(null==t||K(e,t)))}function at(e,t){return!!e&&("OptionalMemberExpression"===e.type&&(null==t||K(e,t)))}function nt(e,t){return!!e&&("OptionalCallExpression"===e.type&&(null==t||K(e,t)))}function st(e,t){return!!e&&("ClassProperty"===e.type&&(null==t||K(e,t)))}function ot(e,t){return!!e&&("ClassPrivateProperty"===e.type&&(null==t||K(e,t)))}function it(e,t){return!!e&&("PrivateName"===e.type&&(null==t||K(e,t)))}function dt(e,t){return!!e&&("StaticBlock"===e.type&&(null==t||K(e,t)))}function ct(e,t){return!!e&&("AnyTypeAnnotation"===e.type&&(null==t||K(e,t)))}function lt(e,t){return!!e&&("ArrayTypeAnnotation"===e.type&&(null==t||K(e,t)))}function ut(e,t){return!!e&&("BooleanTypeAnnotation"===e.type&&(null==t||K(e,t)))}function pt(e,t){return!!e&&("DeclareExportDeclaration"===e.type&&(null==t||K(e,t)))}function ft(e,t){return!!e&&("GenericTypeAnnotation"===e.type&&(null==t||K(e,t)))}function gt(e,t){return!!e&&("MixedTypeAnnotation"===e.type&&(null==t||K(e,t)))}function mt(e,t){return!!e&&("EmptyTypeAnnotation"===e.type&&(null==t||K(e,t)))}function yt(e,t){return!!e&&("NumberTypeAnnotation"===e.type&&(null==t||K(e,t)))}function ht(e,t){return!!e&&("StringTypeAnnotation"===e.type&&(null==t||K(e,t)))}function bt(e,t){return!!e&&("TupleTypeAnnotation"===e.type&&(null==t||K(e,t)))}function vt(e,t){return!!e&&("TypeAnnotation"===e.type&&(null==t||K(e,t)))}function xt(e,t){return!!e&&("TypeCastExpression"===e.type&&(null==t||K(e,t)))}function Rt(e,t){return!!e&&("UnionTypeAnnotation"===e.type&&(null==t||K(e,t)))}function jt(e,t){return!!e&&("VoidTypeAnnotation"===e.type&&(null==t||K(e,t)))}function wt(e,t){return!!e&&("JSXAttribute"===e.type&&(null==t||K(e,t)))}function Et(e,t){return!!e&&("JSXElement"===e.type&&(null==t||K(e,t)))}function St(e,t){return!!e&&("JSXEmptyExpression"===e.type&&(null==t||K(e,t)))}function Tt(e,t){return!!e&&("JSXExpressionContainer"===e.type&&(null==t||K(e,t)))}function Pt(e,t){return!!e&&("JSXIdentifier"===e.type&&(null==t||K(e,t)))}function At(e,t){return!!e&&("JSXMemberExpression"===e.type&&(null==t||K(e,t)))}function kt(e,t){return!!e&&("JSXNamespacedName"===e.type&&(null==t||K(e,t)))}function Ct(e,t){return!!e&&("JSXOpeningElement"===e.type&&(null==t||K(e,t)))}function _t(e,t){return!!e&&("JSXSpreadAttribute"===e.type&&(null==t||K(e,t)))}function It(e,t){return!!e&&("JSXText"===e.type&&(null==t||K(e,t)))}function Dt(e,t){return!!e&&("Placeholder"===e.type&&(null==t||K(e,t)))}function Ot(e,t){return!!e&&("BindExpression"===e.type&&(null==t||K(e,t)))}function Nt(e,t){return!!e&&("ExportDefaultSpecifier"===e.type&&(null==t||K(e,t)))}function Bt(e,t){return!!e&&("TopicReference"===e.type&&(null==t||K(e,t)))}function Mt(e,t){return!!e&&("PipelineTopicExpression"===e.type&&(null==t||K(e,t)))}function Ft(e,t){return!!e&&("TSQualifiedName"===e.type&&(null==t||K(e,t)))}function Lt(e,t){return!!e&&("TSAnyKeyword"===e.type&&(null==t||K(e,t)))}function Ut(e,t){return!!e&&("TSTypeReference"===e.type&&(null==t||K(e,t)))}function qt(e,t){return!!e&&("TSArrayType"===e.type&&(null==t||K(e,t)))}function Gt(e,t){return!!e&&("TSUnionType"===e.type&&(null==t||K(e,t)))}function Wt(e,t){return!!e&&("TSInterfaceBody"===e.type&&(null==t||K(e,t)))}function Vt(e,t){return!!e&&("TSAsExpression"===e.type&&(null==t||K(e,t)))}function Ht(e,t){return!!e&&("TSSatisfiesExpression"===e.type&&(null==t||K(e,t)))}function zt(e,t){return!!e&&("TSTypeAssertion"===e.type&&(null==t||K(e,t)))}function Kt(e,t){return!!e&&("TSEnumMember"===e.type&&(null==t||K(e,t)))}function Xt(e,t){return!!e&&("TSModuleBlock"===e.type&&(null==t||K(e,t)))}function Jt(e,t){return!!e&&("TSNonNullExpression"===e.type&&(null==t||K(e,t)))}function Yt(e,t){return!!e&&("TSTypeAnnotation"===e.type&&(null==t||K(e,t)))}function $t(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"ImportExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||K(e,t)}function Qt(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||K(e,t)}function Zt(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||K(e,t)}function er(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||K(e,t)}function tr(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||K(e,t)}function rr(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||K(e,t)}function ar(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||K(e,t)}function nr(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||K(e,t)}function sr(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||K(e,t)}function or(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||K(e,t)}function ir(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||K(e,t)}function dr(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||K(e,t)}function cr(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||K(e,t)}function lr(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||K(e,t)}function ur(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||K(e,t)}function pr(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||K(e,t)}function fr(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||K(e,t)}function gr(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||K(e,t)}function mr(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||K(e,t)}function yr(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||K(e,t)}function hr(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||K(e,t)}function br(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||K(e,t)}function vr(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||K(e,t)}function xr(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumBody":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||K(e,t)}function Rr(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||K(e,t)}function jr(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSTemplateLiteralType":case"TSLiteralType":break;default:return!1}return null==t||K(e,t)}function wr(e){return me(e)||He(e)}function Er(e,t,r){if(!wr(e))return!1;var a,n=Array.isArray(t)?t:t.split("."),s=[];for(a=e;wr(a);a=null!=(o=a.object)?o:a.meta){var o;s.push(a.property)}if(s.push(a),s.length<n.length)return!1;if(!r&&s.length>n.length)return!1;for(var i=0,d=s.length-1;i<n.length;i++,d--){var c=s[d],l=void 0;if(ie(c))l=c.name;else if(le(c))l=c.value;else if(Se(c))l="this";else if(Je(c))l="super";else{if(!it(c))return!1;l="#"+c.id.name}if(n[i]!==l)return!1}return!0}function Sr(e,t){var r=e.split(".");return function(e){return Er(e,r,t)}}var Tr=Sr("React.Component");function Pr(e,t){if(e===t)return!0;if(null==e)return!1;if(wa[t])return!1;var r=Ea[t];return!(null==r||!r.includes(e))}function Ar(e,t){if(e===t)return!0;var r=jn[e];return!(null==r||!r.includes(t))}function kr(e,t,r){return!!t&&(Pr(t.type,e)?void 0===r||K(t,r):!r&&"Placeholder"===t.type&&e in Ea&&Ar(t.expectedNode,e))}var Cr="\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0560-\u0588\u05d0-\u05ea\u05ef-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u0860-\u086a\u0870-\u0887\u0889-\u088f\u08a0-\u08c9\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u09fc\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0af9\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58-\u0c5a\u0c5c\u0c5d\u0c60\u0c61\u0c80\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cdc-\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d04-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d54-\u0d56\u0d5f-\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e86-\u0e8a\u0e8c-\u0ea3\u0ea5\u0ea7-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f5\u13f8-\u13fd\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u1711\u171f-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1878\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4c\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1c80-\u1c8a\u1c90-\u1cba\u1cbd-\u1cbf\u1ce9-\u1cec\u1cee-\u1cf3\u1cf5\u1cf6\u1cfa\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2118-\u211d\u2124\u2126\u2128\u212a-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309b-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312f\u3131-\u318e\u31a0-\u31bf\u31f0-\u31ff\u3400-\u4dbf\u4e00-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua7dc\ua7f1-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua8fd\ua8fe\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab69\uab70-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc",_r="\xb7\u0300-\u036f\u0387\u0483-\u0487\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u0669\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u06f0-\u06f9\u0711\u0730-\u074a\u07a6-\u07b0\u07c0-\u07c9\u07eb-\u07f3\u07fd\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0859-\u085b\u0897-\u089f\u08ca-\u08e1\u08e3-\u0903\u093a-\u093c\u093e-\u094f\u0951-\u0957\u0962\u0963\u0966-\u096f\u0981-\u0983\u09bc\u09be-\u09c4\u09c7\u09c8\u09cb-\u09cd\u09d7\u09e2\u09e3\u09e6-\u09ef\u09fe\u0a01-\u0a03\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a66-\u0a71\u0a75\u0a81-\u0a83\u0abc\u0abe-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ae2\u0ae3\u0ae6-\u0aef\u0afa-\u0aff\u0b01-\u0b03\u0b3c\u0b3e-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b55-\u0b57\u0b62\u0b63\u0b66-\u0b6f\u0b82\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd7\u0be6-\u0bef\u0c00-\u0c04\u0c3c\u0c3e-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0cbc\u0cbe-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0ce6-\u0cef\u0cf3\u0d00-\u0d03\u0d3b\u0d3c\u0d3e-\u0d44\u0d46-\u0d48\u0d4a-\u0d4d\u0d57\u0d62\u0d63\u0d66-\u0d6f\u0d81-\u0d83\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0e50-\u0e59\u0eb1\u0eb4-\u0ebc\u0ec8-\u0ece\u0ed0-\u0ed9\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e\u0f3f\u0f71-\u0f84\u0f86\u0f87\u0f8d-\u0f97\u0f99-\u0fbc\u0fc6\u102b-\u103e\u1040-\u1049\u1056-\u1059\u105e-\u1060\u1062-\u1064\u1067-\u106d\u1071-\u1074\u1082-\u108d\u108f-\u109d\u135d-\u135f\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17b4-\u17d3\u17dd\u17e0-\u17e9\u180b-\u180d\u180f-\u1819\u18a9\u1920-\u192b\u1930-\u193b\u1946-\u194f\u19d0-\u19da\u1a17-\u1a1b\u1a55-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1ab0-\u1abd\u1abf-\u1add\u1ae0-\u1aeb\u1b00-\u1b04\u1b34-\u1b44\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1b82\u1ba1-\u1bad\u1bb0-\u1bb9\u1be6-\u1bf3\u1c24-\u1c37\u1c40-\u1c49\u1c50-\u1c59\u1cd0-\u1cd2\u1cd4-\u1ce8\u1ced\u1cf4\u1cf7-\u1cf9\u1dc0-\u1dff\u200c\u200d\u203f\u2040\u2054\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2cef-\u2cf1\u2d7f\u2de0-\u2dff\u302a-\u302f\u3099\u309a\u30fb\ua620-\ua629\ua66f\ua674-\ua67d\ua69e\ua69f\ua6f0\ua6f1\ua802\ua806\ua80b\ua823-\ua827\ua82c\ua880\ua881\ua8b4-\ua8c5\ua8d0-\ua8d9\ua8e0-\ua8f1\ua8ff-\ua909\ua926-\ua92d\ua947-\ua953\ua980-\ua983\ua9b3-\ua9c0\ua9d0-\ua9d9\ua9e5\ua9f0-\ua9f9\uaa29-\uaa36\uaa43\uaa4c\uaa4d\uaa50-\uaa59\uaa7b-\uaa7d\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uaaeb-\uaaef\uaaf5\uaaf6\uabe3-\uabea\uabec\uabed\uabf0-\uabf9\ufb1e\ufe00-\ufe0f\ufe20-\ufe2f\ufe33\ufe34\ufe4d-\ufe4f\uff10-\uff19\uff3f\uff65",Ir=new RegExp("["+Cr+"]"),Dr=new RegExp("["+Cr+_r+"]");Cr=_r=null;var Or=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],Nr=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function Br(e,t){for(var r=65536,a=0,n=t.length;a<n;a+=2){if((r+=t[a])>e)return!1;if((r+=t[a+1])>=e)return!0}return!1}function Mr(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&Ir.test(String.fromCharCode(e)):Br(e,Or)))}function Fr(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&Dr.test(String.fromCharCode(e)):Br(e,Or)||Br(e,Nr))))}function Lr(e){for(var t=!0,r=0;r<e.length;r++){var a=e.charCodeAt(r);if(55296==(64512&a)&&r+1<e.length){var n=e.charCodeAt(++r);56320==(64512&n)&&(a=65536+((1023&a)<<10)+(1023&n))}if(t){if(t=!1,!Mr(a))return!1}else if(!Fr(a))return!1}return!t}var Ur=["implements","interface","let","package","private","protected","public","static","yield"],qr=["eval","arguments"],Gr=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),Wr=new Set(Ur),Vr=new Set(qr);function Hr(e,t){return t&&"await"===e||"enum"===e}function zr(e,t){return Hr(e,t)||Wr.has(e)}function Kr(e){return Vr.has(e)}function Xr(e,t){return zr(e,t)||Kr(e)}function Jr(e){return Gr.has(e)}function Yr(e,t){return void 0===t&&(t=!0),"string"==typeof e&&((!t||!Jr(e)&&!zr(e,!0))&&Lr(e))}var $r=function(e){return e>=48&&e<=57},Qr={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Zr={bin:function(e){return 48===e||49===e},oct:function(e){return e>=48&&e<=55},dec:function(e){return e>=48&&e<=57},hex:function(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}};function ea(e,t,r,a,n,s){for(var o=r,i=a,d=n,c="",l=null,u=r,p=t.length;;){if(r>=p){s.unterminated(o,i,d),c+=t.slice(u,r);break}var f=t.charCodeAt(r);if(ta(e,f,t,r)){c+=t.slice(u,r);break}if(92===f){c+=t.slice(u,r);var g=ra(t,r,a,n,"template"===e,s);null!==g.ch||l?c+=g.ch:l={pos:r,lineStart:a,curLine:n},r=g.pos,a=g.lineStart,n=g.curLine,u=r}else 8232===f||8233===f?(++n,a=++r):10===f||13===f?"template"===e?(c+=t.slice(u,r)+"\n",++r,13===f&&10===t.charCodeAt(r)&&++r,++n,u=a=r):s.unterminated(o,i,d):++r}return{pos:r,str:c,firstInvalidLoc:l,lineStart:a,curLine:n,containsInvalid:!!l}}function ta(e,t,r,a){return"template"===e?96===t||36===t&&123===r.charCodeAt(a+1):t===("double"===e?34:39)}function ra(e,t,r,a,n,s){var o=!n;t++;var i=function(e){return{pos:t,ch:e,lineStart:r,curLine:a}},d=e.charCodeAt(t++);switch(d){case 110:return i("\n");case 114:return i("\r");case 120:var c,l=aa(e,t,r,a,2,!1,o,s);return c=l.code,t=l.pos,i(null===c?null:String.fromCharCode(c));case 117:var u,p=sa(e,t,r,a,o,s);return u=p.code,t=p.pos,i(null===u?null:String.fromCodePoint(u));case 116:return i("\t");case 98:return i("\b");case 118:return i("\v");case 102:return i("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:r=t,++a;case 8232:case 8233:return i("");case 56:case 57:if(n)return i(null);s.strictNumericEscape(t-1,r,a);default:if(d>=48&&d<=55){var f=t-1,g=/^[0-7]+/.exec(e.slice(f,t+2))[0],m=parseInt(g,8);m>255&&(g=g.slice(0,-1),m=parseInt(g,8)),t+=g.length-1;var y=e.charCodeAt(t);if("0"!==g||56===y||57===y){if(n)return i(null);s.strictNumericEscape(f,r,a)}return i(String.fromCharCode(m))}return i(String.fromCharCode(d))}}function aa(e,t,r,a,n,s,o,i){var d,c=t,l=na(e,t,r,a,16,n,s,!1,i,!o);return d=l.n,t=l.pos,null===d&&(o?i.invalidEscapeSequence(c,r,a):t=c-1),{code:d,pos:t}}function na(e,t,r,a,n,s,o,i,d,c){for(var l=t,u=16===n?Qr.hex:Qr.decBinOct,p=16===n?Zr.hex:10===n?Zr.dec:8===n?Zr.oct:Zr.bin,f=!1,g=0,m=0,y=null==s?1/0:s;m<y;++m){var h=e.charCodeAt(t),b=void 0;if(95!==h||"bail"===i){if((b=h>=97?h-97+10:h>=65?h-65+10:$r(h)?h-48:1/0)>=n){if(b<=9&&c)return{n:null,pos:t};if(b<=9&&d.invalidDigit(t,r,a,n))b=0;else{if(!o)break;b=0,f=!0}}++t,g=g*n+b}else{var v=e.charCodeAt(t-1),x=e.charCodeAt(t+1);if(i){if(Number.isNaN(x)||!p(x)||u.has(v)||u.has(x)){if(c)return{n:null,pos:t};d.unexpectedNumericSeparator(t,r,a)}}else{if(c)return{n:null,pos:t};d.numericSeparatorInEscapeSequence(t,r,a)}++t}}return t===l||null!=s&&t-l!==s||f?{n:null,pos:t}:{n:g,pos:t}}function sa(e,t,r,a,n,s){var o;if(123===e.charCodeAt(t)){var i=aa(e,++t,r,a,e.indexOf("}",t)-t,!0,n,s);if(o=i.code,t=i.pos,++t,null!==o&&o>1114111){if(!n)return{code:null,pos:t};s.invalidCodePoint(t,r,a)}}else{var d=aa(e,t,r,a,4,!1,n,s);o=d.code,t=d.pos}return{code:o,pos:t}}var oa=["consequent","body","alternate"],ia=["leadingComments","trailingComments","innerComments"],da=["||","&&","??"],ca=["++","--"],la=[">","<",">=","<="],ua=["==","===","!=","!=="],pa=[].concat(ua,["in","instanceof"]),fa=[].concat(b(pa),la),ga=["-","/","%","*","**","&","|",">>",">>>","<<","^"],ma=["+"].concat(ga,b(fa),["|>"]),ya=["=","+="].concat(b(ga.map(function(e){return e+"="})),b(da.map(function(e){return e+"="}))),ha=["delete","!"],ba=["+","-","~"],va=["typeof"],xa=["void","throw"].concat(ha,ba,va),Ra={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};e.BLOCK_SCOPED_SYMBOL=Symbol.for("var used to be block scoped"),e.NOT_LOCAL_BINDING=Symbol.for("should not be considered a local binding");var ja={},wa={},Ea={},Sa={},Ta={},Pa={},Aa={},ka={};function Ca(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function _a(e){return{validate:e}}function Ia(){return _a(qa.apply(void 0,arguments))}function Da(e){return{validate:e,optional:!0}}function Oa(){return{validate:qa.apply(void 0,arguments),optional:!0}}function Na(e){return Ha(Wa("array"),Fa(e))}function Ba(){return Na(qa.apply(void 0,arguments))}function Ma(){return _a(Ba.apply(void 0,arguments))}function Fa(e){var t=z.env.BABEL_TYPES_8_BREAKING?rs:function(){};function r(r,a,n){if(Array.isArray(n))for(var s=0,o={toString:function(){return a+"["+s+"]"}};s<n.length;s++){var i=n[s];e(r,o,i),t(r,o,i)}}return r.each=e,r}function La(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];function a(e,r,a){if(!t.includes(a))throw new TypeError("Property "+r+" expected value to be one of "+JSON.stringify(t)+" but got "+JSON.stringify(a))}return a.oneOf=t,a}var Ua=[];function qa(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var a=new Set;function n(e,r,n){var s=null==n?void 0:n.type;if(null!=s){if(a.has(s))return void rs(e,r,n);if("Placeholder"===s)for(var o,d=i(t);!(o=d()).done;){if(kr(o.value,n))return void rs(e,r,n)}}throw new TypeError("Property "+r+" of "+e.type+" expected node to be of a type "+JSON.stringify(t)+" but instead got "+JSON.stringify(s))}return Ua.push({types:t,set:a}),n.oneOfNodeTypes=t,n}function Ga(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];function a(e,r,a){for(var n,s=Ca(a),o=i(t);!(n=o()).done;){var d=n.value;if(s===d||kr(d,a))return void rs(e,r,a)}throw new TypeError("Property "+r+" of "+e.type+" expected node to be of a type "+JSON.stringify(t)+" but instead got "+JSON.stringify(null==a?void 0:a.type))}return a.oneOfNodeOrValueTypes=t,a}function Wa(e){function t(t,r,a){if(Ca(a)!==e)throw new TypeError("Property "+r+" expected type of "+e+" but got "+Ca(a))}return t.type=e,t}function Va(){return function(e){for(var t,r=e;e;){var a=r.type;if("OptionalCallExpression"!==a){if("OptionalMemberExpression"!==a)break;if(r.optional)return;r=r.object}else{if(r.optional)return;r=r.callee}}throw new TypeError("Non-optional "+e.type+" must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from "+(null==(t=r)?void 0:t.type))}}function Ha(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];function a(){for(var e,r=i(t);!(e=r()).done;){e.value.apply(void 0,arguments)}}if(a.chainOf=t,t.length>=2&&"type"in t[0]&&"array"===t[0].type&&!("each"in t[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return a}var za,Ka,Xa,Ja=new Set(["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate","unionShape"]),Ya=new Set(["default","optional","deprecated","validate"]),$a={};function Qa(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e,r){var a;void 0===r&&(r={});var n,s=r.aliases;s||(r.inherits&&(s=null==(n=$a[r.inherits].aliases)?void 0:n.slice()),null!=s||(s=[]),r.aliases=s);var o=t.filter(function(e){return!s.includes(e)});(a=s).unshift.apply(a,b(o)),Za(e,r)}}function Za(e,t){void 0===t&&(t={});var r=t.inherits&&$a[t.inherits]||{},a=t.fields;if(!a&&(a={},r.fields))for(var n,s=i(Object.getOwnPropertyNames(r.fields));!(n=s()).done;){var o=n.value,d=r.fields[o],c=d.default;if(Array.isArray(c)?c.length>0:c&&"object"==typeof c)throw new Error("field defaults can only be primitives or empty arrays currently");a[o]={default:Array.isArray(c)?[]:c,optional:d.optional,deprecated:d.deprecated,validate:d.validate}}for(var l=t.visitor||r.visitor||[],u=t.aliases||r.aliases||[],p=t.builder||r.builder||t.visitor||[],f=0,g=Object.keys(t);f<g.length;f++){var m=g[f];if(!Ja.has(m))throw new Error('Unknown type option "'+m+'" on '+e)}t.deprecatedAlias&&(Pa[t.deprecatedAlias]=e);for(var y,h=i(l.concat(p));!(y=h()).done;){var b=y.value;a[b]=a[b]||{}}for(var v=0,x=Object.keys(a);v<x.length;v++){var R=x[v],j=a[R];void 0===j.default||p.includes(R)||(j.optional=!0),void 0===j.default?j.default=null:j.validate||null==j.default||(j.validate=Wa(Ca(j.default)));for(var w=0,E=Object.keys(j);w<E.length;w++){var S=E[w];if(!Ya.has(S))throw new Error('Unknown field key "'+S+'" on '+e+"."+R)}}ja[e]=t.visitor=l,Ta[e]=t.builder=p,Sa[e]=t.fields=a,wa[e]=t.aliases=u,u.forEach(function(t){Ea[t]=Ea[t]||[],Ea[t].push(e)}),t.validate&&(Aa[e]=t.validate),t.unionShape&&(ka[e]=t.unionShape),$a[e]=t}var en=function(e){return void 0===e&&(e=!1),{unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:qa("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:e?qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"):qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral")}}}]}}},tn=Qa("Standardized");tn("ArrayExpression",{fields:{elements:{validate:Na(Ga("null","Expression","SpreadElement")),default:z.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),tn("AssignmentExpression",{fields:{operator:{validate:z.env.BABEL_TYPES_8_BREAKING?Object.assign(function(){var e=La.apply(void 0,b(ya)),t=La("=");return function(r,a,n){(kr("Pattern",r.left)?t:e)(r,a,n)}}(),{oneOf:ya}):Wa("string")},left:{validate:z.env.BABEL_TYPES_8_BREAKING?qa("Identifier","MemberExpression","OptionalMemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):qa("LVal","OptionalMemberExpression")},right:{validate:qa("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),tn("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:La.apply(void 0,b(ma))},left:{validate:function(){var e=qa("Expression"),t=qa("Expression","PrivateName"),r=Object.assign(function(r,a,n){("in"===r.operator?t:e)(r,a,n)},{oneOfNodeTypes:["Expression","PrivateName"]});return r}()},right:{validate:qa("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),tn("InterpreterDirective",{builder:["value"],fields:{value:{validate:Wa("string")}}}),tn("Directive",{visitor:["value"],fields:{value:{validate:qa("DirectiveLiteral")}}}),tn("DirectiveLiteral",{builder:["value"],fields:{value:{validate:Wa("string")}}}),tn("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:Ba("Directive"),default:[]},body:Ma("Statement")},aliases:["Scopable","BlockParent","Block","Statement"]}),tn("BreakStatement",{visitor:["label"],fields:{label:{validate:qa("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),tn("CallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:qa("Expression","Super","V8IntrinsicIdentifier")},arguments:Ma("Expression","SpreadElement","ArgumentPlaceholder"),typeArguments:{validate:qa("TypeParameterInstantiation"),optional:!0}},z.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:Wa("boolean"),optional:!0},typeParameters:{validate:qa("TSTypeParameterInstantiation"),optional:!0}})}),tn("CatchClause",{visitor:["param","body"],fields:{param:{validate:qa("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:qa("BlockStatement")}},aliases:["Scopable","BlockParent"]}),tn("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:qa("Expression")},consequent:{validate:qa("Expression")},alternate:{validate:qa("Expression")}},aliases:["Expression","Conditional"]}),tn("ContinueStatement",{visitor:["label"],fields:{label:{validate:qa("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),tn("DebuggerStatement",{aliases:["Statement"]}),tn("DoWhileStatement",{builder:["test","body"],visitor:["body","test"],fields:{test:{validate:qa("Expression")},body:{validate:qa("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),tn("EmptyStatement",{aliases:["Statement"]}),tn("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:qa("Expression")}},aliases:["Statement","ExpressionWrapper"]}),tn("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:qa("Program")},comments:{validate:z.env.BABEL_TYPES_8_BREAKING?Fa(qa("CommentBlock","CommentLine")):Object.assign(function(){},{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:Fa(Object.assign(function(){},{type:"any"})),optional:!0}}}),tn("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:z.env.BABEL_TYPES_8_BREAKING?qa("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):qa("VariableDeclaration","LVal")},right:{validate:qa("Expression")},body:{validate:qa("Statement")}}}),tn("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:qa("VariableDeclaration","Expression"),optional:!0},test:{validate:qa("Expression"),optional:!0},update:{validate:qa("Expression"),optional:!0},body:{validate:qa("Statement")}}});var rn=function(){return{params:Ma("FunctionParameter"),generator:{default:!1},async:{default:!1}}},an=function(){return{returnType:{validate:qa("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:qa("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}}},nn=function(){return Object.assign({},rn(),{declare:{validate:Wa("boolean"),optional:!0},id:{validate:qa("Identifier"),optional:!0}})};tn("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","typeParameters","params","predicate","returnType","body"],fields:Object.assign({},nn(),an(),{body:{validate:qa("BlockStatement")},predicate:{validate:qa("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:z.env.BABEL_TYPES_8_BREAKING?function(){var e=qa("Identifier");return function(t,r,a){kr("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}():void 0}),tn("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},rn(),an(),{id:{validate:qa("Identifier"),optional:!0},body:{validate:qa("BlockStatement")},predicate:{validate:qa("DeclaredPredicate","InferredPredicate"),optional:!0}})});var sn,on,dn,cn,ln,un,pn=function(){return{typeAnnotation:{validate:qa("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:Wa("boolean"),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0}}};tn("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","FunctionParameter","PatternLike","LVal","TSEntityName"],fields:Object.assign({},pn(),{name:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("string"),Object.assign(function(e,t,r){if(!Yr(r,!1))throw new TypeError('"'+r+'" is not a valid identifier name')},{type:"string"})):Wa("string")}}),validate:z.env.BABEL_TYPES_8_BREAKING?function(e,t,r){var a=/\.(\w+)$/.exec(t.toString());if(a){var n=y(a,2)[1],s={computed:!1};if("property"===n){if(kr("MemberExpression",e,s))return;if(kr("OptionalMemberExpression",e,s))return}else if("key"===n){if(kr("Property",e,s))return;if(kr("Method",e,s))return}else if("exported"===n){if(kr("ExportSpecifier",e))return}else if("imported"===n){if(kr("ImportSpecifier",e,{imported:r}))return}else if("meta"===n&&kr("MetaProperty",e,{meta:r}))return;if((Jr(r.name)||Hr(r.name,!1))&&"this"!==r.name)throw new TypeError('"'+r.name+'" is not a valid identifier')}}:void 0}),tn("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:qa("Expression")},consequent:{validate:qa("Statement")},alternate:{optional:!0,validate:qa("Statement")}}}),tn("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:qa("Identifier")},body:{validate:qa("Statement")}}}),tn("StringLiteral",{builder:["value"],fields:{value:{validate:Wa("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),tn("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:Ha(Wa("number"),Object.assign(function(e,t,r){},{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),tn("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),tn("BooleanLiteral",{builder:["value"],fields:{value:{validate:Wa("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),tn("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:Wa("string")},flags:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("string"),Object.assign(function(e,t,r){var a=/[^dgimsuvy]/.exec(r);if(a)throw new TypeError('"'+a[0]+'" is not a valid RegExp flag')},{type:"string"})):Wa("string"),default:""}}}),tn("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:La.apply(void 0,b(da))},left:{validate:qa("Expression")},right:{validate:qa("Expression")}}}),tn("MemberExpression",{builder:["object","property","computed"].concat(b(z.env.BABEL_TYPES_8_BREAKING?[]:["optional"])),visitor:["object","property"],aliases:["Expression","LVal","PatternLike"],unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{property:{validate:qa("Expression")}}},{name:"nonComputed",value:[!1],properties:{property:{validate:qa("Identifier","PrivateName")}}}]},fields:Object.assign({object:{validate:qa("Expression","Super")},property:{validate:(sn=qa("Identifier","PrivateName"),on=qa("Expression"),dn=function(e,t,r){var a=e.computed?on:sn;a(e,t,r)},dn.oneOfNodeTypes=["Expression","Identifier","PrivateName"],dn)},computed:{default:!1}},z.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:Wa("boolean"),optional:!0}})}),tn("NewExpression",{inherits:"CallExpression"}),tn("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceType:{validate:La("script","module"),default:"script"},interpreter:{validate:qa("InterpreterDirective"),default:null,optional:!0},directives:{validate:Ba("Directive"),default:[]},body:Ma("Statement")},aliases:["Scopable","BlockParent","Block"]}),tn("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:Ma("ObjectMethod","ObjectProperty","SpreadElement")}}),tn("ObjectMethod",Object.assign({builder:["kind","key","params","body","computed","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},en(),{fields:Object.assign({},rn(),an(),{kind:Object.assign({validate:La("method","get","set")},z.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){var e=qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=qa("Expression"),r=function(r,a,n){var s=r.computed?t:e;s(r,a,n)};return r.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],r}()},decorators:{validate:Ba("Decorator"),optional:!0},body:{validate:qa("BlockStatement")}}),aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]})),tn("ObjectProperty",{builder:["key","value","computed","shorthand"].concat(b(z.env.BABEL_TYPES_8_BREAKING?[]:["decorators"])),unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:qa("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName")}}}]},fields:{computed:{default:!1},key:{validate:function(){var e=qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=qa("Expression"),r=Object.assign(function(r,a,n){(r.computed?t:e)(r,a,n)},{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]});return r}()},value:{validate:qa("Expression","PatternLike")},shorthand:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("boolean"),Object.assign(function(e,t,r){if(r){if(e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true");if(!kr("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")}},{type:"boolean"})):Wa("boolean"),default:!1},decorators:{validate:Ba("Decorator"),optional:!0}},visitor:["decorators","key","value"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:z.env.BABEL_TYPES_8_BREAKING?function(){var e=qa("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=qa("Expression");return function(r,a,n){(kr("ObjectPattern",r)?e:t)(n,"value",n.value)}}():void 0}),tn("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["FunctionParameter","PatternLike","LVal"],deprecatedAlias:"RestProperty",fields:Object.assign({},pn(),{argument:{validate:z.env.BABEL_TYPES_8_BREAKING?qa("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):qa("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression","RestElement","AssignmentPattern")}}),validate:z.env.BABEL_TYPES_8_BREAKING?function(e,t){var r=/(\w+)\[(\d+)\]/.exec(t.toString());if(!r)throw new Error("Internal Babel error: malformed key.");var a=y(r,3),n=a[1],s=a[2];if(e[n].length>+s+1)throw new TypeError("RestElement must be last element of "+n)}:void 0}),tn("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:qa("Expression"),optional:!0}}}),tn("SequenceExpression",{visitor:["expressions"],fields:{expressions:Ma("Expression")},aliases:["Expression"]}),tn("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:qa("Expression")}}}),tn("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:qa("Expression"),optional:!0},consequent:Ma("Statement")}}),tn("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:qa("Expression")},cases:Ma("SwitchCase")}}),tn("ThisExpression",{aliases:["Expression"]}),tn("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:qa("Expression")}}}),tn("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(qa("BlockStatement"),Object.assign(function(e){if(!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")},{oneOfNodeTypes:["BlockStatement"]})):qa("BlockStatement")},handler:{optional:!0,validate:qa("CatchClause")},finalizer:{optional:!0,validate:qa("BlockStatement")}}}),tn("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:qa("Expression")},operator:{validate:La.apply(void 0,b(xa))}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),tn("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:z.env.BABEL_TYPES_8_BREAKING?qa("Identifier","MemberExpression"):qa("Expression")},operator:{validate:La.apply(void 0,b(ca))}},visitor:["argument"],aliases:["Expression"]}),tn("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:Wa("boolean"),optional:!0},kind:{validate:La("var","let","const","using","await using")},declarations:Ma("VariableDeclarator")},validate:z.env.BABEL_TYPES_8_BREAKING?(cn=qa("Identifier","Placeholder"),ln=qa("Identifier","ArrayPattern","ObjectPattern","Placeholder"),un=qa("Identifier","VoidPattern","Placeholder"),function(e,t,r){var a=r.kind,n=r.declarations,s=kr("ForXStatement",e,{left:r});if(s&&1!==n.length)throw new TypeError("Exactly one VariableDeclarator is required in the VariableDeclaration of a "+e.type);for(var o,d=i(n);!(o=d()).done;){var c=o.value;"const"===a||"let"===a||"var"===a?s||c.init?ln(c,"id",c.id):cn(c,"id",c.id):un(c,"id",c.id)}}):void 0}),tn("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:z.env.BABEL_TYPES_8_BREAKING?qa("Identifier","ArrayPattern","ObjectPattern","VoidPattern"):qa("LVal","VoidPattern")},definite:{optional:!0,validate:Wa("boolean")},init:{optional:!0,validate:qa("Expression")}}}),tn("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:qa("Expression")},body:{validate:qa("Statement")}}}),tn("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:qa("Expression")},body:{validate:qa("Statement")}}}),tn("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},pn(),{left:{validate:qa("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:qa("Expression")},decorators:{validate:Ba("Decorator"),optional:!0}})}),tn("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},pn(),{elements:{validate:Ha(Wa("array"),Fa(Ga("null","PatternLike")))}})}),tn("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["typeParameters","params","predicate","returnType","body"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},rn(),an(),{expression:{validate:Wa("boolean")},body:{validate:qa("BlockStatement","Expression")},predicate:{validate:qa("DeclaredPredicate","InferredPredicate"),optional:!0}})}),tn("ClassBody",{visitor:["body"],fields:{body:Ma("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")}}),tn("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body"],aliases:["Scopable","Class","Expression"],fields:(za={id:{validate:qa("Identifier"),optional:!0},typeParameters:{validate:qa("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:qa("ClassBody")},superClass:{optional:!0,validate:qa("Expression")}},za.superTypeParameters={validate:qa("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},za.implements={validate:Ba("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},za.decorators={validate:Ba("Decorator"),optional:!0},za.mixins={validate:qa("InterfaceExtends"),optional:!0},za)}),tn("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:(Ka={id:{validate:qa("Identifier"),optional:!0},typeParameters:{validate:qa("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:qa("ClassBody")},superClass:{optional:!0,validate:qa("Expression")}},Ka.superTypeParameters={validate:qa("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},Ka.implements={validate:Ba("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},Ka.decorators={validate:Ba("Decorator"),optional:!0},Ka.mixins={validate:qa("InterfaceExtends"),optional:!0},Ka.declare={validate:Wa("boolean"),optional:!0},Ka.abstract={validate:Wa("boolean"),optional:!0},Ka),validate:z.env.BABEL_TYPES_8_BREAKING?function(){var e=qa("Identifier");return function(t,r,a){kr("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}():void 0});var fn,gn,mn={attributes:{optional:!0,validate:Ba("ImportAttribute")}};mn.assertions={deprecated:!0,optional:!0,validate:Ba("ImportAttribute")},tn("ExportAllDeclaration",{builder:["source","attributes"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({source:{validate:qa("StringLiteral")},exportKind:Da(La("type","value"))},mn)}),tn("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:Ia("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression"),exportKind:Da(La("value"))}}),tn("ExportNamedDeclaration",{builder:["declaration","specifiers","source","attributes"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({declaration:{optional:!0,validate:z.env.BABEL_TYPES_8_BREAKING?Ha(qa("Declaration"),Object.assign(function(e,t,r){if(r&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration");if(r&&e.source)throw new TypeError("Cannot export a declaration from a source")},{oneOfNodeTypes:["Declaration"]})):qa("Declaration")}},mn,{specifiers:{default:[],validate:Na((fn=qa("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),gn=qa("ExportSpecifier"),z.env.BABEL_TYPES_8_BREAKING?Object.assign(function(e,t,r){(e.source?fn:gn)(e,t,r)},{oneOfNodeTypes:["ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"]}):fn))},source:{validate:qa("StringLiteral"),optional:!0},exportKind:Da(La("type","value"))})}),tn("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:qa("Identifier")},exported:{validate:qa("Identifier","StringLiteral")},exportKind:{validate:La("type","value"),optional:!0}}}),tn("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!z.env.BABEL_TYPES_8_BREAKING)return qa("VariableDeclaration","LVal");var e=qa("VariableDeclaration"),t=qa("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return Object.assign(function(r,a,n){kr("VariableDeclaration",n)?e(r,a,n):t(r,a,n)},{oneOfNodeTypes:["VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"]})}()},right:{validate:qa("Expression")},body:{validate:qa("Statement")},await:{default:!1}}}),tn("ImportDeclaration",{builder:["specifiers","source","attributes"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:Object.assign({},mn,{module:{optional:!0,validate:Wa("boolean")},phase:{default:null,validate:La("source","defer")},specifiers:Ma("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier"),source:{validate:qa("StringLiteral")},importKind:{validate:La("type","typeof","value"),optional:!0}})}),tn("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:qa("Identifier")}}}),tn("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:qa("Identifier")}}}),tn("ImportSpecifier",{visitor:["imported","local"],builder:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:qa("Identifier")},imported:{validate:qa("Identifier","StringLiteral")},importKind:{validate:La("type","typeof","value"),optional:!0}}}),tn("ImportExpression",{visitor:["source","options"],aliases:["Expression"],fields:{phase:{default:null,validate:La("source","defer")},source:{validate:qa("Expression")},options:{validate:qa("Expression"),optional:!0}}}),tn("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(qa("Identifier"),Object.assign(function(e,t,r){var a;switch(r.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!kr("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")},{oneOfNodeTypes:["Identifier"]})):qa("Identifier")},property:{validate:qa("Identifier")}}});var yn=function(){return{abstract:{validate:Wa("boolean"),optional:!0},accessibility:{validate:La("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:Wa("boolean"),optional:!0},key:{validate:Ha(function(){var e=qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=qa("Expression");return function(r,a,n){(r.computed?t:e)(r,a,n)}}(),qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}}},hn=function(){return Object.assign({},rn(),yn(),{params:Ma("FunctionParameter","TSParameterProperty"),kind:{validate:La("get","set","method","constructor"),default:"method"},access:{validate:Ha(Wa("string"),La("public","private","protected")),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0}})};tn("ClassMethod",Object.assign({aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},en(),{fields:Object.assign({},hn(),an(),{body:{validate:qa("BlockStatement")}})})),tn("ObjectPattern",{visitor:["decorators","properties","typeAnnotation"],builder:["properties"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},pn(),{properties:Ma("RestElement","ObjectProperty")})}),tn("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:qa("Expression")}}}),tn("Super",{aliases:["Expression"]}),tn("TaggedTemplateExpression",{visitor:["tag","typeParameters","quasi"],builder:["tag","quasi"],aliases:["Expression"],fields:(Xa={tag:{validate:qa("Expression")},quasi:{validate:qa("TemplateLiteral")}},Xa.typeParameters={validate:qa("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},Xa)}),tn("TemplateElement",{builder:["value","tail"],fields:{value:{validate:Ha(function(e){var t=Object.keys(e);function r(r,a,n){for(var s,o=[],d=i(t);!(s=d()).done;){var c=s.value;try{ts(r,c,n[c],e[c])}catch(e){if(e instanceof TypeError){o.push(e.message);continue}throw e}}if(o.length)throw new TypeError("Property "+a+" of "+r.type+" expected to have the following:\n"+o.join("\n"))}return r.shapeOf=e,r}({raw:{validate:Wa("string")},cooked:{validate:Wa("string"),optional:!0}}),function(e){var t=e.value.raw,r=!1,a=function(){throw new Error("Internal @babel/types error.")},n=ea("template",t,0,0,0,{unterminated:function(){r=!0},strictNumericEscape:a,invalidEscapeSequence:a,numericSeparatorInEscapeSequence:a,unexpectedNumericSeparator:a,invalidDigit:a,invalidCodePoint:a}),s=n.str,o=n.firstInvalidLoc;if(!r)throw new Error("Invalid raw");e.value.cooked=o?null:s})},tail:{default:!1}}}),tn("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:Ma("TemplateElement"),expressions:{validate:Ha(Wa("array"),Fa(qa("Expression","TSType")),function(e,t,r){if(e.quasis.length!==r.length+1)throw new TypeError("Number of "+e.type+" quasis should be exactly one more than the number of expressions.\nExpected "+(r.length+1)+" quasis but got "+e.quasis.length)})}}}),tn("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("boolean"),Object.assign(function(e,t,r){if(r&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")},{type:"boolean"})):Wa("boolean"),default:!1},argument:{optional:!0,validate:qa("Expression")}}}),tn("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:qa("Expression")}}}),tn("Import",{aliases:["Expression"]}),tn("BigIntLiteral",{builder:["value"],fields:{value:{validate:Wa("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),tn("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:qa("Identifier")}}}),tn("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:qa("Expression")},property:{validate:function(){var e=qa("Identifier"),t=qa("Expression"),r=Object.assign(function(r,a,n){(r.computed?t:e)(r,a,n)},{oneOfNodeTypes:["Expression","Identifier"]});return r}()},computed:{default:!1},optional:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("boolean"),Va()):Wa("boolean")}}}),tn("OptionalCallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:Object.assign({callee:{validate:qa("Expression")},arguments:Ma("Expression","SpreadElement","ArgumentPlaceholder"),optional:{validate:z.env.BABEL_TYPES_8_BREAKING?Ha(Wa("boolean"),Va()):Wa("boolean")},typeArguments:{validate:qa("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:qa("TSTypeParameterInstantiation"),optional:!0}})}),tn("ClassProperty",Object.assign({visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"]},en(),{fields:Object.assign({},yn(),{value:{validate:qa("Expression"),optional:!0},definite:{validate:Wa("boolean"),optional:!0},typeAnnotation:{validate:qa("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0},readonly:{validate:Wa("boolean"),optional:!0},declare:{validate:Wa("boolean"),optional:!0},variance:{validate:qa("Variance"),optional:!0}})})),tn("ClassAccessorProperty",Object.assign({visitor:["decorators","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"]},en(!0),{fields:Object.assign({},yn(),{key:{validate:Ha(function(){var e=qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=qa("Expression");return function(r,a,n){(r.computed?t:e)(r,a,n)}}(),qa("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:qa("Expression"),optional:!0},definite:{validate:Wa("boolean"),optional:!0},typeAnnotation:{validate:qa("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0},readonly:{validate:Wa("boolean"),optional:!0},declare:{validate:Wa("boolean"),optional:!0},variance:{validate:qa("Variance"),optional:!0}})})),tn("ClassPrivateProperty",{visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:qa("PrivateName")},value:{validate:qa("Expression"),optional:!0},typeAnnotation:{validate:qa("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0},static:{validate:Wa("boolean"),default:!1},readonly:{validate:Wa("boolean"),optional:!0},optional:{validate:Wa("boolean"),optional:!0},definite:{validate:Wa("boolean"),optional:!0},variance:{validate:qa("Variance"),optional:!0}}}),tn("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["decorators","key","typeParameters","params","returnType","body"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},hn(),an(),{kind:{validate:La("get","set","method"),default:"method"},key:{validate:qa("PrivateName")},body:{validate:qa("BlockStatement")}})}),tn("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:qa("Identifier")}}}),tn("StaticBlock",{visitor:["body"],fields:{body:Ma("Statement")},aliases:["Scopable","BlockParent","FunctionParent"]}),tn("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:qa("Identifier","StringLiteral")},value:{validate:qa("StringLiteral")}}});var bn=Qa("Flow"),vn=function(e){var t="DeclareClass"===e;bn(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends"].concat(b(t?["mixins","implements"]:[]),["body"]),aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:Ia("Identifier"),typeParameters:Oa("TypeParameterDeclaration"),extends:Da(Ba("InterfaceExtends"))},t?{mixins:Da(Ba("InterfaceExtends")),implements:Da(Ba("ClassImplements"))}:{},{body:Ia("ObjectTypeAnnotation")})})};bn("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:Ia("FlowType")}}),bn("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:_a(Wa("boolean"))}}),bn("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("ClassImplements",{visitor:["id","typeParameters"],fields:{id:Ia("Identifier"),typeParameters:Oa("TypeParameterInstantiation")}}),vn("DeclareClass"),bn("DeclareFunction",{builder:["id"],visitor:["id","predicate"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier"),predicate:Oa("DeclaredPredicate")}}),vn("DeclareInterface"),bn("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier","StringLiteral"),body:Ia("BlockStatement"),kind:Da(La("CommonJS","ES"))}}),bn("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:Ia("TypeAnnotation")}}),bn("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier"),typeParameters:Oa("TypeParameterDeclaration"),right:Ia("FlowType")}}),bn("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier"),typeParameters:Oa("TypeParameterDeclaration"),supertype:Oa("FlowType"),impltype:Oa("FlowType")}}),bn("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier")}}),bn("DeclareExportDeclaration",{visitor:["declaration","specifiers","source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({declaration:Oa("Flow"),specifiers:Da(Ba("ExportSpecifier","ExportNamespaceSpecifier")),source:Oa("StringLiteral"),default:Da(Wa("boolean"))},mn)}),bn("DeclareExportAllDeclaration",{visitor:["source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({source:Ia("StringLiteral"),exportKind:Da(La("type","value"))},mn)}),bn("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:Ia("Flow")}}),bn("ExistsTypeAnnotation",{aliases:["FlowType"]}),bn("FunctionTypeAnnotation",{builder:["typeParameters","params","rest","returnType"],visitor:["typeParameters","this","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:Oa("TypeParameterDeclaration"),params:Ma("FunctionTypeParam"),rest:Oa("FunctionTypeParam"),this:Oa("FunctionTypeParam"),returnType:Ia("FlowType")}}),bn("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:Oa("Identifier"),typeAnnotation:Ia("FlowType"),optional:Da(Wa("boolean"))}}),bn("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:Ia("Identifier","QualifiedTypeIdentifier"),typeParameters:Oa("TypeParameterInstantiation")}}),bn("InferredPredicate",{aliases:["FlowPredicate"]}),bn("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:Ia("Identifier","QualifiedTypeIdentifier"),typeParameters:Oa("TypeParameterInstantiation")}}),vn("InterfaceDeclaration"),bn("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:Da(Ba("InterfaceExtends")),body:Ia("ObjectTypeAnnotation")}}),bn("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:_a(Ba("FlowType"))}}),bn("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:Ia("FlowType")}}),bn("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:_a(Wa("number"))}}),bn("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:_a(Ba("ObjectTypeProperty","ObjectTypeSpreadProperty")),indexers:{validate:Ba("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:Ba("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:Ba("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:Wa("boolean"),default:!1},inexact:Da(Wa("boolean"))}}),bn("ObjectTypeInternalSlot",{visitor:["id","value"],builder:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:Ia("Identifier"),value:Ia("FlowType"),optional:_a(Wa("boolean")),static:_a(Wa("boolean")),method:_a(Wa("boolean"))}}),bn("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:Ia("FlowType"),static:_a(Wa("boolean"))}}),bn("ObjectTypeIndexer",{visitor:["variance","id","key","value"],builder:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:Oa("Identifier"),key:Ia("FlowType"),value:Ia("FlowType"),static:_a(Wa("boolean")),variance:Oa("Variance")}}),bn("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:Ia("Identifier","StringLiteral"),value:Ia("FlowType"),kind:_a(La("init","get","set")),static:_a(Wa("boolean")),proto:_a(Wa("boolean")),optional:_a(Wa("boolean")),variance:Oa("Variance"),method:_a(Wa("boolean"))}}),bn("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:Ia("FlowType")}}),bn("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier"),typeParameters:Oa("TypeParameterDeclaration"),supertype:Oa("FlowType"),impltype:Ia("FlowType")}}),bn("QualifiedTypeIdentifier",{visitor:["qualification","id"],builder:["id","qualification"],fields:{id:Ia("Identifier"),qualification:Ia("Identifier","QualifiedTypeIdentifier")}}),bn("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:_a(Wa("string"))}}),bn("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:_a(Ba("FlowType"))}}),bn("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:Ia("FlowType")}}),bn("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:Ia("Identifier"),typeParameters:Oa("TypeParameterDeclaration"),right:Ia("FlowType")}}),bn("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:Ia("FlowType")}}),bn("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:Ia("Expression"),typeAnnotation:Ia("TypeAnnotation")}}),bn("TypeParameter",{visitor:["bound","default","variance"],fields:{name:_a(Wa("string")),bound:Oa("TypeAnnotation"),default:Oa("FlowType"),variance:Oa("Variance")}}),bn("TypeParameterDeclaration",{visitor:["params"],fields:{params:_a(Ba("TypeParameter"))}}),bn("TypeParameterInstantiation",{visitor:["params"],fields:{params:_a(Ba("FlowType"))}}),bn("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:_a(Ba("FlowType"))}}),bn("Variance",{builder:["kind"],fields:{kind:_a(La("minus","plus"))}}),bn("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),bn("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:Ia("Identifier"),body:Ia("EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody")}}),bn("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:_a(Wa("boolean")),members:Ma("EnumBooleanMember"),hasUnknownMembers:_a(Wa("boolean"))}}),bn("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:_a(Wa("boolean")),members:Ma("EnumNumberMember"),hasUnknownMembers:_a(Wa("boolean"))}}),bn("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:_a(Wa("boolean")),members:Ma("EnumStringMember","EnumDefaultedMember"),hasUnknownMembers:_a(Wa("boolean"))}}),bn("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:Ma("EnumDefaultedMember"),hasUnknownMembers:_a(Wa("boolean"))}}),bn("EnumBooleanMember",{aliases:["EnumMember"],builder:["id"],visitor:["id","init"],fields:{id:Ia("Identifier"),init:Ia("BooleanLiteral")}}),bn("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:Ia("Identifier"),init:Ia("NumericLiteral")}}),bn("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:Ia("Identifier"),init:Ia("StringLiteral")}}),bn("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:Ia("Identifier")}}),bn("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:Ia("FlowType"),indexType:Ia("FlowType")}}),bn("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:Ia("FlowType"),indexType:Ia("FlowType"),optional:_a(Wa("boolean"))}});var xn=Qa("JSX");xn("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:qa("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:qa("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),xn("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:qa("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),xn("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:qa("JSXOpeningElement")},closingElement:{optional:!0,validate:qa("JSXClosingElement")},children:Ma("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")},{selfClosing:{validate:Wa("boolean"),optional:!0}})}),xn("JSXEmptyExpression",{}),xn("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:qa("Expression","JSXEmptyExpression")}}}),xn("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:qa("Expression")}}}),xn("JSXIdentifier",{builder:["name"],fields:{name:{validate:Wa("string")}}}),xn("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:qa("JSXMemberExpression","JSXIdentifier")},property:{validate:qa("JSXIdentifier")}}}),xn("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:qa("JSXIdentifier")},name:{validate:qa("JSXIdentifier")}}}),xn("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","typeParameters","typeArguments","attributes"],aliases:["Immutable"],fields:Object.assign({name:{validate:qa("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:Ma("JSXAttribute","JSXSpreadAttribute"),typeArguments:{validate:qa("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:qa("TSTypeParameterInstantiation"),optional:!0}})}),xn("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:qa("Expression")}}}),xn("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:Wa("string")}}}),xn("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:qa("JSXOpeningFragment")},closingFragment:{validate:qa("JSXClosingFragment")},children:Ma("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")}}),xn("JSXOpeningFragment",{aliases:["Immutable"]}),xn("JSXClosingFragment",{aliases:["Immutable"]});for(var Rn=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"],jn={Declaration:["Statement"],Pattern:["PatternLike","LVal"]},wn=0,En=Rn;wn<En.length;wn++){var Sn=En[wn],Tn=wa[Sn];null!=Tn&&Tn.length&&(jn[Sn]=Tn)}var Pn={};Object.keys(jn).forEach(function(e){jn[e].forEach(function(t){hasOwnProperty.call(Pn,t)||(Pn[t]=[]),Pn[t].push(e)})});var An,kn,Cn,_n=Qa("Miscellaneous");_n("Noop",{visitor:[]}),_n("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:Object.assign({name:{validate:qa("Identifier")},expectedNode:{validate:La.apply(void 0,b(Rn))}},pn())}),_n("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:Wa("string")}}}),Za("ArgumentPlaceholder",{}),Za("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:z.env.BABEL_TYPES_8_BREAKING?{object:{validate:qa("Expression")},callee:{validate:qa("Expression")}}:{object:{validate:Object.assign(function(){},{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign(function(){},{oneOfNodeTypes:["Expression"]})}}}),Za("Decorator",{visitor:["expression"],fields:{expression:{validate:qa("Expression")}}}),Za("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:qa("BlockStatement")},async:{validate:Wa("boolean"),default:!1}}}),Za("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:qa("Identifier")}}}),Za("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:Ma("ObjectProperty","SpreadElement")}}),Za("TupleExpression",{fields:{elements:{validate:Ba("Expression","SpreadElement"),default:[]}},visitor:["elements"],aliases:["Expression"]}),Za("DecimalLiteral",{builder:["value"],fields:{value:{validate:Wa("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),Za("ModuleExpression",{visitor:["body"],fields:{body:{validate:qa("Program")}},aliases:["Expression"]}),Za("TopicReference",{aliases:["Expression"]}),Za("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:qa("Expression")}},aliases:["Expression"]}),Za("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:qa("Expression")}},aliases:["Expression"]}),Za("PipelinePrimaryTopicReference",{aliases:["Expression"]}),Za("VoidPattern",{aliases:["Pattern","PatternLike","FunctionParameter"]});var In=Qa("TypeScript"),Dn=Wa("boolean"),On=function(){return{returnType:{validate:qa("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:qa("TSTypeParameterDeclaration","Noop"),optional:!0}}};In("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:La("public","private","protected"),optional:!0},readonly:{validate:Wa("boolean"),optional:!0},parameter:{validate:qa("Identifier","AssignmentPattern")},override:{validate:Wa("boolean"),optional:!0},decorators:{validate:Ba("Decorator"),optional:!0}}}),In("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},nn(),On())}),In("TSDeclareMethod",Object.assign({visitor:["decorators","key","typeParameters","params","returnType"]},en(),{fields:Object.assign({},hn(),On())})),In("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:Ia("TSEntityName"),right:Ia("Identifier")}});var Nn=function(){var e;return(e={typeParameters:Oa("TSTypeParameterDeclaration")}).parameters=Ma("ArrayPattern","Identifier","ObjectPattern","RestElement"),e.typeAnnotation=Oa("TSTypeAnnotation"),e},Bn={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:Nn()};In("TSCallSignatureDeclaration",Bn),In("TSConstructSignatureDeclaration",Bn);var Mn=function(){return{key:Ia("Expression"),computed:{default:!1},optional:Da(Dn)}};In("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation"],fields:Object.assign({},Mn(),{readonly:Da(Dn),typeAnnotation:Oa("TSTypeAnnotation"),kind:{optional:!0,validate:La("get","set")}})}),In("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},Nn(),Mn(),{kind:{validate:La("method","get","set")}})}),In("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:Da(Dn),static:Da(Dn),parameters:Ma("Identifier"),typeAnnotation:Oa("TSTypeAnnotation")}});for(var Fn=0,Ln=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];Fn<Ln.length;Fn++){In(Ln[Fn],{aliases:["TSType","TSBaseType"],visitor:[],fields:{}})}In("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});var Un={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};In("TSFunctionType",Object.assign({},Un,{fields:Nn()})),In("TSConstructorType",Object.assign({},Un,{fields:Object.assign({},Nn(),{abstract:Da(Dn)})})),In("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:(An={typeName:Ia("TSEntityName")},An.typeParameters=Oa("TSTypeParameterInstantiation"),An)}),In("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:Ia("Identifier","TSThisType"),typeAnnotation:Oa("TSTypeAnnotation"),asserts:Da(Dn)}}),In("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:(kn={exprName:Ia("TSEntityName","TSImportType")},kn.typeParameters=Oa("TSTypeParameterInstantiation"),kn)}),In("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:Ma("TSTypeElement")}}),In("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:Ia("TSType")}}),In("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:Ma("TSType","TSNamedTupleMember")}}),In("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:Ia("TSType")}}),In("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:Ia("TSType")}}),In("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:Ia("Identifier"),optional:{validate:Dn,default:!1},elementType:Ia("TSType")}});var qn={aliases:["TSType"],visitor:["types"],fields:{types:Ma("TSType")}};In("TSUnionType",qn),In("TSIntersectionType",qn),In("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:Ia("TSType"),extendsType:Ia("TSType"),trueType:Ia("TSType"),falseType:Ia("TSType")}}),In("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:Ia("TSTypeParameter")}}),In("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:Ia("TSType")}}),In("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],builder:["typeAnnotation","operator"],fields:{operator:{validate:Wa("string"),default:"keyof"},typeAnnotation:Ia("TSType")}}),In("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:Ia("TSType"),indexType:Ia("TSType")}}),In("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","nameType","typeAnnotation"],builder:["typeParameter","typeAnnotation","nameType"],fields:Object.assign({},{typeParameter:Ia("TSTypeParameter")},{readonly:Da(La(!0,!1,"+","-")),optional:Da(La(!0,!1,"+","-")),typeAnnotation:Oa("TSType"),nameType:Oa("TSType")})}),In("TSTemplateLiteralType",{aliases:["TSType","TSBaseType"],visitor:["quasis","types"],fields:{quasis:Ma("TemplateElement"),types:{validate:Ha(Wa("array"),Fa(qa("TSType")),function(e,t,r){if(e.quasis.length!==r.length+1)throw new TypeError("Number of "+e.type+" quasis should be exactly one more than the number of types.\nExpected "+(r.length+1)+" quasis but got "+e.quasis.length)})}}}),In("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){var e=qa("NumericLiteral","BigIntLiteral"),t=La("-"),r=qa("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral"),a=function(a,n,s){kr("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):r(a,n,s)};return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),In("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:Ia("TSEntityName"),typeParameters:Oa("TSTypeParameterInstantiation")}}),In("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:Da(Dn),id:Ia("Identifier"),typeParameters:Oa("TSTypeParameterDeclaration"),extends:Da(Ba("TSExpressionWithTypeArguments")),body:Ia("TSInterfaceBody")}}),In("TSInterfaceBody",{visitor:["body"],fields:{body:Ma("TSTypeElement")}}),In("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:Da(Dn),id:Ia("Identifier"),typeParameters:Oa("TSTypeParameterDeclaration"),typeAnnotation:Ia("TSType")}}),In("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:(Cn={expression:Ia("Expression")},Cn.typeParameters=Oa("TSTypeParameterInstantiation"),Cn)});var Gn={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:Ia("Expression"),typeAnnotation:Ia("TSType")}};In("TSAsExpression",Gn),In("TSSatisfiesExpression",Gn),In("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:Ia("TSType"),expression:Ia("Expression")}}),In("TSEnumBody",{visitor:["members"],fields:{members:Ma("TSEnumMember")}}),In("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:Da(Dn),const:Da(Dn),id:Ia("Identifier"),members:Ma("TSEnumMember"),initializer:Oa("Expression"),body:Oa("TSEnumBody")}}),In("TSEnumMember",{visitor:["id","initializer"],fields:{id:Ia("Identifier","StringLiteral"),initializer:Oa("Expression")}}),In("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:Object.assign({kind:{validate:La("global","module","namespace")},declare:Da(Dn)},{global:Da(Dn)},{id:Ia("Identifier","StringLiteral"),body:Ia("TSModuleBlock","TSModuleDeclaration")})}),In("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:Ma("Statement")}}),In("TSImportType",{aliases:["TSType"],builder:["argument","qualifier","typeParameters"],visitor:["argument","options","qualifier","typeParameters"],fields:Object.assign({},{argument:Ia("StringLiteral")},{qualifier:Oa("TSEntityName")},{typeParameters:Oa("TSTypeParameterInstantiation")},{options:{validate:qa("ObjectExpression"),optional:!0}})}),In("TSImportEqualsDeclaration",{aliases:["Statement","Declaration"],visitor:["id","moduleReference"],fields:Object.assign({},{isExport:_a(Dn)},{id:Ia("Identifier"),moduleReference:Ia("TSEntityName","TSExternalModuleReference"),importKind:{validate:La("type","value"),optional:!0}})}),In("TSExternalModuleReference",{visitor:["expression"],fields:{expression:Ia("StringLiteral")}}),In("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:Ia("Expression")}}),In("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:Ia("Expression")}}),In("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:Ia("Identifier")}}),In("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:qa("TSType")}}}),In("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:Ma("TSType")}}),In("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:Ma("TSTypeParameter")}}),In("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:Wa("string")},in:{validate:Wa("boolean"),optional:!0},out:{validate:Wa("boolean"),optional:!0},const:{validate:Wa("boolean"),optional:!0},constraint:{validate:qa("TSType"),optional:!0},default:{validate:qa("TSType"),optional:!0}}});var Wn={ModuleDeclaration:"ImportOrExportDeclaration"};Object.keys(Wn).forEach(function(e){Ea[e]=Ea[Wn[e]]});for(var Vn,Hn=i(Ua);!(Vn=Hn()).done;)for(var zn,Kn=Vn.value,Xn=Kn.types,Jn=Kn.set,Yn=i(Xn);!(zn=Yn()).done;){var $n=zn.value,Qn=Ea[$n];Qn?Qn.forEach(Jn.add,Jn):Jn.add($n)}var Zn=[].concat(Object.keys(ja),Object.keys(Ea),Object.keys(Pa));function es(e,t,r){if(e){var a=Sa[e.type];if(a)ts(e,t,r,a[t]),rs(e,t,r)}}function ts(e,t,r,a){null!=a&&a.validate&&(a.optional&&null==r||a.validate(e,t,r))}function rs(e,t,r){var a,n=null==r?void 0:r.type;null!=n&&(null==(a=Aa[n])||a.call(Aa,e,t,r))}var as=function(e,t,r,a,n){if(null!=e&&e.validate&&(!e.optional||null!=a)&&(e.validate(t,r,a),n)){var s,o=a.type;if(null==o)return;null==(s=Aa[o])||s.call(Aa,t,r,a)}},ns=Sa;function ss(e){"bigint"==typeof e&&(e=e.toString());var t={type:"BigIntLiteral",value:e},r=ns.BigIntLiteral;return as(r.value,t,"value",e),t}function os(e){void 0===e&&(e=[]);var t={type:"ArrayExpression",elements:e},r=ns.ArrayExpression;return as(r.elements,t,"elements",e,1),t}function is(e,t,r){var a={type:"AssignmentExpression",operator:e,left:t,right:r},n=ns.AssignmentExpression;return as(n.operator,a,"operator",e),as(n.left,a,"left",t,1),as(n.right,a,"right",r,1),a}function ds(e,t,r){var a={type:"BinaryExpression",operator:e,left:t,right:r},n=ns.BinaryExpression;return as(n.operator,a,"operator",e),as(n.left,a,"left",t,1),as(n.right,a,"right",r,1),a}function cs(e){var t={type:"InterpreterDirective",value:e},r=ns.InterpreterDirective;return as(r.value,t,"value",e),t}function ls(e){var t={type:"Directive",value:e},r=ns.Directive;return as(r.value,t,"value",e,1),t}function us(e){var t={type:"DirectiveLiteral",value:e},r=ns.DirectiveLiteral;return as(r.value,t,"value",e),t}function ps(e,t){void 0===t&&(t=[]);var r={type:"BlockStatement",body:e,directives:t},a=ns.BlockStatement;return as(a.body,r,"body",e,1),as(a.directives,r,"directives",t,1),r}function fs(e){void 0===e&&(e=null);var t={type:"BreakStatement",label:e},r=ns.BreakStatement;return as(r.label,t,"label",e,1),t}function gs(e,t){var r={type:"CallExpression",callee:e,arguments:t},a=ns.CallExpression;return as(a.callee,r,"callee",e,1),as(a.arguments,r,"arguments",t,1),r}function ms(e,t){void 0===e&&(e=null);var r={type:"CatchClause",param:e,body:t},a=ns.CatchClause;return as(a.param,r,"param",e,1),as(a.body,r,"body",t,1),r}function ys(e,t,r){var a={type:"ConditionalExpression",test:e,consequent:t,alternate:r},n=ns.ConditionalExpression;return as(n.test,a,"test",e,1),as(n.consequent,a,"consequent",t,1),as(n.alternate,a,"alternate",r,1),a}function hs(e){void 0===e&&(e=null);var t={type:"ContinueStatement",label:e},r=ns.ContinueStatement;return as(r.label,t,"label",e,1),t}function bs(){return{type:"DebuggerStatement"}}function vs(e,t){var r={type:"DoWhileStatement",test:e,body:t},a=ns.DoWhileStatement;return as(a.test,r,"test",e,1),as(a.body,r,"body",t,1),r}function xs(){return{type:"EmptyStatement"}}function Rs(e){var t={type:"ExpressionStatement",expression:e},r=ns.ExpressionStatement;return as(r.expression,t,"expression",e,1),t}function js(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"File",program:e,comments:t,tokens:r},n=ns.File;return as(n.program,a,"program",e,1),as(n.comments,a,"comments",t,1),as(n.tokens,a,"tokens",r),a}function ws(e,t,r){var a={type:"ForInStatement",left:e,right:t,body:r},n=ns.ForInStatement;return as(n.left,a,"left",e,1),as(n.right,a,"right",t,1),as(n.body,a,"body",r,1),a}function Es(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"ForStatement",init:e,test:t,update:r,body:a},s=ns.ForStatement;return as(s.init,n,"init",e,1),as(s.test,n,"test",t,1),as(s.update,n,"update",r,1),as(s.body,n,"body",a,1),n}function Ss(e,t,r,a,n){void 0===e&&(e=null),void 0===a&&(a=!1),void 0===n&&(n=!1);var s={type:"FunctionDeclaration",id:e,params:t,body:r,generator:a,async:n},o=ns.FunctionDeclaration;return as(o.id,s,"id",e,1),as(o.params,s,"params",t,1),as(o.body,s,"body",r,1),as(o.generator,s,"generator",a),as(o.async,s,"async",n),s}function Ts(e,t,r,a,n){void 0===e&&(e=null),void 0===a&&(a=!1),void 0===n&&(n=!1);var s={type:"FunctionExpression",id:e,params:t,body:r,generator:a,async:n},o=ns.FunctionExpression;return as(o.id,s,"id",e,1),as(o.params,s,"params",t,1),as(o.body,s,"body",r,1),as(o.generator,s,"generator",a),as(o.async,s,"async",n),s}function Ps(e){var t={type:"Identifier",name:e},r=ns.Identifier;return as(r.name,t,"name",e),t}function As(e,t,r){void 0===r&&(r=null);var a={type:"IfStatement",test:e,consequent:t,alternate:r},n=ns.IfStatement;return as(n.test,a,"test",e,1),as(n.consequent,a,"consequent",t,1),as(n.alternate,a,"alternate",r,1),a}function ks(e,t){var r={type:"LabeledStatement",label:e,body:t},a=ns.LabeledStatement;return as(a.label,r,"label",e,1),as(a.body,r,"body",t,1),r}function Cs(e){var t={type:"StringLiteral",value:e},r=ns.StringLiteral;return as(r.value,t,"value",e),t}function _s(e){var t={type:"NumericLiteral",value:e},r=ns.NumericLiteral;return as(r.value,t,"value",e),t}function Is(){return{type:"NullLiteral"}}function Ds(e){var t={type:"BooleanLiteral",value:e},r=ns.BooleanLiteral;return as(r.value,t,"value",e),t}function Os(e,t){void 0===t&&(t="");var r={type:"RegExpLiteral",pattern:e,flags:t},a=ns.RegExpLiteral;return as(a.pattern,r,"pattern",e),as(a.flags,r,"flags",t),r}function Ns(e,t,r){var a={type:"LogicalExpression",operator:e,left:t,right:r},n=ns.LogicalExpression;return as(n.operator,a,"operator",e),as(n.left,a,"left",t,1),as(n.right,a,"right",r,1),a}function Bs(e,t,r,a){void 0===r&&(r=!1),void 0===a&&(a=null);var n={type:"MemberExpression",object:e,property:t,computed:r,optional:a},s=ns.MemberExpression;return as(s.object,n,"object",e,1),as(s.property,n,"property",t,1),as(s.computed,n,"computed",r),as(s.optional,n,"optional",a),n}function Ms(e,t){var r={type:"NewExpression",callee:e,arguments:t},a=ns.NewExpression;return as(a.callee,r,"callee",e,1),as(a.arguments,r,"arguments",t,1),r}function Fs(e,t,r,a){void 0===t&&(t=[]),void 0===r&&(r="script"),void 0===a&&(a=null);var n={type:"Program",body:e,directives:t,sourceType:r,interpreter:a},s=ns.Program;return as(s.body,n,"body",e,1),as(s.directives,n,"directives",t,1),as(s.sourceType,n,"sourceType",r),as(s.interpreter,n,"interpreter",a,1),n}function Ls(e){var t={type:"ObjectExpression",properties:e},r=ns.ObjectExpression;return as(r.properties,t,"properties",e,1),t}function Us(e,t,r,a,n,s,o){void 0===e&&(e="method"),void 0===n&&(n=!1),void 0===s&&(s=!1),void 0===o&&(o=!1);var i={type:"ObjectMethod",kind:e,key:t,params:r,body:a,computed:n,generator:s,async:o},d=ns.ObjectMethod;return as(d.kind,i,"kind",e),as(d.key,i,"key",t,1),as(d.params,i,"params",r,1),as(d.body,i,"body",a,1),as(d.computed,i,"computed",n),as(d.generator,i,"generator",s),as(d.async,i,"async",o),i}function qs(e,t,r,a,n){void 0===r&&(r=!1),void 0===a&&(a=!1),void 0===n&&(n=null);var s={type:"ObjectProperty",key:e,value:t,computed:r,shorthand:a,decorators:n},o=ns.ObjectProperty;return as(o.key,s,"key",e,1),as(o.value,s,"value",t,1),as(o.computed,s,"computed",r),as(o.shorthand,s,"shorthand",a),as(o.decorators,s,"decorators",n,1),s}function Gs(e){var t={type:"RestElement",argument:e},r=ns.RestElement;return as(r.argument,t,"argument",e,1),t}function Ws(e){void 0===e&&(e=null);var t={type:"ReturnStatement",argument:e},r=ns.ReturnStatement;return as(r.argument,t,"argument",e,1),t}function Vs(e){var t={type:"SequenceExpression",expressions:e},r=ns.SequenceExpression;return as(r.expressions,t,"expressions",e,1),t}function Hs(e){var t={type:"ParenthesizedExpression",expression:e},r=ns.ParenthesizedExpression;return as(r.expression,t,"expression",e,1),t}function zs(e,t){void 0===e&&(e=null);var r={type:"SwitchCase",test:e,consequent:t},a=ns.SwitchCase;return as(a.test,r,"test",e,1),as(a.consequent,r,"consequent",t,1),r}function Ks(e,t){var r={type:"SwitchStatement",discriminant:e,cases:t},a=ns.SwitchStatement;return as(a.discriminant,r,"discriminant",e,1),as(a.cases,r,"cases",t,1),r}function Xs(){return{type:"ThisExpression"}}function Js(e){var t={type:"ThrowStatement",argument:e},r=ns.ThrowStatement;return as(r.argument,t,"argument",e,1),t}function Ys(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"TryStatement",block:e,handler:t,finalizer:r},n=ns.TryStatement;return as(n.block,a,"block",e,1),as(n.handler,a,"handler",t,1),as(n.finalizer,a,"finalizer",r,1),a}function $s(e,t,r){void 0===r&&(r=!0);var a={type:"UnaryExpression",operator:e,argument:t,prefix:r},n=ns.UnaryExpression;return as(n.operator,a,"operator",e),as(n.argument,a,"argument",t,1),as(n.prefix,a,"prefix",r),a}function Qs(e,t,r){void 0===r&&(r=!1);var a={type:"UpdateExpression",operator:e,argument:t,prefix:r},n=ns.UpdateExpression;return as(n.operator,a,"operator",e),as(n.argument,a,"argument",t,1),as(n.prefix,a,"prefix",r),a}function Zs(e,t){var r={type:"VariableDeclaration",kind:e,declarations:t},a=ns.VariableDeclaration;return as(a.kind,r,"kind",e),as(a.declarations,r,"declarations",t,1),r}function eo(e,t){void 0===t&&(t=null);var r={type:"VariableDeclarator",id:e,init:t},a=ns.VariableDeclarator;return as(a.id,r,"id",e,1),as(a.init,r,"init",t,1),r}function to(e,t){var r={type:"WhileStatement",test:e,body:t},a=ns.WhileStatement;return as(a.test,r,"test",e,1),as(a.body,r,"body",t,1),r}function ro(e,t){var r={type:"WithStatement",object:e,body:t},a=ns.WithStatement;return as(a.object,r,"object",e,1),as(a.body,r,"body",t,1),r}function ao(e,t){var r={type:"AssignmentPattern",left:e,right:t},a=ns.AssignmentPattern;return as(a.left,r,"left",e,1),as(a.right,r,"right",t,1),r}function no(e){var t={type:"ArrayPattern",elements:e},r=ns.ArrayPattern;return as(r.elements,t,"elements",e,1),t}function so(e,t,r){void 0===r&&(r=!1);var a={type:"ArrowFunctionExpression",params:e,body:t,async:r,expression:null},n=ns.ArrowFunctionExpression;return as(n.params,a,"params",e,1),as(n.body,a,"body",t,1),as(n.async,a,"async",r),a}function oo(e){var t={type:"ClassBody",body:e},r=ns.ClassBody;return as(r.body,t,"body",e,1),t}function io(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=null),void 0===a&&(a=null);var n={type:"ClassExpression",id:e,superClass:t,body:r,decorators:a},s=ns.ClassExpression;return as(s.id,n,"id",e,1),as(s.superClass,n,"superClass",t,1),as(s.body,n,"body",r,1),as(s.decorators,n,"decorators",a,1),n}function co(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=null),void 0===a&&(a=null);var n={type:"ClassDeclaration",id:e,superClass:t,body:r,decorators:a},s=ns.ClassDeclaration;return as(s.id,n,"id",e,1),as(s.superClass,n,"superClass",t,1),as(s.body,n,"body",r,1),as(s.decorators,n,"decorators",a,1),n}function lo(e,t){void 0===t&&(t=null);var r={type:"ExportAllDeclaration",source:e,attributes:t},a=ns.ExportAllDeclaration;return as(a.source,r,"source",e,1),as(a.attributes,r,"attributes",t,1),r}function uo(e){var t={type:"ExportDefaultDeclaration",declaration:e},r=ns.ExportDefaultDeclaration;return as(r.declaration,t,"declaration",e,1),t}function po(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=[]),void 0===r&&(r=null),void 0===a&&(a=null);var n={type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:r,attributes:a},s=ns.ExportNamedDeclaration;return as(s.declaration,n,"declaration",e,1),as(s.specifiers,n,"specifiers",t,1),as(s.source,n,"source",r,1),as(s.attributes,n,"attributes",a,1),n}function fo(e,t){var r={type:"ExportSpecifier",local:e,exported:t},a=ns.ExportSpecifier;return as(a.local,r,"local",e,1),as(a.exported,r,"exported",t,1),r}function go(e,t,r,a){void 0===a&&(a=!1);var n={type:"ForOfStatement",left:e,right:t,body:r,await:a},s=ns.ForOfStatement;return as(s.left,n,"left",e,1),as(s.right,n,"right",t,1),as(s.body,n,"body",r,1),as(s.await,n,"await",a),n}function mo(e,t,r){void 0===r&&(r=null);var a={type:"ImportDeclaration",specifiers:e,source:t,attributes:r},n=ns.ImportDeclaration;return as(n.specifiers,a,"specifiers",e,1),as(n.source,a,"source",t,1),as(n.attributes,a,"attributes",r,1),a}function yo(e){var t={type:"ImportDefaultSpecifier",local:e},r=ns.ImportDefaultSpecifier;return as(r.local,t,"local",e,1),t}function ho(e){var t={type:"ImportNamespaceSpecifier",local:e},r=ns.ImportNamespaceSpecifier;return as(r.local,t,"local",e,1),t}function bo(e,t){var r={type:"ImportSpecifier",local:e,imported:t},a=ns.ImportSpecifier;return as(a.local,r,"local",e,1),as(a.imported,r,"imported",t,1),r}function vo(e,t){void 0===t&&(t=null);var r={type:"ImportExpression",source:e,options:t},a=ns.ImportExpression;return as(a.source,r,"source",e,1),as(a.options,r,"options",t,1),r}function xo(e,t){var r={type:"MetaProperty",meta:e,property:t},a=ns.MetaProperty;return as(a.meta,r,"meta",e,1),as(a.property,r,"property",t,1),r}function Ro(e,t,r,a,n,s,o,i){void 0===e&&(e="method"),void 0===n&&(n=!1),void 0===s&&(s=!1),void 0===o&&(o=!1),void 0===i&&(i=!1);var d={type:"ClassMethod",kind:e,key:t,params:r,body:a,computed:n,static:s,generator:o,async:i},c=ns.ClassMethod;return as(c.kind,d,"kind",e),as(c.key,d,"key",t,1),as(c.params,d,"params",r,1),as(c.body,d,"body",a,1),as(c.computed,d,"computed",n),as(c.static,d,"static",s),as(c.generator,d,"generator",o),as(c.async,d,"async",i),d}function jo(e){var t={type:"ObjectPattern",properties:e},r=ns.ObjectPattern;return as(r.properties,t,"properties",e,1),t}function wo(e){var t={type:"SpreadElement",argument:e},r=ns.SpreadElement;return as(r.argument,t,"argument",e,1),t}function Eo(){return{type:"Super"}}function So(e,t){var r={type:"TaggedTemplateExpression",tag:e,quasi:t},a=ns.TaggedTemplateExpression;return as(a.tag,r,"tag",e,1),as(a.quasi,r,"quasi",t,1),r}function To(e,t){void 0===t&&(t=!1);var r={type:"TemplateElement",value:e,tail:t},a=ns.TemplateElement;return as(a.value,r,"value",e),as(a.tail,r,"tail",t),r}function Po(e,t){var r={type:"TemplateLiteral",quasis:e,expressions:t},a=ns.TemplateLiteral;return as(a.quasis,r,"quasis",e,1),as(a.expressions,r,"expressions",t,1),r}function Ao(e,t){void 0===e&&(e=null),void 0===t&&(t=!1);var r={type:"YieldExpression",argument:e,delegate:t},a=ns.YieldExpression;return as(a.argument,r,"argument",e,1),as(a.delegate,r,"delegate",t),r}function ko(e){var t={type:"AwaitExpression",argument:e},r=ns.AwaitExpression;return as(r.argument,t,"argument",e,1),t}function Co(){return{type:"Import"}}function _o(e){var t={type:"ExportNamespaceSpecifier",exported:e},r=ns.ExportNamespaceSpecifier;return as(r.exported,t,"exported",e,1),t}function Io(e,t,r,a){void 0===r&&(r=!1);var n={type:"OptionalMemberExpression",object:e,property:t,computed:r,optional:a},s=ns.OptionalMemberExpression;return as(s.object,n,"object",e,1),as(s.property,n,"property",t,1),as(s.computed,n,"computed",r),as(s.optional,n,"optional",a),n}function Do(e,t,r){var a={type:"OptionalCallExpression",callee:e,arguments:t,optional:r},n=ns.OptionalCallExpression;return as(n.callee,a,"callee",e,1),as(n.arguments,a,"arguments",t,1),as(n.optional,a,"optional",r),a}function Oo(e,t,r,a,n,s){void 0===t&&(t=null),void 0===r&&(r=null),void 0===a&&(a=null),void 0===n&&(n=!1),void 0===s&&(s=!1);var o={type:"ClassProperty",key:e,value:t,typeAnnotation:r,decorators:a,computed:n,static:s},i=ns.ClassProperty;return as(i.key,o,"key",e,1),as(i.value,o,"value",t,1),as(i.typeAnnotation,o,"typeAnnotation",r,1),as(i.decorators,o,"decorators",a,1),as(i.computed,o,"computed",n),as(i.static,o,"static",s),o}function No(e,t,r,a,n,s){void 0===t&&(t=null),void 0===r&&(r=null),void 0===a&&(a=null),void 0===n&&(n=!1),void 0===s&&(s=!1);var o={type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:r,decorators:a,computed:n,static:s},i=ns.ClassAccessorProperty;return as(i.key,o,"key",e,1),as(i.value,o,"value",t,1),as(i.typeAnnotation,o,"typeAnnotation",r,1),as(i.decorators,o,"decorators",a,1),as(i.computed,o,"computed",n),as(i.static,o,"static",s),o}function Bo(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null),void 0===a&&(a=!1);var n={type:"ClassPrivateProperty",key:e,value:t,decorators:r,static:a},s=ns.ClassPrivateProperty;return as(s.key,n,"key",e,1),as(s.value,n,"value",t,1),as(s.decorators,n,"decorators",r,1),as(s.static,n,"static",a),n}function Mo(e,t,r,a,n){void 0===e&&(e="method"),void 0===n&&(n=!1);var s={type:"ClassPrivateMethod",kind:e,key:t,params:r,body:a,static:n},o=ns.ClassPrivateMethod;return as(o.kind,s,"kind",e),as(o.key,s,"key",t,1),as(o.params,s,"params",r,1),as(o.body,s,"body",a,1),as(o.static,s,"static",n),s}function Fo(e){var t={type:"PrivateName",id:e},r=ns.PrivateName;return as(r.id,t,"id",e,1),t}function Lo(e){var t={type:"StaticBlock",body:e},r=ns.StaticBlock;return as(r.body,t,"body",e,1),t}function Uo(e,t){var r={type:"ImportAttribute",key:e,value:t},a=ns.ImportAttribute;return as(a.key,r,"key",e,1),as(a.value,r,"value",t,1),r}function qo(){return{type:"AnyTypeAnnotation"}}function Go(e){var t={type:"ArrayTypeAnnotation",elementType:e},r=ns.ArrayTypeAnnotation;return as(r.elementType,t,"elementType",e,1),t}function Wo(){return{type:"BooleanTypeAnnotation"}}function Vo(e){var t={type:"BooleanLiteralTypeAnnotation",value:e},r=ns.BooleanLiteralTypeAnnotation;return as(r.value,t,"value",e),t}function Ho(){return{type:"NullLiteralTypeAnnotation"}}function zo(e,t){void 0===t&&(t=null);var r={type:"ClassImplements",id:e,typeParameters:t},a=ns.ClassImplements;return as(a.id,r,"id",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function Ko(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"DeclareClass",id:e,typeParameters:t,extends:r,body:a},s=ns.DeclareClass;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.extends,n,"extends",r,1),as(s.body,n,"body",a,1),n}function Xo(e){var t={type:"DeclareFunction",id:e},r=ns.DeclareFunction;return as(r.id,t,"id",e,1),t}function Jo(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"DeclareInterface",id:e,typeParameters:t,extends:r,body:a},s=ns.DeclareInterface;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.extends,n,"extends",r,1),as(s.body,n,"body",a,1),n}function Yo(e,t,r){void 0===r&&(r=null);var a={type:"DeclareModule",id:e,body:t,kind:r},n=ns.DeclareModule;return as(n.id,a,"id",e,1),as(n.body,a,"body",t,1),as(n.kind,a,"kind",r),a}function $o(e){var t={type:"DeclareModuleExports",typeAnnotation:e},r=ns.DeclareModuleExports;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function Qo(e,t,r){void 0===t&&(t=null);var a={type:"DeclareTypeAlias",id:e,typeParameters:t,right:r},n=ns.DeclareTypeAlias;return as(n.id,a,"id",e,1),as(n.typeParameters,a,"typeParameters",t,1),as(n.right,a,"right",r,1),a}function Zo(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:r},n=ns.DeclareOpaqueType;return as(n.id,a,"id",e,1),as(n.typeParameters,a,"typeParameters",t,1),as(n.supertype,a,"supertype",r,1),a}function ei(e){var t={type:"DeclareVariable",id:e},r=ns.DeclareVariable;return as(r.id,t,"id",e,1),t}function ti(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=null),void 0===r&&(r=null),void 0===a&&(a=null);var n={type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:r,attributes:a},s=ns.DeclareExportDeclaration;return as(s.declaration,n,"declaration",e,1),as(s.specifiers,n,"specifiers",t,1),as(s.source,n,"source",r,1),as(s.attributes,n,"attributes",a,1),n}function ri(e,t){void 0===t&&(t=null);var r={type:"DeclareExportAllDeclaration",source:e,attributes:t},a=ns.DeclareExportAllDeclaration;return as(a.source,r,"source",e,1),as(a.attributes,r,"attributes",t,1),r}function ai(e){var t={type:"DeclaredPredicate",value:e},r=ns.DeclaredPredicate;return as(r.value,t,"value",e,1),t}function ni(){return{type:"ExistsTypeAnnotation"}}function si(e,t,r,a){void 0===e&&(e=null),void 0===r&&(r=null);var n={type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:r,returnType:a},s=ns.FunctionTypeAnnotation;return as(s.typeParameters,n,"typeParameters",e,1),as(s.params,n,"params",t,1),as(s.rest,n,"rest",r,1),as(s.returnType,n,"returnType",a,1),n}function oi(e,t){void 0===e&&(e=null);var r={type:"FunctionTypeParam",name:e,typeAnnotation:t},a=ns.FunctionTypeParam;return as(a.name,r,"name",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function ii(e,t){void 0===t&&(t=null);var r={type:"GenericTypeAnnotation",id:e,typeParameters:t},a=ns.GenericTypeAnnotation;return as(a.id,r,"id",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function di(){return{type:"InferredPredicate"}}function ci(e,t){void 0===t&&(t=null);var r={type:"InterfaceExtends",id:e,typeParameters:t},a=ns.InterfaceExtends;return as(a.id,r,"id",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function li(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"InterfaceDeclaration",id:e,typeParameters:t,extends:r,body:a},s=ns.InterfaceDeclaration;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.extends,n,"extends",r,1),as(s.body,n,"body",a,1),n}function ui(e,t){void 0===e&&(e=null);var r={type:"InterfaceTypeAnnotation",extends:e,body:t},a=ns.InterfaceTypeAnnotation;return as(a.extends,r,"extends",e,1),as(a.body,r,"body",t,1),r}function pi(e){var t={type:"IntersectionTypeAnnotation",types:e},r=ns.IntersectionTypeAnnotation;return as(r.types,t,"types",e,1),t}function fi(){return{type:"MixedTypeAnnotation"}}function gi(){return{type:"EmptyTypeAnnotation"}}function mi(e){var t={type:"NullableTypeAnnotation",typeAnnotation:e},r=ns.NullableTypeAnnotation;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function yi(e){var t={type:"NumberLiteralTypeAnnotation",value:e},r=ns.NumberLiteralTypeAnnotation;return as(r.value,t,"value",e),t}function hi(){return{type:"NumberTypeAnnotation"}}function bi(e,t,r,a,n){void 0===t&&(t=[]),void 0===r&&(r=[]),void 0===a&&(a=[]),void 0===n&&(n=!1);var s={type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:r,internalSlots:a,exact:n},o=ns.ObjectTypeAnnotation;return as(o.properties,s,"properties",e,1),as(o.indexers,s,"indexers",t,1),as(o.callProperties,s,"callProperties",r,1),as(o.internalSlots,s,"internalSlots",a,1),as(o.exact,s,"exact",n),s}function vi(e,t,r,a,n){var s={type:"ObjectTypeInternalSlot",id:e,value:t,optional:r,static:a,method:n},o=ns.ObjectTypeInternalSlot;return as(o.id,s,"id",e,1),as(o.value,s,"value",t,1),as(o.optional,s,"optional",r),as(o.static,s,"static",a),as(o.method,s,"method",n),s}function xi(e){var t={type:"ObjectTypeCallProperty",value:e,static:null},r=ns.ObjectTypeCallProperty;return as(r.value,t,"value",e,1),t}function Ri(e,t,r,a){void 0===e&&(e=null),void 0===a&&(a=null);var n={type:"ObjectTypeIndexer",id:e,key:t,value:r,variance:a,static:null},s=ns.ObjectTypeIndexer;return as(s.id,n,"id",e,1),as(s.key,n,"key",t,1),as(s.value,n,"value",r,1),as(s.variance,n,"variance",a,1),n}function ji(e,t,r){void 0===r&&(r=null);var a={type:"ObjectTypeProperty",key:e,value:t,variance:r,kind:null,method:null,optional:null,proto:null,static:null},n=ns.ObjectTypeProperty;return as(n.key,a,"key",e,1),as(n.value,a,"value",t,1),as(n.variance,a,"variance",r,1),a}function wi(e){var t={type:"ObjectTypeSpreadProperty",argument:e},r=ns.ObjectTypeSpreadProperty;return as(r.argument,t,"argument",e,1),t}function Ei(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"OpaqueType",id:e,typeParameters:t,supertype:r,impltype:a},s=ns.OpaqueType;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.supertype,n,"supertype",r,1),as(s.impltype,n,"impltype",a,1),n}function Si(e,t){var r={type:"QualifiedTypeIdentifier",id:e,qualification:t},a=ns.QualifiedTypeIdentifier;return as(a.id,r,"id",e,1),as(a.qualification,r,"qualification",t,1),r}function Ti(e){var t={type:"StringLiteralTypeAnnotation",value:e},r=ns.StringLiteralTypeAnnotation;return as(r.value,t,"value",e),t}function Pi(){return{type:"StringTypeAnnotation"}}function Ai(){return{type:"SymbolTypeAnnotation"}}function ki(){return{type:"ThisTypeAnnotation"}}function Ci(e){var t={type:"TupleTypeAnnotation",types:e},r=ns.TupleTypeAnnotation;return as(r.types,t,"types",e,1),t}function _i(e){var t={type:"TypeofTypeAnnotation",argument:e},r=ns.TypeofTypeAnnotation;return as(r.argument,t,"argument",e,1),t}function Ii(e,t,r){void 0===t&&(t=null);var a={type:"TypeAlias",id:e,typeParameters:t,right:r},n=ns.TypeAlias;return as(n.id,a,"id",e,1),as(n.typeParameters,a,"typeParameters",t,1),as(n.right,a,"right",r,1),a}function Di(e){var t={type:"TypeAnnotation",typeAnnotation:e},r=ns.TypeAnnotation;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function Oi(e,t){var r={type:"TypeCastExpression",expression:e,typeAnnotation:t},a=ns.TypeCastExpression;return as(a.expression,r,"expression",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function Ni(e,t,r){void 0===e&&(e=null),void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"TypeParameter",bound:e,default:t,variance:r,name:null},n=ns.TypeParameter;return as(n.bound,a,"bound",e,1),as(n.default,a,"default",t,1),as(n.variance,a,"variance",r,1),a}function Bi(e){var t={type:"TypeParameterDeclaration",params:e},r=ns.TypeParameterDeclaration;return as(r.params,t,"params",e,1),t}function Mi(e){var t={type:"TypeParameterInstantiation",params:e},r=ns.TypeParameterInstantiation;return as(r.params,t,"params",e,1),t}function Fi(e){var t={type:"UnionTypeAnnotation",types:e},r=ns.UnionTypeAnnotation;return as(r.types,t,"types",e,1),t}function Li(e){var t={type:"Variance",kind:e},r=ns.Variance;return as(r.kind,t,"kind",e),t}function Ui(){return{type:"VoidTypeAnnotation"}}function qi(e,t){var r={type:"EnumDeclaration",id:e,body:t},a=ns.EnumDeclaration;return as(a.id,r,"id",e,1),as(a.body,r,"body",t,1),r}function Gi(e){var t={type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null},r=ns.EnumBooleanBody;return as(r.members,t,"members",e,1),t}function Wi(e){var t={type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null},r=ns.EnumNumberBody;return as(r.members,t,"members",e,1),t}function Vi(e){var t={type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null},r=ns.EnumStringBody;return as(r.members,t,"members",e,1),t}function Hi(e){var t={type:"EnumSymbolBody",members:e,hasUnknownMembers:null},r=ns.EnumSymbolBody;return as(r.members,t,"members",e,1),t}function zi(e){var t={type:"EnumBooleanMember",id:e,init:null},r=ns.EnumBooleanMember;return as(r.id,t,"id",e,1),t}function Ki(e,t){var r={type:"EnumNumberMember",id:e,init:t},a=ns.EnumNumberMember;return as(a.id,r,"id",e,1),as(a.init,r,"init",t,1),r}function Xi(e,t){var r={type:"EnumStringMember",id:e,init:t},a=ns.EnumStringMember;return as(a.id,r,"id",e,1),as(a.init,r,"init",t,1),r}function Ji(e){var t={type:"EnumDefaultedMember",id:e},r=ns.EnumDefaultedMember;return as(r.id,t,"id",e,1),t}function Yi(e,t){var r={type:"IndexedAccessType",objectType:e,indexType:t},a=ns.IndexedAccessType;return as(a.objectType,r,"objectType",e,1),as(a.indexType,r,"indexType",t,1),r}function $i(e,t){var r={type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null},a=ns.OptionalIndexedAccessType;return as(a.objectType,r,"objectType",e,1),as(a.indexType,r,"indexType",t,1),r}function Qi(e,t){void 0===t&&(t=null);var r={type:"JSXAttribute",name:e,value:t},a=ns.JSXAttribute;return as(a.name,r,"name",e,1),as(a.value,r,"value",t,1),r}function Zi(e){var t={type:"JSXClosingElement",name:e},r=ns.JSXClosingElement;return as(r.name,t,"name",e,1),t}function ed(e,t,r,a){void 0===t&&(t=null),void 0===a&&(a=null);var n={type:"JSXElement",openingElement:e,closingElement:t,children:r,selfClosing:a},s=ns.JSXElement;return as(s.openingElement,n,"openingElement",e,1),as(s.closingElement,n,"closingElement",t,1),as(s.children,n,"children",r,1),as(s.selfClosing,n,"selfClosing",a),n}function td(){return{type:"JSXEmptyExpression"}}function rd(e){var t={type:"JSXExpressionContainer",expression:e},r=ns.JSXExpressionContainer;return as(r.expression,t,"expression",e,1),t}function ad(e){var t={type:"JSXSpreadChild",expression:e},r=ns.JSXSpreadChild;return as(r.expression,t,"expression",e,1),t}function nd(e){var t={type:"JSXIdentifier",name:e},r=ns.JSXIdentifier;return as(r.name,t,"name",e),t}function sd(e,t){var r={type:"JSXMemberExpression",object:e,property:t},a=ns.JSXMemberExpression;return as(a.object,r,"object",e,1),as(a.property,r,"property",t,1),r}function od(e,t){var r={type:"JSXNamespacedName",namespace:e,name:t},a=ns.JSXNamespacedName;return as(a.namespace,r,"namespace",e,1),as(a.name,r,"name",t,1),r}function id(e,t,r){void 0===r&&(r=!1);var a={type:"JSXOpeningElement",name:e,attributes:t,selfClosing:r},n=ns.JSXOpeningElement;return as(n.name,a,"name",e,1),as(n.attributes,a,"attributes",t,1),as(n.selfClosing,a,"selfClosing",r),a}function dd(e){var t={type:"JSXSpreadAttribute",argument:e},r=ns.JSXSpreadAttribute;return as(r.argument,t,"argument",e,1),t}function cd(e){var t={type:"JSXText",value:e},r=ns.JSXText;return as(r.value,t,"value",e),t}function ld(e,t,r){var a={type:"JSXFragment",openingFragment:e,closingFragment:t,children:r},n=ns.JSXFragment;return as(n.openingFragment,a,"openingFragment",e,1),as(n.closingFragment,a,"closingFragment",t,1),as(n.children,a,"children",r,1),a}function ud(){return{type:"JSXOpeningFragment"}}function pd(){return{type:"JSXClosingFragment"}}function fd(){return{type:"Noop"}}function gd(e,t){var r={type:"Placeholder",expectedNode:e,name:t},a=ns.Placeholder;return as(a.expectedNode,r,"expectedNode",e),as(a.name,r,"name",t,1),r}function md(e){var t={type:"V8IntrinsicIdentifier",name:e},r=ns.V8IntrinsicIdentifier;return as(r.name,t,"name",e),t}function yd(){return{type:"ArgumentPlaceholder"}}function hd(e,t){var r={type:"BindExpression",object:e,callee:t},a=ns.BindExpression;return as(a.object,r,"object",e,1),as(a.callee,r,"callee",t,1),r}function bd(e){var t={type:"Decorator",expression:e},r=ns.Decorator;return as(r.expression,t,"expression",e,1),t}function vd(e,t){void 0===t&&(t=!1);var r={type:"DoExpression",body:e,async:t},a=ns.DoExpression;return as(a.body,r,"body",e,1),as(a.async,r,"async",t),r}function xd(e){var t={type:"ExportDefaultSpecifier",exported:e},r=ns.ExportDefaultSpecifier;return as(r.exported,t,"exported",e,1),t}function Rd(e){var t={type:"RecordExpression",properties:e},r=ns.RecordExpression;return as(r.properties,t,"properties",e,1),t}function jd(e){void 0===e&&(e=[]);var t={type:"TupleExpression",elements:e},r=ns.TupleExpression;return as(r.elements,t,"elements",e,1),t}function wd(e){var t={type:"DecimalLiteral",value:e},r=ns.DecimalLiteral;return as(r.value,t,"value",e),t}function Ed(e){var t={type:"ModuleExpression",body:e},r=ns.ModuleExpression;return as(r.body,t,"body",e,1),t}function Sd(){return{type:"TopicReference"}}function Td(e){var t={type:"PipelineTopicExpression",expression:e},r=ns.PipelineTopicExpression;return as(r.expression,t,"expression",e,1),t}function Pd(e){var t={type:"PipelineBareFunction",callee:e},r=ns.PipelineBareFunction;return as(r.callee,t,"callee",e,1),t}function Ad(){return{type:"PipelinePrimaryTopicReference"}}function kd(){return{type:"VoidPattern"}}function Cd(e){var t={type:"TSParameterProperty",parameter:e},r=ns.TSParameterProperty;return as(r.parameter,t,"parameter",e,1),t}function _d(e,t,r,a){void 0===e&&(e=null),void 0===t&&(t=null),void 0===a&&(a=null);var n={type:"TSDeclareFunction",id:e,typeParameters:t,params:r,returnType:a},s=ns.TSDeclareFunction;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.params,n,"params",r,1),as(s.returnType,n,"returnType",a,1),n}function Id(e,t,r,a,n){void 0===e&&(e=null),void 0===r&&(r=null),void 0===n&&(n=null);var s={type:"TSDeclareMethod",decorators:e,key:t,typeParameters:r,params:a,returnType:n},o=ns.TSDeclareMethod;return as(o.decorators,s,"decorators",e,1),as(o.key,s,"key",t,1),as(o.typeParameters,s,"typeParameters",r,1),as(o.params,s,"params",a,1),as(o.returnType,s,"returnType",n,1),s}function Dd(e,t){var r={type:"TSQualifiedName",left:e,right:t},a=ns.TSQualifiedName;return as(a.left,r,"left",e,1),as(a.right,r,"right",t,1),r}function Od(e,t,r){void 0===e&&(e=null),void 0===r&&(r=null);var a={type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:r},n=ns.TSCallSignatureDeclaration;return as(n.typeParameters,a,"typeParameters",e,1),as(n.parameters,a,"parameters",t,1),as(n.typeAnnotation,a,"typeAnnotation",r,1),a}function Nd(e,t,r){void 0===e&&(e=null),void 0===r&&(r=null);var a={type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:r},n=ns.TSConstructSignatureDeclaration;return as(n.typeParameters,a,"typeParameters",e,1),as(n.parameters,a,"parameters",t,1),as(n.typeAnnotation,a,"typeAnnotation",r,1),a}function Bd(e,t){void 0===t&&(t=null);var r={type:"TSPropertySignature",key:e,typeAnnotation:t},a=ns.TSPropertySignature;return as(a.key,r,"key",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function Md(e,t,r,a){void 0===t&&(t=null),void 0===a&&(a=null);var n={type:"TSMethodSignature",key:e,typeParameters:t,parameters:r,typeAnnotation:a,kind:null},s=ns.TSMethodSignature;return as(s.key,n,"key",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.parameters,n,"parameters",r,1),as(s.typeAnnotation,n,"typeAnnotation",a,1),n}function Fd(e,t){void 0===t&&(t=null);var r={type:"TSIndexSignature",parameters:e,typeAnnotation:t},a=ns.TSIndexSignature;return as(a.parameters,r,"parameters",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function Ld(){return{type:"TSAnyKeyword"}}function Ud(){return{type:"TSBooleanKeyword"}}function qd(){return{type:"TSBigIntKeyword"}}function Gd(){return{type:"TSIntrinsicKeyword"}}function Wd(){return{type:"TSNeverKeyword"}}function Vd(){return{type:"TSNullKeyword"}}function Hd(){return{type:"TSNumberKeyword"}}function zd(){return{type:"TSObjectKeyword"}}function Kd(){return{type:"TSStringKeyword"}}function Xd(){return{type:"TSSymbolKeyword"}}function Jd(){return{type:"TSUndefinedKeyword"}}function Yd(){return{type:"TSUnknownKeyword"}}function $d(){return{type:"TSVoidKeyword"}}function Qd(){return{type:"TSThisType"}}function Zd(e,t,r){void 0===e&&(e=null),void 0===r&&(r=null);var a={type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:r},n=ns.TSFunctionType;return as(n.typeParameters,a,"typeParameters",e,1),as(n.parameters,a,"parameters",t,1),as(n.typeAnnotation,a,"typeAnnotation",r,1),a}function ec(e,t,r){void 0===e&&(e=null),void 0===r&&(r=null);var a={type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:r},n=ns.TSConstructorType;return as(n.typeParameters,a,"typeParameters",e,1),as(n.parameters,a,"parameters",t,1),as(n.typeAnnotation,a,"typeAnnotation",r,1),a}function tc(e,t){void 0===t&&(t=null);var r={type:"TSTypeReference",typeName:e,typeParameters:t},a=ns.TSTypeReference;return as(a.typeName,r,"typeName",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function rc(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:r},n=ns.TSTypePredicate;return as(n.parameterName,a,"parameterName",e,1),as(n.typeAnnotation,a,"typeAnnotation",t,1),as(n.asserts,a,"asserts",r),a}function ac(e,t){void 0===t&&(t=null);var r={type:"TSTypeQuery",exprName:e,typeParameters:t},a=ns.TSTypeQuery;return as(a.exprName,r,"exprName",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function nc(e){var t={type:"TSTypeLiteral",members:e},r=ns.TSTypeLiteral;return as(r.members,t,"members",e,1),t}function sc(e){var t={type:"TSArrayType",elementType:e},r=ns.TSArrayType;return as(r.elementType,t,"elementType",e,1),t}function oc(e){var t={type:"TSTupleType",elementTypes:e},r=ns.TSTupleType;return as(r.elementTypes,t,"elementTypes",e,1),t}function ic(e){var t={type:"TSOptionalType",typeAnnotation:e},r=ns.TSOptionalType;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function dc(e){var t={type:"TSRestType",typeAnnotation:e},r=ns.TSRestType;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function cc(e,t,r){void 0===r&&(r=!1);var a={type:"TSNamedTupleMember",label:e,elementType:t,optional:r},n=ns.TSNamedTupleMember;return as(n.label,a,"label",e,1),as(n.elementType,a,"elementType",t,1),as(n.optional,a,"optional",r),a}function lc(e){var t={type:"TSUnionType",types:e},r=ns.TSUnionType;return as(r.types,t,"types",e,1),t}function uc(e){var t={type:"TSIntersectionType",types:e},r=ns.TSIntersectionType;return as(r.types,t,"types",e,1),t}function pc(e,t,r,a){var n={type:"TSConditionalType",checkType:e,extendsType:t,trueType:r,falseType:a},s=ns.TSConditionalType;return as(s.checkType,n,"checkType",e,1),as(s.extendsType,n,"extendsType",t,1),as(s.trueType,n,"trueType",r,1),as(s.falseType,n,"falseType",a,1),n}function fc(e){var t={type:"TSInferType",typeParameter:e},r=ns.TSInferType;return as(r.typeParameter,t,"typeParameter",e,1),t}function gc(e){var t={type:"TSParenthesizedType",typeAnnotation:e},r=ns.TSParenthesizedType;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function mc(e,t){void 0===t&&(t="keyof");var r={type:"TSTypeOperator",typeAnnotation:e,operator:t},a=ns.TSTypeOperator;return as(a.typeAnnotation,r,"typeAnnotation",e,1),as(a.operator,r,"operator",t),r}function yc(e,t){var r={type:"TSIndexedAccessType",objectType:e,indexType:t},a=ns.TSIndexedAccessType;return as(a.objectType,r,"objectType",e,1),as(a.indexType,r,"indexType",t,1),r}function hc(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:r},n=ns.TSMappedType;return as(n.typeParameter,a,"typeParameter",e,1),as(n.typeAnnotation,a,"typeAnnotation",t,1),as(n.nameType,a,"nameType",r,1),a}function bc(e,t){var r={type:"TSTemplateLiteralType",quasis:e,types:t},a=ns.TSTemplateLiteralType;return as(a.quasis,r,"quasis",e,1),as(a.types,r,"types",t,1),r}function vc(e){var t={type:"TSLiteralType",literal:e},r=ns.TSLiteralType;return as(r.literal,t,"literal",e,1),t}function xc(e,t){void 0===t&&(t=null);var r={type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t},a=ns.TSExpressionWithTypeArguments;return as(a.expression,r,"expression",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function Rc(e,t,r,a){void 0===t&&(t=null),void 0===r&&(r=null);var n={type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:r,body:a},s=ns.TSInterfaceDeclaration;return as(s.id,n,"id",e,1),as(s.typeParameters,n,"typeParameters",t,1),as(s.extends,n,"extends",r,1),as(s.body,n,"body",a,1),n}function jc(e){var t={type:"TSInterfaceBody",body:e},r=ns.TSInterfaceBody;return as(r.body,t,"body",e,1),t}function wc(e,t,r){void 0===t&&(t=null);var a={type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:r},n=ns.TSTypeAliasDeclaration;return as(n.id,a,"id",e,1),as(n.typeParameters,a,"typeParameters",t,1),as(n.typeAnnotation,a,"typeAnnotation",r,1),a}function Ec(e,t){void 0===t&&(t=null);var r={type:"TSInstantiationExpression",expression:e,typeParameters:t},a=ns.TSInstantiationExpression;return as(a.expression,r,"expression",e,1),as(a.typeParameters,r,"typeParameters",t,1),r}function Sc(e,t){var r={type:"TSAsExpression",expression:e,typeAnnotation:t},a=ns.TSAsExpression;return as(a.expression,r,"expression",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function Tc(e,t){var r={type:"TSSatisfiesExpression",expression:e,typeAnnotation:t},a=ns.TSSatisfiesExpression;return as(a.expression,r,"expression",e,1),as(a.typeAnnotation,r,"typeAnnotation",t,1),r}function Pc(e,t){var r={type:"TSTypeAssertion",typeAnnotation:e,expression:t},a=ns.TSTypeAssertion;return as(a.typeAnnotation,r,"typeAnnotation",e,1),as(a.expression,r,"expression",t,1),r}function Ac(e){var t={type:"TSEnumBody",members:e},r=ns.TSEnumBody;return as(r.members,t,"members",e,1),t}function kc(e,t){var r={type:"TSEnumDeclaration",id:e,members:t},a=ns.TSEnumDeclaration;return as(a.id,r,"id",e,1),as(a.members,r,"members",t,1),r}function Cc(e,t){void 0===t&&(t=null);var r={type:"TSEnumMember",id:e,initializer:t},a=ns.TSEnumMember;return as(a.id,r,"id",e,1),as(a.initializer,r,"initializer",t,1),r}function _c(e,t){var r={type:"TSModuleDeclaration",id:e,body:t,kind:null},a=ns.TSModuleDeclaration;return as(a.id,r,"id",e,1),as(a.body,r,"body",t,1),r}function Ic(e){var t={type:"TSModuleBlock",body:e},r=ns.TSModuleBlock;return as(r.body,t,"body",e,1),t}function Dc(e,t,r){void 0===t&&(t=null),void 0===r&&(r=null);var a={type:"TSImportType",argument:e,qualifier:t,typeParameters:r},n=ns.TSImportType;return as(n.argument,a,"argument",e,1),as(n.qualifier,a,"qualifier",t,1),as(n.typeParameters,a,"typeParameters",r,1),a}function Oc(e,t){var r={type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null},a=ns.TSImportEqualsDeclaration;return as(a.id,r,"id",e,1),as(a.moduleReference,r,"moduleReference",t,1),r}function Nc(e){var t={type:"TSExternalModuleReference",expression:e},r=ns.TSExternalModuleReference;return as(r.expression,t,"expression",e,1),t}function Bc(e){var t={type:"TSNonNullExpression",expression:e},r=ns.TSNonNullExpression;return as(r.expression,t,"expression",e,1),t}function Mc(e){var t={type:"TSExportAssignment",expression:e},r=ns.TSExportAssignment;return as(r.expression,t,"expression",e,1),t}function Fc(e){var t={type:"TSNamespaceExportDeclaration",id:e},r=ns.TSNamespaceExportDeclaration;return as(r.id,t,"id",e,1),t}function Lc(e){var t={type:"TSTypeAnnotation",typeAnnotation:e},r=ns.TSTypeAnnotation;return as(r.typeAnnotation,t,"typeAnnotation",e,1),t}function Uc(e){var t={type:"TSTypeParameterInstantiation",params:e},r=ns.TSTypeParameterInstantiation;return as(r.params,t,"params",e,1),t}function qc(e){var t={type:"TSTypeParameterDeclaration",params:e},r=ns.TSTypeParameterDeclaration;return as(r.params,t,"params",e,1),t}function Gc(e,t,r){void 0===e&&(e=null),void 0===t&&(t=null);var a={type:"TSTypeParameter",constraint:e,default:t,name:r},n=ns.TSTypeParameter;return as(n.constraint,a,"constraint",e,1),as(n.default,a,"default",t,1),as(n.name,a,"name",r),a}function Wc(e){return J("NumberLiteral","NumericLiteral","The node type "),_s(e)}function Vc(e,t){return void 0===t&&(t=""),J("RegexLiteral","RegExpLiteral","The node type "),Os(e,t)}function Hc(e){return J("RestProperty","RestElement","The node type "),Gs(e)}function zc(e){return J("SpreadProperty","SpreadElement","The node type "),wo(e)}var Kc=Object.freeze({__proto__:null,anyTypeAnnotation:qo,argumentPlaceholder:yd,arrayExpression:os,arrayPattern:no,arrayTypeAnnotation:Go,arrowFunctionExpression:so,assignmentExpression:is,assignmentPattern:ao,awaitExpression:ko,bigIntLiteral:ss,binaryExpression:ds,bindExpression:hd,blockStatement:ps,booleanLiteral:Ds,booleanLiteralTypeAnnotation:Vo,booleanTypeAnnotation:Wo,breakStatement:fs,callExpression:gs,catchClause:ms,classAccessorProperty:No,classBody:oo,classDeclaration:co,classExpression:io,classImplements:zo,classMethod:Ro,classPrivateMethod:Mo,classPrivateProperty:Bo,classProperty:Oo,conditionalExpression:ys,continueStatement:hs,debuggerStatement:bs,decimalLiteral:wd,declareClass:Ko,declareExportAllDeclaration:ri,declareExportDeclaration:ti,declareFunction:Xo,declareInterface:Jo,declareModule:Yo,declareModuleExports:$o,declareOpaqueType:Zo,declareTypeAlias:Qo,declareVariable:ei,declaredPredicate:ai,decorator:bd,directive:ls,directiveLiteral:us,doExpression:vd,doWhileStatement:vs,emptyStatement:xs,emptyTypeAnnotation:gi,enumBooleanBody:Gi,enumBooleanMember:zi,enumDeclaration:qi,enumDefaultedMember:Ji,enumNumberBody:Wi,enumNumberMember:Ki,enumStringBody:Vi,enumStringMember:Xi,enumSymbolBody:Hi,existsTypeAnnotation:ni,exportAllDeclaration:lo,exportDefaultDeclaration:uo,exportDefaultSpecifier:xd,exportNamedDeclaration:po,exportNamespaceSpecifier:_o,exportSpecifier:fo,expressionStatement:Rs,file:js,forInStatement:ws,forOfStatement:go,forStatement:Es,functionDeclaration:Ss,functionExpression:Ts,functionTypeAnnotation:si,functionTypeParam:oi,genericTypeAnnotation:ii,identifier:Ps,ifStatement:As,import:Co,importAttribute:Uo,importDeclaration:mo,importDefaultSpecifier:yo,importExpression:vo,importNamespaceSpecifier:ho,importSpecifier:bo,indexedAccessType:Yi,inferredPredicate:di,interfaceDeclaration:li,interfaceExtends:ci,interfaceTypeAnnotation:ui,interpreterDirective:cs,intersectionTypeAnnotation:pi,jSXAttribute:Qi,jSXClosingElement:Zi,jSXClosingFragment:pd,jSXElement:ed,jSXEmptyExpression:td,jSXExpressionContainer:rd,jSXFragment:ld,jSXIdentifier:nd,jSXMemberExpression:sd,jSXNamespacedName:od,jSXOpeningElement:id,jSXOpeningFragment:ud,jSXSpreadAttribute:dd,jSXSpreadChild:ad,jSXText:cd,jsxAttribute:Qi,jsxClosingElement:Zi,jsxClosingFragment:pd,jsxElement:ed,jsxEmptyExpression:td,jsxExpressionContainer:rd,jsxFragment:ld,jsxIdentifier:nd,jsxMemberExpression:sd,jsxNamespacedName:od,jsxOpeningElement:id,jsxOpeningFragment:ud,jsxSpreadAttribute:dd,jsxSpreadChild:ad,jsxText:cd,labeledStatement:ks,logicalExpression:Ns,memberExpression:Bs,metaProperty:xo,mixedTypeAnnotation:fi,moduleExpression:Ed,newExpression:Ms,noop:fd,nullLiteral:Is,nullLiteralTypeAnnotation:Ho,nullableTypeAnnotation:mi,numberLiteral:Wc,numberLiteralTypeAnnotation:yi,numberTypeAnnotation:hi,numericLiteral:_s,objectExpression:Ls,objectMethod:Us,objectPattern:jo,objectProperty:qs,objectTypeAnnotation:bi,objectTypeCallProperty:xi,objectTypeIndexer:Ri,objectTypeInternalSlot:vi,objectTypeProperty:ji,objectTypeSpreadProperty:wi,opaqueType:Ei,optionalCallExpression:Do,optionalIndexedAccessType:$i,optionalMemberExpression:Io,parenthesizedExpression:Hs,pipelineBareFunction:Pd,pipelinePrimaryTopicReference:Ad,pipelineTopicExpression:Td,placeholder:gd,privateName:Fo,program:Fs,qualifiedTypeIdentifier:Si,recordExpression:Rd,regExpLiteral:Os,regexLiteral:Vc,restElement:Gs,restProperty:Hc,returnStatement:Ws,sequenceExpression:Vs,spreadElement:wo,spreadProperty:zc,staticBlock:Lo,stringLiteral:Cs,stringLiteralTypeAnnotation:Ti,stringTypeAnnotation:Pi,super:Eo,switchCase:zs,switchStatement:Ks,symbolTypeAnnotation:Ai,tSAnyKeyword:Ld,tSArrayType:sc,tSAsExpression:Sc,tSBigIntKeyword:qd,tSBooleanKeyword:Ud,tSCallSignatureDeclaration:Od,tSConditionalType:pc,tSConstructSignatureDeclaration:Nd,tSConstructorType:ec,tSDeclareFunction:_d,tSDeclareMethod:Id,tSEnumBody:Ac,tSEnumDeclaration:kc,tSEnumMember:Cc,tSExportAssignment:Mc,tSExpressionWithTypeArguments:xc,tSExternalModuleReference:Nc,tSFunctionType:Zd,tSImportEqualsDeclaration:Oc,tSImportType:Dc,tSIndexSignature:Fd,tSIndexedAccessType:yc,tSInferType:fc,tSInstantiationExpression:Ec,tSInterfaceBody:jc,tSInterfaceDeclaration:Rc,tSIntersectionType:uc,tSIntrinsicKeyword:Gd,tSLiteralType:vc,tSMappedType:hc,tSMethodSignature:Md,tSModuleBlock:Ic,tSModuleDeclaration:_c,tSNamedTupleMember:cc,tSNamespaceExportDeclaration:Fc,tSNeverKeyword:Wd,tSNonNullExpression:Bc,tSNullKeyword:Vd,tSNumberKeyword:Hd,tSObjectKeyword:zd,tSOptionalType:ic,tSParameterProperty:Cd,tSParenthesizedType:gc,tSPropertySignature:Bd,tSQualifiedName:Dd,tSRestType:dc,tSSatisfiesExpression:Tc,tSStringKeyword:Kd,tSSymbolKeyword:Xd,tSTemplateLiteralType:bc,tSThisType:Qd,tSTupleType:oc,tSTypeAliasDeclaration:wc,tSTypeAnnotation:Lc,tSTypeAssertion:Pc,tSTypeLiteral:nc,tSTypeOperator:mc,tSTypeParameter:Gc,tSTypeParameterDeclaration:qc,tSTypeParameterInstantiation:Uc,tSTypePredicate:rc,tSTypeQuery:ac,tSTypeReference:tc,tSUndefinedKeyword:Jd,tSUnionType:lc,tSUnknownKeyword:Yd,tSVoidKeyword:$d,taggedTemplateExpression:So,templateElement:To,templateLiteral:Po,thisExpression:Xs,thisTypeAnnotation:ki,throwStatement:Js,topicReference:Sd,tryStatement:Ys,tsAnyKeyword:Ld,tsArrayType:sc,tsAsExpression:Sc,tsBigIntKeyword:qd,tsBooleanKeyword:Ud,tsCallSignatureDeclaration:Od,tsConditionalType:pc,tsConstructSignatureDeclaration:Nd,tsConstructorType:ec,tsDeclareFunction:_d,tsDeclareMethod:Id,tsEnumBody:Ac,tsEnumDeclaration:kc,tsEnumMember:Cc,tsExportAssignment:Mc,tsExpressionWithTypeArguments:xc,tsExternalModuleReference:Nc,tsFunctionType:Zd,tsImportEqualsDeclaration:Oc,tsImportType:Dc,tsIndexSignature:Fd,tsIndexedAccessType:yc,tsInferType:fc,tsInstantiationExpression:Ec,tsInterfaceBody:jc,tsInterfaceDeclaration:Rc,tsIntersectionType:uc,tsIntrinsicKeyword:Gd,tsLiteralType:vc,tsMappedType:hc,tsMethodSignature:Md,tsModuleBlock:Ic,tsModuleDeclaration:_c,tsNamedTupleMember:cc,tsNamespaceExportDeclaration:Fc,tsNeverKeyword:Wd,tsNonNullExpression:Bc,tsNullKeyword:Vd,tsNumberKeyword:Hd,tsObjectKeyword:zd,tsOptionalType:ic,tsParameterProperty:Cd,tsParenthesizedType:gc,tsPropertySignature:Bd,tsQualifiedName:Dd,tsRestType:dc,tsSatisfiesExpression:Tc,tsStringKeyword:Kd,tsSymbolKeyword:Xd,tsTemplateLiteralType:bc,tsThisType:Qd,tsTupleType:oc,tsTypeAliasDeclaration:wc,tsTypeAnnotation:Lc,tsTypeAssertion:Pc,tsTypeLiteral:nc,tsTypeOperator:mc,tsTypeParameter:Gc,tsTypeParameterDeclaration:qc,tsTypeParameterInstantiation:Uc,tsTypePredicate:rc,tsTypeQuery:ac,tsTypeReference:tc,tsUndefinedKeyword:Jd,tsUnionType:lc,tsUnknownKeyword:Yd,tsVoidKeyword:$d,tupleExpression:jd,tupleTypeAnnotation:Ci,typeAlias:Ii,typeAnnotation:Di,typeCastExpression:Oi,typeParameter:Ni,typeParameterDeclaration:Bi,typeParameterInstantiation:Mi,typeofTypeAnnotation:_i,unaryExpression:$s,unionTypeAnnotation:Fi,updateExpression:Qs,v8IntrinsicIdentifier:md,variableDeclaration:Zs,variableDeclarator:eo,variance:Li,voidPattern:kd,voidTypeAnnotation:Ui,whileStatement:to,withStatement:ro,yieldExpression:Ao});function Xc(e){return Kc[e]}var Jc=Xc("arrayExpression"),Yc=Xc("assignmentExpression"),$c=Xc("binaryExpression"),Qc=Xc("interpreterDirective"),Zc=Xc("directive"),el=Xc("directiveLiteral"),tl=Xc("blockStatement"),rl=Xc("breakStatement"),al=Xc("callExpression"),nl=Xc("catchClause"),sl=Xc("conditionalExpression"),ol=Xc("continueStatement"),il=Xc("debuggerStatement"),dl=Xc("doWhileStatement"),cl=Xc("emptyStatement"),ll=Xc("expressionStatement"),ul=Xc("file"),pl=Xc("forInStatement"),fl=Xc("forStatement"),gl=Xc("functionDeclaration"),ml=Xc("functionExpression"),yl=Xc("identifier"),hl=Xc("ifStatement"),bl=Xc("labeledStatement"),vl=Xc("stringLiteral"),xl=Xc("numericLiteral"),Rl=Xc("nullLiteral"),jl=Xc("booleanLiteral"),wl=Xc("regExpLiteral"),El=Xc("logicalExpression"),Sl=Xc("memberExpression"),Tl=Xc("newExpression"),Pl=Xc("program"),Al=Xc("objectExpression"),kl=Xc("objectMethod"),Cl=Xc("objectProperty"),_l=Xc("restElement"),Il=Xc("returnStatement"),Dl=Xc("sequenceExpression"),Ol=Xc("parenthesizedExpression"),Nl=Xc("switchCase"),Bl=Xc("switchStatement"),Ml=Xc("thisExpression"),Fl=Xc("throwStatement"),Ll=Xc("tryStatement"),Ul=Xc("unaryExpression"),ql=Xc("updateExpression"),Gl=Xc("variableDeclaration"),Wl=Xc("variableDeclarator"),Vl=Xc("whileStatement"),Hl=Xc("withStatement"),zl=Xc("assignmentPattern"),Kl=Xc("arrayPattern"),Xl=Xc("arrowFunctionExpression"),Jl=Xc("classBody"),Yl=Xc("classExpression"),$l=Xc("classDeclaration"),Ql=Xc("exportAllDeclaration"),Zl=Xc("exportDefaultDeclaration"),eu=Xc("exportNamedDeclaration"),tu=Xc("exportSpecifier"),ru=Xc("forOfStatement"),au=Xc("importDeclaration"),nu=Xc("importDefaultSpecifier"),su=Xc("importNamespaceSpecifier"),ou=Xc("importSpecifier"),iu=Xc("importExpression"),du=Xc("metaProperty"),cu=Xc("classMethod"),lu=Xc("objectPattern"),uu=Xc("spreadElement"),pu=Xc("super"),fu=Xc("taggedTemplateExpression"),gu=Xc("templateElement"),mu=Xc("templateLiteral"),yu=Xc("yieldExpression"),hu=Xc("awaitExpression"),bu=Xc("import"),vu=Xc("bigIntLiteral"),xu=Xc("exportNamespaceSpecifier"),Ru=Xc("optionalMemberExpression"),ju=Xc("optionalCallExpression"),wu=Xc("classProperty"),Eu=Xc("classAccessorProperty"),Su=Xc("classPrivateProperty"),Tu=Xc("classPrivateMethod"),Pu=Xc("privateName"),Au=Xc("staticBlock"),ku=Xc("importAttribute"),Cu=Xc("anyTypeAnnotation"),_u=Xc("arrayTypeAnnotation"),Iu=Xc("booleanTypeAnnotation"),Du=Xc("booleanLiteralTypeAnnotation"),Ou=Xc("nullLiteralTypeAnnotation"),Nu=Xc("classImplements"),Bu=Xc("declareClass"),Mu=Xc("declareFunction"),Fu=Xc("declareInterface"),Lu=Xc("declareModule"),Uu=Xc("declareModuleExports"),qu=Xc("declareTypeAlias"),Gu=Xc("declareOpaqueType"),Wu=Xc("declareVariable"),Vu=Xc("declareExportDeclaration"),Hu=Xc("declareExportAllDeclaration"),zu=Xc("declaredPredicate"),Ku=Xc("existsTypeAnnotation"),Xu=Xc("functionTypeAnnotation"),Ju=Xc("functionTypeParam"),Yu=Xc("genericTypeAnnotation"),$u=Xc("inferredPredicate"),Qu=Xc("interfaceExtends"),Zu=Xc("interfaceDeclaration"),ep=Xc("interfaceTypeAnnotation"),tp=Xc("intersectionTypeAnnotation"),rp=Xc("mixedTypeAnnotation"),ap=Xc("emptyTypeAnnotation"),np=Xc("nullableTypeAnnotation"),sp=Xc("numberLiteralTypeAnnotation"),op=Xc("numberTypeAnnotation"),ip=Xc("objectTypeAnnotation"),dp=Xc("objectTypeInternalSlot"),cp=Xc("objectTypeCallProperty"),lp=Xc("objectTypeIndexer"),up=Xc("objectTypeProperty"),pp=Xc("objectTypeSpreadProperty"),fp=Xc("opaqueType"),gp=Xc("qualifiedTypeIdentifier"),mp=Xc("stringLiteralTypeAnnotation"),yp=Xc("stringTypeAnnotation"),hp=Xc("symbolTypeAnnotation"),bp=Xc("thisTypeAnnotation"),vp=Xc("tupleTypeAnnotation"),xp=Xc("typeofTypeAnnotation"),Rp=Xc("typeAlias"),jp=Xc("typeAnnotation"),wp=Xc("typeCastExpression"),Ep=Xc("typeParameter"),Sp=Xc("typeParameterDeclaration"),Tp=Xc("typeParameterInstantiation"),Pp=Xc("unionTypeAnnotation"),Ap=Xc("variance"),kp=Xc("voidTypeAnnotation"),Cp=Xc("enumDeclaration"),_p=Xc("enumBooleanBody"),Ip=Xc("enumNumberBody"),Dp=Xc("enumStringBody"),Op=Xc("enumSymbolBody"),Np=Xc("enumBooleanMember"),Bp=Xc("enumNumberMember"),Mp=Xc("enumStringMember"),Fp=Xc("enumDefaultedMember"),Lp=Xc("indexedAccessType"),Up=Xc("optionalIndexedAccessType"),qp=Xc("jsxAttribute"),Gp=Xc("jsxClosingElement"),Wp=Xc("jsxElement"),Vp=Xc("jsxEmptyExpression"),Hp=Xc("jsxExpressionContainer"),zp=Xc("jsxSpreadChild"),Kp=Xc("jsxIdentifier"),Xp=Xc("jsxMemberExpression"),Jp=Xc("jsxNamespacedName"),Yp=Xc("jsxOpeningElement"),$p=Xc("jsxSpreadAttribute"),Qp=Xc("jsxText"),Zp=Xc("jsxFragment"),ef=Xc("jsxOpeningFragment"),tf=Xc("jsxClosingFragment"),rf=Xc("noop"),af=Xc("placeholder"),nf=Xc("v8IntrinsicIdentifier"),sf=Xc("argumentPlaceholder"),of=Xc("bindExpression"),df=Xc("decorator"),cf=Xc("doExpression"),lf=Xc("exportDefaultSpecifier"),uf=Xc("recordExpression"),pf=Xc("tupleExpression"),ff=Xc("decimalLiteral"),gf=Xc("moduleExpression"),mf=Xc("topicReference"),yf=Xc("pipelineTopicExpression"),hf=Xc("pipelineBareFunction"),bf=Xc("pipelinePrimaryTopicReference"),vf=Xc("voidPattern"),xf=Xc("tsParameterProperty"),Rf=Xc("tsDeclareFunction"),jf=Xc("tsDeclareMethod"),wf=Xc("tsQualifiedName"),Ef=Xc("tsCallSignatureDeclaration"),Sf=Xc("tsConstructSignatureDeclaration"),Tf=Xc("tsPropertySignature"),Pf=Xc("tsMethodSignature"),Af=Xc("tsIndexSignature"),kf=Xc("tsAnyKeyword"),Cf=Xc("tsBooleanKeyword"),_f=Xc("tsBigIntKeyword"),If=Xc("tsIntrinsicKeyword"),Df=Xc("tsNeverKeyword"),Of=Xc("tsNullKeyword"),Nf=Xc("tsNumberKeyword"),Bf=Xc("tsObjectKeyword"),Mf=Xc("tsStringKeyword"),Ff=Xc("tsSymbolKeyword"),Lf=Xc("tsUndefinedKeyword"),Uf=Xc("tsUnknownKeyword"),qf=Xc("tsVoidKeyword"),Gf=Xc("tsThisType"),Wf=Xc("tsFunctionType"),Vf=Xc("tsConstructorType"),Hf=Xc("tsTypeReference"),zf=Xc("tsTypePredicate"),Kf=Xc("tsTypeQuery"),Xf=Xc("tsTypeLiteral"),Jf=Xc("tsArrayType"),Yf=Xc("tsTupleType"),$f=Xc("tsOptionalType"),Qf=Xc("tsRestType"),Zf=Xc("tsNamedTupleMember"),eg=Xc("tsUnionType"),tg=Xc("tsIntersectionType"),rg=Xc("tsConditionalType"),ag=Xc("tsInferType"),ng=Xc("tsParenthesizedType"),sg=Xc("tsTypeOperator"),og=Xc("tsIndexedAccessType"),ig=Xc("tsMappedType"),dg=Xc("tsTemplateLiteralType"),cg=Xc("tsLiteralType"),lg=Xc("tsExpressionWithTypeArguments"),ug=Xc("tsInterfaceDeclaration"),pg=Xc("tsInterfaceBody"),fg=Xc("tsTypeAliasDeclaration"),gg=Xc("tsInstantiationExpression"),mg=Xc("tsAsExpression"),yg=Xc("tsSatisfiesExpression"),hg=Xc("tsTypeAssertion"),bg=Xc("tsEnumBody"),vg=Xc("tsEnumDeclaration"),xg=Xc("tsEnumMember"),Rg=Xc("tsModuleDeclaration"),jg=Xc("tsModuleBlock"),wg=Xc("tsImportType"),Eg=Xc("tsImportEqualsDeclaration"),Sg=Xc("tsExternalModuleReference"),Tg=Xc("tsNonNullExpression"),Pg=Xc("tsExportAssignment"),Ag=Xc("tsNamespaceExportDeclaration"),kg=Xc("tsTypeAnnotation"),Cg=Xc("tsTypeParameterInstantiation"),_g=Xc("tsTypeParameterDeclaration"),Ig=Xc("tsTypeParameter"),Dg=Wc,Og=Vc,Ng=Hc,Bg=zc;function Mg(e,t){for(var r=e.value.split(/\r\n|\n|\r/),a=0,n=0;n<r.length;n++)/[^ \t]/.exec(r[n])&&(a=n);for(var s="",o=0;o<r.length;o++){var i=r[o],d=0===o,c=o===r.length-1,l=o===a,u=i.replace(/\t/g," ");d||(u=u.replace(/^ +/,"")),c||(u=u.replace(/ +$/,"")),u&&(l||(u+=" "),s+=u)}s&&t.push(Cy(Cs(s),e))}function Fg(e){return!(!e||!ja[e.type])}function Lg(e){if(!Fg(e)){var t,r=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError('Not a valid node of type "'+r+'"')}}function Ug(e,t,r){if(!kr(e,t,r))throw new Error('Expected type "'+e+'" with option '+JSON.stringify(r)+', but instead got "'+t.type+'".')}function qg(e,t){Ug("ExpressionStatement",e,t)}function Gg(e,t){Ug("Identifier",e,t)}function Wg(e,t){Ug("RestElement",e,t)}function Vg(e,t){Ug("VariableDeclaration",e,t)}function Hg(e,t){Ug("Expression",e,t)}function zg(e,t){Ug("Statement",e,t)}function Kg(e,t){Ug("Function",e,t)}function Xg(e){switch(e){case"string":return{type:"StringTypeAnnotation"};case"number":return{type:"NumberTypeAnnotation"};case"undefined":return{type:"VoidTypeAnnotation"};case"boolean":return{type:"BooleanTypeAnnotation"};case"function":return ii(Ps("Function"));case"object":return ii(Ps("Object"));case"symbol":return ii(Ps("Symbol"));case"bigint":return{type:"AnyTypeAnnotation"}}throw new Error("Invalid typeof value: "+e)}function Jg(e){return ie(e)?e.name:e.id.name+"."+Jg(e.qualification)}function Yg(e){for(var t=Array.from(e),r=new Map,a=new Map,n=new Set,s=[],o=0;o<t.length;o++){var d=t[o];if(d&&!s.includes(d)){if(ct(d))return[d];if(vr(d))a.set(d.type,d);else if(Rt(d))n.has(d.types)||(t.push.apply(t,b(d.types)),n.add(d.types));else if(ft(d)){var c=Jg(d.id);if(r.has(c)){var l,u=r.get(c);if(u.typeParameters){if(d.typeParameters)(l=u.typeParameters.params).push.apply(l,b(d.typeParameters.params)),u.typeParameters.params=Yg(u.typeParameters.params)}else u=d.typeParameters}else r.set(c,d)}else s.push(d)}}for(var p,f=i(a);!(p=f()).done;){var g=y(p.value,2)[1];s.push(g)}for(var m,h=i(r);!(m=h()).done;){var v=y(m.value,2)[1];s.push(v)}return s}function $g(e){var t=Yg(e);return 1===t.length?t[0]:Fi(t)}function Qg(e){return ie(e)?e.name:Se(e)?"this":e.right.name+"."+Qg(e.left)}function Zg(e){for(var t=Array.from(e),r=new Map,a=new Map,n=new Set,s=[],o=0;o<t.length;o++){var d=t[o];if(d&&!s.includes(d)){if(Lt(d))return[d];if(jr(d))a.set(d.type,d);else if(Gt(d))n.has(d.types)||(t.push.apply(t,b(d.types)),n.add(d.types));else{var c="typeParameters";if(Ut(d)&&d[c]){var l=d[c],u=Qg(d.typeName);if(r.has(u)){var p,f=r.get(u),g=f[c];if(g)(p=g.params).push.apply(p,b(l.params)),g.params=Zg(g.params);else f=l}else r.set(u,d)}else s.push(d)}}}for(var m,h=i(a);!(m=h()).done;){var v=y(m.value,2)[1];s.push(v)}for(var x,R=i(r);!(x=R()).done;){var j=y(x.value,2)[1];s.push(j)}return s}function em(e){var t=e.map(function(e){return Yt(e)?e.typeAnnotation:e}),r=Zg(t);return 1===r.length?r[0]:lc(r)}function tm(){return $s("void",_s(0),!0)}var rm={hasOwn:Function.call.bind(Object.prototype.hasOwnProperty)}.hasOwn;function am(e,t,r,a){return e&&"string"==typeof e.type?om(e,t,r,a):e}function nm(e,t,r,a){return Array.isArray(e)?e.map(function(e){return am(e,t,r,a)}):am(e,t,r,a)}function sm(e,t,r){return void 0===t&&(t=!0),void 0===r&&(r=!1),om(e,t,r,new Map)}function om(e,t,r,a){if(void 0===t&&(t=!0),void 0===r&&(r=!1),!e)return e;var n=e.type,s={type:e.type};if(ie(e))s.name=e.name,rm(e,"optional")&&"boolean"==typeof e.optional&&(s.optional=e.optional),rm(e,"typeAnnotation")&&(s.typeAnnotation=t?nm(e.typeAnnotation,!0,r,a):e.typeAnnotation),rm(e,"decorators")&&(s.decorators=t?nm(e.decorators,!0,r,a):e.decorators);else{if(!rm(Sa,n))throw new Error('Unknown node type: "'+n+'"');for(var o=0,i=Object.keys(Sa[n]);o<i.length;o++){var d=i[o];rm(e,d)&&(s[d]=t?ae(e)&&"comments"===d?im(e.comments,t,r,a):nm(e[d],!0,r,a):e[d])}}return rm(e,"loc")&&(s.loc=r?null:e.loc),rm(e,"leadingComments")&&(s.leadingComments=im(e.leadingComments,t,r,a)),rm(e,"innerComments")&&(s.innerComments=im(e.innerComments,t,r,a)),rm(e,"trailingComments")&&(s.trailingComments=im(e.trailingComments,t,r,a)),rm(e,"extra")&&(s.extra=Object.assign({},e.extra)),s}function im(e,t,r,a){return e&&t?e.map(function(e){var t=a.get(e);if(t)return t;var n={type:e.type,value:e.value,loc:e.loc};return r&&(n.loc=null),a.set(e,n),n}):e}function dm(e){return sm(e,!1)}function cm(e,t,r){if(!r||!e)return e;var a,n=t+"Comments";e[n]?"leading"===t?e[n]=r.concat(e[n]):(a=e[n]).push.apply(a,b(r)):e[n]=r;return e}function lm(e,t,r,a){return cm(e,t,[{type:a?"CommentLine":"CommentBlock",value:r}])}function um(e,t,r){t&&r&&(t[e]=Array.from(new Set([].concat(t[e],r[e]).filter(Boolean))))}function pm(e,t){um("innerComments",e,t)}function fm(e,t){um("leadingComments",e,t)}function gm(e,t){um("trailingComments",e,t)}function mm(e,t){return gm(e,t),fm(e,t),pm(e,t),e}function ym(e){return ia.forEach(function(t){e[t]=null}),e}var hm=Ea.Standardized,bm=Ea.Expression,vm=Ea.Binary,xm=Ea.Scopable,Rm=Ea.BlockParent,jm=Ea.Block,wm=Ea.Statement,Em=Ea.Terminatorless,Sm=Ea.CompletionStatement,Tm=Ea.Conditional,Pm=Ea.Loop,Am=Ea.While,km=Ea.ExpressionWrapper,Cm=Ea.For,_m=Ea.ForXStatement,Im=Ea.Function,Dm=Ea.FunctionParent,Om=Ea.Pureish,Nm=Ea.Declaration,Bm=Ea.FunctionParameter,Mm=Ea.PatternLike,Fm=Ea.LVal,Lm=Ea.TSEntityName,Um=Ea.Literal,qm=Ea.Immutable,Gm=Ea.UserWhitespacable,Wm=Ea.Method,Vm=Ea.ObjectMember,Hm=Ea.Property,zm=Ea.UnaryLike,Km=Ea.Pattern,Xm=Ea.Class,Jm=Ea.ImportOrExportDeclaration,Ym=Ea.ExportDeclaration,$m=Ea.ModuleSpecifier,Qm=Ea.Accessor,Zm=Ea.Private,ey=Ea.Flow,ty=Ea.FlowType,ry=Ea.FlowBaseAnnotation,ay=Ea.FlowDeclaration,ny=Ea.FlowPredicate,sy=Ea.EnumBody,oy=Ea.EnumMember,iy=Ea.JSX,dy=Ea.Miscellaneous,cy=Ea.TypeScript,ly=Ea.TSTypeElement,uy=Ea.TSType,py=Ea.TSBaseType,fy=Jm;function gy(e,t){if(Q(e))return e;var r=[];return te(e)?r=[]:(er(e)||(e=nr(t)?Ws(e):Rs(e)),r=[e]),ps(r)}function my(e){for(var t,r="",a=i(e+="");!(t=a()).done;){var n=t.value;r+=Fr(n.codePointAt(0))?n:"-"}return r=(r=r.replace(/^[-0-9]+/,"")).replace(/[-\s]+(.)?/g,function(e,t){return t?t.toUpperCase():""}),Yr(r)||(r="_"+r),r||"_"}function yy(e){return"eval"!==(e=my(e))&&"arguments"!==e||(e="_"+e),e}function hy(e,t){return void 0===t&&(t=e.key||e.property),!e.computed&&ie(t)&&(t=Cs(t.name)),t}function by(e){if(re(e)&&(e=e.expression),$t(e))return e;if(pr(e)?(e.type="ClassExpression",e.abstract=!1):nr(e)&&(e.type="FunctionExpression"),!$t(e))throw new Error("cannot turn "+e.type+" to an expression");return e}var vy=Symbol(),xy=Symbol();function Ry(e,t,r){if(!e)return!1;var a=ja[e.type];if(!a)return!1;var n=t(e,r=r||{});if(void 0!==n)switch(n){case vy:return!1;case xy:return!0}for(var s,o=i(a);!(s=o()).done;){var d=e[s.value];if(d)if(Array.isArray(d))for(var c,l=i(d);!(c=l()).done;){if(Ry(c.value,t,r))return!0}else if(Ry(d,t,r))return!0}return!1}Ry.skip=vy,Ry.stop=xy;var jy=["tokens","start","end","loc","raw","rawValue"],wy=[].concat(b(ia),["comments"],jy);function Ey(e,t){void 0===t&&(t={});for(var r,a=i(t.preserveComments?jy:wy);!(r=a()).done;){var n=r.value;null!=e[n]&&(e[n]=void 0)}for(var s=0,o=Object.keys(e);s<o.length;s++){var d=o[s];d.startsWith("_")&&null!=e[d]&&(e[d]=void 0)}for(var c,l=i(Object.getOwnPropertySymbols(e));!(c=l()).done;){e[c.value]=null}}function Sy(e,t){return Ry(e,Ey,t),e}function Ty(e,t){var r;return void 0===t&&(t=e.key),"method"===e.kind?Ty.increment()+"":(r=ie(t)?t.name:le(t)?JSON.stringify(t.value):JSON.stringify(Sy(sm(t))),e.computed&&(r="["+r+"]"),e.static&&(r="static:"+r),r)}function Py(e,t){if(er(e))return e;var r,a=!1;if(pr(e))a=!0,r="ClassDeclaration";else if(nr(e))a=!0,r="FunctionDeclaration";else if($(e))return Rs(e);if(a&&!e.id&&(r=!1),!r){if(t)return!1;throw new Error("cannot turn "+e.type+" to a statement")}return e.type=r,e}Ty.uid=0,Ty.increment=function(){return Ty.uid>=Number.MAX_SAFE_INTEGER?Ty.uid=0:Ty.uid++};var Ay=Function.call.bind(Object.prototype.toString);function ky(e){if(void 0===e)return Ps("undefined");if(!0===e||!1===e)return Ds(e);if(null===e)return{type:"NullLiteral"};if("string"==typeof e)return Cs(e);if("number"==typeof e){var t;if(Number.isFinite(e))t=_s(Math.abs(e));else t=ds("/",Number.isNaN(e)?_s(0):_s(1),_s(0));return(e<0||Object.is(e,-0))&&(t=$s("-",t)),t}if("bigint"==typeof e)return e<0?$s("-",ss(-e)):ss(e);if(function(e){return"[object RegExp]"===Ay(e)}(e))return Os(e.source,/\/([a-z]*)$/.exec(e.toString())[1]);if(Array.isArray(e))return os(e.map(ky));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(e)){for(var r=[],a=0,n=Object.keys(e);a<n.length;a++){var s=n[a],o=void 0,i=!1;Yr(s)?"__proto__"===s?(i=!0,o=Cs(s)):o=Ps(s):o=Cs(s),r.push(qs(o,ky(e[s]),i))}return Ls(r)}throw new Error("don't know how to turn this value into a node")}function Cy(e,t){if(!e||!t)return e;for(var r,a=i(Ra.optional);!(r=a()).done;){var n=r.value;null==e[n]&&(e[n]=t[n])}for(var s=0,o=Object.keys(t);s<o.length;s++){var d=o[s];d.startsWith("_")&&"__clone"!==d&&(e[d]=t[d])}for(var c,l=i(Ra.force);!(c=l()).done;){var u=c.value;e[u]=t[u]}return mm(e,t),e}function _y(e){for(var t=[].concat(e),r=Object.create(null);t.length;){var a=t.pop();if(a)switch(a.type){case"ArrayPattern":t.push.apply(t,b(a.elements));break;case"AssignmentExpression":case"AssignmentPattern":case"ForInStatement":case"ForOfStatement":t.push(a.left);break;case"ObjectPattern":t.push.apply(t,b(a.properties));break;case"ObjectProperty":t.push(a.value);break;case"RestElement":case"UpdateExpression":t.push(a.argument);break;case"UnaryExpression":"delete"===a.operator&&t.push(a.argument);break;case"Identifier":r[a.name]=a}}return r}function Iy(e,t,r,a){for(var n=[].concat(e),s=Object.create(null);n.length;){var o=n.shift();if(o)if(!a||!($(o)||Te(o)||Pe(o)))if(ie(o))t?(s[o.name]=s[o.name]||[]).push(o):s[o.name]=o;else if(!gr(o)||Be(o)){if(r){if(se(o)){n.push(o.id);continue}if(oe(o))continue}var i=Iy.keys[o.type];if(i)for(var d=0;d<i.length;d++){var c=o[i[d]];c&&(Array.isArray(c)?n.push.apply(n,b(c)):n.push(c))}}else ir(o.declaration)&&n.push(o.declaration)}return s}function Dy(e,t){return Iy(e,t,!0)}function Oy(e){if(!e.computed||dr(e.key))return e.key}function Ny(e,t){if("id"in e&&e.id)return{name:e.id.name,originalNode:e.id};var r,a="";if(xe(t,{value:e})?r=Oy(t):ve(e)||ze(e)?(r=Oy(e),"get"===e.kind?a="get ":"set"===e.kind&&(a="set ")):ke(t,{init:e})?r=t.id:$(t,{operator:"=",right:e})&&(r=t.left),!r)return null;var n=dr(r)?function(e){return pe(e)?"null":ge(e)?"/"+e.pattern+"/"+e.flags:$e(e)?e.quasis.map(function(e){return e.value.raw}).join(""):void 0!==e.value?String(e.value):null}(r):ie(r)?r.name:it(r)?r.id.name:null;return null==n?null:{name:a+n,originalNode:r}}function By(e,t,r){"function"==typeof t&&(t={enter:t});var a=t;My(e,a.enter,a.exit,r,[])}function My(e,t,r,a,n){var s=ja[e.type];if(s){t&&t(e,n,a);for(var o,d=i(s);!(o=d()).done;){var c=o.value,l=e[c];if(Array.isArray(l))for(var u=0;u<l.length;u++){var p=l[u];p&&(n.push({node:e,key:c,index:u}),My(p,t,r,a,n),n.pop())}else l&&(n.push({node:e,key:c}),My(l,t,r,a,n),n.pop())}r&&r(e,n,a)}}function Fy(e,t,r){if(r&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===r.type)return!1;var a=Iy.keys[t.type];if(a)for(var n=0;n<a.length;n++){var s=t[a[n]];if(Array.isArray(s)){if(s.includes(e))return!0}else if(s===e)return!0}return!1}Iy.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],TSImportEqualsDeclaration:["id"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]};var Ly=Symbol.for("var used to be block scoped");function Uy(e){return Ae(e)&&("var"!==e.kind||e[Ly])}function qy(e){return se(e)||Ne(e)||Uy(e)}function Gy(e,t,r){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:"ObjectPattern"!==(null==r?void 0:r.type);case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==r||!r.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}function Wy(e,t){return(!Q(e)||!nr(t)&&!ee(t))&&(!(!ur(e)||!nr(t)&&!ee(t))||Zt(e))}var Vy=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"]);function Hy(e){return Yr(e)&&!Vy.has(e)}var zy=Symbol.for("var used to be block scoped");function Ky(e){return Ae(e,{kind:"var"})&&!e[zy]}var Xy={isReactComponent:Tr,isCompatTag:function(e){return!!e&&/^[a-z]/.test(e)},buildChildren:function(e){for(var t=[],r=0;r<e.children.length;r++){var a=e.children[r];It(a)?Mg(a,t):(Tt(a)&&(a=a.expression),St(a)||t.push(a))}return t}};z.env.BABEL_TYPES_8_BREAKING&&console.warn("BABEL_TYPES_8_BREAKING is not supported anymore. Use the latest Babel 8.0.0 pre-release instead!");var Jy=Object.freeze({__proto__:null,ACCESSOR_TYPES:Qm,ALIAS_KEYS:wa,ASSIGNMENT_OPERATORS:ya,AnyTypeAnnotation:Cu,ArgumentPlaceholder:sf,ArrayExpression:Jc,ArrayPattern:Kl,ArrayTypeAnnotation:_u,ArrowFunctionExpression:Xl,AssignmentExpression:Yc,AssignmentPattern:zl,AwaitExpression:hu,BINARY_OPERATORS:ma,BINARY_TYPES:vm,BLOCKPARENT_TYPES:Rm,BLOCK_TYPES:jm,BOOLEAN_BINARY_OPERATORS:fa,BOOLEAN_NUMBER_BINARY_OPERATORS:la,BOOLEAN_UNARY_OPERATORS:ha,BUILDER_KEYS:Ta,BigIntLiteral:vu,BinaryExpression:$c,BindExpression:of,BlockStatement:tl,BooleanLiteral:jl,BooleanLiteralTypeAnnotation:Du,BooleanTypeAnnotation:Iu,BreakStatement:rl,CLASS_TYPES:Xm,COMMENT_KEYS:ia,COMPARISON_BINARY_OPERATORS:pa,COMPLETIONSTATEMENT_TYPES:Sm,CONDITIONAL_TYPES:Tm,CallExpression:al,CatchClause:nl,ClassAccessorProperty:Eu,ClassBody:Jl,ClassDeclaration:$l,ClassExpression:Yl,ClassImplements:Nu,ClassMethod:cu,ClassPrivateMethod:Tu,ClassPrivateProperty:Su,ClassProperty:wu,ConditionalExpression:sl,ContinueStatement:ol,DECLARATION_TYPES:Nm,DEPRECATED_ALIASES:Wn,DEPRECATED_KEYS:Pa,DebuggerStatement:il,DecimalLiteral:ff,DeclareClass:Bu,DeclareExportAllDeclaration:Hu,DeclareExportDeclaration:Vu,DeclareFunction:Mu,DeclareInterface:Fu,DeclareModule:Lu,DeclareModuleExports:Uu,DeclareOpaqueType:Gu,DeclareTypeAlias:qu,DeclareVariable:Wu,DeclaredPredicate:zu,Decorator:df,Directive:Zc,DirectiveLiteral:el,DoExpression:cf,DoWhileStatement:dl,ENUMBODY_TYPES:sy,ENUMMEMBER_TYPES:oy,EQUALITY_BINARY_OPERATORS:ua,EXPORTDECLARATION_TYPES:Ym,EXPRESSIONWRAPPER_TYPES:km,EXPRESSION_TYPES:bm,EmptyStatement:cl,EmptyTypeAnnotation:ap,EnumBooleanBody:_p,EnumBooleanMember:Np,EnumDeclaration:Cp,EnumDefaultedMember:Fp,EnumNumberBody:Ip,EnumNumberMember:Bp,EnumStringBody:Dp,EnumStringMember:Mp,EnumSymbolBody:Op,ExistsTypeAnnotation:Ku,ExportAllDeclaration:Ql,ExportDefaultDeclaration:Zl,ExportDefaultSpecifier:lf,ExportNamedDeclaration:eu,ExportNamespaceSpecifier:xu,ExportSpecifier:tu,ExpressionStatement:ll,FLATTENABLE_KEYS:["body","expressions"],FLIPPED_ALIAS_KEYS:Ea,FLOWBASEANNOTATION_TYPES:ry,FLOWDECLARATION_TYPES:ay,FLOWPREDICATE_TYPES:ny,FLOWTYPE_TYPES:ty,FLOW_TYPES:ey,FORXSTATEMENT_TYPES:_m,FOR_INIT_KEYS:["left","init"],FOR_TYPES:Cm,FUNCTIONPARAMETER_TYPES:Bm,FUNCTIONPARENT_TYPES:Dm,FUNCTION_TYPES:Im,File:ul,ForInStatement:pl,ForOfStatement:ru,ForStatement:fl,FunctionDeclaration:gl,FunctionExpression:ml,FunctionTypeAnnotation:Xu,FunctionTypeParam:Ju,GenericTypeAnnotation:Yu,IMMUTABLE_TYPES:qm,IMPORTOREXPORTDECLARATION_TYPES:Jm,INHERIT_KEYS:Ra,Identifier:yl,IfStatement:hl,Import:bu,ImportAttribute:ku,ImportDeclaration:au,ImportDefaultSpecifier:nu,ImportExpression:iu,ImportNamespaceSpecifier:su,ImportSpecifier:ou,IndexedAccessType:Lp,InferredPredicate:$u,InterfaceDeclaration:Zu,InterfaceExtends:Qu,InterfaceTypeAnnotation:ep,InterpreterDirective:Qc,IntersectionTypeAnnotation:tp,JSXAttribute:qp,JSXClosingElement:Gp,JSXClosingFragment:tf,JSXElement:Wp,JSXEmptyExpression:Vp,JSXExpressionContainer:Hp,JSXFragment:Zp,JSXIdentifier:Kp,JSXMemberExpression:Xp,JSXNamespacedName:Jp,JSXOpeningElement:Yp,JSXOpeningFragment:ef,JSXSpreadAttribute:$p,JSXSpreadChild:zp,JSXText:Qp,JSX_TYPES:iy,LITERAL_TYPES:Um,LOGICAL_OPERATORS:da,LOOP_TYPES:Pm,LVAL_TYPES:Fm,LabeledStatement:bl,LogicalExpression:El,METHOD_TYPES:Wm,MISCELLANEOUS_TYPES:dy,MODULEDECLARATION_TYPES:fy,MODULESPECIFIER_TYPES:$m,MemberExpression:Sl,MetaProperty:du,MixedTypeAnnotation:rp,ModuleExpression:gf,NODE_FIELDS:Sa,NODE_PARENT_VALIDATIONS:Aa,NODE_UNION_SHAPES__PRIVATE:ka,NUMBER_BINARY_OPERATORS:ga,NUMBER_UNARY_OPERATORS:ba,NewExpression:Tl,Noop:rf,NullLiteral:Rl,NullLiteralTypeAnnotation:Ou,NullableTypeAnnotation:np,NumberLiteral:Dg,NumberLiteralTypeAnnotation:sp,NumberTypeAnnotation:op,NumericLiteral:xl,OBJECTMEMBER_TYPES:Vm,ObjectExpression:Al,ObjectMethod:kl,ObjectPattern:lu,ObjectProperty:Cl,ObjectTypeAnnotation:ip,ObjectTypeCallProperty:cp,ObjectTypeIndexer:lp,ObjectTypeInternalSlot:dp,ObjectTypeProperty:up,ObjectTypeSpreadProperty:pp,OpaqueType:fp,OptionalCallExpression:ju,OptionalIndexedAccessType:Up,OptionalMemberExpression:Ru,PATTERNLIKE_TYPES:Mm,PATTERN_TYPES:Km,PLACEHOLDERS:Rn,PLACEHOLDERS_ALIAS:jn,PLACEHOLDERS_FLIPPED_ALIAS:Pn,PRIVATE_TYPES:Zm,PROPERTY_TYPES:Hm,PUREISH_TYPES:Om,ParenthesizedExpression:Ol,PipelineBareFunction:hf,PipelinePrimaryTopicReference:bf,PipelineTopicExpression:yf,Placeholder:af,PrivateName:Pu,Program:Pl,QualifiedTypeIdentifier:gp,RecordExpression:uf,RegExpLiteral:wl,RegexLiteral:Og,RestElement:_l,RestProperty:Ng,ReturnStatement:Il,SCOPABLE_TYPES:xm,STANDARDIZED_TYPES:hm,STATEMENT_OR_BLOCK_KEYS:oa,STATEMENT_TYPES:wm,STRING_UNARY_OPERATORS:va,SequenceExpression:Dl,SpreadElement:uu,SpreadProperty:Bg,StaticBlock:Au,StringLiteral:vl,StringLiteralTypeAnnotation:mp,StringTypeAnnotation:yp,Super:pu,SwitchCase:Nl,SwitchStatement:Bl,SymbolTypeAnnotation:hp,TERMINATORLESS_TYPES:Em,TSAnyKeyword:kf,TSArrayType:Jf,TSAsExpression:mg,TSBASETYPE_TYPES:py,TSBigIntKeyword:_f,TSBooleanKeyword:Cf,TSCallSignatureDeclaration:Ef,TSConditionalType:rg,TSConstructSignatureDeclaration:Sf,TSConstructorType:Vf,TSDeclareFunction:Rf,TSDeclareMethod:jf,TSENTITYNAME_TYPES:Lm,TSEnumBody:bg,TSEnumDeclaration:vg,TSEnumMember:xg,TSExportAssignment:Pg,TSExpressionWithTypeArguments:lg,TSExternalModuleReference:Sg,TSFunctionType:Wf,TSImportEqualsDeclaration:Eg,TSImportType:wg,TSIndexSignature:Af,TSIndexedAccessType:og,TSInferType:ag,TSInstantiationExpression:gg,TSInterfaceBody:pg,TSInterfaceDeclaration:ug,TSIntersectionType:tg,TSIntrinsicKeyword:If,TSLiteralType:cg,TSMappedType:ig,TSMethodSignature:Pf,TSModuleBlock:jg,TSModuleDeclaration:Rg,TSNamedTupleMember:Zf,TSNamespaceExportDeclaration:Ag,TSNeverKeyword:Df,TSNonNullExpression:Tg,TSNullKeyword:Of,TSNumberKeyword:Nf,TSObjectKeyword:Bf,TSOptionalType:$f,TSParameterProperty:xf,TSParenthesizedType:ng,TSPropertySignature:Tf,TSQualifiedName:wf,TSRestType:Qf,TSSatisfiesExpression:yg,TSStringKeyword:Mf,TSSymbolKeyword:Ff,TSTYPEELEMENT_TYPES:ly,TSTYPE_TYPES:uy,TSTemplateLiteralType:dg,TSThisType:Gf,TSTupleType:Yf,TSTypeAliasDeclaration:fg,TSTypeAnnotation:kg,TSTypeAssertion:hg,TSTypeLiteral:Xf,TSTypeOperator:sg,TSTypeParameter:Ig,TSTypeParameterDeclaration:_g,TSTypeParameterInstantiation:Cg,TSTypePredicate:zf,TSTypeQuery:Kf,TSTypeReference:Hf,TSUndefinedKeyword:Lf,TSUnionType:eg,TSUnknownKeyword:Uf,TSVoidKeyword:qf,TYPES:Zn,TYPESCRIPT_TYPES:cy,TaggedTemplateExpression:fu,TemplateElement:gu,TemplateLiteral:mu,ThisExpression:Ml,ThisTypeAnnotation:bp,ThrowStatement:Fl,TopicReference:mf,TryStatement:Ll,TupleExpression:pf,TupleTypeAnnotation:vp,TypeAlias:Rp,TypeAnnotation:jp,TypeCastExpression:wp,TypeParameter:Ep,TypeParameterDeclaration:Sp,TypeParameterInstantiation:Tp,TypeofTypeAnnotation:xp,UNARYLIKE_TYPES:zm,UNARY_OPERATORS:xa,UPDATE_OPERATORS:ca,USERWHITESPACABLE_TYPES:Gm,UnaryExpression:Ul,UnionTypeAnnotation:Pp,UpdateExpression:ql,V8IntrinsicIdentifier:nf,VISITOR_KEYS:ja,VariableDeclaration:Gl,VariableDeclarator:Wl,Variance:Ap,VoidPattern:vf,VoidTypeAnnotation:kp,WHILE_TYPES:Am,WhileStatement:Vl,WithStatement:Hl,YieldExpression:yu,__internal__deprecationWarning:J,addComment:lm,addComments:cm,anyTypeAnnotation:qo,appendToMemberExpression:function(e,t,r){return void 0===r&&(r=!1),e.object=Bs(e.object,e.property,e.computed),e.property=t,e.computed=!!r,e},argumentPlaceholder:yd,arrayExpression:os,arrayPattern:no,arrayTypeAnnotation:Go,arrowFunctionExpression:so,assertAccessor:function(e,t){Ug("Accessor",e,t)},assertAnyTypeAnnotation:function(e,t){Ug("AnyTypeAnnotation",e,t)},assertArgumentPlaceholder:function(e,t){Ug("ArgumentPlaceholder",e,t)},assertArrayExpression:function(e,t){Ug("ArrayExpression",e,t)},assertArrayPattern:function(e,t){Ug("ArrayPattern",e,t)},assertArrayTypeAnnotation:function(e,t){Ug("ArrayTypeAnnotation",e,t)},assertArrowFunctionExpression:function(e,t){Ug("ArrowFunctionExpression",e,t)},assertAssignmentExpression:function(e,t){Ug("AssignmentExpression",e,t)},assertAssignmentPattern:function(e,t){Ug("AssignmentPattern",e,t)},assertAwaitExpression:function(e,t){Ug("AwaitExpression",e,t)},assertBigIntLiteral:function(e,t){Ug("BigIntLiteral",e,t)},assertBinary:function(e,t){Ug("Binary",e,t)},assertBinaryExpression:function(e,t){Ug("BinaryExpression",e,t)},assertBindExpression:function(e,t){Ug("BindExpression",e,t)},assertBlock:function(e,t){Ug("Block",e,t)},assertBlockParent:function(e,t){Ug("BlockParent",e,t)},assertBlockStatement:function(e,t){Ug("BlockStatement",e,t)},assertBooleanLiteral:function(e,t){Ug("BooleanLiteral",e,t)},assertBooleanLiteralTypeAnnotation:function(e,t){Ug("BooleanLiteralTypeAnnotation",e,t)},assertBooleanTypeAnnotation:function(e,t){Ug("BooleanTypeAnnotation",e,t)},assertBreakStatement:function(e,t){Ug("BreakStatement",e,t)},assertCallExpression:function(e,t){Ug("CallExpression",e,t)},assertCatchClause:function(e,t){Ug("CatchClause",e,t)},assertClass:function(e,t){Ug("Class",e,t)},assertClassAccessorProperty:function(e,t){Ug("ClassAccessorProperty",e,t)},assertClassBody:function(e,t){Ug("ClassBody",e,t)},assertClassDeclaration:function(e,t){Ug("ClassDeclaration",e,t)},assertClassExpression:function(e,t){Ug("ClassExpression",e,t)},assertClassImplements:function(e,t){Ug("ClassImplements",e,t)},assertClassMethod:function(e,t){Ug("ClassMethod",e,t)},assertClassPrivateMethod:function(e,t){Ug("ClassPrivateMethod",e,t)},assertClassPrivateProperty:function(e,t){Ug("ClassPrivateProperty",e,t)},assertClassProperty:function(e,t){Ug("ClassProperty",e,t)},assertCompletionStatement:function(e,t){Ug("CompletionStatement",e,t)},assertConditional:function(e,t){Ug("Conditional",e,t)},assertConditionalExpression:function(e,t){Ug("ConditionalExpression",e,t)},assertContinueStatement:function(e,t){Ug("ContinueStatement",e,t)},assertDebuggerStatement:function(e,t){Ug("DebuggerStatement",e,t)},assertDecimalLiteral:function(e,t){Ug("DecimalLiteral",e,t)},assertDeclaration:function(e,t){Ug("Declaration",e,t)},assertDeclareClass:function(e,t){Ug("DeclareClass",e,t)},assertDeclareExportAllDeclaration:function(e,t){Ug("DeclareExportAllDeclaration",e,t)},assertDeclareExportDeclaration:function(e,t){Ug("DeclareExportDeclaration",e,t)},assertDeclareFunction:function(e,t){Ug("DeclareFunction",e,t)},assertDeclareInterface:function(e,t){Ug("DeclareInterface",e,t)},assertDeclareModule:function(e,t){Ug("DeclareModule",e,t)},assertDeclareModuleExports:function(e,t){Ug("DeclareModuleExports",e,t)},assertDeclareOpaqueType:function(e,t){Ug("DeclareOpaqueType",e,t)},assertDeclareTypeAlias:function(e,t){Ug("DeclareTypeAlias",e,t)},assertDeclareVariable:function(e,t){Ug("DeclareVariable",e,t)},assertDeclaredPredicate:function(e,t){Ug("DeclaredPredicate",e,t)},assertDecorator:function(e,t){Ug("Decorator",e,t)},assertDirective:function(e,t){Ug("Directive",e,t)},assertDirectiveLiteral:function(e,t){Ug("DirectiveLiteral",e,t)},assertDoExpression:function(e,t){Ug("DoExpression",e,t)},assertDoWhileStatement:function(e,t){Ug("DoWhileStatement",e,t)},assertEmptyStatement:function(e,t){Ug("EmptyStatement",e,t)},assertEmptyTypeAnnotation:function(e,t){Ug("EmptyTypeAnnotation",e,t)},assertEnumBody:function(e,t){Ug("EnumBody",e,t)},assertEnumBooleanBody:function(e,t){Ug("EnumBooleanBody",e,t)},assertEnumBooleanMember:function(e,t){Ug("EnumBooleanMember",e,t)},assertEnumDeclaration:function(e,t){Ug("EnumDeclaration",e,t)},assertEnumDefaultedMember:function(e,t){Ug("EnumDefaultedMember",e,t)},assertEnumMember:function(e,t){Ug("EnumMember",e,t)},assertEnumNumberBody:function(e,t){Ug("EnumNumberBody",e,t)},assertEnumNumberMember:function(e,t){Ug("EnumNumberMember",e,t)},assertEnumStringBody:function(e,t){Ug("EnumStringBody",e,t)},assertEnumStringMember:function(e,t){Ug("EnumStringMember",e,t)},assertEnumSymbolBody:function(e,t){Ug("EnumSymbolBody",e,t)},assertExistsTypeAnnotation:function(e,t){Ug("ExistsTypeAnnotation",e,t)},assertExportAllDeclaration:function(e,t){Ug("ExportAllDeclaration",e,t)},assertExportDeclaration:function(e,t){Ug("ExportDeclaration",e,t)},assertExportDefaultDeclaration:function(e,t){Ug("ExportDefaultDeclaration",e,t)},assertExportDefaultSpecifier:function(e,t){Ug("ExportDefaultSpecifier",e,t)},assertExportNamedDeclaration:function(e,t){Ug("ExportNamedDeclaration",e,t)},assertExportNamespaceSpecifier:function(e,t){Ug("ExportNamespaceSpecifier",e,t)},assertExportSpecifier:function(e,t){Ug("ExportSpecifier",e,t)},assertExpression:Hg,assertExpressionStatement:qg,assertExpressionWrapper:function(e,t){Ug("ExpressionWrapper",e,t)},assertFile:function(e,t){Ug("File",e,t)},assertFlow:function(e,t){Ug("Flow",e,t)},assertFlowBaseAnnotation:function(e,t){Ug("FlowBaseAnnotation",e,t)},assertFlowDeclaration:function(e,t){Ug("FlowDeclaration",e,t)},assertFlowPredicate:function(e,t){Ug("FlowPredicate",e,t)},assertFlowType:function(e,t){Ug("FlowType",e,t)},assertFor:function(e,t){Ug("For",e,t)},assertForInStatement:function(e,t){Ug("ForInStatement",e,t)},assertForOfStatement:function(e,t){Ug("ForOfStatement",e,t)},assertForStatement:function(e,t){Ug("ForStatement",e,t)},assertForXStatement:function(e,t){Ug("ForXStatement",e,t)},assertFunction:Kg,assertFunctionDeclaration:function(e,t){Ug("FunctionDeclaration",e,t)},assertFunctionExpression:function(e,t){Ug("FunctionExpression",e,t)},assertFunctionParameter:function(e,t){Ug("FunctionParameter",e,t)},assertFunctionParent:function(e,t){Ug("FunctionParent",e,t)},assertFunctionTypeAnnotation:function(e,t){Ug("FunctionTypeAnnotation",e,t)},assertFunctionTypeParam:function(e,t){Ug("FunctionTypeParam",e,t)},assertGenericTypeAnnotation:function(e,t){Ug("GenericTypeAnnotation",e,t)},assertIdentifier:Gg,assertIfStatement:function(e,t){Ug("IfStatement",e,t)},assertImmutable:function(e,t){Ug("Immutable",e,t)},assertImport:function(e,t){Ug("Import",e,t)},assertImportAttribute:function(e,t){Ug("ImportAttribute",e,t)},assertImportDeclaration:function(e,t){Ug("ImportDeclaration",e,t)},assertImportDefaultSpecifier:function(e,t){Ug("ImportDefaultSpecifier",e,t)},assertImportExpression:function(e,t){Ug("ImportExpression",e,t)},assertImportNamespaceSpecifier:function(e,t){Ug("ImportNamespaceSpecifier",e,t)},assertImportOrExportDeclaration:function(e,t){Ug("ImportOrExportDeclaration",e,t)},assertImportSpecifier:function(e,t){Ug("ImportSpecifier",e,t)},assertIndexedAccessType:function(e,t){Ug("IndexedAccessType",e,t)},assertInferredPredicate:function(e,t){Ug("InferredPredicate",e,t)},assertInterfaceDeclaration:function(e,t){Ug("InterfaceDeclaration",e,t)},assertInterfaceExtends:function(e,t){Ug("InterfaceExtends",e,t)},assertInterfaceTypeAnnotation:function(e,t){Ug("InterfaceTypeAnnotation",e,t)},assertInterpreterDirective:function(e,t){Ug("InterpreterDirective",e,t)},assertIntersectionTypeAnnotation:function(e,t){Ug("IntersectionTypeAnnotation",e,t)},assertJSX:function(e,t){Ug("JSX",e,t)},assertJSXAttribute:function(e,t){Ug("JSXAttribute",e,t)},assertJSXClosingElement:function(e,t){Ug("JSXClosingElement",e,t)},assertJSXClosingFragment:function(e,t){Ug("JSXClosingFragment",e,t)},assertJSXElement:function(e,t){Ug("JSXElement",e,t)},assertJSXEmptyExpression:function(e,t){Ug("JSXEmptyExpression",e,t)},assertJSXExpressionContainer:function(e,t){Ug("JSXExpressionContainer",e,t)},assertJSXFragment:function(e,t){Ug("JSXFragment",e,t)},assertJSXIdentifier:function(e,t){Ug("JSXIdentifier",e,t)},assertJSXMemberExpression:function(e,t){Ug("JSXMemberExpression",e,t)},assertJSXNamespacedName:function(e,t){Ug("JSXNamespacedName",e,t)},assertJSXOpeningElement:function(e,t){Ug("JSXOpeningElement",e,t)},assertJSXOpeningFragment:function(e,t){Ug("JSXOpeningFragment",e,t)},assertJSXSpreadAttribute:function(e,t){Ug("JSXSpreadAttribute",e,t)},assertJSXSpreadChild:function(e,t){Ug("JSXSpreadChild",e,t)},assertJSXText:function(e,t){Ug("JSXText",e,t)},assertLVal:function(e,t){Ug("LVal",e,t)},assertLabeledStatement:function(e,t){Ug("LabeledStatement",e,t)},assertLiteral:function(e,t){Ug("Literal",e,t)},assertLogicalExpression:function(e,t){Ug("LogicalExpression",e,t)},assertLoop:function(e,t){Ug("Loop",e,t)},assertMemberExpression:function(e,t){Ug("MemberExpression",e,t)},assertMetaProperty:function(e,t){Ug("MetaProperty",e,t)},assertMethod:function(e,t){Ug("Method",e,t)},assertMiscellaneous:function(e,t){Ug("Miscellaneous",e,t)},assertMixedTypeAnnotation:function(e,t){Ug("MixedTypeAnnotation",e,t)},assertModuleDeclaration:function(e,t){J("assertModuleDeclaration","assertImportOrExportDeclaration"),Ug("ModuleDeclaration",e,t)},assertModuleExpression:function(e,t){Ug("ModuleExpression",e,t)},assertModuleSpecifier:function(e,t){Ug("ModuleSpecifier",e,t)},assertNewExpression:function(e,t){Ug("NewExpression",e,t)},assertNode:Lg,assertNoop:function(e,t){Ug("Noop",e,t)},assertNullLiteral:function(e,t){Ug("NullLiteral",e,t)},assertNullLiteralTypeAnnotation:function(e,t){Ug("NullLiteralTypeAnnotation",e,t)},assertNullableTypeAnnotation:function(e,t){Ug("NullableTypeAnnotation",e,t)},assertNumberLiteral:function(e,t){J("assertNumberLiteral","assertNumericLiteral"),Ug("NumberLiteral",e,t)},assertNumberLiteralTypeAnnotation:function(e,t){Ug("NumberLiteralTypeAnnotation",e,t)},assertNumberTypeAnnotation:function(e,t){Ug("NumberTypeAnnotation",e,t)},assertNumericLiteral:function(e,t){Ug("NumericLiteral",e,t)},assertObjectExpression:function(e,t){Ug("ObjectExpression",e,t)},assertObjectMember:function(e,t){Ug("ObjectMember",e,t)},assertObjectMethod:function(e,t){Ug("ObjectMethod",e,t)},assertObjectPattern:function(e,t){Ug("ObjectPattern",e,t)},assertObjectProperty:function(e,t){Ug("ObjectProperty",e,t)},assertObjectTypeAnnotation:function(e,t){Ug("ObjectTypeAnnotation",e,t)},assertObjectTypeCallProperty:function(e,t){Ug("ObjectTypeCallProperty",e,t)},assertObjectTypeIndexer:function(e,t){Ug("ObjectTypeIndexer",e,t)},assertObjectTypeInternalSlot:function(e,t){Ug("ObjectTypeInternalSlot",e,t)},assertObjectTypeProperty:function(e,t){Ug("ObjectTypeProperty",e,t)},assertObjectTypeSpreadProperty:function(e,t){Ug("ObjectTypeSpreadProperty",e,t)},assertOpaqueType:function(e,t){Ug("OpaqueType",e,t)},assertOptionalCallExpression:function(e,t){Ug("OptionalCallExpression",e,t)},assertOptionalIndexedAccessType:function(e,t){Ug("OptionalIndexedAccessType",e,t)},assertOptionalMemberExpression:function(e,t){Ug("OptionalMemberExpression",e,t)},assertParenthesizedExpression:function(e,t){Ug("ParenthesizedExpression",e,t)},assertPattern:function(e,t){Ug("Pattern",e,t)},assertPatternLike:function(e,t){Ug("PatternLike",e,t)},assertPipelineBareFunction:function(e,t){Ug("PipelineBareFunction",e,t)},assertPipelinePrimaryTopicReference:function(e,t){Ug("PipelinePrimaryTopicReference",e,t)},assertPipelineTopicExpression:function(e,t){Ug("PipelineTopicExpression",e,t)},assertPlaceholder:function(e,t){Ug("Placeholder",e,t)},assertPrivate:function(e,t){Ug("Private",e,t)},assertPrivateName:function(e,t){Ug("PrivateName",e,t)},assertProgram:function(e,t){Ug("Program",e,t)},assertProperty:function(e,t){Ug("Property",e,t)},assertPureish:function(e,t){Ug("Pureish",e,t)},assertQualifiedTypeIdentifier:function(e,t){Ug("QualifiedTypeIdentifier",e,t)},assertRecordExpression:function(e,t){Ug("RecordExpression",e,t)},assertRegExpLiteral:function(e,t){Ug("RegExpLiteral",e,t)},assertRegexLiteral:function(e,t){J("assertRegexLiteral","assertRegExpLiteral"),Ug("RegexLiteral",e,t)},assertRestElement:Wg,assertRestProperty:function(e,t){J("assertRestProperty","assertRestElement"),Ug("RestProperty",e,t)},assertReturnStatement:function(e,t){Ug("ReturnStatement",e,t)},assertScopable:function(e,t){Ug("Scopable",e,t)},assertSequenceExpression:function(e,t){Ug("SequenceExpression",e,t)},assertSpreadElement:function(e,t){Ug("SpreadElement",e,t)},assertSpreadProperty:function(e,t){J("assertSpreadProperty","assertSpreadElement"),Ug("SpreadProperty",e,t)},assertStandardized:function(e,t){Ug("Standardized",e,t)},assertStatement:zg,assertStaticBlock:function(e,t){Ug("StaticBlock",e,t)},assertStringLiteral:function(e,t){Ug("StringLiteral",e,t)},assertStringLiteralTypeAnnotation:function(e,t){Ug("StringLiteralTypeAnnotation",e,t)},assertStringTypeAnnotation:function(e,t){Ug("StringTypeAnnotation",e,t)},assertSuper:function(e,t){Ug("Super",e,t)},assertSwitchCase:function(e,t){Ug("SwitchCase",e,t)},assertSwitchStatement:function(e,t){Ug("SwitchStatement",e,t)},assertSymbolTypeAnnotation:function(e,t){Ug("SymbolTypeAnnotation",e,t)},assertTSAnyKeyword:function(e,t){Ug("TSAnyKeyword",e,t)},assertTSArrayType:function(e,t){Ug("TSArrayType",e,t)},assertTSAsExpression:function(e,t){Ug("TSAsExpression",e,t)},assertTSBaseType:function(e,t){Ug("TSBaseType",e,t)},assertTSBigIntKeyword:function(e,t){Ug("TSBigIntKeyword",e,t)},assertTSBooleanKeyword:function(e,t){Ug("TSBooleanKeyword",e,t)},assertTSCallSignatureDeclaration:function(e,t){Ug("TSCallSignatureDeclaration",e,t)},assertTSConditionalType:function(e,t){Ug("TSConditionalType",e,t)},assertTSConstructSignatureDeclaration:function(e,t){Ug("TSConstructSignatureDeclaration",e,t)},assertTSConstructorType:function(e,t){Ug("TSConstructorType",e,t)},assertTSDeclareFunction:function(e,t){Ug("TSDeclareFunction",e,t)},assertTSDeclareMethod:function(e,t){Ug("TSDeclareMethod",e,t)},assertTSEntityName:function(e,t){Ug("TSEntityName",e,t)},assertTSEnumBody:function(e,t){Ug("TSEnumBody",e,t)},assertTSEnumDeclaration:function(e,t){Ug("TSEnumDeclaration",e,t)},assertTSEnumMember:function(e,t){Ug("TSEnumMember",e,t)},assertTSExportAssignment:function(e,t){Ug("TSExportAssignment",e,t)},assertTSExpressionWithTypeArguments:function(e,t){Ug("TSExpressionWithTypeArguments",e,t)},assertTSExternalModuleReference:function(e,t){Ug("TSExternalModuleReference",e,t)},assertTSFunctionType:function(e,t){Ug("TSFunctionType",e,t)},assertTSImportEqualsDeclaration:function(e,t){Ug("TSImportEqualsDeclaration",e,t)},assertTSImportType:function(e,t){Ug("TSImportType",e,t)},assertTSIndexSignature:function(e,t){Ug("TSIndexSignature",e,t)},assertTSIndexedAccessType:function(e,t){Ug("TSIndexedAccessType",e,t)},assertTSInferType:function(e,t){Ug("TSInferType",e,t)},assertTSInstantiationExpression:function(e,t){Ug("TSInstantiationExpression",e,t)},assertTSInterfaceBody:function(e,t){Ug("TSInterfaceBody",e,t)},assertTSInterfaceDeclaration:function(e,t){Ug("TSInterfaceDeclaration",e,t)},assertTSIntersectionType:function(e,t){Ug("TSIntersectionType",e,t)},assertTSIntrinsicKeyword:function(e,t){Ug("TSIntrinsicKeyword",e,t)},assertTSLiteralType:function(e,t){Ug("TSLiteralType",e,t)},assertTSMappedType:function(e,t){Ug("TSMappedType",e,t)},assertTSMethodSignature:function(e,t){Ug("TSMethodSignature",e,t)},assertTSModuleBlock:function(e,t){Ug("TSModuleBlock",e,t)},assertTSModuleDeclaration:function(e,t){Ug("TSModuleDeclaration",e,t)},assertTSNamedTupleMember:function(e,t){Ug("TSNamedTupleMember",e,t)},assertTSNamespaceExportDeclaration:function(e,t){Ug("TSNamespaceExportDeclaration",e,t)},assertTSNeverKeyword:function(e,t){Ug("TSNeverKeyword",e,t)},assertTSNonNullExpression:function(e,t){Ug("TSNonNullExpression",e,t)},assertTSNullKeyword:function(e,t){Ug("TSNullKeyword",e,t)},assertTSNumberKeyword:function(e,t){Ug("TSNumberKeyword",e,t)},assertTSObjectKeyword:function(e,t){Ug("TSObjectKeyword",e,t)},assertTSOptionalType:function(e,t){Ug("TSOptionalType",e,t)},assertTSParameterProperty:function(e,t){Ug("TSParameterProperty",e,t)},assertTSParenthesizedType:function(e,t){Ug("TSParenthesizedType",e,t)},assertTSPropertySignature:function(e,t){Ug("TSPropertySignature",e,t)},assertTSQualifiedName:function(e,t){Ug("TSQualifiedName",e,t)},assertTSRestType:function(e,t){Ug("TSRestType",e,t)},assertTSSatisfiesExpression:function(e,t){Ug("TSSatisfiesExpression",e,t)},assertTSStringKeyword:function(e,t){Ug("TSStringKeyword",e,t)},assertTSSymbolKeyword:function(e,t){Ug("TSSymbolKeyword",e,t)},assertTSTemplateLiteralType:function(e,t){Ug("TSTemplateLiteralType",e,t)},assertTSThisType:function(e,t){Ug("TSThisType",e,t)},assertTSTupleType:function(e,t){Ug("TSTupleType",e,t)},assertTSType:function(e,t){Ug("TSType",e,t)},assertTSTypeAliasDeclaration:function(e,t){Ug("TSTypeAliasDeclaration",e,t)},assertTSTypeAnnotation:function(e,t){Ug("TSTypeAnnotation",e,t)},assertTSTypeAssertion:function(e,t){Ug("TSTypeAssertion",e,t)},assertTSTypeElement:function(e,t){Ug("TSTypeElement",e,t)},assertTSTypeLiteral:function(e,t){Ug("TSTypeLiteral",e,t)},assertTSTypeOperator:function(e,t){Ug("TSTypeOperator",e,t)},assertTSTypeParameter:function(e,t){Ug("TSTypeParameter",e,t)},assertTSTypeParameterDeclaration:function(e,t){Ug("TSTypeParameterDeclaration",e,t)},assertTSTypeParameterInstantiation:function(e,t){Ug("TSTypeParameterInstantiation",e,t)},assertTSTypePredicate:function(e,t){Ug("TSTypePredicate",e,t)},assertTSTypeQuery:function(e,t){Ug("TSTypeQuery",e,t)},assertTSTypeReference:function(e,t){Ug("TSTypeReference",e,t)},assertTSUndefinedKeyword:function(e,t){Ug("TSUndefinedKeyword",e,t)},assertTSUnionType:function(e,t){Ug("TSUnionType",e,t)},assertTSUnknownKeyword:function(e,t){Ug("TSUnknownKeyword",e,t)},assertTSVoidKeyword:function(e,t){Ug("TSVoidKeyword",e,t)},assertTaggedTemplateExpression:function(e,t){Ug("TaggedTemplateExpression",e,t)},assertTemplateElement:function(e,t){Ug("TemplateElement",e,t)},assertTemplateLiteral:function(e,t){Ug("TemplateLiteral",e,t)},assertTerminatorless:function(e,t){Ug("Terminatorless",e,t)},assertThisExpression:function(e,t){Ug("ThisExpression",e,t)},assertThisTypeAnnotation:function(e,t){Ug("ThisTypeAnnotation",e,t)},assertThrowStatement:function(e,t){Ug("ThrowStatement",e,t)},assertTopicReference:function(e,t){Ug("TopicReference",e,t)},assertTryStatement:function(e,t){Ug("TryStatement",e,t)},assertTupleExpression:function(e,t){Ug("TupleExpression",e,t)},assertTupleTypeAnnotation:function(e,t){Ug("TupleTypeAnnotation",e,t)},assertTypeAlias:function(e,t){Ug("TypeAlias",e,t)},assertTypeAnnotation:function(e,t){Ug("TypeAnnotation",e,t)},assertTypeCastExpression:function(e,t){Ug("TypeCastExpression",e,t)},assertTypeParameter:function(e,t){Ug("TypeParameter",e,t)},assertTypeParameterDeclaration:function(e,t){Ug("TypeParameterDeclaration",e,t)},assertTypeParameterInstantiation:function(e,t){Ug("TypeParameterInstantiation",e,t)},assertTypeScript:function(e,t){Ug("TypeScript",e,t)},assertTypeofTypeAnnotation:function(e,t){Ug("TypeofTypeAnnotation",e,t)},assertUnaryExpression:function(e,t){Ug("UnaryExpression",e,t)},assertUnaryLike:function(e,t){Ug("UnaryLike",e,t)},assertUnionTypeAnnotation:function(e,t){Ug("UnionTypeAnnotation",e,t)},assertUpdateExpression:function(e,t){Ug("UpdateExpression",e,t)},assertUserWhitespacable:function(e,t){Ug("UserWhitespacable",e,t)},assertV8IntrinsicIdentifier:function(e,t){Ug("V8IntrinsicIdentifier",e,t)},assertVariableDeclaration:Vg,assertVariableDeclarator:function(e,t){Ug("VariableDeclarator",e,t)},assertVariance:function(e,t){Ug("Variance",e,t)},assertVoidPattern:function(e,t){Ug("VoidPattern",e,t)},assertVoidTypeAnnotation:function(e,t){Ug("VoidTypeAnnotation",e,t)},assertWhile:function(e,t){Ug("While",e,t)},assertWhileStatement:function(e,t){Ug("WhileStatement",e,t)},assertWithStatement:function(e,t){Ug("WithStatement",e,t)},assertYieldExpression:function(e,t){Ug("YieldExpression",e,t)},assignmentExpression:is,assignmentPattern:ao,awaitExpression:ko,bigIntLiteral:ss,binaryExpression:ds,bindExpression:hd,blockStatement:ps,booleanLiteral:Ds,booleanLiteralTypeAnnotation:Vo,booleanTypeAnnotation:Wo,breakStatement:fs,buildMatchMemberExpression:Sr,buildUndefinedNode:tm,callExpression:gs,catchClause:ms,classAccessorProperty:No,classBody:oo,classDeclaration:co,classExpression:io,classImplements:zo,classMethod:Ro,classPrivateMethod:Mo,classPrivateProperty:Bo,classProperty:Oo,clone:dm,cloneDeep:function(e){return sm(e)},cloneDeepWithoutLoc:function(e){return sm(e,!0,!0)},cloneNode:sm,cloneWithoutLoc:function(e){return sm(e,!1,!0)},conditionalExpression:ys,continueStatement:hs,createFlowUnionType:$g,createTSUnionType:em,createTypeAnnotationBasedOnTypeof:Xg,createUnionTypeAnnotation:$g,debuggerStatement:bs,decimalLiteral:wd,declareClass:Ko,declareExportAllDeclaration:ri,declareExportDeclaration:ti,declareFunction:Xo,declareInterface:Jo,declareModule:Yo,declareModuleExports:$o,declareOpaqueType:Zo,declareTypeAlias:Qo,declareVariable:ei,declaredPredicate:ai,decorator:bd,directive:ls,directiveLiteral:us,doExpression:vd,doWhileStatement:vs,emptyStatement:xs,emptyTypeAnnotation:gi,ensureBlock:function(e,t){void 0===t&&(t="body");var r=gy(e[t],e);return e[t]=r,r},enumBooleanBody:Gi,enumBooleanMember:zi,enumDeclaration:qi,enumDefaultedMember:Ji,enumNumberBody:Wi,enumNumberMember:Ki,enumStringBody:Vi,enumStringMember:Xi,enumSymbolBody:Hi,existsTypeAnnotation:ni,exportAllDeclaration:lo,exportDefaultDeclaration:uo,exportDefaultSpecifier:xd,exportNamedDeclaration:po,exportNamespaceSpecifier:_o,exportSpecifier:fo,expressionStatement:Rs,file:js,forInStatement:ws,forOfStatement:go,forStatement:Es,functionDeclaration:Ss,functionExpression:Ts,functionTypeAnnotation:si,functionTypeParam:oi,genericTypeAnnotation:ii,getAssignmentIdentifiers:_y,getBindingIdentifiers:Iy,getFunctionName:Ny,getOuterBindingIdentifiers:Dy,identifier:Ps,ifStatement:As,import:Co,importAttribute:Uo,importDeclaration:mo,importDefaultSpecifier:yo,importExpression:vo,importNamespaceSpecifier:ho,importSpecifier:bo,indexedAccessType:Yi,inferredPredicate:di,inheritInnerComments:pm,inheritLeadingComments:fm,inheritTrailingComments:gm,inherits:Cy,inheritsComments:mm,interfaceDeclaration:li,interfaceExtends:ci,interfaceTypeAnnotation:ui,interpreterDirective:cs,intersectionTypeAnnotation:pi,is:kr,isAccessor:function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||K(e,t)))},isAnyTypeAnnotation:ct,isArgumentPlaceholder:function(e,t){return!!e&&("ArgumentPlaceholder"===e.type&&(null==t||K(e,t)))},isArrayExpression:Y,isArrayPattern:_e,isArrayTypeAnnotation:lt,isArrowFunctionExpression:Ie,isAssignmentExpression:$,isAssignmentPattern:Ce,isAwaitExpression:Ze,isBigIntLiteral:tt,isBinary:Qt,isBinaryExpression:function(e,t){return!!e&&("BinaryExpression"===e.type&&(null==t||K(e,t)))},isBindExpression:Ot,isBinding:Fy,isBlock:function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||K(e,t)},isBlockParent:function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||K(e,t)},isBlockScoped:qy,isBlockStatement:Q,isBooleanLiteral:fe,isBooleanLiteralTypeAnnotation:function(e,t){return!!e&&("BooleanLiteralTypeAnnotation"===e.type&&(null==t||K(e,t)))},isBooleanTypeAnnotation:ut,isBreakStatement:function(e,t){return!!e&&("BreakStatement"===e.type&&(null==t||K(e,t)))},isCallExpression:Z,isCatchClause:ee,isClass:pr,isClassAccessorProperty:function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||K(e,t)))},isClassBody:De,isClassDeclaration:Ne,isClassExpression:Oe,isClassImplements:function(e,t){return!!e&&("ClassImplements"===e.type&&(null==t||K(e,t)))},isClassMethod:ze,isClassPrivateMethod:function(e,t){return!!e&&("ClassPrivateMethod"===e.type&&(null==t||K(e,t)))},isClassPrivateProperty:ot,isClassProperty:st,isCompletionStatement:tr,isConditional:function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||K(e,t)},isConditionalExpression:function(e,t){return!!e&&("ConditionalExpression"===e.type&&(null==t||K(e,t)))},isContinueStatement:function(e,t){return!!e&&("ContinueStatement"===e.type&&(null==t||K(e,t)))},isDebuggerStatement:function(e,t){return!!e&&("DebuggerStatement"===e.type&&(null==t||K(e,t)))},isDecimalLiteral:function(e,t){return!!e&&("DecimalLiteral"===e.type&&(null==t||K(e,t)))},isDeclaration:ir,isDeclareClass:function(e,t){return!!e&&("DeclareClass"===e.type&&(null==t||K(e,t)))},isDeclareExportAllDeclaration:function(e,t){return!!e&&("DeclareExportAllDeclaration"===e.type&&(null==t||K(e,t)))},isDeclareExportDeclaration:pt,isDeclareFunction:function(e,t){return!!e&&("DeclareFunction"===e.type&&(null==t||K(e,t)))},isDeclareInterface:function(e,t){return!!e&&("DeclareInterface"===e.type&&(null==t||K(e,t)))},isDeclareModule:function(e,t){return!!e&&("DeclareModule"===e.type&&(null==t||K(e,t)))},isDeclareModuleExports:function(e,t){return!!e&&("DeclareModuleExports"===e.type&&(null==t||K(e,t)))},isDeclareOpaqueType:function(e,t){return!!e&&("DeclareOpaqueType"===e.type&&(null==t||K(e,t)))},isDeclareTypeAlias:function(e,t){return!!e&&("DeclareTypeAlias"===e.type&&(null==t||K(e,t)))},isDeclareVariable:function(e,t){return!!e&&("DeclareVariable"===e.type&&(null==t||K(e,t)))},isDeclaredPredicate:function(e,t){return!!e&&("DeclaredPredicate"===e.type&&(null==t||K(e,t)))},isDecorator:function(e,t){return!!e&&("Decorator"===e.type&&(null==t||K(e,t)))},isDirective:function(e,t){return!!e&&("Directive"===e.type&&(null==t||K(e,t)))},isDirectiveLiteral:function(e,t){return!!e&&("DirectiveLiteral"===e.type&&(null==t||K(e,t)))},isDoExpression:function(e,t){return!!e&&("DoExpression"===e.type&&(null==t||K(e,t)))},isDoWhileStatement:function(e,t){return!!e&&("DoWhileStatement"===e.type&&(null==t||K(e,t)))},isEmptyStatement:te,isEmptyTypeAnnotation:mt,isEnumBody:function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||K(e,t)},isEnumBooleanBody:function(e,t){return!!e&&("EnumBooleanBody"===e.type&&(null==t||K(e,t)))},isEnumBooleanMember:function(e,t){return!!e&&("EnumBooleanMember"===e.type&&(null==t||K(e,t)))},isEnumDeclaration:function(e,t){return!!e&&("EnumDeclaration"===e.type&&(null==t||K(e,t)))},isEnumDefaultedMember:function(e,t){return!!e&&("EnumDefaultedMember"===e.type&&(null==t||K(e,t)))},isEnumMember:function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||K(e,t)},isEnumNumberBody:function(e,t){return!!e&&("EnumNumberBody"===e.type&&(null==t||K(e,t)))},isEnumNumberMember:function(e,t){return!!e&&("EnumNumberMember"===e.type&&(null==t||K(e,t)))},isEnumStringBody:function(e,t){return!!e&&("EnumStringBody"===e.type&&(null==t||K(e,t)))},isEnumStringMember:function(e,t){return!!e&&("EnumStringMember"===e.type&&(null==t||K(e,t)))},isEnumSymbolBody:function(e,t){return!!e&&("EnumSymbolBody"===e.type&&(null==t||K(e,t)))},isExistsTypeAnnotation:function(e,t){return!!e&&("ExistsTypeAnnotation"===e.type&&(null==t||K(e,t)))},isExportAllDeclaration:Be,isExportDeclaration:gr,isExportDefaultDeclaration:Me,isExportDefaultSpecifier:Nt,isExportNamedDeclaration:Fe,isExportNamespaceSpecifier:rt,isExportSpecifier:Le,isExpression:$t,isExpressionStatement:re,isExpressionWrapper:function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||K(e,t)},isFile:ae,isFlow:hr,isFlowBaseAnnotation:vr,isFlowDeclaration:function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||K(e,t)},isFlowPredicate:function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||K(e,t)},isFlowType:br,isFor:rr,isForInStatement:function(e,t){return!!e&&("ForInStatement"===e.type&&(null==t||K(e,t)))},isForOfStatement:Ue,isForStatement:ne,isForXStatement:ar,isFunction:nr,isFunctionDeclaration:se,isFunctionExpression:oe,isFunctionParameter:function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||K(e,t)},isFunctionParent:sr,isFunctionTypeAnnotation:function(e,t){return!!e&&("FunctionTypeAnnotation"===e.type&&(null==t||K(e,t)))},isFunctionTypeParam:function(e,t){return!!e&&("FunctionTypeParam"===e.type&&(null==t||K(e,t)))},isGenericTypeAnnotation:ft,isIdentifier:ie,isIfStatement:de,isImmutable:function(e){return!!Pr(e.type,"Immutable")||!!ie(e)&&"undefined"===e.name},isImport:et,isImportAttribute:function(e,t){return!!e&&("ImportAttribute"===e.type&&(null==t||K(e,t)))},isImportDeclaration:qe,isImportDefaultSpecifier:Ge,isImportExpression:function(e,t){return!!e&&("ImportExpression"===e.type&&(null==t||K(e,t)))},isImportNamespaceSpecifier:We,isImportOrExportDeclaration:fr,isImportSpecifier:Ve,isIndexedAccessType:function(e,t){return!!e&&("IndexedAccessType"===e.type&&(null==t||K(e,t)))},isInferredPredicate:function(e,t){return!!e&&("InferredPredicate"===e.type&&(null==t||K(e,t)))},isInterfaceDeclaration:function(e,t){return!!e&&("InterfaceDeclaration"===e.type&&(null==t||K(e,t)))},isInterfaceExtends:function(e,t){return!!e&&("InterfaceExtends"===e.type&&(null==t||K(e,t)))},isInterfaceTypeAnnotation:function(e,t){return!!e&&("InterfaceTypeAnnotation"===e.type&&(null==t||K(e,t)))},isInterpreterDirective:function(e,t){return!!e&&("InterpreterDirective"===e.type&&(null==t||K(e,t)))},isIntersectionTypeAnnotation:function(e,t){return!!e&&("IntersectionTypeAnnotation"===e.type&&(null==t||K(e,t)))},isJSX:function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||K(e,t)},isJSXAttribute:wt,isJSXClosingElement:function(e,t){return!!e&&("JSXClosingElement"===e.type&&(null==t||K(e,t)))},isJSXClosingFragment:function(e,t){return!!e&&("JSXClosingFragment"===e.type&&(null==t||K(e,t)))},isJSXElement:Et,isJSXEmptyExpression:St,isJSXExpressionContainer:Tt,isJSXFragment:function(e,t){return!!e&&("JSXFragment"===e.type&&(null==t||K(e,t)))},isJSXIdentifier:Pt,isJSXMemberExpression:At,isJSXNamespacedName:kt,isJSXOpeningElement:Ct,isJSXOpeningFragment:function(e,t){return!!e&&("JSXOpeningFragment"===e.type&&(null==t||K(e,t)))},isJSXSpreadAttribute:_t,isJSXSpreadChild:function(e,t){return!!e&&("JSXSpreadChild"===e.type&&(null==t||K(e,t)))},isJSXText:It,isLVal:function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||K(e,t)},isLabeledStatement:ce,isLet:Uy,isLiteral:dr,isLogicalExpression:function(e,t){return!!e&&("LogicalExpression"===e.type&&(null==t||K(e,t)))},isLoop:function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||K(e,t)},isMemberExpression:me,isMetaProperty:He,isMethod:cr,isMiscellaneous:function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||K(e,t)},isMixedTypeAnnotation:gt,isModuleDeclaration:function(e,t){return J("isModuleDeclaration","isImportOrExportDeclaration"),fr(e,t)},isModuleExpression:function(e,t){return!!e&&("ModuleExpression"===e.type&&(null==t||K(e,t)))},isModuleSpecifier:mr,isNewExpression:ye,isNode:Fg,isNodesEquivalent:function e(t,r){if("object"!=typeof t||"object"!=typeof r||null==t||null==r)return t===r;if(t.type!==r.type)return!1;for(var a=Object.keys(Sa[t.type]||t.type),n=ja[t.type],s=0,o=a;s<o.length;s++){var i=o[s],d=t[i],c=r[i];if(typeof d!=typeof c)return!1;if(null!=d||null!=c){if(null==d||null==c)return!1;if(Array.isArray(d)){if(!Array.isArray(c))return!1;if(d.length!==c.length)return!1;for(var l=0;l<d.length;l++)if(!e(d[l],c[l]))return!1}else if("object"!=typeof d||null!=n&&n.includes(i)){if(!e(d,c))return!1}else for(var u=0,p=Object.keys(d);u<p.length;u++){var f=p[u];if(d[f]!==c[f])return!1}}}return!0},isNoop:function(e,t){return!!e&&("Noop"===e.type&&(null==t||K(e,t)))},isNullLiteral:pe,isNullLiteralTypeAnnotation:function(e,t){return!!e&&("NullLiteralTypeAnnotation"===e.type&&(null==t||K(e,t)))},isNullableTypeAnnotation:function(e,t){return!!e&&("NullableTypeAnnotation"===e.type&&(null==t||K(e,t)))},isNumberLiteral:function(e,t){return J("isNumberLiteral","isNumericLiteral"),!!e&&("NumberLiteral"===e.type&&(null==t||K(e,t)))},isNumberLiteralTypeAnnotation:function(e,t){return!!e&&("NumberLiteralTypeAnnotation"===e.type&&(null==t||K(e,t)))},isNumberTypeAnnotation:yt,isNumericLiteral:ue,isObjectExpression:be,isObjectMember:function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||K(e,t)},isObjectMethod:ve,isObjectPattern:Ke,isObjectProperty:xe,isObjectTypeAnnotation:function(e,t){return!!e&&("ObjectTypeAnnotation"===e.type&&(null==t||K(e,t)))},isObjectTypeCallProperty:function(e,t){return!!e&&("ObjectTypeCallProperty"===e.type&&(null==t||K(e,t)))},isObjectTypeIndexer:function(e,t){return!!e&&("ObjectTypeIndexer"===e.type&&(null==t||K(e,t)))},isObjectTypeInternalSlot:function(e,t){return!!e&&("ObjectTypeInternalSlot"===e.type&&(null==t||K(e,t)))},isObjectTypeProperty:function(e,t){return!!e&&("ObjectTypeProperty"===e.type&&(null==t||K(e,t)))},isObjectTypeSpreadProperty:function(e,t){return!!e&&("ObjectTypeSpreadProperty"===e.type&&(null==t||K(e,t)))},isOpaqueType:function(e,t){return!!e&&("OpaqueType"===e.type&&(null==t||K(e,t)))},isOptionalCallExpression:nt,isOptionalIndexedAccessType:function(e,t){return!!e&&("OptionalIndexedAccessType"===e.type&&(null==t||K(e,t)))},isOptionalMemberExpression:at,isParenthesizedExpression:Ee,isPattern:ur,isPatternLike:function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||K(e,t)},isPipelineBareFunction:function(e,t){return!!e&&("PipelineBareFunction"===e.type&&(null==t||K(e,t)))},isPipelinePrimaryTopicReference:function(e,t){return!!e&&("PipelinePrimaryTopicReference"===e.type&&(null==t||K(e,t)))},isPipelineTopicExpression:Mt,isPlaceholder:Dt,isPlaceholderType:Ar,isPrivate:yr,isPrivateName:it,isProgram:he,isProperty:lr,isPureish:or,isQualifiedTypeIdentifier:function(e,t){return!!e&&("QualifiedTypeIdentifier"===e.type&&(null==t||K(e,t)))},isRecordExpression:function(e,t){return!!e&&("RecordExpression"===e.type&&(null==t||K(e,t)))},isReferenced:Gy,isRegExpLiteral:ge,isRegexLiteral:function(e,t){return J("isRegexLiteral","isRegExpLiteral"),!!e&&("RegexLiteral"===e.type&&(null==t||K(e,t)))},isRestElement:Re,isRestProperty:function(e,t){return J("isRestProperty","isRestElement"),!!e&&("RestProperty"===e.type&&(null==t||K(e,t)))},isReturnStatement:je,isScopable:Zt,isScope:Wy,isSequenceExpression:we,isSpecifierDefault:function(e){return Ge(e)||ie(e.imported||e.exported,{name:"default"})},isSpreadElement:Xe,isSpreadProperty:function(e,t){return J("isSpreadProperty","isSpreadElement"),!!e&&("SpreadProperty"===e.type&&(null==t||K(e,t)))},isStandardized:function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportExpression":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":case"ImportAttribute":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||K(e,t)},isStatement:er,isStaticBlock:dt,isStringLiteral:le,isStringLiteralTypeAnnotation:function(e,t){return!!e&&("StringLiteralTypeAnnotation"===e.type&&(null==t||K(e,t)))},isStringTypeAnnotation:ht,isSuper:Je,isSwitchCase:function(e,t){return!!e&&("SwitchCase"===e.type&&(null==t||K(e,t)))},isSwitchStatement:function(e,t){return!!e&&("SwitchStatement"===e.type&&(null==t||K(e,t)))},isSymbolTypeAnnotation:function(e,t){return!!e&&("SymbolTypeAnnotation"===e.type&&(null==t||K(e,t)))},isTSAnyKeyword:Lt,isTSArrayType:qt,isTSAsExpression:Vt,isTSBaseType:jr,isTSBigIntKeyword:function(e,t){return!!e&&("TSBigIntKeyword"===e.type&&(null==t||K(e,t)))},isTSBooleanKeyword:function(e,t){return!!e&&("TSBooleanKeyword"===e.type&&(null==t||K(e,t)))},isTSCallSignatureDeclaration:function(e,t){return!!e&&("TSCallSignatureDeclaration"===e.type&&(null==t||K(e,t)))},isTSConditionalType:function(e,t){return!!e&&("TSConditionalType"===e.type&&(null==t||K(e,t)))},isTSConstructSignatureDeclaration:function(e,t){return!!e&&("TSConstructSignatureDeclaration"===e.type&&(null==t||K(e,t)))},isTSConstructorType:function(e,t){return!!e&&("TSConstructorType"===e.type&&(null==t||K(e,t)))},isTSDeclareFunction:function(e,t){return!!e&&("TSDeclareFunction"===e.type&&(null==t||K(e,t)))},isTSDeclareMethod:function(e,t){return!!e&&("TSDeclareMethod"===e.type&&(null==t||K(e,t)))},isTSEntityName:function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||K(e,t)},isTSEnumBody:function(e,t){return!!e&&("TSEnumBody"===e.type&&(null==t||K(e,t)))},isTSEnumDeclaration:function(e,t){return!!e&&("TSEnumDeclaration"===e.type&&(null==t||K(e,t)))},isTSEnumMember:Kt,isTSExportAssignment:function(e,t){return!!e&&("TSExportAssignment"===e.type&&(null==t||K(e,t)))},isTSExpressionWithTypeArguments:function(e,t){return!!e&&("TSExpressionWithTypeArguments"===e.type&&(null==t||K(e,t)))},isTSExternalModuleReference:function(e,t){return!!e&&("TSExternalModuleReference"===e.type&&(null==t||K(e,t)))},isTSFunctionType:function(e,t){return!!e&&("TSFunctionType"===e.type&&(null==t||K(e,t)))},isTSImportEqualsDeclaration:function(e,t){return!!e&&("TSImportEqualsDeclaration"===e.type&&(null==t||K(e,t)))},isTSImportType:function(e,t){return!!e&&("TSImportType"===e.type&&(null==t||K(e,t)))},isTSIndexSignature:function(e,t){return!!e&&("TSIndexSignature"===e.type&&(null==t||K(e,t)))},isTSIndexedAccessType:function(e,t){return!!e&&("TSIndexedAccessType"===e.type&&(null==t||K(e,t)))},isTSInferType:function(e,t){return!!e&&("TSInferType"===e.type&&(null==t||K(e,t)))},isTSInstantiationExpression:function(e,t){return!!e&&("TSInstantiationExpression"===e.type&&(null==t||K(e,t)))},isTSInterfaceBody:Wt,isTSInterfaceDeclaration:function(e,t){return!!e&&("TSInterfaceDeclaration"===e.type&&(null==t||K(e,t)))},isTSIntersectionType:function(e,t){return!!e&&("TSIntersectionType"===e.type&&(null==t||K(e,t)))},isTSIntrinsicKeyword:function(e,t){return!!e&&("TSIntrinsicKeyword"===e.type&&(null==t||K(e,t)))},isTSLiteralType:function(e,t){return!!e&&("TSLiteralType"===e.type&&(null==t||K(e,t)))},isTSMappedType:function(e,t){return!!e&&("TSMappedType"===e.type&&(null==t||K(e,t)))},isTSMethodSignature:function(e,t){return!!e&&("TSMethodSignature"===e.type&&(null==t||K(e,t)))},isTSModuleBlock:Xt,isTSModuleDeclaration:function(e,t){return!!e&&("TSModuleDeclaration"===e.type&&(null==t||K(e,t)))},isTSNamedTupleMember:function(e,t){return!!e&&("TSNamedTupleMember"===e.type&&(null==t||K(e,t)))},isTSNamespaceExportDeclaration:function(e,t){return!!e&&("TSNamespaceExportDeclaration"===e.type&&(null==t||K(e,t)))},isTSNeverKeyword:function(e,t){return!!e&&("TSNeverKeyword"===e.type&&(null==t||K(e,t)))},isTSNonNullExpression:Jt,isTSNullKeyword:function(e,t){return!!e&&("TSNullKeyword"===e.type&&(null==t||K(e,t)))},isTSNumberKeyword:function(e,t){return!!e&&("TSNumberKeyword"===e.type&&(null==t||K(e,t)))},isTSObjectKeyword:function(e,t){return!!e&&("TSObjectKeyword"===e.type&&(null==t||K(e,t)))},isTSOptionalType:function(e,t){return!!e&&("TSOptionalType"===e.type&&(null==t||K(e,t)))},isTSParameterProperty:function(e,t){return!!e&&("TSParameterProperty"===e.type&&(null==t||K(e,t)))},isTSParenthesizedType:function(e,t){return!!e&&("TSParenthesizedType"===e.type&&(null==t||K(e,t)))},isTSPropertySignature:function(e,t){return!!e&&("TSPropertySignature"===e.type&&(null==t||K(e,t)))},isTSQualifiedName:Ft,isTSRestType:function(e,t){return!!e&&("TSRestType"===e.type&&(null==t||K(e,t)))},isTSSatisfiesExpression:Ht,isTSStringKeyword:function(e,t){return!!e&&("TSStringKeyword"===e.type&&(null==t||K(e,t)))},isTSSymbolKeyword:function(e,t){return!!e&&("TSSymbolKeyword"===e.type&&(null==t||K(e,t)))},isTSTemplateLiteralType:function(e,t){return!!e&&("TSTemplateLiteralType"===e.type&&(null==t||K(e,t)))},isTSThisType:function(e,t){return!!e&&("TSThisType"===e.type&&(null==t||K(e,t)))},isTSTupleType:function(e,t){return!!e&&("TSTupleType"===e.type&&(null==t||K(e,t)))},isTSType:Rr,isTSTypeAliasDeclaration:function(e,t){return!!e&&("TSTypeAliasDeclaration"===e.type&&(null==t||K(e,t)))},isTSTypeAnnotation:Yt,isTSTypeAssertion:zt,isTSTypeElement:function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||K(e,t)},isTSTypeLiteral:function(e,t){return!!e&&("TSTypeLiteral"===e.type&&(null==t||K(e,t)))},isTSTypeOperator:function(e,t){return!!e&&("TSTypeOperator"===e.type&&(null==t||K(e,t)))},isTSTypeParameter:function(e,t){return!!e&&("TSTypeParameter"===e.type&&(null==t||K(e,t)))},isTSTypeParameterDeclaration:function(e,t){return!!e&&("TSTypeParameterDeclaration"===e.type&&(null==t||K(e,t)))},isTSTypeParameterInstantiation:function(e,t){return!!e&&("TSTypeParameterInstantiation"===e.type&&(null==t||K(e,t)))},isTSTypePredicate:function(e,t){return!!e&&("TSTypePredicate"===e.type&&(null==t||K(e,t)))},isTSTypeQuery:function(e,t){return!!e&&("TSTypeQuery"===e.type&&(null==t||K(e,t)))},isTSTypeReference:Ut,isTSUndefinedKeyword:function(e,t){return!!e&&("TSUndefinedKeyword"===e.type&&(null==t||K(e,t)))},isTSUnionType:Gt,isTSUnknownKeyword:function(e,t){return!!e&&("TSUnknownKeyword"===e.type&&(null==t||K(e,t)))},isTSVoidKeyword:function(e,t){return!!e&&("TSVoidKeyword"===e.type&&(null==t||K(e,t)))},isTaggedTemplateExpression:Ye,isTemplateElement:function(e,t){return!!e&&("TemplateElement"===e.type&&(null==t||K(e,t)))},isTemplateLiteral:$e,isTerminatorless:function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||K(e,t)},isThisExpression:Se,isThisTypeAnnotation:function(e,t){return!!e&&("ThisTypeAnnotation"===e.type&&(null==t||K(e,t)))},isThrowStatement:function(e,t){return!!e&&("ThrowStatement"===e.type&&(null==t||K(e,t)))},isTopicReference:Bt,isTryStatement:function(e,t){return!!e&&("TryStatement"===e.type&&(null==t||K(e,t)))},isTupleExpression:function(e,t){return!!e&&("TupleExpression"===e.type&&(null==t||K(e,t)))},isTupleTypeAnnotation:bt,isType:Pr,isTypeAlias:function(e,t){return!!e&&("TypeAlias"===e.type&&(null==t||K(e,t)))},isTypeAnnotation:vt,isTypeCastExpression:xt,isTypeParameter:function(e,t){return!!e&&("TypeParameter"===e.type&&(null==t||K(e,t)))},isTypeParameterDeclaration:function(e,t){return!!e&&("TypeParameterDeclaration"===e.type&&(null==t||K(e,t)))},isTypeParameterInstantiation:function(e,t){return!!e&&("TypeParameterInstantiation"===e.type&&(null==t||K(e,t)))},isTypeScript:xr,isTypeofTypeAnnotation:function(e,t){return!!e&&("TypeofTypeAnnotation"===e.type&&(null==t||K(e,t)))},isUnaryExpression:Te,isUnaryLike:function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||K(e,t)},isUnionTypeAnnotation:Rt,isUpdateExpression:Pe,isUserWhitespacable:function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||K(e,t)},isV8IntrinsicIdentifier:function(e,t){return!!e&&("V8IntrinsicIdentifier"===e.type&&(null==t||K(e,t)))},isValidES3Identifier:Hy,isValidIdentifier:Yr,isVar:Ky,isVariableDeclaration:Ae,isVariableDeclarator:ke,isVariance:function(e,t){return!!e&&("Variance"===e.type&&(null==t||K(e,t)))},isVoidPattern:function(e,t){return!!e&&("VoidPattern"===e.type&&(null==t||K(e,t)))},isVoidTypeAnnotation:jt,isWhile:function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||K(e,t)},isWhileStatement:function(e,t){return!!e&&("WhileStatement"===e.type&&(null==t||K(e,t)))},isWithStatement:function(e,t){return!!e&&("WithStatement"===e.type&&(null==t||K(e,t)))},isYieldExpression:Qe,jSXAttribute:Qi,jSXClosingElement:Zi,jSXClosingFragment:pd,jSXElement:ed,jSXEmptyExpression:td,jSXExpressionContainer:rd,jSXFragment:ld,jSXIdentifier:nd,jSXMemberExpression:sd,jSXNamespacedName:od,jSXOpeningElement:id,jSXOpeningFragment:ud,jSXSpreadAttribute:dd,jSXSpreadChild:ad,jSXText:cd,jsxAttribute:Qi,jsxClosingElement:Zi,jsxClosingFragment:pd,jsxElement:ed,jsxEmptyExpression:td,jsxExpressionContainer:rd,jsxFragment:ld,jsxIdentifier:nd,jsxMemberExpression:sd,jsxNamespacedName:od,jsxOpeningElement:id,jsxOpeningFragment:ud,jsxSpreadAttribute:dd,jsxSpreadChild:ad,jsxText:cd,labeledStatement:ks,logicalExpression:Ns,matchesPattern:Er,memberExpression:Bs,metaProperty:xo,mixedTypeAnnotation:fi,moduleExpression:Ed,newExpression:Ms,noop:fd,nullLiteral:Is,nullLiteralTypeAnnotation:Ho,nullableTypeAnnotation:mi,numberLiteral:Wc,numberLiteralTypeAnnotation:yi,numberTypeAnnotation:hi,numericLiteral:_s,objectExpression:Ls,objectMethod:Us,objectPattern:jo,objectProperty:qs,objectTypeAnnotation:bi,objectTypeCallProperty:xi,objectTypeIndexer:Ri,objectTypeInternalSlot:vi,objectTypeProperty:ji,objectTypeSpreadProperty:wi,opaqueType:Ei,optionalCallExpression:Do,optionalIndexedAccessType:$i,optionalMemberExpression:Io,parenthesizedExpression:Hs,pipelineBareFunction:Pd,pipelinePrimaryTopicReference:Ad,pipelineTopicExpression:Td,placeholder:gd,prependToMemberExpression:function(e,t){if(Je(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=Bs(t,e.object),e},privateName:Fo,program:Fs,qualifiedTypeIdentifier:Si,react:Xy,recordExpression:Rd,regExpLiteral:Os,regexLiteral:Vc,removeComments:ym,removeProperties:Ey,removePropertiesDeep:Sy,removeTypeDuplicates:Yg,restElement:Gs,restProperty:Hc,returnStatement:Ws,sequenceExpression:Vs,shallowEqual:K,spreadElement:wo,spreadProperty:zc,staticBlock:Lo,stringLiteral:Cs,stringLiteralTypeAnnotation:Ti,stringTypeAnnotation:Pi,super:Eo,switchCase:zs,switchStatement:Ks,symbolTypeAnnotation:Ai,tSAnyKeyword:Ld,tSArrayType:sc,tSAsExpression:Sc,tSBigIntKeyword:qd,tSBooleanKeyword:Ud,tSCallSignatureDeclaration:Od,tSConditionalType:pc,tSConstructSignatureDeclaration:Nd,tSConstructorType:ec,tSDeclareFunction:_d,tSDeclareMethod:Id,tSEnumBody:Ac,tSEnumDeclaration:kc,tSEnumMember:Cc,tSExportAssignment:Mc,tSExpressionWithTypeArguments:xc,tSExternalModuleReference:Nc,tSFunctionType:Zd,tSImportEqualsDeclaration:Oc,tSImportType:Dc,tSIndexSignature:Fd,tSIndexedAccessType:yc,tSInferType:fc,tSInstantiationExpression:Ec,tSInterfaceBody:jc,tSInterfaceDeclaration:Rc,tSIntersectionType:uc,tSIntrinsicKeyword:Gd,tSLiteralType:vc,tSMappedType:hc,tSMethodSignature:Md,tSModuleBlock:Ic,tSModuleDeclaration:_c,tSNamedTupleMember:cc,tSNamespaceExportDeclaration:Fc,tSNeverKeyword:Wd,tSNonNullExpression:Bc,tSNullKeyword:Vd,tSNumberKeyword:Hd,tSObjectKeyword:zd,tSOptionalType:ic,tSParameterProperty:Cd,tSParenthesizedType:gc,tSPropertySignature:Bd,tSQualifiedName:Dd,tSRestType:dc,tSSatisfiesExpression:Tc,tSStringKeyword:Kd,tSSymbolKeyword:Xd,tSTemplateLiteralType:bc,tSThisType:Qd,tSTupleType:oc,tSTypeAliasDeclaration:wc,tSTypeAnnotation:Lc,tSTypeAssertion:Pc,tSTypeLiteral:nc,tSTypeOperator:mc,tSTypeParameter:Gc,tSTypeParameterDeclaration:qc,tSTypeParameterInstantiation:Uc,tSTypePredicate:rc,tSTypeQuery:ac,tSTypeReference:tc,tSUndefinedKeyword:Jd,tSUnionType:lc,tSUnknownKeyword:Yd,tSVoidKeyword:$d,taggedTemplateExpression:So,templateElement:To,templateLiteral:Po,thisExpression:Xs,thisTypeAnnotation:ki,throwStatement:Js,toBindingIdentifierName:yy,toBlock:gy,toComputedKey:hy,toExpression:by,toIdentifier:my,toKeyAlias:Ty,toStatement:Py,topicReference:Sd,traverse:By,traverseFast:Ry,tryStatement:Ys,tsAnyKeyword:Ld,tsArrayType:sc,tsAsExpression:Sc,tsBigIntKeyword:qd,tsBooleanKeyword:Ud,tsCallSignatureDeclaration:Od,tsConditionalType:pc,tsConstructSignatureDeclaration:Nd,tsConstructorType:ec,tsDeclareFunction:_d,tsDeclareMethod:Id,tsEnumBody:Ac,tsEnumDeclaration:kc,tsEnumMember:Cc,tsExportAssignment:Mc,tsExpressionWithTypeArguments:xc,tsExternalModuleReference:Nc,tsFunctionType:Zd,tsImportEqualsDeclaration:Oc,tsImportType:Dc,tsIndexSignature:Fd,tsIndexedAccessType:yc,tsInferType:fc,tsInstantiationExpression:Ec,tsInterfaceBody:jc,tsInterfaceDeclaration:Rc,tsIntersectionType:uc,tsIntrinsicKeyword:Gd,tsLiteralType:vc,tsMappedType:hc,tsMethodSignature:Md,tsModuleBlock:Ic,tsModuleDeclaration:_c,tsNamedTupleMember:cc,tsNamespaceExportDeclaration:Fc,tsNeverKeyword:Wd,tsNonNullExpression:Bc,tsNullKeyword:Vd,tsNumberKeyword:Hd,tsObjectKeyword:zd,tsOptionalType:ic,tsParameterProperty:Cd,tsParenthesizedType:gc,tsPropertySignature:Bd,tsQualifiedName:Dd,tsRestType:dc,tsSatisfiesExpression:Tc,tsStringKeyword:Kd,tsSymbolKeyword:Xd,tsTemplateLiteralType:bc,tsThisType:Qd,tsTupleType:oc,tsTypeAliasDeclaration:wc,tsTypeAnnotation:Lc,tsTypeAssertion:Pc,tsTypeLiteral:nc,tsTypeOperator:mc,tsTypeParameter:Gc,tsTypeParameterDeclaration:qc,tsTypeParameterInstantiation:Uc,tsTypePredicate:rc,tsTypeQuery:ac,tsTypeReference:tc,tsUndefinedKeyword:Jd,tsUnionType:lc,tsUnknownKeyword:Yd,tsVoidKeyword:$d,tupleExpression:jd,tupleTypeAnnotation:Ci,typeAlias:Ii,typeAnnotation:Di,typeCastExpression:Oi,typeParameter:Ni,typeParameterDeclaration:Bi,typeParameterInstantiation:Mi,typeofTypeAnnotation:_i,unaryExpression:$s,unionTypeAnnotation:Fi,updateExpression:Qs,v8IntrinsicIdentifier:md,validate:es,valueToNode:ky,variableDeclaration:Zs,variableDeclarator:eo,variance:Li,voidPattern:kd,voidTypeAnnotation:Ui,whileStatement:to,withStatement:ro,yieldExpression:Ao}),Yy=qg;function $y(e){return{code:function(e){return"/* @babel/template */;\n"+e},validate:function(){},unwrap:function(t){return e(t.program.body.slice(1))}}}var Qy=$y(function(e){return e.length>1?e:e[0]}),Zy=$y(function(e){return e}),eh=$y(function(e){if(0===e.length)throw new Error("Found nothing to return.");if(e.length>1)throw new Error("Found multiple statements but wanted one");return e[0]}),th={code:function(e){return"(\n"+e+"\n)"},validate:function(e){if(e.program.body.length>1)throw new Error("Found multiple statements but wanted one");if(0===th.unwrap(e).start)throw new Error("Parse result included parens.")},unwrap:function(e){var t=y(e.program.body,1)[0];return Yy(t),t.expression}},rh=["placeholderWhitelist","placeholderPattern","preserveComments","syntacticPlaceholders"];function ah(e,t){var r=t.placeholderWhitelist,a=void 0===r?e.placeholderWhitelist:r,n=t.placeholderPattern,s=void 0===n?e.placeholderPattern:n,o=t.preserveComments,i=void 0===o?e.preserveComments:o,d=t.syntacticPlaceholders,c=void 0===d?e.syntacticPlaceholders:d;return{parser:Object.assign({},e.parser,t.parser),placeholderWhitelist:a,placeholderPattern:s,preserveComments:i,syntacticPlaceholders:c}}function nh(e){if(null!=e&&"object"!=typeof e)throw new Error("Unknown template options.");var t=e||{},r=t.placeholderWhitelist,a=t.placeholderPattern,n=t.preserveComments,s=t.syntacticPlaceholders,o=u(t,rh);if(null!=r&&!(r instanceof Set))throw new Error("'.placeholderWhitelist' must be a Set, null, or undefined");if(null!=a&&!(a instanceof RegExp)&&!1!==a)throw new Error("'.placeholderPattern' must be a RegExp, false, null, or undefined");if(null!=n&&"boolean"!=typeof n)throw new Error("'.preserveComments' must be a boolean, null, or undefined");if(null!=s&&"boolean"!=typeof s)throw new Error("'.syntacticPlaceholders' must be a boolean, null, or undefined");if(!0===s&&(null!=r||null!=a))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");return{parser:o,placeholderWhitelist:r||void 0,placeholderPattern:null==a?void 0:a,preserveComments:null==n?void 0:n,syntacticPlaceholders:null==s?void 0:s}}function sh(e){if(Array.isArray(e))return e.reduce(function(e,t,r){return e["$"+r]=t,e},{});if("object"==typeof e||null==e)return e||void 0;throw new Error("Template replacements must be an array, object, null, or undefined")}var oh=o(function(e,t,r){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=r}),ih=o(function(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t});function dh(e,t){var r=e.line,a=e.column,n=e.index;return new oh(r,a+t,n+t)}var ch,lh="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED",uh={ImportMetaOutsideModule:{message:"import.meta may appear only with 'sourceType: \"module\"'",code:lh},ImportOutsideModule:{message:"'import' and 'export' may appear only with 'sourceType: \"module\"'",code:lh}},ph={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},fh=function(e){return"UpdateExpression"===e.type?ph.UpdateExpression[""+e.prefix]:ph[e.type]},gh={AccessorIsGenerator:function(e){return"A "+e.kind+"ter cannot be a generator."},ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:function(e){return"Missing initializer in "+e.kind+" declaration."},DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:function(e){return"`"+e.exportName+"` has already been exported. Exported identifiers must be unique."},DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:function(e){return"A string literal cannot be used as an exported binding without `from`.\n- Did you mean `export { '"+e.localName+"' as '"+e.exportName+"' } from 'some-module'`?"},ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:function(e){return"'"+("ForInStatement"===e.type?"for-in":"for-of")+"' loop variable declaration may not have an initializer."},ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:function(e){return"Unsyntactic "+("BreakStatement"===e.type?"break":"continue")+"."},IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedImportAssert` parser plugin to suppress this error.",ImportBindingIsString:function(e){return'A string literal cannot be used as an imported binding.\n- Did you mean `import { "'+e.importName+'" as foo }`?'},ImportCallArity:"`import()` requires exactly one or two arguments.",ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverDiscardElement:"'void' must be followed by an expression when not used in a binding position.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:function(e){return"Expected number in radix "+e.radix+"."},InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:function(e){return"Escape sequence in keyword "+e.reservedWord+"."},InvalidIdentifier:function(e){return"Invalid identifier "+e.identifierName+"."},InvalidLhs:function(e){var t=e.ancestor;return"Invalid left-hand side in "+fh(t)+"."},InvalidLhsBinding:function(e){var t=e.ancestor;return"Binding invalid left-hand side in "+fh(t)+"."},InvalidLhsOptionalChaining:function(e){var t=e.ancestor;return"Invalid optional chaining in the left-hand side of "+fh(t)+"."},InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:function(e){return"Unexpected character '"+e.unexpected+"'."},InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:function(e){return"Private name #"+e.identifierName+" is not defined."},InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:function(e){return"Label '"+e.labelName+"' is already declared."},LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:function(e){return"This experimental syntax requires enabling the parser plugin: "+e.missingPlugin.map(function(e){return JSON.stringify(e)}).join(", ")+"."},MissingOneOfPlugins:function(e){return"This experimental syntax requires enabling one of the following parser plugin(s): "+e.missingPlugin.map(function(e){return JSON.stringify(e)}).join(", ")+"."},MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:function(e){return'Duplicate key "'+e.key+'" is not allowed in module attributes.'},ModuleExportNameHasLoneSurrogate:function(e){return"An export name cannot include a lone surrogate, found '\\u"+e.surrogateCharCode.toString(16)+"'."},ModuleExportUndefined:function(e){return"Export '"+e.localName+"' is not defined."},MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:function(e){var t=e.identifierName;return"Private names are only allowed in property accesses (`obj.#"+t+"`) or in `in` expressions (`#"+t+" in obj`)."},PrivateNameRedeclaration:function(e){return"Duplicate private name #"+e.identifierName+"."},RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:function(e){return"Unexpected keyword '"+e.keyword+"'."},UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:function(e){return"Unexpected reserved word '"+e.reservedWord+"'."},UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:function(e){var t=e.expected,r=e.unexpected;return"Unexpected token"+(r?" '"+r+"'.":"")+(t?', expected "'+t+'"':"")},UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script` or in the bare case statement.",UnexpectedVoidPattern:"Unexpected void binding.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:function(e){var t=e.target;return"The only valid meta property for "+t+" is "+t+"."+e.onlyValidPropertyName+"."},UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:function(e){return"Identifier '"+e.identifierName+"' has already been declared."},VoidPatternCatchClauseParam:"A void binding can not be the catch clause parameter. Use `try { ... } catch { ... }` if you want to discard the caught error.",VoidPatternInitializer:"A void binding may not have an initializer.",YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",YieldNotInGeneratorFunction:"'yield' is only allowed within generator functions.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."},mh={ParseExpressionEmptyInput:"Unexpected parseExpression() input: The input is empty or contains only comments.",ParseExpressionExpectsEOF:function(e){var t=e.unexpected;return"Unexpected parseExpression() input: The input should contain exactly one expression, but the first expression is followed by the unexpected character `"+String.fromCodePoint(t)+"`."}},yh=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),hh=Object.assign({PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:function(e){var t=e.token;return"Invalid topic token "+t+". In order to use "+t+' as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "'+t+'" }.'},PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:function(e){var t=e.type;return"Hack-style pipe body cannot be an unparenthesized "+fh({type:t})+"; please wrap it in parentheses."}},{PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'}),bh=["message"];function vh(e,t,r){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:r})}function xh(e,t){if(Array.isArray(e))return function(t){return xh(t,e[0])};for(var r={},a=function(){var a=s[n],o=e[a],i="string"==typeof o?{message:function(){return o}}:"function"==typeof o?{message:o}:o,d=i.message,c=u(i,bh),l="string"==typeof d?function(){return d}:d;r[a]=function(e){var t=e.toMessage,r=e.code,a=e.reasonCode,n=e.syntaxPlugin,s="MissingPlugin"===a||"MissingOneOfPlugins"===a,o={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};return o[a]&&(a=o[a]),function e(o,i){var d=new SyntaxError;return d.code=r,d.reasonCode=a,d.loc=o,d.pos=o.index,d.syntaxPlugin=n,s&&(d.missingPlugin=i.missingPlugin),vh(d,"clone",function(t){var r;void 0===t&&(t={});var a=null!=(r=t.loc)?r:o,n=a.line,s=a.column,d=a.index;return e(new oh(n,s,d),Object.assign({},i,t.details))}),vh(d,"details",i),Object.defineProperty(d,"message",{configurable:!0,get:function(){var e=t(i)+" ("+o.line+":"+o.column+")";return this.message=e,e},set:function(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),d}}(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:a,toMessage:l},t?{syntaxPlugin:t}:{},c))},n=0,s=Object.keys(e);n<s.length;n++)a();return r}var Rh=Object.assign({},xh(uh),xh(gh),xh({StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:function(e){return"Assigning to '"+e.referenceName+"' in strict mode."},StrictEvalArgumentsBinding:function(e){return"Binding '"+e.bindingName+"' in strict mode."},StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."}),xh(mh),xh(ch||(ch=h(["pipelineOperator"])))(hh)),jh=1,wh=2,Eh=4,Sh=8,Th=16,Ph=32,Ah=64,kh=128,Ch=256,_h=512,Ih=1024,Dh=2048,Oh=4096,Nh=8192;var Bh=Object.defineProperty,Mh=function(e,t){e&&Bh(e,t,{enumerable:!1,value:e[t]})};function Fh(e){return Mh(e.loc.start,"index"),Mh(e.loc.end,"index"),e}var Lh=o(function(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}),Uh={brace:new Lh("{"),j_oTag:new Lh("<tag"),j_cTag:new Lh("</tag"),j_expr:new Lh("<tag>...</tag>",!0)};Uh.template=new Lh("`",!0);var qh=!0,Gh=!0,Wh=!0,Vh=!0,Hh=!0,zh=o(function(e,t){void 0===t&&(t={}),this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}),Kh=new Map;function Xh(e,t){void 0===t&&(t={}),t.keyword=e;var r=ab(e,t);return Kh.set(e,r),r}function Jh(e,t){return ab(e,{beforeExpr:qh,binop:t})}var Yh=-1,$h=[],Qh=[],Zh=[],eb=[],tb=[],rb=[];function ab(e,t){var r,a,n,s;return void 0===t&&(t={}),++Yh,Qh.push(e),Zh.push(null!=(r=t.binop)?r:-1),eb.push(null!=(a=t.beforeExpr)&&a),tb.push(null!=(n=t.startsExpr)&&n),rb.push(null!=(s=t.prefix)&&s),$h.push(new zh(e,t)),Yh}function nb(e,t){var r,a,n,s;return void 0===t&&(t={}),++Yh,Kh.set(e,Yh),Qh.push(e),Zh.push(null!=(r=t.binop)?r:-1),eb.push(null!=(a=t.beforeExpr)&&a),tb.push(null!=(n=t.startsExpr)&&n),rb.push(null!=(s=t.prefix)&&s),$h.push(new zh("name",t)),Yh}var sb={bracketL:ab("[",{beforeExpr:qh,startsExpr:Gh}),bracketHashL:ab("#[",{beforeExpr:qh,startsExpr:Gh}),bracketBarL:ab("[|",{beforeExpr:qh,startsExpr:Gh}),bracketR:ab("]"),bracketBarR:ab("|]"),braceL:ab("{",{beforeExpr:qh,startsExpr:Gh}),braceBarL:ab("{|",{beforeExpr:qh,startsExpr:Gh}),braceHashL:ab("#{",{beforeExpr:qh,startsExpr:Gh}),braceR:ab("}"),braceBarR:ab("|}"),parenL:ab("(",{beforeExpr:qh,startsExpr:Gh}),parenR:ab(")"),comma:ab(",",{beforeExpr:qh}),semi:ab(";",{beforeExpr:qh}),colon:ab(":",{beforeExpr:qh}),doubleColon:ab("::",{beforeExpr:qh}),dot:ab("."),question:ab("?",{beforeExpr:qh}),questionDot:ab("?."),arrow:ab("=>",{beforeExpr:qh}),template:ab("template"),ellipsis:ab("...",{beforeExpr:qh}),backQuote:ab("`",{startsExpr:Gh}),dollarBraceL:ab("${",{beforeExpr:qh,startsExpr:Gh}),templateTail:ab("...`",{startsExpr:Gh}),templateNonTail:ab("...${",{beforeExpr:qh,startsExpr:Gh}),at:ab("@"),hash:ab("#",{startsExpr:Gh}),interpreterDirective:ab("#!..."),eq:ab("=",{beforeExpr:qh,isAssign:Vh}),assign:ab("_=",{beforeExpr:qh,isAssign:Vh}),slashAssign:ab("_=",{beforeExpr:qh,isAssign:Vh}),xorAssign:ab("_=",{beforeExpr:qh,isAssign:Vh}),moduloAssign:ab("_=",{beforeExpr:qh,isAssign:Vh}),incDec:ab("++/--",{prefix:Hh,postfix:!0,startsExpr:Gh}),bang:ab("!",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),tilde:ab("~",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),doubleCaret:ab("^^",{startsExpr:Gh}),doubleAt:ab("@@",{startsExpr:Gh}),pipeline:Jh("|>",0),nullishCoalescing:Jh("??",1),logicalOR:Jh("||",1),logicalAND:Jh("&&",2),bitwiseOR:Jh("|",3),bitwiseXOR:Jh("^",4),bitwiseAND:Jh("&",5),equality:Jh("==/!=/===/!==",6),lt:Jh("</>/<=/>=",7),gt:Jh("</>/<=/>=",7),relational:Jh("</>/<=/>=",7),bitShift:Jh("<</>>/>>>",8),bitShiftL:Jh("<</>>/>>>",8),bitShiftR:Jh("<</>>/>>>",8),plusMin:ab("+/-",{beforeExpr:qh,binop:9,prefix:Hh,startsExpr:Gh}),modulo:ab("%",{binop:10,startsExpr:Gh}),star:ab("*",{binop:10}),slash:Jh("/",10),exponent:ab("**",{beforeExpr:qh,binop:11,rightAssociative:!0}),_in:Xh("in",{beforeExpr:qh,binop:7}),_instanceof:Xh("instanceof",{beforeExpr:qh,binop:7}),_break:Xh("break"),_case:Xh("case",{beforeExpr:qh}),_catch:Xh("catch"),_continue:Xh("continue"),_debugger:Xh("debugger"),_default:Xh("default",{beforeExpr:qh}),_else:Xh("else",{beforeExpr:qh}),_finally:Xh("finally"),_function:Xh("function",{startsExpr:Gh}),_if:Xh("if"),_return:Xh("return",{beforeExpr:qh}),_switch:Xh("switch"),_throw:Xh("throw",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),_try:Xh("try"),_var:Xh("var"),_const:Xh("const"),_with:Xh("with"),_new:Xh("new",{beforeExpr:qh,startsExpr:Gh}),_this:Xh("this",{startsExpr:Gh}),_super:Xh("super",{startsExpr:Gh}),_class:Xh("class",{startsExpr:Gh}),_extends:Xh("extends",{beforeExpr:qh}),_export:Xh("export"),_import:Xh("import",{startsExpr:Gh}),_null:Xh("null",{startsExpr:Gh}),_true:Xh("true",{startsExpr:Gh}),_false:Xh("false",{startsExpr:Gh}),_typeof:Xh("typeof",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),_void:Xh("void",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),_delete:Xh("delete",{beforeExpr:qh,prefix:Hh,startsExpr:Gh}),_do:Xh("do",{isLoop:Wh,beforeExpr:qh}),_for:Xh("for",{isLoop:Wh}),_while:Xh("while",{isLoop:Wh}),_as:nb("as",{startsExpr:Gh}),_assert:nb("assert",{startsExpr:Gh}),_async:nb("async",{startsExpr:Gh}),_await:nb("await",{startsExpr:Gh}),_defer:nb("defer",{startsExpr:Gh}),_from:nb("from",{startsExpr:Gh}),_get:nb("get",{startsExpr:Gh}),_let:nb("let",{startsExpr:Gh}),_meta:nb("meta",{startsExpr:Gh}),_of:nb("of",{startsExpr:Gh}),_sent:nb("sent",{startsExpr:Gh}),_set:nb("set",{startsExpr:Gh}),_source:nb("source",{startsExpr:Gh}),_static:nb("static",{startsExpr:Gh}),_using:nb("using",{startsExpr:Gh}),_yield:nb("yield",{startsExpr:Gh}),_asserts:nb("asserts",{startsExpr:Gh}),_checks:nb("checks",{startsExpr:Gh}),_exports:nb("exports",{startsExpr:Gh}),_global:nb("global",{startsExpr:Gh}),_implements:nb("implements",{startsExpr:Gh}),_intrinsic:nb("intrinsic",{startsExpr:Gh}),_infer:nb("infer",{startsExpr:Gh}),_is:nb("is",{startsExpr:Gh}),_mixins:nb("mixins",{startsExpr:Gh}),_proto:nb("proto",{startsExpr:Gh}),_require:nb("require",{startsExpr:Gh}),_satisfies:nb("satisfies",{startsExpr:Gh}),_keyof:nb("keyof",{startsExpr:Gh}),_readonly:nb("readonly",{startsExpr:Gh}),_unique:nb("unique",{startsExpr:Gh}),_abstract:nb("abstract",{startsExpr:Gh}),_declare:nb("declare",{startsExpr:Gh}),_enum:nb("enum",{startsExpr:Gh}),_module:nb("module",{startsExpr:Gh}),_namespace:nb("namespace",{startsExpr:Gh}),_interface:nb("interface",{startsExpr:Gh}),_type:nb("type",{startsExpr:Gh}),_opaque:nb("opaque",{startsExpr:Gh}),name:ab("name",{startsExpr:Gh}),placeholder:ab("%%",{startsExpr:Gh}),string:ab("string",{startsExpr:Gh}),num:ab("num",{startsExpr:Gh}),bigint:ab("bigint",{startsExpr:Gh}),decimal:ab("decimal",{startsExpr:Gh}),regexp:ab("regexp",{startsExpr:Gh}),privateName:ab("#name",{startsExpr:Gh}),eof:ab("eof"),jsxName:ab("jsxName"),jsxText:ab("jsxText",{beforeExpr:qh}),jsxTagStart:ab("jsxTagStart",{startsExpr:Gh}),jsxTagEnd:ab("jsxTagEnd")};function ob(e){return e>=93&&e<=133}function ib(e){return e>=58&&e<=133}function db(e){return e>=58&&e<=137}function cb(e){return tb[e]}function lb(e){return e>=129&&e<=131}function ub(e){return e>=58&&e<=92}function pb(e){return 34===e}function fb(e){return Qh[e]}function gb(e){return Zh[e]}function mb(e){return e>=24&&e<=25}function yb(e){return $h[e]}$h[8].updateContext=function(e){e.pop()},$h[5].updateContext=$h[7].updateContext=$h[23].updateContext=function(e){e.push(Uh.brace)},$h[22].updateContext=function(e){e[e.length-1]===Uh.template?e.pop():e.push(Uh.template)},$h[143].updateContext=function(e){e.push(Uh.j_expr,Uh.j_oTag)};var hb=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);var bb,vb=0,xb=1,Rb=2,jb=4,wb=8,Eb=16,Sb=32,Tb=64,Pb=128,Ab=256,kb=512,Cb=1024,_b=514,Ib=576,Db=1667,Ob=1,Nb=2,Bb=4,Mb=8,Fb=16,Lb=128,Ub=256,qb=512,Gb=1024,Wb=2048,Vb=4096,Hb=8192,zb=8331,Kb=8201,Xb=9,Jb=5,Yb=17,$b=130,Qb=2,Zb=8459,ev=1024,tv=64,rv=65,av=8971,nv=1024,sv=4098,ov=4096,iv=2048,dv=0,cv=4,lv=3,uv=6,pv=5,fv=2,gv=1,mv=1,yv=2,hv=4,bv=o(function(e){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=e}),vv=function(){function e(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}var t=e.prototype;return t.createScope=function(e){return new bv(e)},t.enter=function(e){this.scopeStack.push(this.createScope(e))},t.exit=function(){return this.scopeStack.pop().flags},t.treatFunctionsAsVarInScope=function(e){return!!(e.flags&(Rb|Pb)||!this.parser.inModule&&e.flags&xb)},t.declareName=function(e,t,r){var a=this.currentScope();if(t&Mb||t&Fb){this.checkRedeclarationInScope(a,e,t,r);var n=a.names.get(e)||0;t&Fb?n|=hv:(a.firstLexicalName||(a.firstLexicalName=e),n|=yv),a.names.set(e,n),t&Mb&&this.maybeExportDefined(a,e)}else if(t&Bb)for(var s=this.scopeStack.length-1;s>=0&&(a=this.scopeStack[s],this.checkRedeclarationInScope(a,e,t,r),a.names.set(e,(a.names.get(e)||0)|mv),this.maybeExportDefined(a,e),!(a.flags&Db));--s);this.parser.inModule&&a.flags&xb&&this.undefinedExports.delete(e)},t.maybeExportDefined=function(e,t){this.parser.inModule&&e.flags&xb&&this.undefinedExports.delete(t)},t.checkRedeclarationInScope=function(e,t,r,a){this.isRedeclaredInScope(e,t,r)&&this.parser.raise(Rh.VarRedeclaration,a,{identifierName:t})},t.isRedeclaredInScope=function(e,t,r){if(!(r&Ob))return!1;if(r&Mb)return e.names.has(t);var a=e.names.get(t)||0;return r&Fb?(a&yv)>0||!this.treatFunctionsAsVarInScope(e)&&(a&mv)>0:(a&yv)>0&&!(e.flags&wb&&e.firstLexicalName===t)||!this.treatFunctionsAsVarInScope(e)&&(a&hv)>0},t.checkLocalExport=function(e){var t=e.name;this.scopeStack[0].names.has(t)||this.undefinedExports.set(t,e.loc.start)},t.currentScope=function(){return this.scopeStack[this.scopeStack.length-1]},t.currentVarScopeFlags=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e].flags;if(t&Db)return t}},t.currentThisScopeFlags=function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e].flags;if(t&(Db|Tb)&&!(t&jb))return t}},o(e,[{key:"inTopLevel",get:function(){return(this.currentScope().flags&xb)>0}},{key:"inFunction",get:function(){return(this.currentVarScopeFlags()&Rb)>0}},{key:"allowSuper",get:function(){return(this.currentThisScopeFlags()&Eb)>0}},{key:"allowDirectSuper",get:function(){return(this.currentThisScopeFlags()&Sb)>0}},{key:"allowNewTarget",get:function(){return(this.currentThisScopeFlags()&kb)>0}},{key:"inClass",get:function(){return(this.currentThisScopeFlags()&Tb)>0}},{key:"inClassAndNotInNonArrowFunction",get:function(){var e=this.currentThisScopeFlags();return(e&Tb)>0&&0===(e&Rb)}},{key:"inStaticBlock",get:function(){for(var e=this.scopeStack.length-1;;e--){var t=this.scopeStack[e].flags;if(t&Pb)return!0;if(t&(Db|Tb))return!1}}},{key:"inNonArrowFunction",get:function(){return(this.currentThisScopeFlags()&Rb)>0}},{key:"inBareCaseStatement",get:function(){return(this.currentScope().flags&Ab)>0}},{key:"treatFunctionsAsVar",get:function(){return this.treatFunctionsAsVarInScope(this.currentScope())}}])}(),xv=function(e){function t(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return(t=e.call.apply(e,[this].concat(a))||this).declareFunctions=new Set,t}return c(t,e),o(t)}(bv),Rv=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.createScope=function(e){return new xv(e)},r.declareName=function(t,r,a){var n=this.currentScope();if(r&Wb)return this.checkRedeclarationInScope(n,t,r,a),this.maybeExportDefined(n,t),void n.declareFunctions.add(t);e.prototype.declareName.call(this,t,r,a)},r.isRedeclaredInScope=function(t,r,a){if(e.prototype.isRedeclaredInScope.call(this,t,r,a))return!0;if(a&Wb&&!t.declareFunctions.has(r)){var n=t.names.get(r);return(n&hv)>0||(n&yv)>0}return!1},r.checkLocalExport=function(t){this.scopeStack[0].declareFunctions.has(t.name)||e.prototype.checkLocalExport.call(this,t)},o(t)}(vv),jv=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),wv=xh(bb||(bb=h(["flow"])))({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:function(e){return"Cannot overwrite reserved type "+e.reservedType+"."},DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:function(e){var t=e.memberName;return"Boolean enum members need to be initialized. Use either `"+t+" = true,` or `"+t+" = false,` in enum `"+e.enumName+"`."},EnumDuplicateMemberName:function(e){return"Enum member names need to be unique, but the name `"+e.memberName+"` has already been used before in enum `"+e.enumName+"`."},EnumInconsistentMemberValues:function(e){return"Enum `"+e.enumName+"` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers."},EnumInvalidExplicitType:function(e){return"Enum type `"+e.invalidEnumType+"` is not valid. Use one of `boolean`, `number`, `string`, or `symbol` in enum `"+e.enumName+"`."},EnumInvalidExplicitTypeUnknownSupplied:function(e){return"Supplied enum type is not valid. Use one of `boolean`, `number`, `string`, or `symbol` in enum `"+e.enumName+"`."},EnumInvalidMemberInitializerPrimaryType:function(e){var t=e.enumName,r=e.memberName,a=e.explicitType;return"Enum `"+t+"` has type `"+a+"`, so the initializer of `"+r+"` needs to be a "+a+" literal."},EnumInvalidMemberInitializerSymbolType:function(e){var t=e.enumName;return"Symbol enum members cannot be initialized. Use `"+e.memberName+",` in enum `"+t+"`."},EnumInvalidMemberInitializerUnknownType:function(e){var t=e.enumName;return"The enum member initializer for `"+e.memberName+"` needs to be a literal (either a boolean, number, or string) in enum `"+t+"`."},EnumInvalidMemberName:function(e){var t=e.enumName;return"Enum member names cannot start with lowercase 'a' through 'z'. Instead of using `"+e.memberName+"`, consider using `"+e.suggestion+"`, in enum `"+t+"`."},EnumNumberMemberNotInitialized:function(e){var t=e.enumName;return"Number enum members need to be initialized, e.g. `"+e.memberName+" = 1` in enum `"+t+"`."},EnumStringMemberInconsistentlyInitialized:function(e){return"String enum members need to consistently either all use initializers, or use no initializers, in enum `"+e.enumName+"`."},GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:function(e){return"Unexpected reserved type "+e.reservedType+"."},UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:function(e){return"`declare export "+e.unsupportedExportKind+"` is not supported. Use `"+e.suggestion+"` instead."},UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Ev(e){return"type"===e.importKind||"typeof"===e.importKind}var Sv={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};var Tv=/\*?\s*@((?:no)?flow)\b/,Pv={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:"\xa0",iexcl:"\xa1",cent:"\xa2",pound:"\xa3",curren:"\xa4",yen:"\xa5",brvbar:"\xa6",sect:"\xa7",uml:"\xa8",copy:"\xa9",ordf:"\xaa",laquo:"\xab",not:"\xac",shy:"\xad",reg:"\xae",macr:"\xaf",deg:"\xb0",plusmn:"\xb1",sup2:"\xb2",sup3:"\xb3",acute:"\xb4",micro:"\xb5",para:"\xb6",middot:"\xb7",cedil:"\xb8",sup1:"\xb9",ordm:"\xba",raquo:"\xbb",frac14:"\xbc",frac12:"\xbd",frac34:"\xbe",iquest:"\xbf",Agrave:"\xc0",Aacute:"\xc1",Acirc:"\xc2",Atilde:"\xc3",Auml:"\xc4",Aring:"\xc5",AElig:"\xc6",Ccedil:"\xc7",Egrave:"\xc8",Eacute:"\xc9",Ecirc:"\xca",Euml:"\xcb",Igrave:"\xcc",Iacute:"\xcd",Icirc:"\xce",Iuml:"\xcf",ETH:"\xd0",Ntilde:"\xd1",Ograve:"\xd2",Oacute:"\xd3",Ocirc:"\xd4",Otilde:"\xd5",Ouml:"\xd6",times:"\xd7",Oslash:"\xd8",Ugrave:"\xd9",Uacute:"\xda",Ucirc:"\xdb",Uuml:"\xdc",Yacute:"\xdd",THORN:"\xde",szlig:"\xdf",agrave:"\xe0",aacute:"\xe1",acirc:"\xe2",atilde:"\xe3",auml:"\xe4",aring:"\xe5",aelig:"\xe6",ccedil:"\xe7",egrave:"\xe8",eacute:"\xe9",ecirc:"\xea",euml:"\xeb",igrave:"\xec",iacute:"\xed",icirc:"\xee",iuml:"\xef",eth:"\xf0",ntilde:"\xf1",ograve:"\xf2",oacute:"\xf3",ocirc:"\xf4",otilde:"\xf5",ouml:"\xf6",divide:"\xf7",oslash:"\xf8",ugrave:"\xf9",uacute:"\xfa",ucirc:"\xfb",uuml:"\xfc",yacute:"\xfd",thorn:"\xfe",yuml:"\xff",OElig:"\u0152",oelig:"\u0153",Scaron:"\u0160",scaron:"\u0161",Yuml:"\u0178",fnof:"\u0192",circ:"\u02c6",tilde:"\u02dc",Alpha:"\u0391",Beta:"\u0392",Gamma:"\u0393",Delta:"\u0394",Epsilon:"\u0395",Zeta:"\u0396",Eta:"\u0397",Theta:"\u0398",Iota:"\u0399",Kappa:"\u039a",Lambda:"\u039b",Mu:"\u039c",Nu:"\u039d",Xi:"\u039e",Omicron:"\u039f",Pi:"\u03a0",Rho:"\u03a1",Sigma:"\u03a3",Tau:"\u03a4",Upsilon:"\u03a5",Phi:"\u03a6",Chi:"\u03a7",Psi:"\u03a8",Omega:"\u03a9",alpha:"\u03b1",beta:"\u03b2",gamma:"\u03b3",delta:"\u03b4",epsilon:"\u03b5",zeta:"\u03b6",eta:"\u03b7",theta:"\u03b8",iota:"\u03b9",kappa:"\u03ba",lambda:"\u03bb",mu:"\u03bc",nu:"\u03bd",xi:"\u03be",omicron:"\u03bf",pi:"\u03c0",rho:"\u03c1",sigmaf:"\u03c2",sigma:"\u03c3",tau:"\u03c4",upsilon:"\u03c5",phi:"\u03c6",chi:"\u03c7",psi:"\u03c8",omega:"\u03c9",thetasym:"\u03d1",upsih:"\u03d2",piv:"\u03d6",ensp:"\u2002",emsp:"\u2003",thinsp:"\u2009",zwnj:"\u200c",zwj:"\u200d",lrm:"\u200e",rlm:"\u200f",ndash:"\u2013",mdash:"\u2014",lsquo:"\u2018",rsquo:"\u2019",sbquo:"\u201a",ldquo:"\u201c",rdquo:"\u201d",bdquo:"\u201e",dagger:"\u2020",Dagger:"\u2021",bull:"\u2022",hellip:"\u2026",permil:"\u2030",prime:"\u2032",Prime:"\u2033",lsaquo:"\u2039",rsaquo:"\u203a",oline:"\u203e",frasl:"\u2044",euro:"\u20ac",image:"\u2111",weierp:"\u2118",real:"\u211c",trade:"\u2122",alefsym:"\u2135",larr:"\u2190",uarr:"\u2191",rarr:"\u2192",darr:"\u2193",harr:"\u2194",crarr:"\u21b5",lArr:"\u21d0",uArr:"\u21d1",rArr:"\u21d2",dArr:"\u21d3",hArr:"\u21d4",forall:"\u2200",part:"\u2202",exist:"\u2203",empty:"\u2205",nabla:"\u2207",isin:"\u2208",notin:"\u2209",ni:"\u220b",prod:"\u220f",sum:"\u2211",minus:"\u2212",lowast:"\u2217",radic:"\u221a",prop:"\u221d",infin:"\u221e",ang:"\u2220",and:"\u2227",or:"\u2228",cap:"\u2229",cup:"\u222a",int:"\u222b",there4:"\u2234",sim:"\u223c",cong:"\u2245",asymp:"\u2248",ne:"\u2260",equiv:"\u2261",le:"\u2264",ge:"\u2265",sub:"\u2282",sup:"\u2283",nsub:"\u2284",sube:"\u2286",supe:"\u2287",oplus:"\u2295",otimes:"\u2297",perp:"\u22a5",sdot:"\u22c5",lceil:"\u2308",rceil:"\u2309",lfloor:"\u230a",rfloor:"\u230b",lang:"\u2329",rang:"\u232a",loz:"\u25ca",spades:"\u2660",clubs:"\u2663",hearts:"\u2665",diams:"\u2666"},Av=new RegExp(/\r\n|[\r\n\u2028\u2029]/.source,"g");function kv(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function Cv(e,t,r){for(var a=t;a<r;a++)if(kv(e.charCodeAt(a)))return!0;return!1}var _v,Iv=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Dv=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function Ov(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}var Nv=xh(_v||(_v=h(["jsx"])))({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:function(e){return"Expected corresponding JSX closing tag for <"+e.openingTagName+">."},MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:function(e){var t=e.unexpected;return"Unexpected token `"+t+"`. Did you mean `"+e.HTMLEntity+"` or `{'"+t+"'}`?"},UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function Bv(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function Mv(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return Mv(e.object)+"."+Mv(e.property);throw new Error("Node had unexpected type: "+e.type)}var Fv=function(e){function t(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return(t=e.call.apply(e,[this].concat(a))||this).tsNames=new Map,t}return c(t,e),o(t)}(bv),Lv=function(e){function t(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return(t=e.call.apply(e,[this].concat(a))||this).importsStack=[],t}c(t,e);var r=t.prototype;return r.createScope=function(e){return this.importsStack.push(new Set),new Fv(e)},r.enter=function(t){t===Cb&&this.importsStack.push(new Set),e.prototype.enter.call(this,t)},r.exit=function(){var t=e.prototype.exit.call(this);return t===Cb&&this.importsStack.pop(),t},r.hasImport=function(e,t){var r=this.importsStack.length;if(this.importsStack[r-1].has(e))return!0;if(!t&&r>1)for(var a=0;a<r-1;a++)if(this.importsStack[a].has(e))return!0;return!1},r.declareName=function(t,r,a){if(r&Vb)return this.hasImport(t,!0)&&this.parser.raise(Rh.VarRedeclaration,a,{identifierName:t}),void this.importsStack[this.importsStack.length-1].add(t);var n=this.currentScope(),s=n.tsNames.get(t)||0;if(r&Gb)return this.maybeExportDefined(n,t),void n.tsNames.set(t,16|s);e.prototype.declareName.call(this,t,r,a),r&Nb&&(r&Ob||(this.checkRedeclarationInScope(n,t,r,a),this.maybeExportDefined(n,t)),s|=1),r&Ub&&(s|=2),r&qb&&(s|=4),r&Lb&&(s|=8),s&&n.tsNames.set(t,s)},r.isRedeclaredInScope=function(t,r,a){var n=t.tsNames.get(r);return(2&n)>0?!(a&Ub)||!!(a&qb)!==(4&n)>0:a&Lb&&(8&n)>0?!!(t.names.get(r)&yv)&&!!(a&Ob):!!(a&Nb&&(1&n)>0)||e.prototype.isRedeclaredInScope.call(this,t,r,a)},r.checkLocalExport=function(t){var r=t.name;if(!this.hasImport(r)){for(var a=this.scopeStack.length-1;a>=0;a--){var n=this.scopeStack[a].tsNames.get(r);if((1&n)>0||(16&n)>0)return}e.prototype.checkLocalExport.call(this,t)}},o(t)}(vv),Uv=0,qv=1,Gv=2,Wv=4,Vv=8,Hv=function(){function e(){this.stacks=[]}var t=e.prototype;return t.enter=function(e){this.stacks.push(e)},t.exit=function(){this.stacks.pop()},t.currentFlags=function(){return this.stacks[this.stacks.length-1]},o(e,[{key:"hasAwait",get:function(){return(this.currentFlags()&Gv)>0}},{key:"hasYield",get:function(){return(this.currentFlags()&qv)>0}},{key:"hasReturn",get:function(){return(this.currentFlags()&Wv)>0}},{key:"hasIn",get:function(){return(this.currentFlags()&Vv)>0}}])}();function zv(e,t){return(e?Gv:0)|(t?qv:0)}var Kv=function(){function e(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}var t=e.prototype;return t.sourceToOffsetPos=function(e){return e+this.startIndex},t.offsetToSourcePos=function(e){return e-this.startIndex},t.hasPlugin=function(e){if("string"==typeof e)return this.plugins.has(e);var t=e[0],r=e[1];if(!this.hasPlugin(t))return!1;for(var a=this.plugins.get(t),n=0,s=Object.keys(r);n<s.length;n++){var o=s[n];if((null==a?void 0:a[o])!==r[o])return!1}return!0},t.getPluginOption=function(e,t){var r;return null==(r=this.plugins.get(e))?void 0:r[t]},o(e)}();function Xv(e,t){var r;void 0===e.trailingComments?e.trailingComments=t:(r=e.trailingComments).unshift.apply(r,t)}function Jv(e,t){var r;void 0===e.innerComments?e.innerComments=t:(r=e.innerComments).unshift.apply(r,t)}function Yv(e,t,r){for(var a=null,n=t.length;null===a&&n>0;)a=t[--n];null===a||a.start>r.start?Jv(e,r.comments):Xv(a,r.comments)}var $v=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.addComment=function(e){this.filename&&(e.loc.filename=this.filename);var t=this.state.commentsLen;this.comments.length!==t&&(this.comments.length=t),this.comments.push(e),this.state.commentsLen++},r.processComment=function(e){var t=this.state.commentStack,r=t.length;if(0!==r){var a=r-1,n=t[a];n.start===e.end&&(n.leadingNode=e,a--);for(var s=e.start;a>=0;a--){var o=t[a],i=o.end;if(!(i>s)){i===s&&(o.trailingNode=e);break}o.containingNode=e,this.finalizeComment(o),t.splice(a,1)}}},r.finalizeComment=function(e){var t,r=e.comments;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&Xv(e.leadingNode,r),null!==e.trailingNode&&function(e,t){var r;void 0===e.leadingComments?e.leadingComments=t:(r=e.leadingComments).unshift.apply(r,t)}(e.trailingNode,r);else{var a=e.containingNode,n=e.start;if(44===this.input.charCodeAt(this.offsetToSourcePos(n)-1))switch(a.type){case"ObjectExpression":case"ObjectPattern":Yv(a,a.properties,e);break;case"CallExpression":case"OptionalCallExpression":Yv(a,a.arguments,e);break;case"ImportExpression":Yv(a,[a.source,null!=(t=a.options)?t:null],e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Yv(a,a.params,e);break;case"ArrayExpression":case"ArrayPattern":Yv(a,a.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":Yv(a,a.specifiers,e);break;case"TSEnumDeclaration":case"TSEnumBody":Yv(a,a.members,e);break;default:if("RecordExpression"===a.type){Yv(a,a.properties,e);break}if("TupleExpression"===a.type){Yv(a,a.elements,e);break}Jv(a,r)}else Jv(a,r)}},r.finalizeRemainingComments=function(){for(var e=this.state.commentStack,t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]},r.resetPreviousNodeTrailingComments=function(e){var t=this.state.commentStack,r=t.length;if(0!==r){var a=t[r-1];a.leadingNode===e&&(a.leadingNode=null)}},r.takeSurroundingComments=function(e,t,r){var a=this.state.commentStack,n=a.length;if(0!==n)for(var s=n-1;s>=0;s--){var o=a[s],i=o.end;if(o.start===r)o.leadingNode=e;else if(i===t)o.trailingNode=e;else if(i<t)break}},o(t)}(Kv),Qv=1,Zv=2,ex=function(){function e(){this.flags=1024,this.startIndex=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[Uh.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}var t=e.prototype;return t.init=function(e){var t=e.strictMode,r=e.sourceType,a=e.startIndex,n=e.startLine,s=e.startColumn;this.strict=!1!==t&&(!0===t||"module"===r),this.startIndex=a,this.curLine=n,this.lineStart=-s,this.startLoc=this.endLoc=new oh(n,s,a)},t.curPosition=function(){return new oh(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)},t.clone=function(){var t=new e;return t.flags=this.flags,t.startIndex=this.startIndex,t.curLine=this.curLine,t.lineStart=this.lineStart,t.startLoc=this.startLoc,t.endLoc=this.endLoc,t.errors=this.errors.slice(),t.potentialArrowAt=this.potentialArrowAt,t.noArrowAt=this.noArrowAt.slice(),t.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),t.topicContext=this.topicContext,t.labels=this.labels.slice(),t.commentsLen=this.commentsLen,t.commentStack=this.commentStack.slice(),t.pos=this.pos,t.type=this.type,t.value=this.value,t.start=this.start,t.end=this.end,t.lastTokEndLoc=this.lastTokEndLoc,t.lastTokStartLoc=this.lastTokStartLoc,t.context=this.context.slice(),t.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,t.strictErrors=this.strictErrors,t.tokensLength=this.tokensLength,t},o(e,[{key:"strict",get:function(){return(1&this.flags)>0},set:function(e){e?this.flags|=1:this.flags&=-2}},{key:"maybeInArrowParameters",get:function(){return(2&this.flags)>0},set:function(e){e?this.flags|=2:this.flags&=-3}},{key:"inType",get:function(){return(4&this.flags)>0},set:function(e){e?this.flags|=4:this.flags&=-5}},{key:"noAnonFunctionType",get:function(){return(8&this.flags)>0},set:function(e){e?this.flags|=8:this.flags&=-9}},{key:"hasFlowComment",get:function(){return(16&this.flags)>0},set:function(e){e?this.flags|=16:this.flags&=-17}},{key:"isAmbientContext",get:function(){return(32&this.flags)>0},set:function(e){e?this.flags|=32:this.flags&=-33}},{key:"inAbstractClass",get:function(){return(64&this.flags)>0},set:function(e){e?this.flags|=64:this.flags&=-65}},{key:"inDisallowConditionalTypesContext",get:function(){return(128&this.flags)>0},set:function(e){e?this.flags|=128:this.flags&=-129}},{key:"soloAwait",get:function(){return(256&this.flags)>0},set:function(e){e?this.flags|=256:this.flags&=-257}},{key:"inFSharpPipelineDirectBody",get:function(){return(512&this.flags)>0},set:function(e){e?this.flags|=512:this.flags&=-513}},{key:"canStartJSXElement",get:function(){return(1024&this.flags)>0},set:function(e){e?this.flags|=1024:this.flags&=-1025}},{key:"containsEsc",get:function(){return(2048&this.flags)>0},set:function(e){e?this.flags|=2048:this.flags&=-2049}},{key:"hasTopLevelAwait",get:function(){return(4096&this.flags)>0},set:function(e){e?this.flags|=4096:this.flags&=-4097}}])}();function tx(e,t,r){return new oh(r,e-t,e)}var rx=new Set([103,109,115,105,121,117,100,118]),ax=o(function(e){var t=e.startIndex||0;this.type=e.type,this.value=e.value,this.start=t+e.start,this.end=t+e.end,this.loc=new ih(e.startLoc,e.endLoc)}),nx=function(e){function t(t,r){var a;return(a=e.call(this)||this).isLookahead=void 0,a.tokens=[],a.errorHandlers_readInt={invalidDigit:function(e,t,r,n){return!!(a.optionFlags&Dh)&&(a.raise(Rh.InvalidDigit,tx(e,t,r),{radix:n}),!0)},numericSeparatorInEscapeSequence:a.errorBuilder(Rh.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:a.errorBuilder(Rh.UnexpectedNumericSeparator)},a.errorHandlers_readCodePoint=Object.assign({},a.errorHandlers_readInt,{invalidEscapeSequence:a.errorBuilder(Rh.InvalidEscapeSequence),invalidCodePoint:a.errorBuilder(Rh.InvalidCodePoint)}),a.errorHandlers_readStringContents_string=Object.assign({},a.errorHandlers_readCodePoint,{strictNumericEscape:function(e,t,r){a.recordStrictModeErrors(Rh.StrictNumericEscape,tx(e,t,r))},unterminated:function(e,t,r){throw a.raise(Rh.UnterminatedString,tx(e-1,t,r))}}),a.errorHandlers_readStringContents_template=Object.assign({},a.errorHandlers_readCodePoint,{strictNumericEscape:a.errorBuilder(Rh.StrictNumericEscape),unterminated:function(e,t,r){throw a.raise(Rh.UnterminatedTemplate,tx(e,t,r))}}),a.state=new ex,a.state.init(t),a.input=r,a.length=r.length,a.comments=[],a.isLookahead=!1,a}c(t,e);var r=t.prototype;return r.pushToken=function(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength},r.next=function(){this.checkKeywordEscapes(),this.optionFlags&Ch&&this.pushToken(new ax(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()},r.eat=function(e){return!!this.match(e)&&(this.next(),!0)},r.match=function(e){return this.state.type===e},r.createLookaheadState=function(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}},r.lookahead=function(){var e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;var t=this.state;return this.state=e,t},r.nextTokenStart=function(){return this.nextTokenStartSince(this.state.pos)},r.nextTokenStartSince=function(e){return Iv.lastIndex=e,Iv.test(this.input)?Iv.lastIndex:e},r.lookaheadCharCode=function(){return this.lookaheadCharCodeSince(this.state.pos)},r.lookaheadCharCodeSince=function(e){return this.input.charCodeAt(this.nextTokenStartSince(e))},r.nextTokenInLineStart=function(){return this.nextTokenInLineStartSince(this.state.pos)},r.nextTokenInLineStartSince=function(e){return Dv.lastIndex=e,Dv.test(this.input)?Dv.lastIndex:e},r.lookaheadInLineCharCode=function(){return this.input.charCodeAt(this.nextTokenInLineStart())},r.codePointAtPos=function(e){var t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){var r=this.input.charCodeAt(e);56320==(64512&r)&&(t=65536+((1023&t)<<10)+(1023&r))}return t},r.setStrict=function(e){var t=this;this.state.strict=e,e&&(this.state.strictErrors.forEach(function(e){var r=e[0],a=e[1];return t.raise(r,a)}),this.state.strictErrors.clear())},r.curContext=function(){return this.state.context[this.state.context.length-1]},r.nextToken=function(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(140):this.getTokenFromCode(this.codePointAtPos(this.state.pos))},r.skipBlockComment=function(e){var t;this.isLookahead||(t=this.state.curPosition());var r=this.state.pos,a=this.input.indexOf(e,r+2);if(-1===a)throw this.raise(Rh.UnterminatedComment,this.state.curPosition());for(this.state.pos=a+e.length,Av.lastIndex=r+2;Av.test(this.input)&&Av.lastIndex<=a;)++this.state.curLine,this.state.lineStart=Av.lastIndex;if(!this.isLookahead){var n={type:"CommentBlock",value:this.input.slice(r+2,a),start:this.sourceToOffsetPos(r),end:this.sourceToOffsetPos(a+e.length),loc:new ih(t,this.state.curPosition())};return this.optionFlags&Ch&&this.pushToken(n),n}},r.skipLineComment=function(e){var t,r=this.state.pos;this.isLookahead||(t=this.state.curPosition());var a=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!kv(a)&&++this.state.pos<this.length;)a=this.input.charCodeAt(this.state.pos);if(!this.isLookahead){var n=this.state.pos,s={type:"CommentLine",value:this.input.slice(r+e,n),start:this.sourceToOffsetPos(r),end:this.sourceToOffsetPos(n),loc:new ih(t,this.state.curPosition())};return this.optionFlags&Ch&&this.pushToken(s),s}},r.skipSpace=function(){var e=this.state.pos,t=this.optionFlags&Oh?[]:null;e:for(;this.state.pos<this.length;){var r=this.input.charCodeAt(this.state.pos);switch(r){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:var a=this.skipBlockComment("*/");void 0!==a&&(this.addComment(a),null==t||t.push(a));break;case 47:var n=this.skipLineComment(2);void 0!==n&&(this.addComment(n),null==t||t.push(n));break;default:break e}break;default:if(Ov(r))++this.state.pos;else if(45===r&&!this.inModule&&this.optionFlags&Nh){var s=this.state.pos;if(45!==this.input.charCodeAt(s+1)||62!==this.input.charCodeAt(s+2)||!(0===e||this.state.lineStart>e))break e;var o=this.skipLineComment(3);void 0!==o&&(this.addComment(o),null==t||t.push(o))}else{if(60!==r||this.inModule||!(this.optionFlags&Nh))break e;var i=this.state.pos;if(33!==this.input.charCodeAt(i+1)||45!==this.input.charCodeAt(i+2)||45!==this.input.charCodeAt(i+3))break e;var d=this.skipLineComment(4);void 0!==d&&(this.addComment(d),null==t||t.push(d))}}}if((null==t?void 0:t.length)>0){var c=this.state.pos,l={start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(c),comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(l)}},r.finishToken=function(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();var r=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(r)},r.replaceToken=function(e){this.state.type=e,this.updateContext()},r.readToken_numberSign=function(){if(0!==this.state.pos||!this.readToken_interpreter()){var e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(Rh.UnexpectedDigitAfterHash,this.state.curPosition());if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"bar"===this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?Rh.RecordExpressionHashIncorrectStartSyntaxType:Rh.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else Mr(t)?(++this.state.pos,this.finishToken(139,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}},r.readToken_dot=function(){var e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))},r.readToken_slash=function(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)},r.readToken_interpreter=function(){if(0!==this.state.pos||this.length<2)return!1;var e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;var t=this.state.pos;for(this.state.pos+=1;!kv(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);var r=this.input.slice(t+2,this.state.pos);return this.finishToken(28,r),!0},r.readToken_mult_modulo=function(e){var t=42===e?55:54,r=1,a=this.input.charCodeAt(this.state.pos+1);42===e&&42===a&&(r++,a=this.input.charCodeAt(this.state.pos+2),t=57),61!==a||this.state.inType||(r++,t=37===e?33:30),this.finishOp(t,r)},r.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(Rh.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(Rh.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)},r.readToken_caret=function(){var e=this.input.charCodeAt(this.state.pos+1);if(61!==e||this.state.inType)if(94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])){this.finishOp(37,2),94===this.input.codePointAt(this.state.pos)&&this.unexpected()}else this.finishOp(44,1);else this.finishOp(32,2)},r.readToken_atSign=function(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)},r.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)},r.readToken_lt=function(){var e=this.state.pos,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)},r.readToken_gt=function(){var e=this.state.pos,t=this.input.charCodeAt(e+1);if(62===t){var r=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+r)?void this.finishOp(30,r+1):void this.finishOp(52,r)}61!==t?this.finishOp(48,1):this.finishOp(49,2)},r.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)},r.readToken_question=function(){var e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))},r.getTokenFromCode=function(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(Rh.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(Rh.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:var t=this.input.charCodeAt(this.state.pos+1);if(120===t||88===t)return void this.readRadixNumber(16);if(111===t||79===t)return void this.readRadixNumber(8);if(98===t||66===t)return void this.readRadixNumber(2);case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(Mr(e))return void this.readWord(e)}throw this.raise(Rh.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})},r.finishOp=function(e,t){var r=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,r)},r.readRegexp=function(){for(var e,t,r=this.state.startLoc,a=this.state.start+1,n=this.state.pos;;++n){if(n>=this.length)throw this.raise(Rh.UnterminatedRegExp,dh(r,1));var s=this.input.charCodeAt(n);if(kv(s))throw this.raise(Rh.UnterminatedRegExp,dh(r,1));if(e)e=!1;else{if(91===s)t=!0;else if(93===s&&t)t=!1;else if(47===s&&!t)break;e=92===s}}var o=this.input.slice(a,n);++n;for(var i="",d=function(){return dh(r,n+2-a)};n<this.length;){var c=this.codePointAtPos(n),l=String.fromCharCode(c);if(rx.has(c))118===c?i.includes("u")&&this.raise(Rh.IncompatibleRegExpUVFlags,d()):117===c&&i.includes("v")&&this.raise(Rh.IncompatibleRegExpUVFlags,d()),i.includes(l)&&this.raise(Rh.DuplicateRegExpFlags,d());else{if(!Fr(c)&&92!==c)break;this.raise(Rh.MalformedRegExpFlags,d())}++n,i+=l}this.state.pos=n,this.finishToken(138,{pattern:o,flags:i})},r.readInt=function(e,t,r,a){void 0===r&&(r=!1),void 0===a&&(a=!0);var n=na(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,r,a,this.errorHandlers_readInt,!1),s=n.n,o=n.pos;return this.state.pos=o,s},r.readRadixNumber=function(e){var t=this.state.pos,r=this.state.curPosition(),a=!1;this.state.pos+=2;var n=this.readInt(e);null==n&&this.raise(Rh.InvalidDigit,dh(r,2),{radix:e});var s=this.input.charCodeAt(this.state.pos);if(110===s)++this.state.pos,a=!0;else if(109===s)throw this.raise(Rh.InvalidDecimal,r);if(Mr(this.codePointAtPos(this.state.pos)))throw this.raise(Rh.NumberIdentifier,this.state.curPosition());if(a){var o=this.input.slice(t,this.state.pos).replace(/[_n]/g,"");this.finishToken(136,o)}else this.finishToken(135,n)},r.readNumber=function(e){var t=this.state.pos,r=this.state.curPosition(),a=!1,n=!1,s=!1,o=!1;e||null!==this.readInt(10)||this.raise(Rh.InvalidNumber,this.state.curPosition());var i=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(i){var d=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(Rh.StrictOctalLiteral,r),!this.state.strict){var c=d.indexOf("_");c>0&&this.raise(Rh.ZeroDigitNumericSeparator,dh(r,c))}o=i&&!/[89]/.test(d)}var l=this.input.charCodeAt(this.state.pos);if(46!==l||o||(++this.state.pos,this.readInt(10),a=!0,l=this.input.charCodeAt(this.state.pos)),69!==l&&101!==l||o||(43!==(l=this.input.charCodeAt(++this.state.pos))&&45!==l||++this.state.pos,null===this.readInt(10)&&this.raise(Rh.InvalidOrMissingExponent,r),a=!0,s=!0,l=this.input.charCodeAt(this.state.pos)),110===l&&((a||i)&&this.raise(Rh.InvalidBigIntLiteral,r),++this.state.pos,n=!0),109===l){this.expectPlugin("decimal",this.state.curPosition()),(s||i)&&this.raise(Rh.InvalidDecimal,r),++this.state.pos;var u=!0}if(Mr(this.codePointAtPos(this.state.pos)))throw this.raise(Rh.NumberIdentifier,this.state.curPosition());var p=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(n)this.finishToken(136,p);else if(u)this.finishToken(137,p);else{var f=o?parseInt(p,8):parseFloat(p);this.finishToken(135,f)}},r.readCodePoint=function(e){var t=sa(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint),r=t.code,a=t.pos;return this.state.pos=a,r},r.readString=function(e){var t=ea(34===e?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string),r=t.str,a=t.pos,n=t.curLine,s=t.lineStart;this.state.pos=a+1,this.state.lineStart=s,this.state.curLine=n,this.finishToken(134,r)},r.readTemplateContinuation=function(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()},r.readTemplateToken=function(){var e=this.input[this.state.pos],t=ea("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template),r=t.str,a=t.firstInvalidLoc,n=t.pos,s=t.curLine,o=t.lineStart;this.state.pos=n+1,this.state.lineStart=o,this.state.curLine=s,a&&(this.state.firstInvalidTemplateEscapePos=new oh(a.curLine,a.pos-a.lineStart,this.sourceToOffsetPos(a.pos))),96===this.input.codePointAt(n)?this.finishToken(24,a?null:e+r+"`"):(this.state.pos++,this.finishToken(25,a?null:e+r+"${"))},r.recordStrictModeErrors=function(e,t){var r=t.index;this.state.strict&&!this.state.strictErrors.has(r)?this.raise(e,t):this.state.strictErrors.set(r,[e,t])},r.readWord1=function(e){this.state.containsEsc=!1;var t="",r=this.state.pos,a=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){var n=this.codePointAtPos(this.state.pos);if(Fr(n))this.state.pos+=n<=65535?1:2;else{if(92!==n)break;this.state.containsEsc=!0,t+=this.input.slice(a,this.state.pos);var s=this.state.curPosition(),o=this.state.pos===r?Mr:Fr;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(Rh.MissingUnicodeEscape,this.state.curPosition()),a=this.state.pos-1;continue}++this.state.pos;var i=this.readCodePoint(!0);null!==i&&(o(i)||this.raise(Rh.EscapedCharNotAnIdentifier,s),t+=String.fromCodePoint(i)),a=this.state.pos}}return t+this.input.slice(a,this.state.pos)},r.readWord=function(e){var t=this.readWord1(e),r=Kh.get(t);void 0!==r?this.finishToken(r,fb(r)):this.finishToken(132,t)},r.checkKeywordEscapes=function(){var e=this.state.type;ub(e)&&this.state.containsEsc&&this.raise(Rh.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:fb(e)})},r.raise=function(e,t,r){void 0===r&&(r={});var a=e(t instanceof oh?t:t.loc.start,r);if(!(this.optionFlags&Dh))throw a;return this.isLookahead||this.state.errors.push(a),a},r.raiseOverwrite=function(e,t,r){void 0===r&&(r={});for(var a=t instanceof oh?t:t.loc.start,n=a.index,s=this.state.errors,o=s.length-1;o>=0;o--){var i=s[o];if(i.loc.index===n)return s[o]=e(a,r);if(i.loc.index<n)break}return this.raise(e,t,r)},r.updateContext=function(e){},r.unexpected=function(e,t){throw this.raise(Rh.UnexpectedToken,null!=e?e:this.state.startLoc,{expected:t?fb(t):null})},r.expectPlugin=function(e,t){if(this.hasPlugin(e))return!0;throw this.raise(Rh.MissingPlugin,null!=t?t:this.state.startLoc,{missingPlugin:[e]})},r.expectOnePlugin=function(e){var t=this;if(!e.some(function(e){return t.hasPlugin(e)}))throw this.raise(Rh.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})},r.errorBuilder=function(e){var t=this;return function(r,a,n){t.raise(e,tx(r,a,n))}},o(t)}($v),sx=o(function(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}),ox=function(){function e(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}var t=e.prototype;return t.current=function(){return this.stack[this.stack.length-1]},t.enter=function(){this.stack.push(new sx)},t.exit=function(){for(var e=this.stack.pop(),t=this.current(),r=0,a=Array.from(e.undefinedPrivateNames);r<a.length;r++){var n=a[r],s=n[0],o=n[1];t?t.undefinedPrivateNames.has(s)||t.undefinedPrivateNames.set(s,o):this.parser.raise(Rh.InvalidPrivateFieldResolution,o,{identifierName:s})}},t.declarePrivateName=function(e,t,r){var a=this.current(),n=a.privateNames,s=a.loneAccessors,o=a.undefinedPrivateNames,i=n.has(e);if(t&lv){var d=i&&s.get(e);if(d)(i=(d&lv)===(t&lv)||(d&cv)!==(t&cv))||s.delete(e);else i||s.set(e,t)}i&&this.parser.raise(Rh.PrivateNameRedeclaration,r,{identifierName:e}),n.add(e),o.delete(e)},t.usePrivateName=function(e,t){for(var r,a=0,n=this.stack;a<n.length;a++)if((r=n[a]).privateNames.has(e))return;r?r.undefinedPrivateNames.set(e,t):this.parser.raise(Rh.InvalidPrivateFieldResolution,t,{identifierName:e})},o(e)}(),ix=function(){function e(e){void 0===e&&(e=0),this.type=e}var t=e.prototype;return t.canBeArrowParameterDeclaration=function(){return 2===this.type||1===this.type},t.isCertainlyParameterDeclaration=function(){return 3===this.type},o(e)}(),dx=function(e){function t(t){var r;return(r=e.call(this,t)||this).declarationErrors=new Map,r}c(t,e);var r=t.prototype;return r.recordDeclarationError=function(e,t){var r=t.index;this.declarationErrors.set(r,[e,t])},r.clearDeclarationError=function(e){this.declarationErrors.delete(e)},r.iterateErrors=function(e){this.declarationErrors.forEach(e)},o(t)}(ix),cx=function(){function e(e){this.parser=void 0,this.stack=[new ix],this.parser=e}var t=e.prototype;return t.enter=function(e){this.stack.push(e)},t.exit=function(){this.stack.pop()},t.recordParameterInitializerError=function(e,t){for(var r=t.loc.start,a=this.stack,n=a.length-1,s=a[n];!s.isCertainlyParameterDeclaration();){if(!s.canBeArrowParameterDeclaration())return;s.recordDeclarationError(e,r),s=a[--n]}this.parser.raise(e,r)},t.recordArrowParameterBindingError=function(e,t){var r=this.stack,a=r[r.length-1],n=t.loc.start;if(a.isCertainlyParameterDeclaration())this.parser.raise(e,n);else{if(!a.canBeArrowParameterDeclaration())return;a.recordDeclarationError(e,n)}},t.recordAsyncArrowParametersError=function(e){for(var t=this.stack,r=t.length-1,a=t[r];a.canBeArrowParameterDeclaration();)2===a.type&&a.recordDeclarationError(Rh.AwaitBindingIdentifier,e),a=t[--r]},t.validateAsPattern=function(){var e=this,t=this.stack,r=t[t.length-1];r.canBeArrowParameterDeclaration()&&r.iterateErrors(function(r){var a=r[0],n=r[1];e.parser.raise(a,n);for(var s=t.length-2,o=t[s];o.canBeArrowParameterDeclaration();)o.clearDeclarationError(n.index),o=t[--s]})},o(e)}();function lx(){return new ix}var ux=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.addExtra=function(e,t,r,a){if(void 0===a&&(a=!0),e){var n=e.extra;null==n&&(n={},e.extra=n),a?n[t]=r:Object.defineProperty(n,t,{enumerable:a,value:r})}},r.isContextual=function(e){return this.state.type===e&&!this.state.containsEsc},r.isUnparsedContextual=function(e,t){if(this.input.startsWith(t,e)){var r=this.input.charCodeAt(e+t.length);return!(Fr(r)||55296==(64512&r))}return!1},r.isLookaheadContextual=function(e){var t=this.nextTokenStart();return this.isUnparsedContextual(t,e)},r.eatContextual=function(e){return!!this.isContextual(e)&&(this.next(),!0)},r.expectContextual=function(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,this.state.startLoc);this.unexpected(null,e)}},r.canInsertSemicolon=function(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()},r.hasPrecedingLineBreak=function(){return Cv(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)},r.hasFollowingLineBreak=function(){return Cv(this.input,this.state.end,this.nextTokenStart())},r.isLineTerminator=function(){return this.eat(13)||this.canInsertSemicolon()},r.semicolon=function(e){void 0===e&&(e=!0),(e?this.isLineTerminator():this.eat(13))||this.raise(Rh.MissingSemicolon,this.state.lastTokEndLoc)},r.expect=function(e,t){this.eat(e)||this.unexpected(t,e)},r.tryParse=function(e,t){void 0===t&&(t=this.state.clone());var r={node:null};try{var a=e(function(e){throw void 0===e&&(e=null),r.node=e,r});if(this.state.errors.length>t.errors.length){var n=this.state;return this.state=t,this.state.tokensLength=n.tokensLength,{node:a,error:n.errors[t.errors.length],thrown:!1,aborted:!1,failState:n}}return{node:a,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){var s=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:s};if(e===r)return{node:r.node,error:null,thrown:!1,aborted:!0,failState:s};throw e}},r.checkExpressionErrors=function(e,t){if(!e)return!1;var r=e.shorthandAssignLoc,a=e.doubleProtoLoc,n=e.privateKeyLoc,s=e.optionalParametersLoc,o=e.voidPatternLoc;if(!t)return!!(r||a||s||n||o);null!=r&&this.raise(Rh.InvalidCoverInitializedName,r),null!=a&&this.raise(Rh.DuplicateProto,a),null!=n&&this.raise(Rh.UnexpectedPrivateField,n),null!=s&&this.unexpected(s),null!=o&&this.raise(Rh.InvalidCoverDiscardElement,o)},r.isLiteralPropertyName=function(){return db(this.state.type)},r.isPrivateName=function(e){return"PrivateName"===e.type},r.getPrivateNameSV=function(e){return e.id.name},r.hasPropertyAsPrivateName=function(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)},r.isObjectProperty=function(e){return"ObjectProperty"===e.type},r.isObjectMethod=function(e){return"ObjectMethod"===e.type},r.initializeScopes=function(e){var t=this;void 0===e&&(e="module"===this.options.sourceType);var r=this.state.labels;this.state.labels=[];var a=this.exportedIdentifiers;this.exportedIdentifiers=new Set;var n=this.inModule;this.inModule=e;var s=this.scope,o=this.getScopeHandler();this.scope=new o(this,e);var i=this.prodParam;this.prodParam=new Hv;var d=this.classScope;this.classScope=new ox(this);var c=this.expressionScope;return this.expressionScope=new cx(this),function(){t.state.labels=r,t.exportedIdentifiers=a,t.inModule=n,t.scope=s,t.prodParam=i,t.classScope=d,t.expressionScope=c}},r.enterInitialScopes=function(){var e=Uv;(this.inModule||this.optionFlags&jh)&&(e|=Gv),this.optionFlags&Ph&&(e|=qv);var t=!this.inModule&&"commonjs"===this.options.sourceType;(t||this.optionFlags&wh)&&(e|=Wv),this.prodParam.enter(e);var r=t?_b:xb;this.optionFlags&Eh&&(r|=kb),this.scope.enter(r)},r.checkDestructuringPrivate=function(e){var t=e.privateKeyLoc;null!==t&&this.expectPlugin("destructuringPrivate",t)},o(t)}(nx),px=o(function(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null,this.voidPatternLoc=null}),fx=o(function(e,t,r){this.type="",this.start=t,this.end=0,this.loc=new ih(r),(null==e?void 0:e.optionFlags)&kh&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}),gx=fx.prototype;gx.__clone=function(){for(var e=new fx(void 0,this.start,this.loc.start),t=Object.keys(this),r=0,a=t.length;r<a;r++){var n=t[r];"leadingComments"!==n&&"trailingComments"!==n&&"innerComments"!==n&&(e[n]=this[n])}return e};var mx,yx=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.startNode=function(){var e=this.state.startLoc;return new fx(this,e.index,e)},r.startNodeAt=function(e){return new fx(this,e.index,e)},r.startNodeAtNode=function(e){return this.startNodeAt(e.loc.start)},r.finishNode=function(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)},r.finishNodeAt=function(e,t,r){return e.type=t,e.end=r.index,e.loc.end=r,this.optionFlags&kh&&(e.range[1]=r.index),this.optionFlags&Oh&&this.processComment(e),e},r.resetStartLocation=function(e,t){e.start=t.index,e.loc.start=t,this.optionFlags&kh&&(e.range[0]=t.index)},r.resetEndLocation=function(e,t){void 0===t&&(t=this.state.lastTokEndLoc),e.end=t.index,e.loc.end=t,this.optionFlags&kh&&(e.range[1]=t.index)},r.resetStartLocationFromNode=function(e,t){this.resetStartLocation(e,t.loc.start)},r.castNodeTo=function(e,t){return e.type=t,e},r.cloneIdentifier=function(e){var t=e.type,r=e.start,a=e.end,n=e.loc,s=e.range,o=e.name,i=Object.create(gx);return i.type=t,i.start=r,i.end=a,i.loc=n,i.range=s,i.name=o,e.extra&&(i.extra=e.extra),i},r.cloneStringLiteral=function(e){var t=e.type,r=e.start,a=e.end,n=e.loc,s=e.range,o=e.extra,i=Object.create(gx);return i.type=t,i.start=r,i.end=a,i.loc=n,i.range=s,i.extra=o,i.value=e.value,i},o(t)}(ux),hx=function(e){return"ParenthesizedExpression"===e.type?hx(e.expression):e},bx=1,vx=2,xx=4,Rx=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.toAssignable=function(e,t){var r,a;void 0===t&&(t=!1);var n=void 0;switch(("ParenthesizedExpression"===e.type||null!=(r=e.extra)&&r.parenthesized)&&(n=hx(e),t?"Identifier"===n.type?this.expressionScope.recordArrowParameterBindingError(Rh.InvalidParenthesizedAssignment,e):"CallExpression"===n.type||"MemberExpression"===n.type||this.isOptionalMemberExpression(n)||this.raise(Rh.InvalidParenthesizedAssignment,e):this.raise(Rh.InvalidParenthesizedAssignment,e)),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":break;case"ObjectExpression":this.castNodeTo(e,"ObjectPattern");for(var s=0,o=e.properties.length,i=o-1;s<o;s++){var d,c=e.properties[s],l=s===i;this.toAssignableObjectExpressionProp(c,l,t),l&&"RestElement"===c.type&&null!=(d=e.extra)&&d.trailingCommaLoc&&this.raise(Rh.RestTrailingComma,e.extra.trailingCommaLoc)}break;case"ObjectProperty":var u=e.key,p=e.value;this.isPrivateName(u)&&this.classScope.usePrivateName(this.getPrivateNameSV(u),u.loc.start),this.toAssignable(p,t);break;case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":this.castNodeTo(e,"ArrayPattern"),this.toAssignableList(e.elements,null==(a=e.extra)?void 0:a.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(Rh.MissingEqInAssignment,e.left.loc.end),this.castNodeTo(e,"AssignmentPattern"),delete e.operator,"VoidPattern"===e.left.type&&this.raise(Rh.VoidPatternInitializer,e.left),this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(n,t)}},r.toAssignableObjectExpressionProp=function(e,t,r){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?Rh.PatternHasAccessor:Rh.PatternHasMethod,e.key);else if("SpreadElement"===e.type){this.castNodeTo(e,"RestElement");var a=e.argument;this.checkToRestConversion(a,!1),this.toAssignable(a,r),t||this.raise(Rh.RestTrailingComma,e)}else this.toAssignable(e,r)},r.toAssignableList=function(e,t,r){for(var a=e.length-1,n=0;n<=a;n++){var s=e[n];s&&(this.toAssignableListItem(e,n,r),"RestElement"===s.type&&(n<a?this.raise(Rh.RestTrailingComma,s):t&&this.raise(Rh.RestTrailingComma,t)))}},r.toAssignableListItem=function(e,t,r){var a=e[t];if("SpreadElement"===a.type){this.castNodeTo(a,"RestElement");var n=a.argument;this.checkToRestConversion(n,!0),this.toAssignable(n,r)}else this.toAssignable(a,r)},r.isAssignable=function(e,t){var r=this;switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":case"VoidPattern":return!0;case"ObjectExpression":var a=e.properties.length-1;return e.properties.every(function(e,t){return"ObjectMethod"!==e.type&&(t===a||"SpreadElement"!==e.type)&&r.isAssignable(e)});case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every(function(e){return null===e||r.isAssignable(e)});case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}},r.toReferencedList=function(e,t){return e},r.toReferencedListDeep=function(e,t){this.toReferencedList(e,t);for(var r=0;r<e.length;r++){var a=e[r];"ArrayExpression"===(null==a?void 0:a.type)&&this.toReferencedListDeep(a.elements)}},r.parseSpread=function(e){var t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,"SpreadElement")},r.parseRestBinding=function(){var e=this.startNode();this.next();var t=this.parseBindingAtom();return"VoidPattern"===t.type&&this.raise(Rh.UnexpectedVoidPattern,t),e.argument=t,this.finishNode(e,"RestElement")},r.parseBindingAtom=function(){switch(this.state.type){case 0:var e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,bx),this.finishNode(e,"ArrayPattern");case 5:return this.parseObjectLike(8,!0);case 88:return this.parseVoidPattern(null)}return this.parseIdentifier()},r.parseBindingList=function(e,t,r){for(var a=r&bx,n=[],s=!0;!this.eat(e);)if(s?s=!1:this.expect(12),a&&this.match(12))n.push(null);else{if(this.eat(e))break;if(this.match(21)){var o=this.parseRestBinding();if((this.hasPlugin("flow")||r&vx)&&(o=this.parseFunctionParamType(o)),n.push(o),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{var i=[];if(r&vx)for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(Rh.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)i.push(this.parseDecorator());n.push(this.parseBindingElement(r,i))}}return n},r.parseBindingRestProperty=function(e){return this.next(),this.hasPlugin("discardBinding")&&this.match(88)?(e.argument=this.parseVoidPattern(null),this.raise(Rh.UnexpectedVoidPattern,e.argument)):e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")},r.parseBindingProperty=function(){var e=this.state,t=e.type,r=e.startLoc;if(21===t)return this.parseBindingRestProperty(this.startNode());var a=this.startNode();return 139===t?(this.expectPlugin("destructuringPrivate",r),this.classScope.usePrivateName(this.state.value,r),a.key=this.parsePrivateName()):this.parsePropertyName(a),a.method=!1,this.parseObjPropValue(a,r,!1,!1,!0,!1)},r.parseBindingElement=function(e,t){var r=this.parseMaybeDefault();return(this.hasPlugin("flow")||e&vx)&&this.parseFunctionParamType(r),t.length&&(r.decorators=t,this.resetStartLocationFromNode(r,t[0])),this.parseMaybeDefault(r.loc.start,r)},r.parseFunctionParamType=function(e){return e},r.parseMaybeDefault=function(e,t){if(null!=e||(e=this.state.startLoc),t=null!=t?t:this.parseBindingAtom(),!this.eat(29))return t;var r=this.startNodeAt(e);return"VoidPattern"===t.type&&this.raise(Rh.VoidPatternInitializer,t),r.left=t,r.right=this.parseMaybeAssignAllowIn(),this.finishNode(r,"AssignmentPattern")},r.isValidLVal=function(e,t,r,a){switch(e){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties";case"VoidPattern":return!0;case"CallExpression":if(!t&&!this.state.strict&&this.optionFlags&Nh)return!0}return!1},r.isOptionalMemberExpression=function(e){return"OptionalMemberExpression"===e.type},r.checkLVal=function(e,t,r,a,n,s,o){var i;void 0===r&&(r=tv),void 0===a&&(a=!1),void 0===n&&(n=!1),void 0===s&&(s=!1),void 0===o&&(o=!1);var d=e.type;if(!this.isObjectMethod(e)){var c=this.isOptionalMemberExpression(e);if(c||"MemberExpression"===d)return c&&(this.expectPlugin("optionalChainingAssign",e.loc.start),"AssignmentExpression"!==t.type&&this.raise(Rh.InvalidLhsOptionalChaining,e,{ancestor:t})),void(r!==tv&&this.raise(Rh.InvalidPropertyBindingPattern,e));if("Identifier"!==d){"VoidPattern"===d&&"CatchClause"===t.type&&this.raise(Rh.VoidPatternCatchClauseParam,e);var l=hx(e);o||(o="CallExpression"===l.type&&("Import"===l.callee.type||"Super"===l.callee.type));var u=this.isValidLVal(d,o,!(s||null!=(i=e.extra)&&i.parenthesized)&&"AssignmentExpression"===t.type,r);if(!0!==u)if(!1!==u){var p,f;"string"==typeof u?(p=u,f="ParenthesizedExpression"===d):(p=u[0],f=u[1]);var g="ArrayPattern"===d||"ObjectPattern"===d?{type:d}:t,m=e[p];if(Array.isArray(m))for(var y=0;y<m.length;y++){var h=m[y];h&&this.checkLVal(h,g,r,a,n,f,!0)}else m&&this.checkLVal(m,g,r,a,n,f,o)}else{var b=r===tv?Rh.InvalidLhs:Rh.InvalidLhsBinding;this.raise(b,e,{ancestor:t})}}else{this.checkIdentifier(e,r,n);var v=e.name;a&&(a.has(v)?this.raise(Rh.ParamDupe,e):a.add(v))}}},r.checkIdentifier=function(e,t,r){void 0===r&&(r=!1),this.state.strict&&(r?Xr(e.name,this.inModule):Kr(e.name))&&(t===tv?this.raise(Rh.StrictEvalArguments,e,{referenceName:e.name}):this.raise(Rh.StrictEvalArgumentsBinding,e,{bindingName:e.name})),t&Hb&&"let"===e.name&&this.raise(Rh.LetInLexicalBinding,e),t&tv||this.declareNameFromIdentifier(e,t)},r.declareNameFromIdentifier=function(e,t){this.scope.declareName(e.name,t,e.loc.start)},r.checkToRestConversion=function(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(Rh.InvalidRestAssignmentPattern,e)}},r.checkCommaAfterRest=function(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?Rh.RestTrailingComma:Rh.ElementAfterRest,this.state.startLoc),!0)},o(t)}(yx),jx=new RegExp("in(?:stanceof)?|as|satisfies","y");function wx(e){if(!e)throw new Error("Assert fail")}var Ex=xh(mx||(mx=h(["typescript"])))({AbstractMethodHasImplementation:function(e){return"Method '"+e.methodName+"' cannot have an implementation because it is marked abstract."},AbstractPropertyHasInitializer:function(e){return"Property '"+e.propertyName+"' cannot have an initializer because it is marked abstract."},AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:function(e){return"'declare' is not allowed in "+e.kind+"ters."},DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:function(e){return"Accessibility modifier already seen: '"+e.modifier+"'."},DuplicateModifier:function(e){return"Duplicate modifier: '"+e.modifier+"'."},EmptyHeritageClauseType:function(e){return"'"+e.token+"' list cannot be empty."},EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:function(e){var t=e.modifiers;return"'"+t[0]+"' modifier cannot be used with '"+t[1]+"' modifier."},IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:function(e){return"Index signatures cannot have an accessibility modifier ('"+e.modifier+"')."},IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidHeritageClauseType:function(e){return"'"+e.token+"' list can only include identifiers or qualified-names with optional type arguments."},InvalidModifierOnAwaitUsingDeclaration:function(e){return"'"+e+"' modifier cannot appear on an await using declaration."},InvalidModifierOnTypeMember:function(e){return"'"+e.modifier+"' modifier cannot appear on a type member."},InvalidModifierOnTypeParameter:function(e){return"'"+e.modifier+"' modifier cannot appear on a type parameter."},InvalidModifierOnTypeParameterPositions:function(e){return"'"+e.modifier+"' modifier can only appear on a type parameter of a class, interface or type alias."},InvalidModifierOnUsingDeclaration:function(e){return"'"+e+"' modifier cannot appear on a using declaration."},InvalidModifiersOrder:function(e){var t=e.orderedModifiers;return"'"+t[0]+"' modifier must precede '"+t[1]+"' modifier."},InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifier:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:function(e){return"Private elements cannot have an accessibility modifier ('"+e.modifier+"')."},ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:function(e){var t=e.typeParameterName;return"Single type parameter "+t+" should have a trailing comma. Example usage: <"+t+",>."},StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:function(e){return"Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got "+e.type+"."},UsingDeclarationInAmbientContext:function(e){return"'"+e+"' declarations are not allowed in ambient contexts."}});function Sx(e){return"private"===e||"public"===e||"protected"===e}function Tx(e){return"in"===e||"out"===e}var Px,Ax=0,kx=1,Cx=2;function _x(e){if("MemberExpression"!==e.type)return!1;var t=e.computed,r=e.property;return(!t||"StringLiteral"===r.type||!("TemplateLiteral"!==r.type||r.expressions.length>0))&&Ox(e.object)}function Ix(e,t){var r,a=e.type;if(null!=(r=e.extra)&&r.parenthesized)return!1;if(t){if("Literal"===a){var n=e.value;if("string"==typeof n||"boolean"==typeof n)return!0}}else if("StringLiteral"===a||"BooleanLiteral"===a)return!0;return!(!Dx(e,t)&&!function(e,t){if("UnaryExpression"===e.type){var r=e.operator,a=e.argument;if("-"===r&&Dx(a,t))return!0}return!1}(e,t))||("TemplateLiteral"===a&&0===e.expressions.length||!!_x(e))}function Dx(e,t){return t?"Literal"===e.type&&("number"==typeof e.value||"bigint"in e):"NumericLiteral"===e.type||"BigIntLiteral"===e.type}function Ox(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&Ox(e.object)}var Nx=xh(Px||(Px=h(["placeholders"])))({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."}),Bx=["minimal","fsharp","hack","smart"],Mx=["^^","@@","^","%","#"];var Fx={estree:function(e){return function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.parse=function(){var t=Fh(e.prototype.parse.call(this));return this.optionFlags&Ch&&(t.tokens=t.tokens.map(Fh)),t},r.parseRegExpLiteral=function(e){var t=e.pattern,r=e.flags,a=null;try{a=new RegExp(t,r)}catch(e){}var n=this.estreeParseLiteral(a);return n.regex={pattern:t,flags:r},n},r.parseBigIntLiteral=function(e){var t;try{t=BigInt(e)}catch(e){t=null}var r=this.estreeParseLiteral(t);return r.bigint=String(r.value||e),r},r.parseDecimalLiteral=function(e){var t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t},r.estreeParseLiteral=function(e){return this.parseLiteral(e,"Literal")},r.parseStringLiteral=function(e){return this.estreeParseLiteral(e)},r.parseNumericLiteral=function(e){return this.estreeParseLiteral(e)},r.parseNullLiteral=function(){return this.estreeParseLiteral(null)},r.parseBooleanLiteral=function(e){return this.estreeParseLiteral(e)},r.estreeParseChainExpression=function(e,t){var r=this.startNodeAtNode(e);return r.expression=e,this.finishNodeAt(r,"ChainExpression",t)},r.directiveToStmt=function(e){var t=e.value;delete e.value,this.castNodeTo(t,"Literal"),t.raw=t.extra.raw,t.value=t.extra.expressionValue;var r=this.castNodeTo(e,"ExpressionStatement");return r.expression=t,r.directive=t.extra.rawValue,delete t.extra,r},r.fillOptionalPropertiesForTSESLint=function(e){},r.cloneEstreeStringLiteral=function(e){var t=e.start,r=e.end,a=e.loc,n=e.range,s=e.raw,o=e.value,i=Object.create(e.constructor.prototype);return i.type="Literal",i.start=t,i.end=r,i.loc=a,i.range=n,i.raw=s,i.value=o,i},r.initFunction=function(t,r){e.prototype.initFunction.call(this,t,r),t.expression=!1},r.checkDeclaration=function(t){null!=t&&this.isObjectProperty(t)?this.checkDeclaration(t.value):e.prototype.checkDeclaration.call(this,t)},r.getObjectOrClassMethodParams=function(e){return e.value.params},r.isValidDirective=function(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)},r.parseBlockBody=function(t,r,a,n,s){var o=this;e.prototype.parseBlockBody.call(this,t,r,a,n,s);var i=t.directives.map(function(e){return o.directiveToStmt(e)});t.body=i.concat(t.body),delete t.directives},r.parsePrivateName=function(){var t=e.prototype.parsePrivateName.call(this);return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(t):t},r.convertPrivateNameToPrivateIdentifier=function(t){var r=e.prototype.getPrivateNameSV.call(this,t);return delete t.id,t.name=r,this.castNodeTo(t,"PrivateIdentifier")},r.isPrivateName=function(t){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===t.type:e.prototype.isPrivateName.call(this,t)},r.getPrivateNameSV=function(t){return this.getPluginOption("estree","classFeatures")?t.name:e.prototype.getPrivateNameSV.call(this,t)},r.parseLiteral=function(t,r){var a=e.prototype.parseLiteral.call(this,t,r);return a.raw=a.extra.raw,delete a.extra,a},r.parseFunctionBody=function(t,r,a){void 0===a&&(a=!1),e.prototype.parseFunctionBody.call(this,t,r,a),t.expression="BlockStatement"!==t.body.type},r.parseMethod=function(t,r,a,n,s,o,i){void 0===i&&(i=!1);var d=this.startNode();d.kind=t.kind,delete(d=e.prototype.parseMethod.call(this,d,r,a,n,s,o,i)).kind;var c=t.typeParameters;c&&(delete t.typeParameters,d.typeParameters=c,this.resetStartLocationFromNode(d,c));var l=this.castNodeTo(d,"FunctionExpression");return t.value=l,"ClassPrivateMethod"===o&&(t.computed=!1),"ObjectMethod"===o?("method"===t.kind&&(t.kind="init"),t.shorthand=!1,this.finishNode(t,"Property")):this.finishNode(t,"MethodDefinition")},r.nameIsConstructor=function(t){return"Literal"===t.type?"constructor"===t.value:e.prototype.nameIsConstructor.call(this,t)},r.parseClassProperty=function(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];var s=(t=e.prototype.parseClassProperty).call.apply(t,[this].concat(a));return this.getPluginOption("estree","classFeatures")?(this.castNodeTo(s,"PropertyDefinition"),s):s},r.parseClassPrivateProperty=function(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];var s=(t=e.prototype.parseClassPrivateProperty).call.apply(t,[this].concat(a));return this.getPluginOption("estree","classFeatures")?(this.castNodeTo(s,"PropertyDefinition"),s.computed=!1,s):s},r.parseClassAccessorProperty=function(t){var r=e.prototype.parseClassAccessorProperty.call(this,t);return this.getPluginOption("estree","classFeatures")?(r.abstract&&this.hasPlugin("typescript")?(delete r.abstract,this.castNodeTo(r,"TSAbstractAccessorProperty")):this.castNodeTo(r,"AccessorProperty"),r):r},r.parseObjectProperty=function(t,r,a,n){var s=e.prototype.parseObjectProperty.call(this,t,r,a,n);return s&&(s.kind="init",this.castNodeTo(s,"Property")),s},r.finishObjectProperty=function(e){return e.kind="init",this.finishNode(e,"Property")},r.isValidLVal=function(t,r,a,n){return"Property"===t?"value":e.prototype.isValidLVal.call(this,t,r,a,n)},r.isAssignable=function(t,r){return null!=t&&this.isObjectProperty(t)?this.isAssignable(t.value,r):e.prototype.isAssignable.call(this,t,r)},r.toAssignable=function(t,r){if(void 0===r&&(r=!1),null!=t&&this.isObjectProperty(t)){var a=t.key,n=t.value;this.isPrivateName(a)&&this.classScope.usePrivateName(this.getPrivateNameSV(a),a.loc.start),this.toAssignable(n,r)}else e.prototype.toAssignable.call(this,t,r)},r.toAssignableObjectExpressionProp=function(t,r,a){"Property"!==t.type||"get"!==t.kind&&"set"!==t.kind?"Property"===t.type&&t.method?this.raise(Rh.PatternHasMethod,t.key):e.prototype.toAssignableObjectExpressionProp.call(this,t,r,a):this.raise(Rh.PatternHasAccessor,t.key)},r.finishCallExpression=function(t,r){var a,n,s=e.prototype.finishCallExpression.call(this,t,r);"Import"===s.callee.type?(this.castNodeTo(s,"ImportExpression"),s.source=s.arguments[0],s.options=null!=(a=s.arguments[1])?a:null,s.attributes=null!=(n=s.arguments[1])?n:null,delete s.arguments,delete s.callee):"OptionalCallExpression"===s.type?this.castNodeTo(s,"CallExpression"):s.optional=!1;return s},r.toReferencedArguments=function(t){"ImportExpression"!==t.type&&e.prototype.toReferencedArguments.call(this,t)},r.parseExport=function(t,r){var a=this.state.lastTokStartLoc,n=e.prototype.parseExport.call(this,t,r);switch(n.type){case"ExportAllDeclaration":n.exported=null;break;case"ExportNamedDeclaration":1===n.specifiers.length&&"ExportNamespaceSpecifier"===n.specifiers[0].type&&(this.castNodeTo(n,"ExportAllDeclaration"),n.exported=n.specifiers[0].exported,delete n.specifiers);case"ExportDefaultDeclaration":var s,o=n.declaration;"ClassDeclaration"===(null==o?void 0:o.type)&&(null==(s=o.decorators)?void 0:s.length)>0&&o.start===n.start&&this.resetStartLocation(n,a)}return n},r.stopParseSubscript=function(t,r){var a=e.prototype.stopParseSubscript.call(this,t,r);return r.optionalChainMember?this.estreeParseChainExpression(a,t.loc.end):a},r.parseMember=function(t,r,a,n,s){var o=e.prototype.parseMember.call(this,t,r,a,n,s);return"OptionalMemberExpression"===o.type?this.castNodeTo(o,"MemberExpression"):o.optional=!1,o},r.isOptionalMemberExpression=function(t){return"ChainExpression"===t.type?"MemberExpression"===t.expression.type:e.prototype.isOptionalMemberExpression.call(this,t)},r.hasPropertyAsPrivateName=function(t){return"ChainExpression"===t.type&&(t=t.expression),e.prototype.hasPropertyAsPrivateName.call(this,t)},r.isObjectProperty=function(e){return"Property"===e.type&&"init"===e.kind&&!e.method},r.isObjectMethod=function(e){return"Property"===e.type&&(e.method||"get"===e.kind||"set"===e.kind)},r.castNodeTo=function(t,r){var a=e.prototype.castNodeTo.call(this,t,r);return this.fillOptionalPropertiesForTSESLint(a),a},r.cloneIdentifier=function(t){var r=e.prototype.cloneIdentifier.call(this,t);return this.fillOptionalPropertiesForTSESLint(r),r},r.cloneStringLiteral=function(t){return"Literal"===t.type?this.cloneEstreeStringLiteral(t):e.prototype.cloneStringLiteral.call(this,t)},r.finishNodeAt=function(t,r,a){return Fh(e.prototype.finishNodeAt.call(this,t,r,a))},r.finishNode=function(t,r){var a=e.prototype.finishNode.call(this,t,r);return this.fillOptionalPropertiesForTSESLint(a),a},r.resetStartLocation=function(t,r){e.prototype.resetStartLocation.call(this,t,r),Fh(t)},r.resetEndLocation=function(t,r){void 0===r&&(r=this.state.lastTokEndLoc),e.prototype.resetEndLocation.call(this,t,r),Fh(t)},o(t)}(e)},jsx:function(e){return function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.jsxReadToken=function(){for(var t="",r=this.state.pos;;){if(this.state.pos>=this.length)throw this.raise(Nv.UnterminatedJsxContent,this.state.startLoc);var a=this.input.charCodeAt(this.state.pos);switch(a){case 60:case 123:return this.state.pos===this.state.start?void(60===a&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):e.prototype.getTokenFromCode.call(this,a)):(t+=this.input.slice(r,this.state.pos),void this.finishToken(142,t));case 38:t+=this.input.slice(r,this.state.pos),t+=this.jsxReadEntity(),r=this.state.pos;break;default:kv(a)?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadNewLine(!0),r=this.state.pos):++this.state.pos}}},r.jsxReadNewLine=function(e){var t,r=this.input.charCodeAt(this.state.pos);return++this.state.pos,13===r&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,t=e?"\n":"\r\n"):t=String.fromCharCode(r),++this.state.curLine,this.state.lineStart=this.state.pos,t},r.jsxReadString=function(e){for(var t="",r=++this.state.pos;;){if(this.state.pos>=this.length)throw this.raise(Rh.UnterminatedString,this.state.startLoc);var a=this.input.charCodeAt(this.state.pos);if(a===e)break;38===a?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadEntity(),r=this.state.pos):kv(a)?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadNewLine(!1),r=this.state.pos):++this.state.pos}t+=this.input.slice(r,this.state.pos++),this.finishToken(134,t)},r.jsxReadEntity=function(){var e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;var t=10;120===this.codePointAtPos(this.state.pos)&&(t=16,++this.state.pos);var r=this.readInt(t,void 0,!1,"bail");if(null!==r&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(r)}else{for(var a=0,n=!1;a++<10&&this.state.pos<this.length&&!(n=59===this.codePointAtPos(this.state.pos));)++this.state.pos;if(n){var s=this.input.slice(e,this.state.pos),o=Pv[s];if(++this.state.pos,o)return o}}return this.state.pos=e,"&"},r.jsxReadWord=function(){var e,t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(Fr(e)||45===e);this.finishToken(141,this.input.slice(t,this.state.pos))},r.jsxParseIdentifier=function(){var e=this.startNode();return this.match(141)?e.name=this.state.value:ub(this.state.type)?e.name=fb(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")},r.jsxParseNamespacedName=function(){var e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;var r=this.startNodeAt(e);return r.namespace=t,r.name=this.jsxParseIdentifier(),this.finishNode(r,"JSXNamespacedName")},r.jsxParseElementName=function(){var e=this.state.startLoc,t=this.jsxParseNamespacedName();if("JSXNamespacedName"===t.type)return t;for(;this.eat(16);){var r=this.startNodeAt(e);r.object=t,r.property=this.jsxParseIdentifier(),t=this.finishNode(r,"JSXMemberExpression")}return t},r.jsxParseAttributeValue=function(){var e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(Uh.brace),this.next(),"JSXEmptyExpression"===(e=this.jsxParseExpressionContainer(e,Uh.j_oTag)).expression.type&&this.raise(Nv.AttributeIsEmpty,e),e;case 143:case 134:return this.parseExprAtom();default:throw this.raise(Nv.UnsupportedJsxValue,this.state.startLoc)}},r.jsxParseEmptyExpression=function(){var e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)},r.jsxParseSpreadChild=function(e){return this.next(),e.expression=this.parseExpression(),this.setContext(Uh.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")},r.jsxParseExpressionContainer=function(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{var r=this.parseExpression();e.expression=r}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")},r.jsxParseAttribute=function(){var e=this.startNode();return this.match(5)?(this.setContext(Uh.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(Uh.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))},r.jsxParseOpeningElementAt=function(e){var t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))},r.jsxParseOpeningElementAfterName=function(e){for(var t=[];!this.match(56)&&!this.match(144);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(144),this.finishNode(e,"JSXOpeningElement")},r.jsxParseClosingElementAt=function(e){var t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(144),this.finishNode(t,"JSXClosingElement"))},r.jsxParseElementAt=function(e){var t=this.startNodeAt(e),r=[],a=this.jsxParseOpeningElementAt(e),n=null;if(!a.selfClosing){e:for(;;)switch(this.state.type){case 143:if(e=this.state.startLoc,this.next(),this.eat(56)){n=this.jsxParseClosingElementAt(e);break e}r.push(this.jsxParseElementAt(e));break;case 142:r.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:var s=this.startNode();this.setContext(Uh.brace),this.next(),this.match(21)?r.push(this.jsxParseSpreadChild(s)):r.push(this.jsxParseExpressionContainer(s,Uh.j_expr));break;default:this.unexpected()}Bv(a)&&!Bv(n)&&null!==n?this.raise(Nv.MissingClosingTagFragment,n):!Bv(a)&&Bv(n)?this.raise(Nv.MissingClosingTagElement,n,{openingTagName:Mv(a.name)}):Bv(a)||Bv(n)||Mv(n.name)!==Mv(a.name)&&this.raise(Nv.MissingClosingTagElement,n,{openingTagName:Mv(a.name)})}if(Bv(a)?(t.openingFragment=a,t.closingFragment=n):(t.openingElement=a,t.closingElement=n),t.children=r,this.match(47))throw this.raise(Nv.UnwrappedAdjacentJSXElements,this.state.startLoc);return Bv(a)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")},r.jsxParseElement=function(){var e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)},r.setContext=function(e){var t=this.state.context;t[t.length-1]=e},r.parseExprAtom=function(t){return this.match(143)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(143),this.jsxParseElement()):e.prototype.parseExprAtom.call(this,t)},r.skipSpace=function(){this.curContext().preserveSpace||e.prototype.skipSpace.call(this)},r.getTokenFromCode=function(t){var r=this.curContext();if(r!==Uh.j_expr){if(r===Uh.j_oTag||r===Uh.j_cTag){if(Mr(t))return void this.jsxReadWord();if(62===t)return++this.state.pos,void this.finishToken(144);if((34===t||39===t)&&r===Uh.j_oTag)return void this.jsxReadString(t)}if(60===t&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1))return++this.state.pos,void this.finishToken(143);e.prototype.getTokenFromCode.call(this,t)}else this.jsxReadToken()},r.updateContext=function(e){var t=this.state,r=t.context,a=t.type;if(56===a&&143===e)r.splice(-2,2,Uh.j_cTag),this.state.canStartJSXElement=!1;else if(143===a)r.push(Uh.j_oTag);else if(144===a){var n=r[r.length-1];n===Uh.j_oTag&&56===e||n===Uh.j_cTag?(r.pop(),this.state.canStartJSXElement=r[r.length-1]===Uh.j_expr):(this.setContext(Uh.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=eb[a]},o(t)}(e)},flow:function(e){return function(e){function t(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return(t=e.call.apply(e,[this].concat(a))||this).flowPragma=void 0,t}c(t,e);var r=t.prototype;return r.getScopeHandler=function(){return Rv},r.shouldParseTypes=function(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma},r.finishToken=function(t,r){134!==t&&13!==t&&28!==t&&void 0===this.flowPragma&&(this.flowPragma=null),e.prototype.finishToken.call(this,t,r)},r.addComment=function(t){if(void 0===this.flowPragma){var r=Tv.exec(t.value);if(r)if("flow"===r[1])this.flowPragma="flow";else{if("noflow"!==r[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}else;}e.prototype.addComment.call(this,t)},r.flowParseTypeInitialiser=function(e){var t=this.state.inType;this.state.inType=!0,this.expect(e||14);var r=this.flowParseType();return this.state.inType=t,r},r.flowParsePredicate=function(){var t=this.startNode(),r=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>r.index+1&&this.raise(wv.UnexpectedSpaceBetweenModuloChecks,r),this.eat(10)?(t.value=e.prototype.parseExpression.call(this),this.expect(11),this.finishNode(t,"DeclaredPredicate")):this.finishNode(t,"InferredPredicate")},r.flowParseTypeAndPredicateInitialiser=function(){var e=this.state.inType;this.state.inType=!0,this.expect(14);var t=null,r=null;return this.match(54)?(this.state.inType=e,r=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(r=this.flowParsePredicate())),[t,r]},r.flowParseDeclareClass=function(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")},r.flowParseDeclareFunction=function(e){this.next();var t=e.id=this.parseIdentifier(),r=this.startNode(),a=this.startNode();this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,this.expect(10);var n=this.flowParseFunctionTypeParams();r.params=n.params,r.rest=n.rest,r.this=n._this,this.expect(11);var s=this.flowParseTypeAndPredicateInitialiser();return r.returnType=s[0],e.predicate=s[1],a.typeAnnotation=this.finishNode(r,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(a,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,iv,e.id.loc.start),this.finishNode(e,"DeclareFunction")},r.flowParseDeclare=function(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(wv.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);throw this.unexpected()},r.flowParseDeclareVariable=function(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,Jb,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")},r.flowParseDeclareModule=function(t){var r=this;this.scope.enter(vb),this.match(134)?t.id=e.prototype.parseExprAtom.call(this):t.id=this.parseIdentifier();var a=t.body=this.startNode(),n=a.body=[];for(this.expect(5);!this.match(8);){var s=this.startNode();this.match(83)?(this.next(),this.isContextual(130)||this.match(87)||this.raise(wv.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),n.push(e.prototype.parseImport.call(this,s))):(this.expectContextual(125,wv.UnsupportedStatementInDeclareModule),n.push(this.flowParseDeclare(s,!0)))}this.scope.exit(),this.expect(8),this.finishNode(a,"BlockStatement");var o=null,i=!1;return n.forEach(function(e){!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(i&&r.raise(wv.DuplicateDeclareModuleExports,e),"ES"===o&&r.raise(wv.AmbiguousDeclareModuleKind,e),o="CommonJS",i=!0):("CommonJS"===o&&r.raise(wv.AmbiguousDeclareModuleKind,e),o="ES")}),t.kind=o||"CommonJS",this.finishNode(t,"DeclareModule")},r.flowParseDeclareExportDeclaration=function(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!t){var r=this.state.value;throw this.raise(wv.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:r,suggestion:Sv[r]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return"ExportNamedDeclaration"===(e=this.parseExport(e,null)).type?(e.default=!1,delete e.exportKind,this.castNodeTo(e,"DeclareExportDeclaration")):this.castNodeTo(e,"DeclareExportAllDeclaration");throw this.unexpected()},r.flowParseDeclareModuleExports=function(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")},r.flowParseDeclareTypeAlias=function(e){this.next();var t=this.flowParseTypeAlias(e);return this.castNodeTo(t,"DeclareTypeAlias"),t},r.flowParseDeclareOpaqueType=function(e){this.next();var t=this.flowParseOpaqueType(e,!0);return this.castNodeTo(t,"DeclareOpaqueType"),t},r.flowParseDeclareInterface=function(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")},r.flowParseInterfaceish=function(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?Yb:Kb,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(117))do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12));if(this.eatContextual(113))do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})},r.flowParseInterfaceExtends=function(){var e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")},r.flowParseInterface=function(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")},r.checkNotUnderscore=function(e){"_"===e&&this.raise(wv.UnexpectedReservedUnderscore,this.state.startLoc)},r.checkReservedType=function(e,t,r){jv.has(e)&&this.raise(r?wv.AssignReservedType:wv.UnexpectedReservedType,t,{reservedType:e})},r.flowParseRestrictedIdentifier=function(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)},r.flowParseTypeAlias=function(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,Kb,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")},r.flowParseOpaqueType=function(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,Kb,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")},r.flowParseTypeParameter=function(e){void 0===e&&(e=!1);var t=this.state.startLoc,r=this.startNode(),a=this.flowParseVariance(),n=this.flowParseTypeAnnotatableIdentifier();return r.name=n.name,r.variance=a,r.bound=n.typeAnnotation,this.match(29)?(this.eat(29),r.default=this.flowParseType()):e&&this.raise(wv.MissingTypeParamDefault,t),this.finishNode(r,"TypeParameter")},r.flowParseTypeParameterDeclaration=function(){var e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();var r=!1;do{var a=this.flowParseTypeParameter(r);t.params.push(a),a.default&&(r=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")},r.flowInTopLevelContext=function(e){if(this.curContext()===Uh.brace)return e();var t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}},r.flowParseTypeParameterInstantiationInExpression=function(){if(47===this.reScan_lt())return this.flowParseTypeParameterInstantiation()},r.flowParseTypeParameterInstantiation=function(){var e=this,t=this.startNode(),r=this.state.inType;return this.state.inType=!0,t.params=[],this.flowInTopLevelContext(function(){e.expect(47);var r=e.state.noAnonFunctionType;for(e.state.noAnonFunctionType=!1;!e.match(48);)t.params.push(e.flowParseType()),e.match(48)||e.expect(12);e.state.noAnonFunctionType=r}),this.state.inType=r,this.state.inType||this.curContext()!==Uh.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(t,"TypeParameterInstantiation")},r.flowParseTypeParameterInstantiationCallOrNew=function(){if(47!==this.reScan_lt())return null;var e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")},r.flowParseInterfaceType=function(){var e=this.startNode();if(this.expectContextual(129),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")},r.flowParseObjectPropertyKey=function(){return this.match(135)||this.match(134)?e.prototype.parseExprAtom.call(this):this.parseIdentifier(!0)},r.flowParseObjectTypeIndexer=function(e,t,r){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=r,this.finishNode(e,"ObjectTypeIndexer")},r.flowParseObjectTypeInternalSlot=function(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")},r.flowParseObjectTypeMethodish=function(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")},r.flowParseObjectTypeCallProperty=function(e,t){var r=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(r),this.finishNode(e,"ObjectTypeCallProperty")},r.flowParseObjectType=function(e){var t=e.allowStatic,r=e.allowExact,a=e.allowSpread,n=e.allowProto,s=e.allowInexact,o=this.state.inType;this.state.inType=!0;var i,d,c=this.startNode();c.callProperties=[],c.properties=[],c.indexers=[],c.internalSlots=[];var l=!1;for(r&&this.match(6)?(this.expect(6),i=9,d=!0):(this.expect(5),i=8,d=!1),c.exact=d;!this.match(i);){var u=!1,p=null,f=null,g=this.startNode();if(n&&this.isContextual(118)){var m=this.lookahead();14!==m.type&&17!==m.type&&(this.next(),p=this.state.startLoc,t=!1)}if(t&&this.isContextual(106)){var y=this.lookahead();14!==y.type&&17!==y.type&&(this.next(),u=!0)}var h=this.flowParseVariance();if(this.eat(0))null!=p&&this.unexpected(p),this.eat(0)?(h&&this.unexpected(h.loc.start),c.internalSlots.push(this.flowParseObjectTypeInternalSlot(g,u))):c.indexers.push(this.flowParseObjectTypeIndexer(g,u,h));else if(this.match(10)||this.match(47))null!=p&&this.unexpected(p),h&&this.unexpected(h.loc.start),c.callProperties.push(this.flowParseObjectTypeCallProperty(g,u));else{var b="init";if(this.isContextual(99)||this.isContextual(104))db(this.lookahead().type)&&(b=this.state.value,this.next());var v=this.flowParseObjectTypeProperty(g,u,p,h,b,a,null!=s?s:!d);null===v?(l=!0,f=this.state.lastTokStartLoc):c.properties.push(v)}this.flowObjectTypeSemicolon(),!f||this.match(8)||this.match(9)||this.raise(wv.UnexpectedExplicitInexactInObject,f)}this.expect(i),a&&(c.inexact=l);var x=this.finishNode(c,"ObjectTypeAnnotation");return this.state.inType=o,x},r.flowParseObjectTypeProperty=function(e,t,r,a,n,s,o){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(s?o||this.raise(wv.InexactInsideExact,this.state.lastTokStartLoc):this.raise(wv.InexactInsideNonObject,this.state.lastTokStartLoc),a&&this.raise(wv.InexactVariance,a),null):(s||this.raise(wv.UnexpectedSpreadType,this.state.lastTokStartLoc),null!=r&&this.unexpected(r),a&&this.raise(wv.SpreadVariance,a),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=r,e.kind=n;var i=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=r&&this.unexpected(r),a&&this.unexpected(a.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),"get"!==n&&"set"!==n||this.flowCheckGetterSetterParams(e),!s&&"constructor"===e.key.name&&e.value.this&&this.raise(wv.ThisParamBannedInConstructor,e.value.this)):("init"!==n&&this.unexpected(),e.method=!1,this.eat(17)&&(i=!0),e.value=this.flowParseTypeInitialiser(),e.variance=a),e.optional=i,this.finishNode(e,"ObjectTypeProperty")},r.flowCheckGetterSetterParams=function(e){var t="get"===e.kind?0:1,r=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?wv.GetterMayNotHaveThisParam:wv.SetterMayNotHaveThisParam,e.value.this),r!==t&&this.raise("get"===e.kind?Rh.BadGetterArity:Rh.BadSetterArity,e),"set"===e.kind&&e.value.rest&&this.raise(Rh.BadSetterRestParameter,e)},r.flowObjectTypeSemicolon=function(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()},r.flowParseQualifiedTypeIdentifier=function(e,t){null!=e||(e=this.state.startLoc);for(var r=t||this.flowParseRestrictedIdentifier(!0);this.eat(16);){var a=this.startNodeAt(e);a.qualification=r,a.id=this.flowParseRestrictedIdentifier(!0),r=this.finishNode(a,"QualifiedTypeIdentifier")}return r},r.flowParseGenericType=function(e,t){var r=this.startNodeAt(e);return r.typeParameters=null,r.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(r,"GenericTypeAnnotation")},r.flowParseTypeofType=function(){var e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")},r.flowParseTupleType=function(){var e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")},r.flowParseFunctionTypeParam=function(e){var t=null,r=!1,a=null,n=this.startNode(),s=this.lookahead(),o=78===this.state.type;return 14===s.type||17===s.type?(o&&!e&&this.raise(wv.ThisParamMustBeFirst,n),t=this.parseIdentifier(o),this.eat(17)&&(r=!0,o&&this.raise(wv.ThisParamMayNotBeOptional,n)),a=this.flowParseTypeInitialiser()):a=this.flowParseType(),n.name=t,n.optional=r,n.typeAnnotation=a,this.finishNode(n,"FunctionTypeParam")},r.reinterpretTypeAsFunctionTypeParam=function(e){var t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")},r.flowParseFunctionTypeParams=function(e){void 0===e&&(e=[]);var t=null,r=null;for(this.match(78)&&((r=this.flowParseFunctionTypeParam(!0)).name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:r}},r.flowIdentToTypeAnnotation=function(e,t,r){switch(r.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(r.name),this.flowParseGenericType(e,r)}},r.flowParsePrimaryType=function(){var t,r,a=this.state.startLoc,n=this.startNode(),s=!1,o=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,r=this.flowParseTupleType(),this.state.noAnonFunctionType=o,r;case 47:var i=this.startNode();return i.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),t=this.flowParseFunctionTypeParams(),i.params=t.params,i.rest=t.rest,i.this=t._this,this.expect(11),this.expect(19),i.returnType=this.flowParseType(),this.finishNode(i,"FunctionTypeAnnotation");case 10:var d=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(ob(this.state.type)||this.match(78)){var c=this.lookahead().type;s=17!==c&&14!==c}else s=!0;if(s){if(this.state.noAnonFunctionType=!1,r=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),r;this.eat(12)}return t=r?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(r)]):this.flowParseFunctionTypeParams(),d.params=t.params,d.rest=t.rest,d.this=t._this,this.expect(11),this.expect(19),d.returnType=this.flowParseType(),d.typeParameters=null,this.finishNode(d,"FunctionTypeAnnotation");case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return n.value=this.match(85),this.next(),this.finishNode(n,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",n);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",n);throw this.raise(wv.UnexpectedSubtractionOperand,this.state.startLoc)}throw this.unexpected();case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(n,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(n,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(n,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(n,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(ub(this.state.type)){var l=fb(this.state.type);return this.next(),e.prototype.createIdentifier.call(this,n,l)}if(ob(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(a,n,this.parseIdentifier())}throw this.unexpected()},r.flowParsePostfixType=function(){for(var e=this.state.startLoc,t=this.flowParsePrimaryType(),r=!1;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){var a=this.startNodeAt(e),n=this.eat(18);r=r||n,this.expect(0),!n&&this.match(3)?(a.elementType=t,this.next(),t=this.finishNode(a,"ArrayTypeAnnotation")):(a.objectType=t,a.indexType=this.flowParseType(),this.expect(3),r?(a.optional=n,t=this.finishNode(a,"OptionalIndexedAccessType")):t=this.finishNode(a,"IndexedAccessType"))}return t},r.flowParsePrefixType=function(){var e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()},r.flowParseAnonFunctionWithoutParens=function(){var e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){var t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e},r.flowParseIntersectionType=function(){var e=this.startNode();this.eat(45);var t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")},r.flowParseUnionType=function(){var e=this.startNode();this.eat(43);var t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")},r.flowParseType=function(){var e=this.state.inType;this.state.inType=!0;var t=this.flowParseUnionType();return this.state.inType=e,t},r.flowParseTypeOrImplicitInstantiation=function(){if(132===this.state.type&&"_"===this.state.value){var e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()},r.flowParseTypeAnnotation=function(){var e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")},r.flowParseTypeAnnotatableIdentifier=function(e){var t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t},r.typeCastToParameter=function(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression},r.flowParseVariance=function(){var e=null;return this.match(53)?(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e},r.parseFunctionBody=function(t,r,a){var n=this;void 0===a&&(a=!1),r?this.forwardNoArrowParamsConversionAt(t,function(){return e.prototype.parseFunctionBody.call(n,t,!0,a)}):e.prototype.parseFunctionBody.call(this,t,!1,a)},r.parseFunctionBodyAndFinish=function(t,r,a){if(void 0===a&&(a=!1),this.match(14)){var n=this.startNode(),s=this.flowParseTypeAndPredicateInitialiser();n.typeAnnotation=s[0],t.predicate=s[1],t.returnType=n.typeAnnotation?this.finishNode(n,"TypeAnnotation"):null}return e.prototype.parseFunctionBodyAndFinish.call(this,t,r,a)},r.parseStatementLike=function(t){if(this.state.strict&&this.isContextual(129)){if(ib(this.lookahead().type)){var r=this.startNode();return this.next(),this.flowParseInterface(r)}}else if(this.isContextual(126)){var a=this.startNode();return this.next(),this.flowParseEnumDeclaration(a)}var n=e.prototype.parseStatementLike.call(this,t);return void 0!==this.flowPragma||this.isValidDirective(n)||(this.flowPragma=null),n},r.parseExpressionStatement=function(t,r,a){if("Identifier"===r.type)if("declare"===r.name){if(this.match(80)||ob(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(t)}else if(ob(this.state.type)){if("interface"===r.name)return this.flowParseInterface(t);if("type"===r.name)return this.flowParseTypeAlias(t);if("opaque"===r.name)return this.flowParseOpaqueType(t,!1)}return e.prototype.parseExpressionStatement.call(this,t,r,a)},r.shouldParseExportDeclaration=function(){var t=this.state.type;return 126===t||lb(t)?!this.state.containsEsc:e.prototype.shouldParseExportDeclaration.call(this)},r.isExportDefaultSpecifier=function(){var t=this.state.type;return 126===t||lb(t)?this.state.containsEsc:e.prototype.isExportDefaultSpecifier.call(this)},r.parseExportDefaultExpression=function(){if(this.isContextual(126)){var t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return e.prototype.parseExportDefaultExpression.call(this)},r.parseConditional=function(e,t,r){var a=this;if(!this.match(17))return e;if(this.state.maybeInArrowParameters){var n=this.lookaheadCharCode();if(44===n||61===n||58===n||41===n)return this.setOptionalParametersError(r),e}this.expect(17);var s=this.state.clone(),o=this.state.noArrowAt,i=this.startNodeAt(t),d=this.tryParseConditionalConsequent(),c=d.consequent,l=d.failed,u=this.getArrowLikeExpressions(c),p=u[0],f=u[1];if(l||f.length>0){var g=[].concat(o);if(f.length>0){this.state=s,this.state.noArrowAt=g;for(var m=0;m<f.length;m++)g.push(f[m].start);var y=this.tryParseConditionalConsequent();c=y.consequent,l=y.failed;var h=this.getArrowLikeExpressions(c);p=h[0],f=h[1]}if(l&&p.length>1&&this.raise(wv.AmbiguousConditionalArrow,s.startLoc),l&&1===p.length){this.state=s,g.push(p[0].start),this.state.noArrowAt=g;var b=this.tryParseConditionalConsequent();c=b.consequent,l=b.failed}}return this.getArrowLikeExpressions(c,!0),this.state.noArrowAt=o,this.expect(14),i.test=e,i.consequent=c,i.alternate=this.forwardNoArrowParamsConversionAt(i,function(){return a.parseMaybeAssign(void 0,void 0)}),this.finishNode(i,"ConditionalExpression")},r.tryParseConditionalConsequent=function(){this.state.noArrowParamsConversionAt.push(this.state.start);var e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}},r.getArrowLikeExpressions=function(e,t){for(var r=this,a=[e],n=[];0!==a.length;){var s=a.pop();"ArrowFunctionExpression"===s.type&&"BlockStatement"!==s.body.type?(s.typeParameters||!s.returnType?this.finishArrowValidation(s):n.push(s),a.push(s.body)):"ConditionalExpression"===s.type&&(a.push(s.consequent),a.push(s.alternate))}return t?(n.forEach(function(e){return r.finishArrowValidation(e)}),[n,[]]):function(e,t){for(var r=[],a=[],n=0;n<e.length;n++)(t(e[n],n,e)?r:a).push(e[n]);return[r,a]}(n,function(e){return e.params.every(function(e){return r.isAssignable(e,!0)})})},r.finishArrowValidation=function(t){var r;this.toAssignableList(t.params,null==(r=t.extra)?void 0:r.trailingCommaLoc,!1),this.scope.enter(_b|jb),e.prototype.checkParams.call(this,t,!1,!0),this.scope.exit()},r.forwardNoArrowParamsConversionAt=function(e,t){var r;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),r=t(),this.state.noArrowParamsConversionAt.pop()):r=t(),r},r.parseParenItem=function(t,r){var a=e.prototype.parseParenItem.call(this,t,r);if(this.eat(17)&&(a.optional=!0,this.resetEndLocation(t)),this.match(14)){var n=this.startNodeAt(r);return n.expression=a,n.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(n,"TypeCastExpression")}return a},r.assertModuleNodeAllowed=function(t){"ImportDeclaration"===t.type&&("type"===t.importKind||"typeof"===t.importKind)||"ExportNamedDeclaration"===t.type&&"type"===t.exportKind||"ExportAllDeclaration"===t.type&&"type"===t.exportKind||e.prototype.assertModuleNodeAllowed.call(this,t)},r.parseExportDeclaration=function(t){if(this.isContextual(130)){t.exportKind="type";var r=this.startNode();return this.next(),this.match(5)?(t.specifiers=this.parseExportSpecifiers(!0),e.prototype.parseExportFrom.call(this,t),null):this.flowParseTypeAlias(r)}if(this.isContextual(131)){t.exportKind="type";var a=this.startNode();return this.next(),this.flowParseOpaqueType(a,!1)}if(this.isContextual(129)){t.exportKind="type";var n=this.startNode();return this.next(),this.flowParseInterface(n)}if(this.isContextual(126)){t.exportKind="value";var s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}return e.prototype.parseExportDeclaration.call(this,t)},r.eatExportStar=function(t){return!!e.prototype.eatExportStar.call(this,t)||!(!this.isContextual(130)||55!==this.lookahead().type)&&(t.exportKind="type",this.next(),this.next(),!0)},r.maybeParseExportNamespaceSpecifier=function(t){var r=this.state.startLoc,a=e.prototype.maybeParseExportNamespaceSpecifier.call(this,t);return a&&"type"===t.exportKind&&this.unexpected(r),a},r.parseClassId=function(t,r,a){e.prototype.parseClassId.call(this,t,r,a),this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration())},r.parseClassMember=function(t,r,a){var n=this.state.startLoc;if(this.isContextual(125)){if(e.prototype.parseClassMemberFromModifier.call(this,t,r))return;r.declare=!0}e.prototype.parseClassMember.call(this,t,r,a),r.declare&&("ClassProperty"!==r.type&&"ClassPrivateProperty"!==r.type&&"PropertyDefinition"!==r.type?this.raise(wv.DeclareClassElement,n):r.value&&this.raise(wv.DeclareClassFieldInitializer,r.value))},r.isIterator=function(e){return"iterator"===e||"asyncIterator"===e},r.readIterator=function(){var t=e.prototype.readWord1.call(this),r="@@"+t;this.isIterator(t)&&this.state.inType||this.raise(Rh.InvalidIdentifier,this.state.curPosition(),{identifierName:r}),this.finishToken(132,r)},r.getTokenFromCode=function(t){var r=this.input.charCodeAt(this.state.pos+1);123===t&&124===r?this.finishOp(6,2):!this.state.inType||62!==t&&60!==t?this.state.inType&&63===t?46===r?this.finishOp(18,2):this.finishOp(17,1):!function(e,t,r){return 64===e&&64===t&&Mr(r)}(t,r,this.input.charCodeAt(this.state.pos+2))?e.prototype.getTokenFromCode.call(this,t):(this.state.pos+=2,this.readIterator()):this.finishOp(62===t?48:47,1)},r.isAssignable=function(t,r){return"TypeCastExpression"===t.type?this.isAssignable(t.expression,r):e.prototype.isAssignable.call(this,t,r)},r.toAssignable=function(t,r){void 0===r&&(r=!1),r||"AssignmentExpression"!==t.type||"TypeCastExpression"!==t.left.type||(t.left=this.typeCastToParameter(t.left)),e.prototype.toAssignable.call(this,t,r)},r.toAssignableList=function(t,r,a){for(var n=0;n<t.length;n++){var s=t[n];"TypeCastExpression"===(null==s?void 0:s.type)&&(t[n]=this.typeCastToParameter(s))}e.prototype.toAssignableList.call(this,t,r,a)},r.toReferencedList=function(e,t){for(var r=0;r<e.length;r++){var a,n=e[r];!n||"TypeCastExpression"!==n.type||null!=(a=n.extra)&&a.parenthesized||!(e.length>1)&&t||this.raise(wv.TypeCastInPattern,n.typeAnnotation)}return e},r.parseArrayLike=function(t,r,a){var n=e.prototype.parseArrayLike.call(this,t,r,a);return null==a||this.state.maybeInArrowParameters||this.toReferencedList(n.elements),n},r.isValidLVal=function(t,r,a,n){return"TypeCastExpression"===t||e.prototype.isValidLVal.call(this,t,r,a,n)},r.parseClassProperty=function(t){return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation()),e.prototype.parseClassProperty.call(this,t)},r.parseClassPrivateProperty=function(t){return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation()),e.prototype.parseClassPrivateProperty.call(this,t)},r.isClassMethod=function(){return this.match(47)||e.prototype.isClassMethod.call(this)},r.isClassProperty=function(){return this.match(14)||e.prototype.isClassProperty.call(this)},r.isNonstaticConstructor=function(t){return!this.match(14)&&e.prototype.isNonstaticConstructor.call(this,t)},r.pushClassMethod=function(t,r,a,n,s,o){if(r.variance&&this.unexpected(r.variance.loc.start),delete r.variance,this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),e.prototype.pushClassMethod.call(this,t,r,a,n,s,o),r.params&&s){var i=r.params;i.length>0&&this.isThisParam(i[0])&&this.raise(wv.ThisParamBannedInConstructor,r)}else if("MethodDefinition"===r.type&&s&&r.value.params){var d=r.value.params;d.length>0&&this.isThisParam(d[0])&&this.raise(wv.ThisParamBannedInConstructor,r)}},r.pushClassPrivateMethod=function(t,r,a,n){r.variance&&this.unexpected(r.variance.loc.start),delete r.variance,this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),e.prototype.pushClassPrivateMethod.call(this,t,r,a,n)},r.parseClassSuper=function(t){if(e.prototype.parseClassSuper.call(this,t),t.superClass&&(this.match(47)||this.match(51))&&(t.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();var r=t.implements=[];do{var a=this.startNode();a.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?a.typeParameters=this.flowParseTypeParameterInstantiation():a.typeParameters=null,r.push(this.finishNode(a,"ClassImplements"))}while(this.eat(12))}},r.checkGetterSetterParams=function(t){e.prototype.checkGetterSetterParams.call(this,t);var r=this.getObjectOrClassMethodParams(t);if(r.length>0){var a=r[0];this.isThisParam(a)&&"get"===t.kind?this.raise(wv.GetterMayNotHaveThisParam,a):this.isThisParam(a)&&this.raise(wv.SetterMayNotHaveThisParam,a)}},r.parsePropertyNamePrefixOperator=function(e){e.variance=this.flowParseVariance()},r.parseObjPropValue=function(t,r,a,n,s,o,i){var d;t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&!o&&(d=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());var c=e.prototype.parseObjPropValue.call(this,t,r,a,n,s,o,i);return d&&((c.value||c).typeParameters=d),c},r.parseFunctionParamType=function(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(wv.PatternIsOptional,e),this.isThisParam(e)&&this.raise(wv.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(wv.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(wv.ThisParamNoDefault,e),this.resetEndLocation(e),e},r.parseMaybeDefault=function(t,r){var a=e.prototype.parseMaybeDefault.call(this,t,r);return"AssignmentPattern"===a.type&&a.typeAnnotation&&a.right.start<a.typeAnnotation.start&&this.raise(wv.TypeBeforeInitializer,a.typeAnnotation),a},r.checkImportReflection=function(t){e.prototype.checkImportReflection.call(this,t),t.module&&"value"!==t.importKind&&this.raise(wv.ImportReflectionHasImportType,t.specifiers[0].loc.start)},r.parseImportSpecifierLocal=function(e,t,r){t.local=Ev(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))},r.isPotentialImportPhase=function(t){if(e.prototype.isPotentialImportPhase.call(this,t))return!0;if(this.isContextual(130)){if(!t)return!0;var r=this.lookaheadCharCode();return 123===r||42===r}return!t&&this.isContextual(87)},r.applyImportPhase=function(t,r,a,n){if(e.prototype.applyImportPhase.call(this,t,r,a,n),r){if(!a&&this.match(65))return;t.exportKind="type"===a?a:"value"}else"type"===a&&this.match(55)&&this.unexpected(),t.importKind="type"===a||"typeof"===a?a:"value"},r.parseImportSpecifier=function(e,t,r,a,n){var s=e.imported,o=null;"Identifier"===s.type&&("type"===s.name?o="type":"typeof"===s.name&&(o="typeof"));var i=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){var d=this.parseIdentifier(!0);null===o||ib(this.state.type)?(e.imported=s,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=d,e.importKind=o,e.local=this.cloneIdentifier(d))}else{if(null!==o&&ib(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=o;else{if(t)throw this.raise(Rh.ImportBindingIsString,e,{importName:s.value});e.imported=s,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(i=!0,e.local=this.cloneIdentifier(e.imported))}var c=Ev(e);return r&&c&&this.raise(wv.ImportTypeShorthandOnlyInPureImport,e),(r||c)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),!i||r||c||this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")},r.parseBindingAtom=function(){return 78===this.state.type?this.parseIdentifier(!0):e.prototype.parseBindingAtom.call(this)},r.parseFunctionParams=function(t,r){var a=t.kind;"get"!==a&&"set"!==a&&this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),e.prototype.parseFunctionParams.call(this,t,r)},r.parseVarId=function(t,r){e.prototype.parseVarId.call(this,t,r),this.match(14)&&(t.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t.id))},r.parseAsyncArrowFromCallExpression=function(t,r){if(this.match(14)){var a=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,t.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=a}return e.prototype.parseAsyncArrowFromCallExpression.call(this,t,r)},r.shouldParseAsyncArrow=function(){return this.match(14)||e.prototype.shouldParseAsyncArrow.call(this)},r.parseMaybeAssign=function(t,r){var a,n,s=this,o=null;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(o=this.state.clone(),!(n=this.tryParse(function(){return e.prototype.parseMaybeAssign.call(s,t,r)},o)).error)return n.node;var i=this.state.context,d=i[i.length-1];d!==Uh.j_oTag&&d!==Uh.j_expr||i.pop()}if(null!=(a=n)&&a.error||this.match(47)){var c,l,u;o=o||this.state.clone();var p=this.tryParse(function(a){var n;u=s.flowParseTypeParameterDeclaration();var o=s.forwardNoArrowParamsConversionAt(u,function(){var a=e.prototype.parseMaybeAssign.call(s,t,r);return s.resetStartLocationFromNode(a,u),a});null!=(n=o.extra)&&n.parenthesized&&a();var i=s.maybeUnwrapTypeCastExpression(o);return"ArrowFunctionExpression"!==i.type&&a(),i.typeParameters=u,s.resetStartLocationFromNode(i,u),o},o),f=null;if(p.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(p.node).type){if(!p.error&&!p.aborted)return p.node.async&&this.raise(wv.UnexpectedTypeParameterBeforeAsyncArrowFunction,u),p.node;f=p.node}if(null!=(c=n)&&c.node)return this.state=n.failState,n.node;if(f)return this.state=p.failState,f;if(null!=(l=n)&&l.thrown)throw n.error;if(p.thrown)throw p.error;throw this.raise(wv.UnexpectedTokenAfterTypeParameter,u)}return e.prototype.parseMaybeAssign.call(this,t,r)},r.parseArrow=function(t){var r=this;if(this.match(14)){var a=this.tryParse(function(){var e=r.state.noAnonFunctionType;r.state.noAnonFunctionType=!0;var a=r.startNode(),n=r.flowParseTypeAndPredicateInitialiser();return a.typeAnnotation=n[0],t.predicate=n[1],r.state.noAnonFunctionType=e,r.canInsertSemicolon()&&r.unexpected(),r.match(19)||r.unexpected(),a});if(a.thrown)return null;a.error&&(this.state=a.failState),t.returnType=a.node.typeAnnotation?this.finishNode(a.node,"TypeAnnotation"):null}return e.prototype.parseArrow.call(this,t)},r.shouldParseArrow=function(t){return this.match(14)||e.prototype.shouldParseArrow.call(this,t)},r.setArrowFunctionParameters=function(t,r){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(t.start))?t.params=r:e.prototype.setArrowFunctionParameters.call(this,t,r)},r.checkParams=function(t,r,a,n){if(void 0===n&&(n=!0),!a||!this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(t.start))){for(var s=0;s<t.params.length;s++)this.isThisParam(t.params[s])&&s>0&&this.raise(wv.ThisParamMustBeFirst,t.params[s]);e.prototype.checkParams.call(this,t,r,a,n)}},r.parseParenAndDistinguishExpression=function(t){return e.prototype.parseParenAndDistinguishExpression.call(this,t&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))},r.parseSubscripts=function(t,r,a){var n=this;if("Identifier"===t.type&&"async"===t.name&&this.state.noArrowAt.includes(r.index)){this.next();var s=this.startNodeAt(r);s.callee=t,s.arguments=e.prototype.parseCallExpressionArguments.call(this),t=this.finishNode(s,"CallExpression")}else if("Identifier"===t.type&&"async"===t.name&&this.match(47)){var o=this.state.clone(),i=this.tryParse(function(e){return n.parseAsyncArrowWithTypeParameters(r)||e()},o);if(!i.error&&!i.aborted)return i.node;var d=this.tryParse(function(){return e.prototype.parseSubscripts.call(n,t,r,a)},o);if(d.node&&!d.error)return d.node;if(i.node)return this.state=i.failState,i.node;if(d.node)return this.state=d.failState,d.node;throw i.error||d.error}return e.prototype.parseSubscripts.call(this,t,r,a)},r.parseSubscript=function(t,r,a,n){var s=this;if(this.match(18)&&this.isLookaheadToken_lt()){if(n.optionalChainMember=!0,a)return n.stop=!0,t;this.next();var o=this.startNodeAt(r);return o.callee=t,o.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),o.arguments=this.parseCallExpressionArguments(),o.optional=!0,this.finishCallExpression(o,!0)}if(!a&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){var i=this.startNodeAt(r);i.callee=t;var d=this.tryParse(function(){return i.typeArguments=s.flowParseTypeParameterInstantiationCallOrNew(),s.expect(10),i.arguments=e.prototype.parseCallExpressionArguments.call(s),n.optionalChainMember&&(i.optional=!1),s.finishCallExpression(i,n.optionalChainMember)});if(d.node)return d.error&&(this.state=d.failState),d.node}return e.prototype.parseSubscript.call(this,t,r,a,n)},r.parseNewCallee=function(t){var r=this;e.prototype.parseNewCallee.call(this,t);var a=null;this.shouldParseTypes()&&this.match(47)&&(a=this.tryParse(function(){return r.flowParseTypeParameterInstantiationCallOrNew()}).node),t.typeArguments=a},r.parseAsyncArrowWithTypeParameters=function(t){var r=this.startNodeAt(t);if(this.parseFunctionParams(r,!1),this.parseArrow(r))return e.prototype.parseArrowExpression.call(this,r,void 0,!0)},r.readToken_mult_modulo=function(t){var r=this.input.charCodeAt(this.state.pos+1);if(42===t&&47===r&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();e.prototype.readToken_mult_modulo.call(this,t)},r.readToken_pipe_amp=function(t){var r=this.input.charCodeAt(this.state.pos+1);124!==t||125!==r?e.prototype.readToken_pipe_amp.call(this,t):this.finishOp(9,2)},r.parseTopLevel=function(t,r){var a=e.prototype.parseTopLevel.call(this,t,r);return this.state.hasFlowComment&&this.raise(wv.UnterminatedFlowComment,this.state.curPosition()),a},r.skipBlockComment=function(){if(!this.hasPlugin("flowComments")||!this.skipFlowComment())return e.prototype.skipBlockComment.call(this,this.state.hasFlowComment?"*-/":"*/");if(this.state.hasFlowComment)throw this.raise(wv.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();var t=this.skipFlowComment();t&&(this.state.pos+=t,this.state.hasFlowComment=!0)},r.skipFlowComment=function(){for(var e=this.state.pos,t=2;[32,9].includes(this.input.charCodeAt(e+t));)t++;var r=this.input.charCodeAt(t+e),a=this.input.charCodeAt(t+e+1);return 58===r&&58===a?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===r&&58!==a&&t},r.hasFlowCommentCompletion=function(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(Rh.UnterminatedComment,this.state.curPosition())},r.flowEnumErrorBooleanMemberNotInitialized=function(e,t){var r=t.enumName,a=t.memberName;this.raise(wv.EnumBooleanMemberNotInitialized,e,{memberName:a,enumName:r})},r.flowEnumErrorInvalidMemberInitializer=function(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?wv.EnumInvalidMemberInitializerSymbolType:wv.EnumInvalidMemberInitializerPrimaryType:wv.EnumInvalidMemberInitializerUnknownType,e,t)},r.flowEnumErrorNumberMemberNotInitialized=function(e,t){this.raise(wv.EnumNumberMemberNotInitialized,e,t)},r.flowEnumErrorStringMemberInconsistentlyInitialized=function(e,t){this.raise(wv.EnumStringMemberInconsistentlyInitialized,e,t)},r.flowEnumMemberInit=function(){var e=this,t=this.state.startLoc,r=function(){return e.match(12)||e.match(8)};switch(this.state.type){case 135:var a=this.parseNumericLiteral(this.state.value);return r()?{type:"number",loc:a.loc.start,value:a}:{type:"invalid",loc:t};case 134:var n=this.parseStringLiteral(this.state.value);return r()?{type:"string",loc:n.loc.start,value:n}:{type:"invalid",loc:t};case 85:case 86:var s=this.parseBooleanLiteral(this.match(85));return r()?{type:"boolean",loc:s.loc.start,value:s}:{type:"invalid",loc:t};default:return{type:"invalid",loc:t}}},r.flowEnumMemberRaw=function(){var e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}},r.flowEnumCheckExplicitTypeMismatch=function(e,t,r){var a=t.explicitType;null!==a&&a!==r&&this.flowEnumErrorInvalidMemberInitializer(e,t)},r.flowEnumMembers=function(e){for(var t=e.enumName,r=e.explicitType,a=new Set,n={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},s=!1;!this.match(8);){if(this.eat(21)){s=!0;break}var o=this.startNode(),i=this.flowEnumMemberRaw(),d=i.id,c=i.init,l=d.name;if(""!==l){/^[a-z]/.test(l)&&this.raise(wv.EnumInvalidMemberName,d,{memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:t}),a.has(l)&&this.raise(wv.EnumDuplicateMemberName,d,{memberName:l,enumName:t}),a.add(l);var u={enumName:t,explicitType:r,memberName:l};switch(o.id=d,c.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"boolean"),o.init=c.value,n.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"number"),o.init=c.value,n.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(c.loc,u,"string"),o.init=c.value,n.stringMembers.push(this.finishNode(o,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(c.loc,u);case"none":switch(r){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(c.loc,u);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(c.loc,u);break;default:n.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}}return{members:n,hasUnknownMembers:s}},r.flowEnumStringMembers=function(e,t,r){var a=r.enumName;if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(var n=0;n<e.length;n++){var s=e[n];this.flowEnumErrorStringMemberInconsistentlyInitialized(s,{enumName:a})}return t}for(var o=0;o<t.length;o++){var i=t[o];this.flowEnumErrorStringMemberInconsistentlyInitialized(i,{enumName:a})}return e},r.flowEnumParseExplicitType=function(e){var t=e.enumName;if(!this.eatContextual(102))return null;if(!ob(this.state.type))throw this.raise(wv.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:t});var r=this.state.value;return this.next(),"boolean"!==r&&"number"!==r&&"string"!==r&&"symbol"!==r&&this.raise(wv.EnumInvalidExplicitType,this.state.startLoc,{enumName:t,invalidEnumType:r}),r},r.flowEnumBody=function(e,t){var r=this,a=t.name,n=t.loc.start,s=this.flowEnumParseExplicitType({enumName:a});this.expect(5);var o=this.flowEnumMembers({enumName:a,explicitType:s}),i=o.members,d=o.hasUnknownMembers;switch(e.hasUnknownMembers=d,s){case"boolean":return e.explicitType=!0,e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:a}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=i.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:var c=function(){return e.members=[],r.expect(8),r.finishNode(e,"EnumStringBody")};e.explicitType=!1;var l=i.booleanMembers.length,u=i.numberMembers.length,p=i.stringMembers.length,f=i.defaultedMembers.length;if(l||u||p||f){if(l||u){if(!u&&!p&&l>=f){for(var g=0,m=i.defaultedMembers;g<m.length;g++){var y=m[g];this.flowEnumErrorBooleanMemberNotInitialized(y.loc.start,{enumName:a,memberName:y.id.name})}return e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!l&&!p&&u>=f){for(var h=0,b=i.defaultedMembers;h<b.length;h++){var v=b[h];this.flowEnumErrorNumberMemberNotInitialized(v.loc.start,{enumName:a,memberName:v.id.name})}return e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(wv.EnumInconsistentMemberValues,n,{enumName:a}),c()}return e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:a}),this.expect(8),this.finishNode(e,"EnumStringBody")}return c()}},r.flowParseEnumDeclaration=function(e){var t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")},r.jsxParseOpeningElementAfterName=function(t){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(t.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),e.prototype.jsxParseOpeningElementAfterName.call(this,t)},r.isLookaheadToken_lt=function(){var e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){var t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1},r.reScan_lt_gt=function(){var e=this.state.type;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())},r.reScan_lt=function(){var e=this.state.type;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e},r.maybeUnwrapTypeCastExpression=function(e){return"TypeCastExpression"===e.type?e.expression:e},o(t)}(e)},typescript:function(e){return function(e){function t(){for(var t,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return(t=e.call.apply(e,[this].concat(a))||this).tsParseInOutModifiers=t.tsParseModifiers.bind(t,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:Ex.InvalidModifierOnTypeParameter}),t.tsParseConstModifier=t.tsParseModifiers.bind(t,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:Ex.InvalidModifierOnTypeParameterPositions}),t.tsParseInOutConstModifiers=t.tsParseModifiers.bind(t,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:Ex.InvalidModifierOnTypeParameter}),t}c(t,e);var r=t.prototype;return r.getScopeHandler=function(){return Lv},r.tsIsIdentifier=function(){return ob(this.state.type)},r.tsTokenCanFollowModifier=function(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()},r.tsNextTokenOnSameLineAndCanFollowModifier=function(){return this.next(),!this.hasPrecedingLineBreak()&&this.tsTokenCanFollowModifier()},r.tsNextTokenCanFollowModifier=function(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()},r.tsParseModifier=function(e,t,r){if(ob(this.state.type)||58===this.state.type||75===this.state.type){var a=this.state.value;if(e.includes(a)){if(r&&this.match(106))return;if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return a}}},r.tsParseModifiers=function(e,t){for(var r=this,a=e.allowedModifiers,n=e.disallowedModifiers,s=e.stopOnStartOfClassStaticBlock,o=e.errorTemplate,i=void 0===o?Ex.InvalidModifierOnTypeMember:o,d=function(e,a,n,s){a===n&&t[s]&&r.raise(Ex.InvalidModifiersOrder,e,{orderedModifiers:[n,s]})},c=function(e,a,n,s){(t[n]&&a===s||t[s]&&a===n)&&r.raise(Ex.IncompatibleModifiers,e,{modifiers:[n,s]})};;){var l=this.state.startLoc,u=this.tsParseModifier(a.concat(null!=n?n:[]),s,t.static);if(!u)break;Sx(u)?t.accessibility?this.raise(Ex.DuplicateAccessibilityModifier,l,{modifier:u}):(d(l,u,u,"override"),d(l,u,u,"static"),d(l,u,u,"readonly"),t.accessibility=u):Tx(u)?(t[u]&&this.raise(Ex.DuplicateModifier,l,{modifier:u}),t[u]=!0,d(l,u,"in","out")):(hasOwnProperty.call(t,u)?this.raise(Ex.DuplicateModifier,l,{modifier:u}):(d(l,u,"static","readonly"),d(l,u,"static","override"),d(l,u,"override","readonly"),d(l,u,"abstract","override"),c(l,u,"declare","override"),c(l,u,"static","abstract")),t[u]=!0),null!=n&&n.includes(u)&&this.raise(i,l,{modifier:u})}},r.tsIsListTerminator=function(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}},r.tsParseList=function(e,t){for(var r=[];!this.tsIsListTerminator(e);)r.push(t());return r},r.tsParseDelimitedList=function(e,t,r){return function(e){if(null==e)throw new Error("Unexpected "+e+" value.");return e}(this.tsParseDelimitedListWorker(e,t,!0,r))},r.tsParseDelimitedListWorker=function(e,t,r,a){for(var n=[],s=-1;!this.tsIsListTerminator(e);){s=-1;var o=t();if(null==o)return;if(n.push(o),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(r&&this.expect(12))}s=this.state.lastTokStartLoc.index}return a&&(a.value=s),n},r.tsParseBracketedList=function(e,t,r,a,n){a||(r?this.expect(0):this.expect(47));var s=this.tsParseDelimitedList(e,t,n);return r?this.expect(3):this.expect(48),s},r.tsParseImportType=function(){var t=this.startNode();return this.expect(83),this.expect(10),this.match(134)?t.argument=this.parseStringLiteral(this.state.value):(this.raise(Ex.UnsupportedImportTypeArgument,this.state.startLoc),t.argument=e.prototype.parseExprAtom.call(this)),this.eat(12)?t.options=this.tsParseImportTypeOptions():t.options=null,this.expect(11),this.eat(16)&&(t.qualifier=this.tsParseEntityName(kx|Cx)),this.match(47)&&(t.typeParameters=this.tsParseTypeArguments()),this.finishNode(t,"TSImportType")},r.tsParseImportTypeOptions=function(){var e=this.startNode();this.expect(5);var t=this.startNode();return this.isContextual(76)?(t.method=!1,t.key=this.parseIdentifier(!0),t.computed=!1,t.shorthand=!1):this.unexpected(null,76),this.expect(14),t.value=this.tsParseImportTypeWithPropertyValue(),e.properties=[this.finishObjectProperty(t)],this.eat(12),this.expect(8),this.finishNode(e,"ObjectExpression")},r.tsParseImportTypeWithPropertyValue=function(){var t=this.startNode(),r=[];for(this.expect(5);!this.match(8);){var a=this.state.type;ob(a)||134===a?r.push(e.prototype.parsePropertyDefinition.call(this,null)):this.unexpected(),this.eat(12)}return t.properties=r,this.next(),this.finishNode(t,"ObjectExpression")},r.tsParseEntityName=function(e){var t;if(e&kx&&this.match(78))if(e&Cx)t=this.parseIdentifier(!0);else{var r=this.startNode();this.next(),t=this.finishNode(r,"ThisExpression")}else t=this.parseIdentifier(!!(e&kx));for(;this.eat(16);){var a=this.startNodeAtNode(t);a.left=t,a.right=this.parseIdentifier(!!(e&kx)),t=this.finishNode(a,"TSQualifiedName")}return t},r.tsParseTypeReference=function(){var e=this.startNode();return e.typeName=this.tsParseEntityName(kx),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")},r.tsParseThisTypePredicate=function(e){this.next();var t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")},r.tsParseThisTypeNode=function(){var e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")},r.tsParseTypeQuery=function(){var e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(kx|Cx),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")},r.tsParseTypeParameter=function(e){var t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")},r.tsTryParseTypeParameters=function(e){if(this.match(47))return this.tsParseTypeParameters(e)},r.tsParseTypeParameters=function(e){var t=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();var r={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,r),0===t.params.length&&this.raise(Ex.EmptyTypeParameters,t),-1!==r.value&&this.addExtra(t,"trailingComma",r.value),this.finishNode(t,"TSTypeParameterDeclaration")},r.tsFillSignature=function(e,t){var r=19===e,a="typeAnnotation";t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(r||this.match(e))&&(t[a]=this.tsParseTypeOrTypePredicateAnnotation(e))},r.tsParseBindingListForSignature=function(){for(var t=e.prototype.parseBindingList.call(this,11,41,vx),r=0;r<t.length;r++){var a=t[r],n=a.type;"AssignmentPattern"!==n&&"TSParameterProperty"!==n||this.raise(Ex.UnsupportedSignatureParameterKind,a,{type:n})}return t},r.tsParseTypeMemberSemicolon=function(){this.eat(12)||this.isLineTerminator()||this.expect(13)},r.tsParseSignatureMember=function(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)},r.tsIsUnambiguouslyIndexSignature=function(){return this.next(),!!ob(this.state.type)&&(this.next(),this.match(14))},r.tsTryParseIndexSignature=function(e){if(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))){this.expect(0);var t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];var r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}},r.tsParsePropertyOrMethodSignature=function(e,t){if(this.eat(17)&&(e.optional=!0),this.match(10)||this.match(47)){t&&this.raise(Ex.ReadonlyForMethodSignature,e);var r=e;r.kind&&this.match(47)&&this.raise(Ex.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,r),this.tsParseTypeMemberSemicolon();var a="parameters",n="typeAnnotation";if("get"===r.kind)r[a].length>0&&(this.raise(Rh.BadGetterArity,this.state.curPosition()),this.isThisParam(r[a][0])&&this.raise(Ex.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if("set"===r.kind){if(1!==r[a].length)this.raise(Rh.BadSetterArity,this.state.curPosition());else{var s=r[a][0];this.isThisParam(s)&&this.raise(Ex.AccessorCannotDeclareThisParameter,this.state.curPosition()),"Identifier"===s.type&&s.optional&&this.raise(Ex.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),"RestElement"===s.type&&this.raise(Ex.SetAccessorCannotHaveRestParameter,this.state.curPosition())}r[n]&&this.raise(Ex.SetAccessorCannotHaveReturnType,r[n])}else r.kind="method";return this.finishNode(r,"TSMethodSignature")}var o=e;t&&(o.readonly=!0);var i=this.tsTryParseTypeAnnotation();return i&&(o.typeAnnotation=i),this.tsParseTypeMemberSemicolon(),this.finishNode(o,"TSPropertySignature")},r.tsParseTypeMember=function(){var t=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",t);if(this.match(77)){var r=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",t):(t.key=this.createIdentifier(r,"new"),this.tsParsePropertyOrMethodSignature(t,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},t);var a=this.tsTryParseIndexSignature(t);return a||(e.prototype.parsePropertyName.call(this,t),t.computed||"Identifier"!==t.key.type||"get"!==t.key.name&&"set"!==t.key.name||!this.tsTokenCanFollowModifier()||(t.kind=t.key.name,e.prototype.parsePropertyName.call(this,t),this.match(10)||this.match(47)||this.unexpected(null,10)),this.tsParsePropertyOrMethodSignature(t,!!t.readonly))},r.tsParseTypeLiteral=function(){var e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")},r.tsParseObjectTypeMembers=function(){this.expect(5);var e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e},r.tsIsStartOfMappedType=function(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))},r.tsParseMappedType=function(){var e=this.startNode();this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0);var t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsExpectThenParseType(58),e.typeParameter=this.finishNode(t,"TSTypeParameter"),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")},r.tsParseTupleType=function(){var e=this,t=this.startNode();t.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);var r=!1;return t.elementTypes.forEach(function(t){var a=t.type;!r||"TSRestType"===a||"TSOptionalType"===a||"TSNamedTupleMember"===a&&t.optional||e.raise(Ex.OptionalTypeBeforeRequired,t),r||(r="TSNamedTupleMember"===a&&t.optional||"TSOptionalType"===a)}),this.finishNode(t,"TSTupleType")},r.tsParseTupleElementType=function(){var e,t,r,a,n,s=this.state.startLoc,o=this.eat(21),i=this.state.startLoc,d=ib(this.state.type)?this.lookaheadCharCode():null;if(58===d)e=!0,r=!1,t=this.parseIdentifier(!0),this.expect(14),a=this.tsParseType();else if(63===d){r=!0;var c=this.state.value,l=this.tsParseNonArrayType();58===this.lookaheadCharCode()?(e=!0,t=this.createIdentifier(this.startNodeAt(i),c),this.expect(17),this.expect(14),a=this.tsParseType()):(e=!1,a=l,this.expect(17))}else a=this.tsParseType(),r=this.eat(17),e=this.eat(14);if(e)t?((n=this.startNodeAt(i)).optional=r,n.label=t,n.elementType=a,this.eat(17)&&(n.optional=!0,this.raise(Ex.TupleOptionalAfterType,this.state.lastTokStartLoc))):((n=this.startNodeAt(i)).optional=r,this.raise(Ex.InvalidTupleMemberLabel,a),n.label=a,n.elementType=this.tsParseType()),a=this.finishNode(n,"TSNamedTupleMember");else if(r){var u=this.startNodeAt(i);u.typeAnnotation=a,a=this.finishNode(u,"TSOptionalType")}if(o){var p=this.startNodeAt(s);p.typeAnnotation=a,a=this.finishNode(p,"TSRestType")}return a},r.tsParseParenthesizedType=function(){var e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")},r.tsParseFunctionOrConstructorType=function(e,t){var r=this,a=this.startNode();return"TSConstructorType"===e&&(a.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(function(){return r.tsFillSignature(19,a)}),this.finishNode(a,e)},r.tsParseLiteralTypeNode=function(){var t=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:t.literal=e.prototype.parseExprAtom.call(this);break;default:this.unexpected()}return this.finishNode(t,"TSLiteralType")},r.tsParseTemplateLiteralType=function(){var t=this.startNode();return t.literal=e.prototype.parseTemplate.call(this,!1),this.finishNode(t,"TSLiteralType")},r.parseTemplateSubstitution=function(){return this.state.inType?this.tsParseType():e.prototype.parseTemplateSubstitution.call(this)},r.tsParseThisTypeOrThisTypePredicate=function(){var e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e},r.tsParseNonArrayType=function(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){var e=this.startNode(),t=this.lookahead();return 135!==t.type&&136!==t.type&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:var r=this.state.type;if(ob(r)||88===r||84===r){var a=88===r?"TSVoidKeyword":84===r?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==a&&46!==this.lookaheadCharCode()){var n=this.startNode();return this.next(),this.finishNode(n,a)}return this.tsParseTypeReference()}}throw this.unexpected()},r.tsParseArrayTypeOrHigher=function(){for(var e=this.state.startLoc,t=this.tsParseNonArrayType();!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){var r=this.startNodeAt(e);r.elementType=t,this.expect(3),t=this.finishNode(r,"TSArrayType")}else{var a=this.startNodeAt(e);a.objectType=t,a.indexType=this.tsParseType(),this.expect(3),t=this.finishNode(a,"TSIndexedAccessType")}return t},r.tsParseTypeOperator=function(){var e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")},r.tsCheckTypeAnnotationForReadOnly=function(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(Ex.UnexpectedReadonly,e)}},r.tsParseInferType=function(){var e=this,t=this.startNode();this.expectContextual(115);var r=this.startNode();return r.name=this.tsParseTypeParameterName(),r.constraint=this.tsTryParse(function(){return e.tsParseConstraintForInferType()}),t.typeParameter=this.finishNode(r,"TSTypeParameter"),this.finishNode(t,"TSInferType")},r.tsParseConstraintForInferType=function(){var e=this;if(this.eat(81)){var t=this.tsInDisallowConditionalTypesContext(function(){return e.tsParseType()});if(this.state.inDisallowConditionalTypesContext||!this.match(17))return t}},r.tsParseTypeOperatorOrHigher=function(){var e,t=this;return(e=this.state.type)>=121&&e<=123&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(function(){return t.tsParseArrayTypeOrHigher()})},r.tsParseUnionOrIntersectionType=function(e,t,r){var a=this.startNode(),n=this.eat(r),s=[];do{s.push(t())}while(this.eat(r));return 1!==s.length||n?(a.types=s,this.finishNode(a,e)):s[0]},r.tsParseIntersectionTypeOrHigher=function(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)},r.tsParseUnionTypeOrHigher=function(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)},r.tsIsStartOfFunctionType=function(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))},r.tsSkipParameterStart=function(){if(ob(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){var t=this.state.errors,r=t.length;try{return this.parseObjectLike(8,!0),t.length===r}catch(e){return!1}}if(this.match(0)){this.next();var a=this.state.errors,n=a.length;try{return e.prototype.parseBindingList.call(this,3,93,bx),a.length===n}catch(e){return!1}}return!1},r.tsIsUnambiguouslyStartOfFunctionType=function(){if(this.next(),this.match(11)||this.match(21))return!0;if(this.tsSkipParameterStart()){if(this.match(14)||this.match(12)||this.match(17)||this.match(29))return!0;if(this.match(11)&&(this.next(),this.match(19)))return!0}return!1},r.tsParseTypeOrTypePredicateAnnotation=function(e){var t=this;return this.tsInType(function(){var r=t.startNode();t.expect(e);var a=t.startNode(),n=!!t.tsTryParse(t.tsParseTypePredicateAsserts.bind(t));if(n&&t.match(78)){var s=t.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===s.type?(a.parameterName=s,a.asserts=!0,a.typeAnnotation=null,s=t.finishNode(a,"TSTypePredicate")):(t.resetStartLocationFromNode(s,a),s.asserts=!0),r.typeAnnotation=s,t.finishNode(r,"TSTypeAnnotation")}var o=t.tsIsIdentifier()&&t.tsTryParse(t.tsParseTypePredicatePrefix.bind(t));if(!o)return n?(a.parameterName=t.parseIdentifier(),a.asserts=n,a.typeAnnotation=null,r.typeAnnotation=t.finishNode(a,"TSTypePredicate"),t.finishNode(r,"TSTypeAnnotation")):t.tsParseTypeAnnotation(!1,r);var i=t.tsParseTypeAnnotation(!1);return a.parameterName=o,a.typeAnnotation=i,a.asserts=n,r.typeAnnotation=t.finishNode(a,"TSTypePredicate"),t.finishNode(r,"TSTypeAnnotation")})},r.tsTryParseTypeOrTypePredicateAnnotation=function(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)},r.tsTryParseTypeAnnotation=function(){if(this.match(14))return this.tsParseTypeAnnotation()},r.tsTryParseType=function(){return this.tsEatThenParseType(14)},r.tsParseTypePredicatePrefix=function(){var e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e},r.tsParseTypePredicateAsserts=function(){if(109!==this.state.type)return!1;var e=this.state.containsEsc;return this.next(),!(!ob(this.state.type)&&!this.match(78))&&(e&&this.raise(Rh.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)},r.tsParseTypeAnnotation=function(e,t){var r=this;return void 0===e&&(e=!0),void 0===t&&(t=this.startNode()),this.tsInType(function(){e&&r.expect(14),t.typeAnnotation=r.tsParseType()}),this.finishNode(t,"TSTypeAnnotation")},r.tsParseType=function(){var e=this;wx(this.state.inType);var t=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return t;var r=this.startNodeAtNode(t);return r.checkType=t,r.extendsType=this.tsInDisallowConditionalTypesContext(function(){return e.tsParseNonConditionalType()}),this.expect(17),r.trueType=this.tsInAllowConditionalTypesContext(function(){return e.tsParseType()}),this.expect(14),r.falseType=this.tsInAllowConditionalTypesContext(function(){return e.tsParseType()}),this.finishNode(r,"TSConditionalType")},r.isAbstractConstructorSignature=function(){return this.isContextual(124)&&this.isLookaheadContextual("new")},r.tsParseNonConditionalType=function(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()},r.tsParseTypeAssertion=function(){var e=this;this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(Ex.ReservedTypeAssertion,this.state.startLoc);var t=this.startNode();return t.typeAnnotation=this.tsInType(function(){return e.next(),e.match(75)?e.tsParseTypeReference():e.tsParseType()}),this.expect(48),t.expression=this.parseMaybeUnary(),this.finishNode(t,"TSTypeAssertion")},r.tsParseHeritageClause=function(e){var t=this,r=this.state.startLoc,a=this.tsParseDelimitedList("HeritageClauseElement",function(){var e=t.startNode();return e.expression=t.tsParseEntityName(kx|Cx),t.match(47)&&(e.typeParameters=t.tsParseTypeArguments()),t.finishNode(e,"TSExpressionWithTypeArguments")});return a.length||this.raise(Ex.EmptyHeritageClauseType,r,{token:e}),a},r.tsParseInterfaceDeclaration=function(e,t){if(void 0===t&&(t={}),this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),ob(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,$b)):(e.id=null,this.raise(Ex.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));var r=this.startNode();return r.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(r,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")},r.tsParseTypeAliasDeclaration=function(e){var t=this;return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,Qb),e.typeAnnotation=this.tsInType(function(){if(e.typeParameters=t.tsTryParseTypeParameters(t.tsParseInOutModifiers),t.expect(29),t.isContextual(114)&&46!==t.lookaheadCharCode()){var r=t.startNode();return t.next(),t.finishNode(r,"TSIntrinsicKeyword")}return t.tsParseType()}),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")},r.tsInTopLevelContext=function(e){if(this.curContext()===Uh.brace)return e();var t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}},r.tsInType=function(e){var t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}},r.tsInDisallowConditionalTypesContext=function(e){var t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}},r.tsInAllowConditionalTypesContext=function(e){var t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}},r.tsEatThenParseType=function(e){if(this.match(e))return this.tsNextThenParseType()},r.tsExpectThenParseType=function(e){var t=this;return this.tsInType(function(){return t.expect(e),t.tsParseType()})},r.tsNextThenParseType=function(){var e=this;return this.tsInType(function(){return e.next(),e.tsParseType()})},r.tsParseEnumMember=function(){var t=this.startNode();return t.id=this.match(134)?e.prototype.parseStringLiteral.call(this,this.state.value):this.parseIdentifier(!0),this.eat(29)&&(t.initializer=e.prototype.parseMaybeAssignAllowIn.call(this)),this.finishNode(t,"TSEnumMember")},r.tsParseEnumDeclaration=function(e,t){return void 0===t&&(t={}),t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(126),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?av:Zb),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")},r.tsParseEnumBody=function(){var e=this.startNode();return this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumBody")},r.tsParseModuleBlock=function(){var t=this.startNode();return this.scope.enter(vb),this.expect(5),e.prototype.parseBlockOrModuleBlockBody.call(this,t.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(t,"TSModuleBlock")},r.tsParseModuleOrNamespaceDeclaration=function(e,t){if(void 0===t&&(t=!1),e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,nv),this.eat(16)){var r=this.startNode();this.tsParseModuleOrNamespaceDeclaration(r,!0),e.body=r}else this.scope.enter(Cb),this.prodParam.enter(Uv),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")},r.tsParseAmbientExternalModuleDeclaration=function(t){return this.isContextual(112)?(t.kind="global",t.global=!0,t.id=this.parseIdentifier()):this.match(134)?(t.kind="module",t.id=e.prototype.parseStringLiteral.call(this,this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(Cb),this.prodParam.enter(Uv),t.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(t,"TSModuleDeclaration")},r.tsParseImportEqualsDeclaration=function(e,t,r){e.isExport=r||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,ov),this.expect(29);var a=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==a.type&&this.raise(Ex.ImportAliasHasImportType,a),e.moduleReference=a,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")},r.tsIsExternalModuleReference=function(){return this.isContextual(119)&&40===this.lookaheadCharCode()},r.tsParseModuleReference=function(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(Ax)},r.tsParseExternalModuleReference=function(){var t=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),t.expression=e.prototype.parseExprAtom.call(this),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(t,"TSExternalModuleReference")},r.tsLookAhead=function(e){var t=this.state.clone(),r=e();return this.state=t,r},r.tsTryParseAndCatch=function(e){var t=this.tryParse(function(t){return e()||t()});if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node},r.tsTryParse=function(e){var t=this.state.clone(),r=e();if(void 0!==r&&!1!==r)return r;this.state=t},r.tsTryParseDeclare=function(t){var r=this;if(!this.isLineTerminator()){var a=this.state.type;return this.tsInAmbientContext(function(){switch(a){case 68:return t.declare=!0,e.prototype.parseFunctionStatement.call(r,t,!1,!1);case 80:return t.declare=!0,r.parseClass(t,!0,!1);case 126:return r.tsParseEnumDeclaration(t,{declare:!0});case 112:return r.tsParseAmbientExternalModuleDeclaration(t);case 100:if(r.state.containsEsc)return;case 75:case 74:return r.match(75)&&r.isLookaheadContextual("enum")?(r.expect(75),r.tsParseEnumDeclaration(t,{const:!0,declare:!0})):(t.declare=!0,r.parseVarStatement(t,r.state.value,!0));case 107:if(r.isUsing())return r.raise(Ex.InvalidModifierOnUsingDeclaration,r.state.startLoc,"declare"),t.declare=!0,r.parseVarStatement(t,"using",!0);break;case 96:if(r.isAwaitUsing())return r.raise(Ex.InvalidModifierOnAwaitUsingDeclaration,r.state.startLoc,"declare"),t.declare=!0,r.next(),r.parseVarStatement(t,"await using",!0);break;case 129:var n=r.tsParseInterfaceDeclaration(t,{declare:!0});if(n)return n;default:if(ob(a))return r.tsParseDeclaration(t,r.state.type,!0,null)}})}},r.tsTryParseExportDeclaration=function(){return this.tsParseDeclaration(this.startNode(),this.state.type,!0,null)},r.tsParseDeclaration=function(e,t,r,a){switch(t){case 124:if(this.tsCheckLineTerminator(r)&&(this.match(80)||ob(this.state.type)))return this.tsParseAbstractDeclaration(e,a);break;case 127:if(this.tsCheckLineTerminator(r)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(e);if(ob(this.state.type))return e.kind="module",this.tsParseModuleOrNamespaceDeclaration(e)}break;case 128:if(this.tsCheckLineTerminator(r)&&ob(this.state.type))return e.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(e);break;case 130:if(this.tsCheckLineTerminator(r)&&ob(this.state.type))return this.tsParseTypeAliasDeclaration(e)}},r.tsCheckLineTerminator=function(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()},r.tsTryParseGenericAsyncArrowFunction=function(t){var r=this;if(this.match(47)){var a=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;var n=this.tsTryParseAndCatch(function(){var a=r.startNodeAt(t);return a.typeParameters=r.tsParseTypeParameters(r.tsParseConstModifier),e.prototype.parseFunctionParams.call(r,a),a.returnType=r.tsTryParseTypeOrTypePredicateAnnotation(),r.expect(19),a});if(this.state.maybeInArrowParameters=a,n)return e.prototype.parseArrowExpression.call(this,n,null,!0)}},r.tsParseTypeArgumentsInExpression=function(){if(47===this.reScan_lt())return this.tsParseTypeArguments()},r.tsParseTypeArguments=function(){var e=this,t=this.startNode();return t.params=this.tsInType(function(){return e.tsInTopLevelContext(function(){return e.expect(47),e.tsParseDelimitedList("TypeParametersOrArguments",e.tsParseType.bind(e))})}),0===t.params.length?this.raise(Ex.EmptyTypeArguments,t):this.state.inType||this.curContext()!==Uh.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(t,"TSTypeParameterInstantiation")},r.tsIsDeclarationStart=function(){return(e=this.state.type)>=124&&e<=130;var e},r.isExportDefaultSpecifier=function(){return!this.tsIsDeclarationStart()&&e.prototype.isExportDefaultSpecifier.call(this)},r.parseBindingElement=function(e,t){var r=t.length?t[0].loc.start:this.state.startLoc,a={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},a);var n=a.accessibility,s=a.override,o=a.readonly;e&xx||!(n||o||s)||this.raise(Ex.UnexpectedParameterModifier,r);var i=this.parseMaybeDefault();e&vx&&this.parseFunctionParamType(i);var d=this.parseMaybeDefault(i.loc.start,i);if(n||o||s){var c=this.startNodeAt(r);return t.length&&(c.decorators=t),n&&(c.accessibility=n),o&&(c.readonly=o),s&&(c.override=s),"Identifier"!==d.type&&"AssignmentPattern"!==d.type&&this.raise(Ex.UnsupportedParameterPropertyKind,c),c.parameter=d,this.finishNode(c,"TSParameterProperty")}return t.length&&(i.decorators=t),d},r.isSimpleParameter=function(t){return"TSParameterProperty"===t.type&&e.prototype.isSimpleParameter.call(this,t.parameter)||e.prototype.isSimpleParameter.call(this,t)},r.tsDisallowOptionalPattern=function(e){for(var t=0,r=e.params;t<r.length;t++){var a=r[t];"Identifier"!==a.type&&a.optional&&!this.state.isAmbientContext&&this.raise(Ex.PatternIsOptional,a)}},r.setArrowFunctionParameters=function(t,r,a){e.prototype.setArrowFunctionParameters.call(this,t,r,a),this.tsDisallowOptionalPattern(t)},r.parseFunctionBodyAndFinish=function(t,r,a){void 0===a&&(a=!1),this.match(14)&&(t.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));var n="FunctionDeclaration"===r?"TSDeclareFunction":"ClassMethod"===r||"ClassPrivateMethod"===r?"TSDeclareMethod":void 0;return n&&!this.match(5)&&this.isLineTerminator()?this.finishNode(t,n):"TSDeclareFunction"===n&&this.state.isAmbientContext&&(this.raise(Ex.DeclareFunctionHasImplementation,t),t.declare)?e.prototype.parseFunctionBodyAndFinish.call(this,t,n,a):(this.tsDisallowOptionalPattern(t),e.prototype.parseFunctionBodyAndFinish.call(this,t,r,a))},r.registerFunctionStatementId=function(t){!t.body&&t.id?this.checkIdentifier(t.id,ev):e.prototype.registerFunctionStatementId.call(this,t)},r.tsCheckForInvalidTypeCasts=function(e){var t=this;e.forEach(function(e){"TSTypeCastExpression"===(null==e?void 0:e.type)&&t.raise(Ex.UnexpectedTypeAnnotation,e.typeAnnotation)})},r.toReferencedList=function(e,t){return this.tsCheckForInvalidTypeCasts(e),e},r.parseArrayLike=function(t,r,a){var n=e.prototype.parseArrayLike.call(this,t,r,a);return"ArrayExpression"===n.type&&this.tsCheckForInvalidTypeCasts(n.elements),n},r.parseSubscript=function(t,r,a,n){var s=this;if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();var o=this.startNodeAt(r);return o.expression=t,this.finishNode(o,"TSNonNullExpression")}var i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(a)return n.stop=!0,t;n.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){var d,c=this.tsTryParseAndCatch(function(){if(!a&&s.atPossibleAsyncArrow(t)){var o=s.tsTryParseGenericAsyncArrowFunction(r);if(o)return n.stop=!0,o}var c=s.tsParseTypeArgumentsInExpression();if(c)if(!i||s.match(10)){if(mb(s.state.type)){var l=e.prototype.parseTaggedTemplateExpression.call(s,t,r,n);return l.typeParameters=c,l}if(!a&&s.eat(10)){var u=s.startNodeAt(r);return u.callee=t,u.arguments=s.parseCallExpressionArguments(),s.tsCheckForInvalidTypeCasts(u.arguments),u.typeParameters=c,n.optionalChainMember&&(u.optional=i),s.finishCallExpression(u,n.optionalChainMember)}var p=s.state.type;if(48!==p&&52!==p&&(10===p||93===p||120===p||!cb(p)||s.hasPrecedingLineBreak())){var f=s.startNodeAt(r);return f.expression=t,f.typeParameters=c,s.finishNode(f,"TSInstantiationExpression")}}else d=s.state.curPosition()});if(d&&this.unexpected(d,10),c)return"TSInstantiationExpression"===c.type&&((this.match(16)||this.match(18)&&40!==this.lookaheadCharCode())&&this.raise(Ex.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),this.match(16)||this.match(18)||(c.expression=e.prototype.stopParseSubscript.call(this,t,n))),c}return e.prototype.parseSubscript.call(this,t,r,a,n)},r.parseNewCallee=function(t){var r;e.prototype.parseNewCallee.call(this,t);var a=t.callee;"TSInstantiationExpression"!==a.type||null!=(r=a.extra)&&r.parenthesized||(t.typeParameters=a.typeParameters,t.callee=a.expression)},r.parseExprOp=function(t,r,a){var n,s=this;if(gb(58)>a&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(n=this.isContextual(120)))){var o=this.startNodeAt(r);return o.expression=t,o.typeAnnotation=this.tsInType(function(){return s.next(),s.match(75)?(n&&s.raise(Rh.UnexpectedKeyword,s.state.startLoc,{keyword:"const"}),s.tsParseTypeReference()):s.tsParseType()}),this.finishNode(o,n?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(o,r,a)}return e.prototype.parseExprOp.call(this,t,r,a)},r.checkReservedWord=function(t,r,a,n){this.state.isAmbientContext||e.prototype.checkReservedWord.call(this,t,r,a,n)},r.checkImportReflection=function(t){e.prototype.checkImportReflection.call(this,t),t.module&&"value"!==t.importKind&&this.raise(Ex.ImportReflectionHasImportType,t.specifiers[0].loc.start)},r.checkDuplicateExports=function(){},r.isPotentialImportPhase=function(t){if(e.prototype.isPotentialImportPhase.call(this,t))return!0;if(this.isContextual(130)){var r=this.lookaheadCharCode();return t?123===r||42===r:61!==r}return!t&&this.isContextual(87)},r.applyImportPhase=function(t,r,a,n){e.prototype.applyImportPhase.call(this,t,r,a,n),r?t.exportKind="type"===a?"type":"value":t.importKind="type"===a||"typeof"===a?a:"value"},r.parseImport=function(t){if(this.match(134))return t.importKind="value",e.prototype.parseImport.call(this,t);var r;if(ob(this.state.type)&&61===this.lookaheadCharCode())return t.importKind="value",this.tsParseImportEqualsDeclaration(t);if(this.isContextual(130)){var a=this.parseMaybeImportPhase(t,!1);if(61===this.lookaheadCharCode())return this.tsParseImportEqualsDeclaration(t,a);r=e.prototype.parseImportSpecifiersAndAfter.call(this,t,a)}else r=e.prototype.parseImport.call(this,t);return"type"===r.importKind&&r.specifiers.length>1&&"ImportDefaultSpecifier"===r.specifiers[0].type&&this.raise(Ex.TypeImportCannotSpecifyDefaultAndNamed,r),r},r.parseExport=function(t,r){if(this.match(83)){var a=t;this.next();var n=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?n=this.parseMaybeImportPhase(a,!1):a.importKind="value",this.tsParseImportEqualsDeclaration(a,n,!0)}if(this.eat(29)){var s=t;return s.expression=e.prototype.parseExpression.call(this),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(s,"TSExportAssignment")}if(this.eatContextual(93)){var o=t;return this.expectContextual(128),o.id=this.parseIdentifier(),this.semicolon(),this.finishNode(o,"TSNamespaceExportDeclaration")}return e.prototype.parseExport.call(this,t,r)},r.isAbstractClass=function(){return this.isContextual(124)&&this.isLookaheadContextual("class")},r.parseExportDefaultExpression=function(){if(this.isAbstractClass()){var t=this.startNode();return this.next(),t.abstract=!0,this.parseClass(t,!0,!0)}if(this.match(129)){var r=this.tsParseInterfaceDeclaration(this.startNode());if(r)return r}return e.prototype.parseExportDefaultExpression.call(this)},r.parseVarStatement=function(t,r,a){void 0===a&&(a=!1);var n=this.state.isAmbientContext,s=e.prototype.parseVarStatement.call(this,t,r,a||n);if(!n)return s;if(!t.declare&&("using"===r||"await using"===r))return this.raiseOverwrite(Ex.UsingDeclarationInAmbientContext,t,r),s;for(var o=0,i=s.declarations;o<i.length;o++){var d=i[o],c=d.id,l=d.init;l&&("var"===r||"let"===r||c.typeAnnotation?this.raise(Ex.InitializerNotAllowedInAmbientContext,l):Ix(l,this.hasPlugin("estree"))||this.raise(Ex.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,l))}return s},r.parseStatementContent=function(t,r){if(!this.state.containsEsc)switch(this.state.type){case 75:if(this.isLookaheadContextual("enum")){var a=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(a,{const:!0})}break;case 124:case 125:if(this.nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine()){var n=this.state.type,s=this.startNode();this.next();var o=125===n?this.tsTryParseDeclare(s):this.tsParseAbstractDeclaration(s,r);return o?(125===n&&(o.declare=!0),o):(s.expression=this.createIdentifier(this.startNodeAt(s.loc.start),125===n?"declare":"abstract"),this.semicolon(!1),this.finishNode(s,"ExpressionStatement"))}break;case 126:return this.tsParseEnumDeclaration(this.startNode());case 112:if(123===this.lookaheadCharCode()){var i=this.startNode();return this.tsParseAmbientExternalModuleDeclaration(i)}break;case 129:var d=this.tsParseInterfaceDeclaration(this.startNode());if(d)return d;break;case 127:if(this.nextTokenIsIdentifierOrStringLiteralOnSameLine()){var c=this.startNode();return this.next(),this.tsParseDeclaration(c,127,!1,r)}break;case 128:if(this.nextTokenIsIdentifierOnSameLine()){var l=this.startNode();return this.next(),this.tsParseDeclaration(l,128,!1,r)}break;case 130:if(this.nextTokenIsIdentifierOnSameLine()){var u=this.startNode();return this.next(),this.tsParseTypeAliasDeclaration(u)}}return e.prototype.parseStatementContent.call(this,t,r)},r.parseAccessModifier=function(){return this.tsParseModifier(["public","protected","private"])},r.tsHasSomeModifiers=function(e,t){return t.some(function(t){return Sx(t)?e.accessibility===t:!!e[t]})},r.tsIsStartOfStaticBlocks=function(){return this.isContextual(106)&&123===this.lookaheadCharCode()},r.parseClassMember=function(t,r,a){var n=this,s=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:s,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:Ex.InvalidModifierOnTypeParameterPositions},r);var o=function(){n.tsIsStartOfStaticBlocks()?(n.next(),n.next(),n.tsHasSomeModifiers(r,s)&&n.raise(Ex.StaticBlockCannotHaveModifier,n.state.curPosition()),e.prototype.parseClassStaticBlock.call(n,t,r)):n.parseClassMemberWithIsStatic(t,r,a,!!r.static)};r.declare?this.tsInAmbientContext(o):o()},r.parseClassMemberWithIsStatic=function(t,r,a,n){var s=this.tsTryParseIndexSignature(r);if(s)return t.body.push(s),r.abstract&&this.raise(Ex.IndexSignatureHasAbstract,r),r.accessibility&&this.raise(Ex.IndexSignatureHasAccessibility,r,{modifier:r.accessibility}),r.declare&&this.raise(Ex.IndexSignatureHasDeclare,r),void(r.override&&this.raise(Ex.IndexSignatureHasOverride,r));!this.state.inAbstractClass&&r.abstract&&this.raise(Ex.NonAbstractClassHasAbstractMethod,r),r.override&&(a.hadSuperClass||this.raise(Ex.OverrideNotInSubClass,r)),e.prototype.parseClassMemberWithIsStatic.call(this,t,r,a,n)},r.parsePostMemberNameModifiers=function(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(Ex.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise(Ex.ClassMethodHasDeclare,e)},r.shouldParseExportDeclaration=function(){return!!this.tsIsDeclarationStart()||e.prototype.shouldParseExportDeclaration.call(this)},r.parseConditional=function(t,r,a){if(!this.match(17))return t;if(this.state.maybeInArrowParameters){var n=this.lookaheadCharCode();if(44===n||61===n||58===n||41===n)return this.setOptionalParametersError(a),t}return e.prototype.parseConditional.call(this,t,r,a)},r.parseParenItem=function(t,r){var a=e.prototype.parseParenItem.call(this,t,r);if(this.eat(17)&&(a.optional=!0,this.resetEndLocation(t)),this.match(14)){var n=this.startNodeAt(r);return n.expression=t,n.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(n,"TSTypeCastExpression")}return t},r.parseExportDeclaration=function(t){var r=this;if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(function(){return r.parseExportDeclaration(t)});var a=this.state.startLoc,n=this.eatContextual(125);if(n&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(Ex.ExpectedAmbientAfterExportDeclare,this.state.startLoc);var s=ob(this.state.type)&&this.tsTryParseExportDeclaration()||e.prototype.parseExportDeclaration.call(this,t);return s?(("TSInterfaceDeclaration"===s.type||"TSTypeAliasDeclaration"===s.type||n)&&(t.exportKind="type"),n&&"TSImportEqualsDeclaration"!==s.type&&(this.resetStartLocation(s,a),s.declare=!0),s):null},r.parseClassId=function(t,r,a,n){if(r&&!a||!this.isContextual(113)){e.prototype.parseClassId.call(this,t,r,a,t.declare?ev:zb);var s=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);s&&(t.typeParameters=s)}},r.parseClassPropertyAnnotation=function(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));var t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)},r.parseClassProperty=function(t){if(this.parseClassPropertyAnnotation(t),this.state.isAmbientContext&&(!t.readonly||t.typeAnnotation)&&this.match(29)&&this.raise(Ex.DeclareClassFieldHasInitializer,this.state.startLoc),t.abstract&&this.match(29)){var r=t.key;this.raise(Ex.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:"Identifier"!==r.type||t.computed?"["+this.input.slice(this.offsetToSourcePos(r.start),this.offsetToSourcePos(r.end))+"]":r.name})}return e.prototype.parseClassProperty.call(this,t)},r.parseClassPrivateProperty=function(t){return t.abstract&&this.raise(Ex.PrivateElementHasAbstract,t),t.accessibility&&this.raise(Ex.PrivateElementHasAccessibility,t,{modifier:t.accessibility}),this.parseClassPropertyAnnotation(t),e.prototype.parseClassPrivateProperty.call(this,t)},r.parseClassAccessorProperty=function(t){return this.parseClassPropertyAnnotation(t),t.optional&&this.raise(Ex.AccessorCannotBeOptional,t),e.prototype.parseClassAccessorProperty.call(this,t)},r.pushClassMethod=function(t,r,a,n,s,o){var i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&s&&this.raise(Ex.ConstructorHasTypeParameters,i);var d=r.declare,c=void 0!==d&&d,l=r.kind;!c||"get"!==l&&"set"!==l||this.raise(Ex.DeclareAccessor,r,{kind:l}),i&&(r.typeParameters=i),e.prototype.pushClassMethod.call(this,t,r,a,n,s,o)},r.pushClassPrivateMethod=function(t,r,a,n){var s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&(r.typeParameters=s),e.prototype.pushClassPrivateMethod.call(this,t,r,a,n)},r.declareClassPrivateMethodInScope=function(t,r){"TSDeclareMethod"!==t.type&&("MethodDefinition"===t.type&&null==t.value.body||e.prototype.declareClassPrivateMethodInScope.call(this,t,r))},r.parseClassSuper=function(t){if(e.prototype.parseClassSuper.call(this,t),t.superClass)if("TSInstantiationExpression"===t.superClass.type){var r=t.superClass,a=r.expression;this.takeSurroundingComments(a,a.start,a.end);var n=r.typeParameters;this.takeSurroundingComments(n,n.start,n.end),t.superClass=a,t.superTypeParameters=n}else(this.match(47)||this.match(51))&&(t.superTypeParameters=this.tsParseTypeArgumentsInExpression());this.eatContextual(113)&&(t.implements=this.tsParseHeritageClause("implements"))},r.parseObjPropValue=function(t,r,a,n,s,o,i){var d=this.tsTryParseTypeParameters(this.tsParseConstModifier);return d&&(t.typeParameters=d),e.prototype.parseObjPropValue.call(this,t,r,a,n,s,o,i)},r.parseFunctionParams=function(t,r){var a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&(t.typeParameters=a),e.prototype.parseFunctionParams.call(this,t,r)},r.parseVarId=function(t,r){e.prototype.parseVarId.call(this,t,r),"Identifier"===t.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(t.definite=!0);var a=this.tsTryParseTypeAnnotation();a&&(t.id.typeAnnotation=a,this.resetEndLocation(t.id))},r.parseAsyncArrowFromCallExpression=function(t,r){return this.match(14)&&(t.returnType=this.tsParseTypeAnnotation()),e.prototype.parseAsyncArrowFromCallExpression.call(this,t,r)},r.parseMaybeAssign=function(t,r){var a,n,s,o,i,d,c,l,u,p=this;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(d=this.state.clone(),!(c=this.tryParse(function(){return e.prototype.parseMaybeAssign.call(p,t,r)},d)).error)return c.node;var f=this.state.context,g=f[f.length-1];g!==Uh.j_oTag&&g!==Uh.j_expr||f.pop()}if(!(null!=(a=c)&&a.error||this.match(47)))return e.prototype.parseMaybeAssign.call(this,t,r);d&&d!==this.state||(d=this.state.clone());var m=this.tryParse(function(a){var n,s;u=p.tsParseTypeParameters(p.tsParseConstModifier);var o=e.prototype.parseMaybeAssign.call(p,t,r);return("ArrowFunctionExpression"!==o.type||null!=(n=o.extra)&&n.parenthesized)&&a(),0!==(null==(s=u)?void 0:s.params.length)&&p.resetStartLocationFromNode(o,u),o.typeParameters=u,o},d);if(!m.error&&!m.aborted)return u&&this.reportReservedArrowTypeParam(u),m.node;if(!c&&(wx(!this.hasPlugin("jsx")),!(l=this.tryParse(function(){return e.prototype.parseMaybeAssign.call(p,t,r)},d)).error))return l.node;if(null!=(n=c)&&n.node)return this.state=c.failState,c.node;if(m.node)return this.state=m.failState,u&&this.reportReservedArrowTypeParam(u),m.node;if(null!=(s=l)&&s.node)return this.state=l.failState,l.node;throw(null==(o=c)?void 0:o.error)||m.error||(null==(i=l)?void 0:i.error)},r.reportReservedArrowTypeParam=function(e){var t;1!==e.params.length||e.params[0].constraint||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(Ex.ReservedArrowTypeParam,e)},r.parseMaybeUnary=function(t,r){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():e.prototype.parseMaybeUnary.call(this,t,r)},r.parseArrow=function(t){var r=this;if(this.match(14)){var a=this.tryParse(function(e){var t=r.tsParseTypeOrTypePredicateAnnotation(14);return!r.canInsertSemicolon()&&r.match(19)||e(),t});if(a.aborted)return;a.thrown||(a.error&&(this.state=a.failState),t.returnType=a.node)}return e.prototype.parseArrow.call(this,t)},r.parseFunctionParamType=function(e){this.eat(17)&&(e.optional=!0);var t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t),this.resetEndLocation(e),e},r.isAssignable=function(t,r){switch(t.type){case"TSTypeCastExpression":return this.isAssignable(t.expression,r);case"TSParameterProperty":return!0;default:return e.prototype.isAssignable.call(this,t,r)}},r.toAssignable=function(t,r){switch(void 0===r&&(r=!1),t.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(t,r);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":r?this.expressionScope.recordArrowParameterBindingError(Ex.UnexpectedTypeCastInParameter,t):this.raise(Ex.UnexpectedTypeCastInParameter,t),this.toAssignable(t.expression,r);break;case"AssignmentExpression":r||"TSTypeCastExpression"!==t.left.type||(t.left=this.typeCastToParameter(t.left));default:e.prototype.toAssignable.call(this,t,r)}},r.toAssignableParenthesizedExpression=function(t,r){switch(t.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(t.expression,r);break;default:e.prototype.toAssignable.call(this,t,r)}},r.checkToRestConversion=function(t,r){switch(t.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(t.expression,!1);break;default:e.prototype.checkToRestConversion.call(this,t,r)}},r.isValidLVal=function(t,r,a,n){switch(t){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(n!==tv||!a)&&["expression",!0];default:return e.prototype.isValidLVal.call(this,t,r,a,n)}},r.parseBindingAtom=function(){return 78===this.state.type?this.parseIdentifier(!0):e.prototype.parseBindingAtom.call(this)},r.parseMaybeDecoratorArguments=function(t,r){if(this.match(47)||this.match(51)){var a=this.tsParseTypeArgumentsInExpression();if(this.match(10)){var n=e.prototype.parseMaybeDecoratorArguments.call(this,t,r);return n.typeParameters=a,n}this.unexpected(null,10)}return e.prototype.parseMaybeDecoratorArguments.call(this,t,r)},r.checkCommaAfterRest=function(t){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===t?(this.next(),!1):e.prototype.checkCommaAfterRest.call(this,t)},r.isClassMethod=function(){return this.match(47)||e.prototype.isClassMethod.call(this)},r.isClassProperty=function(){return this.match(35)||this.match(14)||e.prototype.isClassProperty.call(this)},r.parseMaybeDefault=function(t,r){var a=e.prototype.parseMaybeDefault.call(this,t,r);return"AssignmentPattern"===a.type&&a.typeAnnotation&&a.right.start<a.typeAnnotation.start&&this.raise(Ex.TypeAnnotationAfterAssign,a.typeAnnotation),a},r.getTokenFromCode=function(t){if(this.state.inType){if(62===t)return void this.finishOp(48,1);if(60===t)return void this.finishOp(47,1)}e.prototype.getTokenFromCode.call(this,t)},r.reScan_lt_gt=function(){var e=this.state.type;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())},r.reScan_lt=function(){var e=this.state.type;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e},r.toAssignableListItem=function(t,r,a){var n=t[r];"TSTypeCastExpression"===n.type&&(t[r]=this.typeCastToParameter(n)),e.prototype.toAssignableListItem.call(this,t,r,a)},r.typeCastToParameter=function(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression},r.shouldParseArrow=function(t){var r=this;return this.match(14)?t.every(function(e){return r.isAssignable(e,!0)}):e.prototype.shouldParseArrow.call(this,t)},r.shouldParseAsyncArrow=function(){return this.match(14)||e.prototype.shouldParseAsyncArrow.call(this)},r.canHaveLeadingDecorator=function(){return e.prototype.canHaveLeadingDecorator.call(this)||this.isAbstractClass()},r.jsxParseOpeningElementAfterName=function(t){var r=this;if(this.match(47)||this.match(51)){var a=this.tsTryParseAndCatch(function(){return r.tsParseTypeArgumentsInExpression()});a&&(t.typeParameters=a)}return e.prototype.jsxParseOpeningElementAfterName.call(this,t)},r.getGetterSetterExpectedParamCount=function(t){var r=e.prototype.getGetterSetterExpectedParamCount.call(this,t),a=this.getObjectOrClassMethodParams(t)[0];return a&&this.isThisParam(a)?r+1:r},r.parseCatchClauseParam=function(){var t=e.prototype.parseCatchClauseParam.call(this),r=this.tsTryParseTypeAnnotation();return r&&(t.typeAnnotation=r,this.resetEndLocation(t)),t},r.tsInAmbientContext=function(e){var t=this.state,r=t.isAmbientContext,a=t.strict;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=r,this.state.strict=a}},r.parseClass=function(t,r,a){var n=this.state.inAbstractClass;this.state.inAbstractClass=!!t.abstract;try{return e.prototype.parseClass.call(this,t,r,a)}finally{this.state.inAbstractClass=n}},r.tsParseAbstractDeclaration=function(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(129))return this.hasFollowingLineBreak()?null:(e.abstract=!0,this.raise(Ex.NonClassMethodPropertyHasAbstractModifier,e),this.tsParseInterfaceDeclaration(e));throw this.unexpected(null,80)},r.parseMethod=function(t,r,a,n,s,o,i){var d=e.prototype.parseMethod.call(this,t,r,a,n,s,o,i);if((d.abstract||"TSAbstractMethodDefinition"===d.type)&&(this.hasPlugin("estree")?d.value:d).body){var c=d.key;this.raise(Ex.AbstractMethodHasImplementation,d,{methodName:"Identifier"!==c.type||d.computed?"["+this.input.slice(this.offsetToSourcePos(c.start),this.offsetToSourcePos(c.end))+"]":c.name})}return d},r.tsParseTypeParameterName=function(){return this.parseIdentifier().name},r.shouldParseAsAmbientContext=function(){return!!this.getPluginOption("typescript","dts")},r.parse=function(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),e.prototype.parse.call(this)},r.getExpression=function(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),e.prototype.getExpression.call(this)},r.parseExportSpecifier=function(t,r,a,n){return!r&&n?(this.parseTypeOnlyImportExportSpecifier(t,!1,a),this.finishNode(t,"ExportSpecifier")):(t.exportKind="value",e.prototype.parseExportSpecifier.call(this,t,r,a,n))},r.parseImportSpecifier=function(t,r,a,n,s){return!r&&n?(this.parseTypeOnlyImportExportSpecifier(t,!0,a),this.finishNode(t,"ImportSpecifier")):(t.importKind="value",e.prototype.parseImportSpecifier.call(this,t,r,a,n,a?sv:ov))},r.parseTypeOnlyImportExportSpecifier=function(e,t,r){var a,n=t?"imported":"local",s=t?"local":"exported",o=e[n],i=!1,d=!0,c=o.loc.start;if(this.isContextual(93)){var l=this.parseIdentifier();if(this.isContextual(93)){var u=this.parseIdentifier();ib(this.state.type)?(i=!0,o=l,a=t?this.parseIdentifier():this.parseModuleExportName(),d=!1):(a=u,d=!1)}else ib(this.state.type)?(d=!1,a=t?this.parseIdentifier():this.parseModuleExportName()):(i=!0,o=l)}else ib(this.state.type)&&(i=!0,t?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());i&&r&&this.raise(t?Ex.TypeModifierIsUsedInTypeImports:Ex.TypeModifierIsUsedInTypeExports,c),e[n]=o,e[s]=a,e[t?"importKind":"exportKind"]=i?"type":"value",d&&this.eatContextual(93)&&(e[s]=t?this.parseIdentifier():this.parseModuleExportName()),e[s]||(e[s]=this.cloneIdentifier(e[n])),t&&this.checkIdentifier(e[s],i?sv:ov)},r.fillOptionalPropertiesForTSESLint=function(e){switch(e.type){case"ExpressionStatement":return void(null!=e.directive||(e.directive=void 0));case"RestElement":e.value=void 0;case"Identifier":case"ArrayPattern":case"AssignmentPattern":case"ObjectPattern":return null!=e.decorators||(e.decorators=[]),null!=e.optional||(e.optional=!1),void(null!=e.typeAnnotation||(e.typeAnnotation=void 0));case"TSParameterProperty":return null!=e.accessibility||(e.accessibility=void 0),null!=e.decorators||(e.decorators=[]),null!=e.override||(e.override=!1),null!=e.readonly||(e.readonly=!1),void(null!=e.static||(e.static=!1));case"TSEmptyBodyFunctionExpression":e.body=null;case"TSDeclareFunction":case"FunctionDeclaration":case"FunctionExpression":case"ClassMethod":case"ClassPrivateMethod":return null!=e.declare||(e.declare=!1),null!=e.returnType||(e.returnType=void 0),void(null!=e.typeParameters||(e.typeParameters=void 0));case"Property":return void(null!=e.optional||(e.optional=!1));case"TSMethodSignature":case"TSPropertySignature":null!=e.optional||(e.optional=!1);case"TSIndexSignature":return null!=e.accessibility||(e.accessibility=void 0),null!=e.readonly||(e.readonly=!1),void(null!=e.static||(e.static=!1));case"TSAbstractPropertyDefinition":case"PropertyDefinition":case"TSAbstractAccessorProperty":case"AccessorProperty":null!=e.declare||(e.declare=!1),null!=e.definite||(e.definite=!1),null!=e.readonly||(e.readonly=!1),null!=e.typeAnnotation||(e.typeAnnotation=void 0);case"TSAbstractMethodDefinition":case"MethodDefinition":return null!=e.accessibility||(e.accessibility=void 0),null!=e.decorators||(e.decorators=[]),null!=e.override||(e.override=!1),void(null!=e.optional||(e.optional=!1));case"ClassExpression":null!=e.id||(e.id=null);case"ClassDeclaration":return null!=e.abstract||(e.abstract=!1),null!=e.declare||(e.declare=!1),null!=e.decorators||(e.decorators=[]),null!=e.implements||(e.implements=[]),null!=e.superTypeArguments||(e.superTypeArguments=void 0),void(null!=e.typeParameters||(e.typeParameters=void 0));case"TSTypeAliasDeclaration":case"VariableDeclaration":return void(null!=e.declare||(e.declare=!1));case"VariableDeclarator":return void(null!=e.definite||(e.definite=!1));case"TSEnumDeclaration":return null!=e.const||(e.const=!1),void(null!=e.declare||(e.declare=!1));case"TSEnumMember":return void(null!=e.computed||(e.computed=!1));case"TSImportType":return null!=e.qualifier||(e.qualifier=null),void(null!=e.options||(e.options=null));case"TSInterfaceDeclaration":return null!=e.declare||(e.declare=!1),void(null!=e.extends||(e.extends=[]));case"TSMappedType":return null!=e.optional||(e.optional=!1),void(null!=e.readonly||(e.readonly=void 0));case"TSModuleDeclaration":return null!=e.declare||(e.declare=!1),void(null!=e.global||(e.global="global"===e.kind));case"TSTypeParameter":return null!=e.const||(e.const=!1),null!=e.in||(e.in=!1),void(null!=e.out||(e.out=!1))}},r.chStartsBindingIdentifierAndNotRelationalOperator=function(e,t){if(Mr(e)){if(jx.lastIndex=t,jx.test(this.input)){var r=this.codePointAtPos(jx.lastIndex);if(!Fr(r)&&92!==r)return!1}return!0}return 92===e},r.nextTokenIsIdentifierAndNotTSRelationalOperatorOnSameLine=function(){var e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifierAndNotRelationalOperator(t,e)},r.nextTokenIsIdentifierOrStringLiteralOnSameLine=function(){var e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifier(t,e)||34===t||39===t},o(t)}(e)},v8intrinsic:function(e){return function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.parseV8Intrinsic=function(){if(this.match(54)){var e=this.state.startLoc,t=this.startNode();if(this.next(),ob(this.state.type)){var r=this.parseIdentifierName(),a=this.createIdentifier(t,r);if(this.castNodeTo(a,"V8IntrinsicIdentifier"),this.match(10))return a}this.unexpected(e)}},r.parseExprAtom=function(t){return this.parseV8Intrinsic()||e.prototype.parseExprAtom.call(this,t)},o(t)}(e)},placeholders:function(e){return function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.parsePlaceholder=function(t){if(this.match(133)){var r=this.startNode();return this.next(),this.assertNoSpace(),r.name=e.prototype.parseIdentifier.call(this,!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(r,t)}},r.finishPlaceholder=function(e,t){var r=e;return r.expectedNode&&r.type||(r=this.finishNode(r,"Placeholder")),r.expectedNode=t,r},r.getTokenFromCode=function(t){37===t&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(133,2):e.prototype.getTokenFromCode.call(this,t)},r.parseExprAtom=function(t){return this.parsePlaceholder("Expression")||e.prototype.parseExprAtom.call(this,t)},r.parseIdentifier=function(t){return this.parsePlaceholder("Identifier")||e.prototype.parseIdentifier.call(this,t)},r.checkReservedWord=function(t,r,a,n){void 0!==t&&e.prototype.checkReservedWord.call(this,t,r,a,n)},r.cloneIdentifier=function(t){var r=e.prototype.cloneIdentifier.call(this,t);return"Placeholder"===r.type&&(r.expectedNode=t.expectedNode),r},r.cloneStringLiteral=function(t){return"Placeholder"===t.type?this.cloneIdentifier(t):e.prototype.cloneStringLiteral.call(this,t)},r.parseBindingAtom=function(){return this.parsePlaceholder("Pattern")||e.prototype.parseBindingAtom.call(this)},r.isValidLVal=function(t,r,a,n){return"Placeholder"===t||e.prototype.isValidLVal.call(this,t,r,a,n)},r.toAssignable=function(t,r){t&&"Placeholder"===t.type&&"Expression"===t.expectedNode?t.expectedNode="Pattern":e.prototype.toAssignable.call(this,t,r)},r.chStartsBindingIdentifier=function(t,r){if(e.prototype.chStartsBindingIdentifier.call(this,t,r))return!0;var a=this.nextTokenStart();return 37===this.input.charCodeAt(a)&&37===this.input.charCodeAt(a+1)},r.verifyBreakContinue=function(t,r){var a;"Placeholder"!==(null==(a=t.label)?void 0:a.type)&&e.prototype.verifyBreakContinue.call(this,t,r)},r.parseExpressionStatement=function(t,r){var a;if("Placeholder"!==r.type||null!=(a=r.extra)&&a.parenthesized)return e.prototype.parseExpressionStatement.call(this,t,r);if(this.match(14)){var n=t;return n.label=this.finishPlaceholder(r,"Identifier"),this.next(),n.body=e.prototype.parseStatementOrSloppyAnnexBFunctionDeclaration.call(this),this.finishNode(n,"LabeledStatement")}this.semicolon();var s=t;return s.name=r.name,this.finishPlaceholder(s,"Statement")},r.parseBlock=function(t,r,a){return this.parsePlaceholder("BlockStatement")||e.prototype.parseBlock.call(this,t,r,a)},r.parseFunctionId=function(t){return this.parsePlaceholder("Identifier")||e.prototype.parseFunctionId.call(this,t)},r.parseClass=function(t,r,a){var n=r?"ClassDeclaration":"ClassExpression";this.next();var s=this.state.strict,o=this.parsePlaceholder("Identifier");if(o){if(!(this.match(81)||this.match(133)||this.match(5))){if(a||!r)return t.id=null,t.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(t,n);throw this.raise(Nx.ClassNameIsRequired,this.state.startLoc)}t.id=o}else this.parseClassId(t,r,a);return e.prototype.parseClassSuper.call(this,t),t.body=this.parsePlaceholder("ClassBody")||e.prototype.parseClassBody.call(this,!!t.superClass,s),this.finishNode(t,n)},r.parseExport=function(t,r){var a=this.parsePlaceholder("Identifier");if(!a)return e.prototype.parseExport.call(this,t,r);var n=t;if(!this.isContextual(98)&&!this.match(12))return n.specifiers=[],n.source=null,n.declaration=this.finishPlaceholder(a,"Declaration"),this.finishNode(n,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");var s=this.startNode();return s.exported=a,n.specifiers=[this.finishNode(s,"ExportDefaultSpecifier")],e.prototype.parseExport.call(this,n,r)},r.isExportDefaultSpecifier=function(){if(this.match(65)){var t=this.nextTokenStart();if(this.isUnparsedContextual(t,"from")&&this.input.startsWith(fb(133),this.nextTokenStartSince(t+4)))return!0}return e.prototype.isExportDefaultSpecifier.call(this)},r.maybeParseExportDefaultSpecifier=function(t,r){var a;return!(null==(a=t.specifiers)||!a.length)||e.prototype.maybeParseExportDefaultSpecifier.call(this,t,r)},r.checkExport=function(t){var r=t.specifiers;null!=r&&r.length&&(t.specifiers=r.filter(function(e){return"Placeholder"===e.exported.type})),e.prototype.checkExport.call(this,t),t.specifiers=r},r.parseImport=function(t){var r=this.parsePlaceholder("Identifier");if(!r)return e.prototype.parseImport.call(this,t);if(t.specifiers=[],!this.isContextual(98)&&!this.match(12))return t.source=this.finishPlaceholder(r,"StringLiteral"),this.semicolon(),this.finishNode(t,"ImportDeclaration");var a=this.startNodeAtNode(r);(a.local=r,t.specifiers.push(this.finishNode(a,"ImportDefaultSpecifier")),this.eat(12))&&(this.maybeParseStarImportSpecifier(t)||this.parseNamedImportSpecifiers(t));return this.expectContextual(98),t.source=this.parseImportSource(),this.semicolon(),this.finishNode(t,"ImportDeclaration")},r.parseImportSource=function(){return this.parsePlaceholder("StringLiteral")||e.prototype.parseImportSource.call(this)},r.assertNoSpace=function(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Nx.UnexpectedSpace,this.state.lastTokEndLoc)},o(t)}(e)}},Lx=Object.keys(Fx),Ux=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.checkProto=function(e,t,r,a){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return r;var n=e.key;return"__proto__"===("Identifier"===n.type?n.name:n.value)?t?(this.raise(Rh.RecordNoProto,n),!0):(r&&(a?null===a.doubleProtoLoc&&(a.doubleProtoLoc=n.loc.start):this.raise(Rh.DuplicateProto,n)),!0):r},r.shouldExitDescending=function(e,t){return"ArrowFunctionExpression"===e.type&&this.offsetToSourcePos(e.start)===t},r.getExpression=function(){if(this.enterInitialScopes(),this.nextToken(),this.match(140))throw this.raise(Rh.ParseExpressionEmptyInput,this.state.startLoc);var e=this.parseExpression();if(!this.match(140))throw this.raise(Rh.ParseExpressionExpectsEOF,this.state.startLoc,{unexpected:this.input.codePointAt(this.state.start)});return this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,this.optionFlags&Ch&&(e.tokens=this.tokens),e},r.parseExpression=function(e,t){var r=this;return e?this.disallowInAnd(function(){return r.parseExpressionBase(t)}):this.allowInAnd(function(){return r.parseExpressionBase(t)})},r.parseExpressionBase=function(e){var t=this.state.startLoc,r=this.parseMaybeAssign(e);if(this.match(12)){var a=this.startNodeAt(t);for(a.expressions=[r];this.eat(12);)a.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(a.expressions),this.finishNode(a,"SequenceExpression")}return r},r.parseMaybeAssignDisallowIn=function(e,t){var r=this;return this.disallowInAnd(function(){return r.parseMaybeAssign(e,t)})},r.parseMaybeAssignAllowIn=function(e,t){var r=this;return this.allowInAnd(function(){return r.parseMaybeAssign(e,t)})},r.setOptionalParametersError=function(e){e.optionalParametersLoc=this.state.startLoc},r.parseMaybeAssign=function(e,t){var r,a=this.state.startLoc,n=this.isContextual(108);if(n&&this.prodParam.hasYield){this.next();var s=this.parseYield(a);return t&&(s=t.call(this,s,a)),s}e?r=!1:(e=new px,r=!0);var o=this.state.type;(10===o||ob(o))&&(this.state.potentialArrowAt=this.state.start);var i,d=this.parseMaybeConditional(e);if(t&&(d=t.call(this,d,a)),(i=this.state.type)>=29&&i<=33){var c=this.startNodeAt(a),l=this.state.value;if(c.operator=l,this.match(29)){this.toAssignable(d,!0),c.left=d;var u=a.index;null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=u&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=u&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=u&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null),null!=e.voidPatternLoc&&e.voidPatternLoc.index>=u&&(e.voidPatternLoc=null)}else c.left=d;return this.next(),c.right=this.parseMaybeAssign(),this.checkLVal(d,this.finishNode(c,"AssignmentExpression"),void 0,void 0,void 0,void 0,"||="===l||"&&="===l||"??="===l),c}if(r&&this.checkExpressionErrors(e,!0),n){var p=this.state.type;if((this.hasPlugin("v8intrinsic")?cb(p):cb(p)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(Rh.YieldNotInGeneratorFunction,a),this.parseYield(a)}return d},r.parseMaybeConditional=function(e){var t=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprOps(e);return this.shouldExitDescending(a,r)?a:this.parseConditional(a,t,e)},r.parseConditional=function(e,t,r){if(this.eat(17)){var a=this.startNodeAt(t);return a.test=e,a.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),a.alternate=this.parseMaybeAssign(),this.finishNode(a,"ConditionalExpression")}return e},r.parseMaybeUnaryOrPrivate=function(e){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(e)},r.parseExprOps=function(e){var t=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(a,r)?a:this.parseExprOp(a,t,-1)},r.parseExprOp=function(e,t,r){if(this.isPrivateName(e)){var a=this.getPrivateNameSV(e);(r>=gb(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(Rh.PrivateInExpectedIn,e,{identifierName:a}),this.classScope.usePrivateName(a,e.loc.start)}var n,s=this.state.type;if((n=s)>=39&&n<=59&&(this.prodParam.hasIn||!this.match(58))){var o=gb(s);if(o>r){if(39===s){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}var i=this.startNodeAt(t);i.left=e,i.operator=this.state.value;var d=41===s||42===s,c=40===s;if(c&&(o=gb(42)),this.next(),39===s&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(Rh.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);i.right=this.parseExprOpRightExpr(s,o);var l=this.finishNode(i,d||c?"LogicalExpression":"BinaryExpression"),u=this.state.type;if(c&&(41===u||42===u)||d&&40===u)throw this.raise(Rh.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(l,t,r)}}return e},r.parseExprOpRightExpr=function(e,t){var r=this,a=this.state.startLoc;if(39===e){switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(function(){return r.parseHackPipeBody()});case"fsharp":return this.withSoloAwaitPermittingContext(function(){return r.parseFSharpPipelineBody(t)})}if("smart"===this.getPluginOption("pipelineOperator","proposal"))return this.withTopicBindingContext(function(){if(r.prodParam.hasYield&&r.isContextual(108))throw r.raise(Rh.PipeBodyIsTighter,r.state.startLoc);return r.parseSmartPipelineBodyInStyle(r.parseExprOpBaseRightExpr(e,t),a)})}return this.parseExprOpBaseRightExpr(e,t)},r.parseExprOpBaseRightExpr=function(e,t){var r=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,57===e?t-1:t)},r.parseHackPipeBody=function(){var e,t=this.state.startLoc,r=this.parseMaybeAssign();return!yh.has(r.type)||null!=(e=r.extra)&&e.parenthesized||this.raise(Rh.PipeUnparenthesizedBody,t,{type:r.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(Rh.PipeTopicUnused,t),r},r.checkExponentialAfterUnary=function(e){this.match(57)&&this.raise(Rh.UnexpectedTokenUnaryExponentiation,e.argument)},r.parseMaybeUnary=function(e,t){var r=this.state.startLoc,a=this.isContextual(96);if(a&&this.recordAwaitIfAllowed()){this.next();var n=this.parseAwait(r);return t||this.checkExponentialAfterUnary(n),n}var s,o=this.match(34),i=this.startNode();if(s=this.state.type,rb[s]){i.operator=this.state.value,i.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");var d=this.match(89);if(this.next(),i.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&d){var c=i.argument;"Identifier"===c.type?this.raise(Rh.StrictDelete,i):this.hasPropertyAsPrivateName(c)&&this.raise(Rh.DeletePrivateField,i)}if(!o)return t||this.checkExponentialAfterUnary(i),this.finishNode(i,"UnaryExpression")}var l=this.parseUpdate(i,o,e);if(a){var u=this.state.type;if((this.hasPlugin("v8intrinsic")?cb(u):cb(u)&&!this.match(54))&&!this.isAmbiguousPrefixOrIdentifier())return this.raiseOverwrite(Rh.AwaitNotInAsyncContext,r),this.parseAwait(r)}return l},r.parseUpdate=function(e,t,r){if(t){var a=e;return this.checkLVal(a.argument,this.finishNode(a,"UpdateExpression")),e}var n=this.state.startLoc,s=this.parseExprSubscripts(r);if(this.checkExpressionErrors(r,!1))return s;for(;pb(this.state.type)&&!this.canInsertSemicolon();){var o=this.startNodeAt(n);o.operator=this.state.value,o.prefix=!1,o.argument=s,this.next(),this.checkLVal(s,s=this.finishNode(o,"UpdateExpression"))}return s},r.parseExprSubscripts=function(e){var t=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprAtom(e);return this.shouldExitDescending(a,r)?a:this.parseSubscripts(a,t)},r.parseSubscripts=function(e,t,r){var a={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,r,a),a.maybeAsyncArrow=!1}while(!a.stop);return e},r.parseSubscript=function(e,t,r,a){var n=this.state.type;if(!r&&15===n)return this.parseBind(e,t,r,a);if(mb(n))return this.parseTaggedTemplateExpression(e,t,a);var s=!1;if(18===n){if(r&&(this.raise(Rh.OptionalChainingNoNew,this.state.startLoc),40===this.lookaheadCharCode()))return this.stopParseSubscript(e,a);a.optionalChainMember=s=!0,this.next()}if(!r&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,a,s);var o=this.eat(0);return o||s||this.eat(16)?this.parseMember(e,t,a,o,s):this.stopParseSubscript(e,a)},r.stopParseSubscript=function(e,t){return t.stop=!0,e},r.parseMember=function(e,t,r,a,n){var s=this.startNodeAt(t);return s.object=e,s.computed=a,a?(s.property=this.parseExpression(),this.expect(3)):this.match(139)?("Super"===e.type&&this.raise(Rh.SuperPrivateField,t),this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),r.optionalChainMember?(s.optional=n,this.finishNode(s,"OptionalMemberExpression")):this.finishNode(s,"MemberExpression")},r.parseBind=function(e,t,r,a){var n=this.startNodeAt(t);return n.object=e,this.next(),n.callee=this.parseNoCallExpr(),a.stop=!0,this.parseSubscripts(this.finishNode(n,"BindExpression"),t,r)},r.parseCoverCallAndAsyncArrowHead=function(e,t,r,a){var n=this.state.maybeInArrowParameters,s=null;this.state.maybeInArrowParameters=!0,this.next();var o=this.startNodeAt(t);o.callee=e;var i=r.maybeAsyncArrow,d=r.optionalChainMember;i&&(this.expressionScope.enter(new dx(2)),s=new px),d&&(o.optional=a),o.arguments=a?this.parseCallExpressionArguments():this.parseCallExpressionArguments("Super"!==e.type,o,s);var c=this.finishCallExpression(o,d);return i&&this.shouldParseAsyncArrow()&&!a?(r.stop=!0,this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),c=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),c)):(i&&(this.checkExpressionErrors(s,!0),this.expressionScope.exit()),this.toReferencedArguments(c)),this.state.maybeInArrowParameters=n,c},r.toReferencedArguments=function(e,t){this.toReferencedListDeep(e.arguments,t)},r.parseTaggedTemplateExpression=function(e,t,r){var a=this.startNodeAt(t);return a.tag=e,a.quasi=this.parseTemplate(!0),r.optionalChainMember&&this.raise(Rh.OptionalChainingNoTemplate,t),this.finishNode(a,"TaggedTemplateExpression")},r.atPossibleAsyncArrow=function(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start===5&&this.offsetToSourcePos(e.start)===this.state.potentialArrowAt},r.finishCallExpression=function(e,t){if("Import"===e.callee.type)if(0===e.arguments.length||e.arguments.length>2)this.raise(Rh.ImportCallArity,e);else for(var r=0,a=e.arguments;r<a.length;r++){var n=a[r];"SpreadElement"===n.type&&this.raise(Rh.ImportCallSpreadArgument,n)}return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")},r.parseCallExpressionArguments=function(e,t,r){var a=[],n=!0,s=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(11);){if(n)n=!1;else if(this.expect(12),this.match(11)){t&&this.addTrailingCommaExtraToNode(t),this.next();break}a.push(this.parseExprListItem(11,!1,r,e))}return this.state.inFSharpPipelineDirectBody=s,a},r.shouldParseAsyncArrow=function(){return this.match(19)&&!this.canInsertSemicolon()},r.parseAsyncArrowFromCallExpression=function(e,t){var r;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(r=t.extra)?void 0:r.trailingCommaLoc),t.innerComments&&Jv(e,t.innerComments),t.callee.trailingComments&&Jv(e,t.callee.trailingComments),e},r.parseNoCallExpr=function(){var e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)},r.parseExprAtom=function(e){var t,r=null,a=this.state.type;switch(a){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaPropertyOrPhaseCall(t):this.match(10)?this.optionFlags&_h?this.parseImportCall(t):this.finishNode(t,"Import"):(this.raise(Rh.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:var n=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(n);case 0:return this.parseArrayLike(3,!1,e);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:r=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(r,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:t=this.startNode(),this.next(),t.object=null;var s=t.callee=this.parseNoCallExpr();if("MemberExpression"===s.type)return this.finishNode(t,"BindExpression");throw this.raise(Rh.UnsupportedBind,s);case 139:return this.raise(Rh.PrivateInExpectedIn,this.state.startLoc,{identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:var o=this.getPluginOption("pipelineOperator","proposal");if(o)return this.parseTopicReference(o);throw this.unexpected();case 47:var i=this.input.codePointAt(this.nextTokenStart());if(Mr(i)||62===i)throw this.expectOnePlugin(["jsx","flow","typescript"]);throw this.unexpected();default:if(137===a)return this.parseDecimalLiteral(this.state.value);if(2===a||1===a)return this.parseArrayLike(2===this.state.type?4:3,!0);if(6===a||7===a)return this.parseObjectLike(6===this.state.type?9:8,!1,!0);if(ob(a)){if(this.isContextual(127)&&123===this.lookaheadInLineCharCode())return this.parseModuleExpression();var d=this.state.potentialArrowAt===this.state.start,c=this.state.containsEsc,l=this.parseIdentifier();if(!c&&"async"===l.name&&!this.canInsertSemicolon()){var u=this.state.type;if(68===u)return this.resetPreviousNodeTrailingComments(l),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(l));if(ob(u))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(l)):l;if(90===u)return this.resetPreviousNodeTrailingComments(l),this.parseDo(this.startNodeAtNode(l),!0)}return d&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(l),[l],!1)):l}throw this.unexpected()}},r.parseTopicReferenceThenEqualsSign=function(e,t){var r=this.getPluginOption("pipelineOperator","proposal");if(r)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=dh(this.state.endLoc,-1),this.parseTopicReference(r);throw this.unexpected()},r.parseTopicReference=function(e){var t=this.startNode(),r=this.state.startLoc,a=this.state.type;return this.next(),this.finishTopicReference(t,r,e,a)},r.finishTopicReference=function(e,t,r,a){if(this.testTopicReferenceConfiguration(r,t,a))return"hack"===r?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(Rh.PipeTopicUnbound,t),this.registerTopicReference(),this.finishNode(e,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(Rh.PrimaryTopicNotAllowed,t),this.registerTopicReference(),this.finishNode(e,"PipelinePrimaryTopicReference"));throw this.raise(Rh.PipeTopicUnconfiguredToken,t,{token:fb(a)})},r.testTopicReferenceConfiguration=function(e,t,r){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:fb(r)}]);case"smart":return 27===r;default:throw this.raise(Rh.PipeTopicRequiresHackPipes,t)}},r.parseAsyncArrowUnaryFunction=function(e){this.prodParam.enter(zv(!0,this.prodParam.hasYield));var t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(Rh.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(e,t,!0)},r.parseDo=function(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();var r=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(Gv),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=r,this.finishNode(e,"DoExpression")},r.parseSuper=function(){var e=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper?this.optionFlags&Th||this.raise(Rh.SuperNotAllowed,e):this.scope.allowSuper||this.optionFlags&Th||this.raise(Rh.UnexpectedSuper,e),this.match(10)||this.match(0)||this.match(16)||this.raise(Rh.UnsupportedSuper,e),this.finishNode(e,"Super")},r.parsePrivateName=function(){var e=this.startNode(),t=this.startNodeAt(dh(this.state.startLoc,1)),r=this.state.value;return this.next(),e.id=this.createIdentifier(t,r),this.finishNode(e,"PrivateName")},r.parseFunctionOrFunctionSent=function(){var e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){var t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)},r.parseMetaProperty=function(e,t,r){e.meta=t;var a=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==r||a)&&this.raise(Rh.UnsupportedMetaProperty,e.property,{target:t.name,onlyValidPropertyName:r}),this.finishNode(e,"MetaProperty")},r.parseImportMetaPropertyOrPhaseCall=function(e){if(this.next(),this.isContextual(105)||this.isContextual(97)){var t=this.isContextual(105);return this.expectPlugin(t?"sourcePhaseImports":"deferredImportEvaluation"),this.next(),e.phase=t?"source":"defer",this.parseImportCall(e)}var r=this.createIdentifierAt(this.startNodeAtNode(e),"import",this.state.lastTokStartLoc);return this.isContextual(101)&&(this.inModule||this.raise(Rh.ImportMetaOutsideModule,r),this.sawUnambiguousESM=!0),this.parseMetaProperty(e,r,"meta")},r.parseLiteralAtNode=function(e,t,r){return this.addExtra(r,"rawValue",e),this.addExtra(r,"raw",this.input.slice(this.offsetToSourcePos(r.start),this.state.end)),r.value=e,this.next(),this.finishNode(r,t)},r.parseLiteral=function(e,t){var r=this.startNode();return this.parseLiteralAtNode(e,t,r)},r.parseStringLiteral=function(e){return this.parseLiteral(e,"StringLiteral")},r.parseNumericLiteral=function(e){return this.parseLiteral(e,"NumericLiteral")},r.parseBigIntLiteral=function(e){return this.parseLiteral(e,"BigIntLiteral")},r.parseDecimalLiteral=function(e){return this.parseLiteral(e,"DecimalLiteral")},r.parseRegExpLiteral=function(e){var t=this.startNode();return this.addExtra(t,"raw",this.input.slice(this.offsetToSourcePos(t.start),this.state.end)),t.pattern=e.pattern,t.flags=e.flags,this.next(),this.finishNode(t,"RegExpLiteral")},r.parseBooleanLiteral=function(e){var t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")},r.parseNullLiteral=function(){var e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")},r.parseParenAndDistinguishExpression=function(e){var t,r=this.state.startLoc;this.next(),this.expressionScope.enter(new dx(1));var a=this.state.maybeInArrowParameters,n=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;for(var s,o,i=this.state.startLoc,d=[],c=new px,l=!0;!this.match(11);){if(l)l=!1;else if(this.expect(12,null===c.optionalParametersLoc?null:c.optionalParametersLoc),this.match(11)){o=this.state.startLoc;break}if(this.match(21)){var u=this.state.startLoc;if(s=this.state.startLoc,d.push(this.parseParenItem(this.parseRestBinding(),u)),!this.checkCommaAfterRest(41))break}else d.push(this.parseMaybeAssignAllowInOrVoidPattern(11,c,this.parseParenItem))}var p=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=a,this.state.inFSharpPipelineDirectBody=n;var f=this.startNodeAt(r);return e&&this.shouldParseArrow(d)&&(f=this.parseArrow(f))?(this.checkDestructuringPrivate(c),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(f,d,!1),f):(this.expressionScope.exit(),d.length||this.unexpected(this.state.lastTokStartLoc),o&&this.unexpected(o),s&&this.unexpected(s),this.checkExpressionErrors(c,!0),this.toReferencedListDeep(d,!0),d.length>1?((t=this.startNodeAt(i)).expressions=d,this.finishNode(t,"SequenceExpression"),this.resetEndLocation(t,p)):t=d[0],this.wrapParenthesis(r,t))},r.wrapParenthesis=function(e,t){if(!(this.optionFlags&Ih))return this.addExtra(t,"parenthesized",!0),this.addExtra(t,"parenStart",e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;var r=this.startNodeAt(e);return r.expression=t,this.finishNode(r,"ParenthesizedExpression")},r.shouldParseArrow=function(e){return!this.canInsertSemicolon()},r.parseArrow=function(e){if(this.eat(19))return e},r.parseParenItem=function(e,t){return e},r.parseNewOrNewTarget=function(){var e=this.startNode();if(this.next(),this.match(16)){var t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();var r=this.parseMetaProperty(e,t,"target");return this.scope.allowNewTarget||this.raise(Rh.UnexpectedNewTarget,r),r}return this.parseNew(e)},r.parseNew=function(e){if(this.parseNewCallee(e),this.eat(10)){var t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,"NewExpression")},r.parseNewCallee=function(e){var t=this.match(83),r=this.parseNoCallExpr();e.callee=r,!t||"Import"!==r.type&&"ImportExpression"!==r.type||this.raise(Rh.ImportCallNotNewExpression,r)},r.parseTemplateElement=function(e){var t=this.state,r=t.start,a=t.startLoc,n=t.end,s=t.value,o=r+1,i=this.startNodeAt(dh(a,1));null===s&&(e||this.raise(Rh.InvalidEscapeSequenceTemplate,dh(this.state.firstInvalidTemplateEscapePos,1)));var d=this.match(24),c=d?-1:-2,l=n+c;i.value={raw:this.input.slice(o,l).replace(/\r\n?/g,"\n"),cooked:null===s?null:s.slice(1,c)},i.tail=d,this.next();var u=this.finishNode(i,"TemplateElement");return this.resetEndLocation(u,dh(this.state.lastTokEndLoc,c)),u},r.parseTemplate=function(e){for(var t=this.startNode(),r=this.parseTemplateElement(e),a=[r],n=[];!r.tail;)n.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),a.push(r=this.parseTemplateElement(e));return t.expressions=n,t.quasis=a,this.finishNode(t,"TemplateLiteral")},r.parseTemplateSubstitution=function(){return this.parseExpression()},r.parseObjectLike=function(e,t,r,a){r&&this.expectPlugin("recordAndTuple");var n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;var s=!1,o=!0,i=this.startNode();for(i.properties=[],this.next();!this.match(e);){if(o)o=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(i);break}var d=void 0;t?d=this.parseBindingProperty():(d=this.parsePropertyDefinition(a),s=this.checkProto(d,r,s,a)),r&&!this.isObjectProperty(d)&&"SpreadElement"!==d.type&&this.raise(Rh.InvalidRecordProperty,d),d.shorthand&&this.addExtra(d,"shorthand",!0),i.properties.push(d)}this.next(),this.state.inFSharpPipelineDirectBody=n;var c="ObjectExpression";return t?c="ObjectPattern":r&&(c="RecordExpression"),this.finishNode(i,c)},r.addTrailingCommaExtraToNode=function(e){this.addExtra(e,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)},r.maybeAsyncOrAccessorProp=function(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))},r.parsePropertyDefinition=function(e){var t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(Rh.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)t.push(this.parseDecorator());var r,a=this.startNode(),n=!1,s=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(a.decorators=t,t=[]),a.method=!1,e&&(r=this.state.startLoc);var o=this.eat(55);this.parsePropertyNamePrefixOperator(a);var i=this.state.containsEsc;if(this.parsePropertyName(a,e),!o&&!i&&this.maybeAsyncOrAccessorProp(a)){var d=a.key,c=d.name;"async"!==c||this.hasPrecedingLineBreak()||(n=!0,this.resetPreviousNodeTrailingComments(d),o=this.eat(55),this.parsePropertyName(a)),"get"!==c&&"set"!==c||(s=!0,this.resetPreviousNodeTrailingComments(d),a.kind=c,this.match(55)&&(o=!0,this.raise(Rh.AccessorIsGenerator,this.state.curPosition(),{kind:c}),this.next()),this.parsePropertyName(a))}return this.parseObjPropValue(a,r,o,n,!1,s,e)},r.getGetterSetterExpectedParamCount=function(e){return"get"===e.kind?0:1},r.getObjectOrClassMethodParams=function(e){return e.params},r.checkGetterSetterParams=function(e){var t,r=this.getGetterSetterExpectedParamCount(e),a=this.getObjectOrClassMethodParams(e);a.length!==r&&this.raise("get"===e.kind?Rh.BadGetterArity:Rh.BadSetterArity,e),"set"===e.kind&&"RestElement"===(null==(t=a[a.length-1])?void 0:t.type)&&this.raise(Rh.BadSetterRestParameter,e)},r.parseObjectMethod=function(e,t,r,a,n){if(n){var s=this.parseMethod(e,t,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(s),s}if(r||t||this.match(10))return a&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,r,!1,!1,"ObjectMethod")},r.parseObjectProperty=function(e,t,r,a){if(e.shorthand=!1,this.eat(14))return e.value=r?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowInOrVoidPattern(8,a),this.finishObjectProperty(e);if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),r)e.value=this.parseMaybeDefault(t,this.cloneIdentifier(e.key));else if(this.match(29)){var n=this.state.startLoc;null!=a?null===a.shorthandAssignLoc&&(a.shorthandAssignLoc=n):this.raise(Rh.InvalidCoverInitializedName,n),e.value=this.parseMaybeDefault(t,this.cloneIdentifier(e.key))}else e.value=this.cloneIdentifier(e.key);return e.shorthand=!0,this.finishObjectProperty(e)}},r.finishObjectProperty=function(e){return this.finishNode(e,"ObjectProperty")},r.parseObjPropValue=function(e,t,r,a,n,s,o){var i=this.parseObjectMethod(e,r,a,n,s)||this.parseObjectProperty(e,t,n,o);return i||this.unexpected(),i},r.parsePropertyName=function(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{var r,a=this.state,n=a.type,s=a.value;if(ib(n))r=this.parseIdentifier(!0);else switch(n){case 135:r=this.parseNumericLiteral(s);break;case 134:r=this.parseStringLiteral(s);break;case 136:r=this.parseBigIntLiteral(s);break;case 139:var o=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=o):this.raise(Rh.UnexpectedPrivateField,o),r=this.parsePrivateName();break;default:if(137===n){r=this.parseDecimalLiteral(s);break}this.unexpected()}e.key=r,139!==n&&(e.computed=!1)}},r.initFunction=function(e,t){e.id=null,e.generator=!1,e.async=t},r.parseMethod=function(e,t,r,a,n,s,o){void 0===o&&(o=!1),this.initFunction(e,r),e.generator=t,this.scope.enter(_b|Eb|(o?Ib:0)|(n?Sb:0)),this.prodParam.enter(zv(r,e.generator)),this.parseFunctionParams(e,a);var i=this.parseFunctionBodyAndFinish(e,s,!0);return this.prodParam.exit(),this.scope.exit(),i},r.parseArrayLike=function(e,t,r){t&&this.expectPlugin("recordAndTuple");var a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;var n=this.startNode();return this.next(),n.elements=this.parseExprList(e,!t,r,n),this.state.inFSharpPipelineDirectBody=a,this.finishNode(n,t?"TupleExpression":"ArrayExpression")},r.parseArrowExpression=function(e,t,r,a){this.scope.enter(_b|jb);var n=zv(r,!1);!this.match(5)&&this.prodParam.hasIn&&(n|=Vv),this.prodParam.enter(n),this.initFunction(e,r);var s=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,a)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=s,this.finishNode(e,"ArrowFunctionExpression")},r.setArrowFunctionParameters=function(e,t,r){this.toAssignableList(t,r,!1),e.params=t},r.parseFunctionBodyAndFinish=function(e,t,r){return void 0===r&&(r=!1),this.parseFunctionBody(e,!1,r),this.finishNode(e,t)},r.parseFunctionBody=function(e,t,r){var a=this;void 0===r&&(r=!1);var n=t&&!this.match(5);if(this.expressionScope.enter(lx()),n)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{var s=this.state.strict,o=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|Wv),e.body=this.parseBlock(!0,!1,function(n){var o=!a.isSimpleParamList(e.params);n&&o&&a.raise(Rh.IllegalLanguageModeDirective,"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end);var i=!s&&a.state.strict;a.checkParams(e,!(a.state.strict||t||r||o),t,i),a.state.strict&&e.id&&a.checkIdentifier(e.id,rv,i)}),this.prodParam.exit(),this.state.labels=o}this.expressionScope.exit()},r.isSimpleParameter=function(e){return"Identifier"===e.type},r.isSimpleParamList=function(e){for(var t=0,r=e.length;t<r;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0},r.checkParams=function(e,t,r,a){void 0===a&&(a=!0);for(var n=!t&&new Set,s={type:"FormalParameters"},o=0,i=e.params;o<i.length;o++){var d=i[o];this.checkLVal(d,s,Jb,n,a)}},r.parseExprList=function(e,t,r,a){for(var n=[],s=!0;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){a&&this.addTrailingCommaExtraToNode(a),this.next();break}n.push(this.parseExprListItem(e,t,r))}return n},r.parseExprListItem=function(e,t,r,a){var n;if(this.match(12))t||this.raise(Rh.UnexpectedToken,this.state.curPosition(),{unexpected:","}),n=null;else if(this.match(21)){var s=this.state.startLoc;n=this.parseParenItem(this.parseSpread(r),s)}else if(this.match(17)){this.expectPlugin("partialApplication"),a||this.raise(Rh.UnexpectedArgumentPlaceholder,this.state.startLoc);var o=this.startNode();this.next(),n=this.finishNode(o,"ArgumentPlaceholder")}else n=this.parseMaybeAssignAllowInOrVoidPattern(e,r,this.parseParenItem);return n},r.parseIdentifier=function(e){var t=this.startNode(),r=this.parseIdentifierName(e);return this.createIdentifier(t,r)},r.createIdentifier=function(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")},r.createIdentifierAt=function(e,t,r){return e.name=t,e.loc.identifierName=t,this.finishNodeAt(e,"Identifier",r)},r.parseIdentifierName=function(e){var t,r=this.state,a=r.startLoc,n=r.type;ib(n)?t=this.state.value:this.unexpected();var s=n<=92;return e?s&&this.replaceToken(132):this.checkReservedWord(t,a,s,!1),this.next(),t},r.checkReservedWord=function(e,t,r,a){if(!(e.length>10)&&function(e){return hb.has(e)}(e))if(r&&Jr(e))this.raise(Rh.UnexpectedKeyword,t,{keyword:e});else if((this.state.strict?a?Xr:zr:Hr)(e,this.inModule))this.raise(Rh.UnexpectedReservedWord,t,{reservedWord:e});else if("yield"===e){if(this.prodParam.hasYield)return void this.raise(Rh.YieldBindingIdentifier,t)}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(Rh.AwaitBindingIdentifier,t);if(this.scope.inStaticBlock)return void this.raise(Rh.AwaitBindingIdentifierInStaticBlock,t);this.expressionScope.recordAsyncArrowParametersError(t)}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(Rh.ArgumentsInClass,t)},r.recordAwaitIfAllowed=function(){var e=this.prodParam.hasAwait;return e&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),e},r.parseAwait=function(e){var t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(Rh.AwaitExpressionFormalParameter,t),this.eat(55)&&this.raise(Rh.ObsoleteAwaitStar,t),this.scope.inFunction||this.optionFlags&jh||(this.isAmbiguousPrefixOrIdentifier()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(t.argument=this.parseMaybeUnary(null,!0)),this.finishNode(t,"AwaitExpression")},r.isAmbiguousPrefixOrIdentifier=function(){if(this.hasPrecedingLineBreak())return!0;var e=this.state.type;return 53===e||10===e||0===e||mb(e)||102===e&&!this.state.containsEsc||138===e||56===e||this.hasPlugin("v8intrinsic")&&54===e},r.parseYield=function(e){var t=this.startNodeAt(e);this.expressionScope.recordParameterInitializerError(Rh.YieldInParameter,t);var r=!1,a=null;if(!this.hasPrecedingLineBreak())switch(r=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!r)break;default:a=this.parseMaybeAssign()}return t.delegate=r,t.argument=a,this.finishNode(t,"YieldExpression")},r.parseImportCall=function(e){if(this.next(),e.source=this.parseMaybeAssignAllowIn(),e.options=null,this.eat(12))if(this.match(11))this.addTrailingCommaExtraToNode(e.source);else if(e.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&(this.addTrailingCommaExtraToNode(e.options),!this.match(11))){do{this.parseMaybeAssignAllowIn()}while(this.eat(12)&&!this.match(11));this.raise(Rh.ImportCallArity,e)}return this.expect(11),this.finishNode(e,"ImportExpression")},r.checkPipelineAtInfixOperator=function(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(Rh.PipelineHeadSequenceExpression,t)},r.parseSmartPipelineBodyInStyle=function(e,t){if(this.isSimpleReference(e)){var r=this.startNodeAt(t);return r.callee=e,this.finishNode(r,"PipelineBareFunction")}var a=this.startNodeAt(t);return this.checkSmartPipeTopicBodyEarlyErrors(t),a.expression=e,this.finishNode(a,"PipelineTopicExpression")},r.isSimpleReference=function(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}},r.checkSmartPipeTopicBodyEarlyErrors=function(e){if(this.match(19))throw this.raise(Rh.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(Rh.PipelineTopicUnused,e)},r.withTopicBindingContext=function(e){var t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}},r.withSmartMixTopicForbiddingContext=function(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();var t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}},r.withSoloAwaitPermittingContext=function(e){var t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}},r.allowInAnd=function(e){var t=this.prodParam.currentFlags();if(Vv&~t){this.prodParam.enter(t|Vv);try{return e()}finally{this.prodParam.exit()}}return e()},r.disallowInAnd=function(e){var t=this.prodParam.currentFlags();if(Vv&t){this.prodParam.enter(t&~Vv);try{return e()}finally{this.prodParam.exit()}}return e()},r.registerTopicReference=function(){this.state.topicContext.maxTopicIndex=0},r.topicReferenceIsAllowedInCurrentContext=function(){return this.state.topicContext.maxNumOfResolvableTopics>=1},r.topicReferenceWasUsedInCurrentContext=function(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0},r.parseFSharpPipelineBody=function(e){var t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;var r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;var a=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=r,a},r.parseModuleExpression=function(){this.expectPlugin("moduleBlocks");var e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);var t=this.startNodeAt(this.state.endLoc);this.next();var r=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,"module")}finally{r()}return this.finishNode(e,"ModuleExpression")},r.parseVoidPattern=function(e){this.expectPlugin("discardBinding");var t=this.startNode();return null!=e&&(e.voidPatternLoc=this.state.startLoc),this.next(),this.finishNode(t,"VoidPattern")},r.parseMaybeAssignAllowInOrVoidPattern=function(e,t,r){if(null!=t&&this.match(88)){var a=this.lookaheadCharCode();if(44===a||a===(3===e?93:8===e?125:41)||61===a)return this.parseMaybeDefault(this.state.startLoc,this.parseVoidPattern(t))}return this.parseMaybeAssignAllowIn(t,r)},r.parsePropertyNamePrefixOperator=function(e){},o(t)}(Rx),qx={kind:Qv},Gx={kind:Zv},Wx=0,Vx=1,Hx=2,zx=4,Kx=8,Xx=0,Jx=1,Yx=2,$x=4,Qx=8,Zx=/(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/,eR=new RegExp("in(?:stanceof)?","y");var tR=function(e){function t(){return e.apply(this,arguments)||this}c(t,e);var r=t.prototype;return r.parseTopLevel=function(e,t){return e.program=this.parseProgram(t,140,"module"===this.options.sourceType?"module":"script"),e.comments=this.comments,this.optionFlags&Ch&&(e.tokens=function(e,t,r){for(var a=0;a<e.length;a++){var n=e[a],s=n.type;if("number"==typeof s){if(139===s){var o=n.loc,i=n.start,d=n.value,c=n.end,l=i+1,u=dh(o.start,1);e.splice(a,1,new ax({type:yb(27),value:"#",start:i,end:l,startLoc:o.start,endLoc:u}),new ax({type:yb(132),value:d,start:l,end:c,startLoc:u,endLoc:o.end})),a++;continue}if(mb(s)){var p=n.loc,f=n.start,g=n.value,m=n.end,y=f+1,h=dh(p.start,1),b=void 0;b=96===t.charCodeAt(f-r)?new ax({type:yb(22),value:"`",start:f,end:y,startLoc:p.start,endLoc:h}):new ax({type:yb(8),value:"}",start:f,end:y,startLoc:p.start,endLoc:h});var v=void 0,x=void 0,R=void 0,j=void 0;24===s?(x=m-1,R=dh(p.end,-1),v=null===g?null:g.slice(1,-1),j=new ax({type:yb(22),value:"`",start:x,end:m,startLoc:R,endLoc:p.end})):(x=m-2,R=dh(p.end,-2),v=null===g?null:g.slice(1,-2),j=new ax({type:yb(23),value:"${",start:x,end:m,startLoc:R,endLoc:p.end})),e.splice(a,1,b,new ax({type:yb(20),value:v,start:y,end:x,startLoc:h,endLoc:R}),j),a+=2;continue}n.type=yb(s)}}return e}(this.tokens,this.input,this.startIndex)),this.finishNode(e,"File")},r.parseProgram=function(e,t,r){if(e.sourceType=r,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule){if(!(this.optionFlags&Ah)&&this.scope.undefinedExports.size>0)for(var a=0,n=Array.from(this.scope.undefinedExports);a<n.length;a++){var s=n[a],o=s[0],i=s[1];this.raise(Rh.ModuleExportUndefined,i,{localName:o})}this.addExtra(e,"topLevelAwait",this.state.hasTopLevelAwait)}return 140===t?this.finishNode(e,"Program"):this.finishNodeAt(e,"Program",dh(this.state.startLoc,-1))},r.stmtToDirective=function(e){var t=this.castNodeTo(e,"Directive"),r=this.castNodeTo(e.expression,"DirectiveLiteral"),a=r.value,n=this.input.slice(this.offsetToSourcePos(r.start),this.offsetToSourcePos(r.end)),s=r.value=n.slice(1,-1);return this.addExtra(r,"raw",n),this.addExtra(r,"rawValue",s),this.addExtra(r,"expressionValue",a),t.value=r,delete e.expression,t},r.parseInterpreterDirective=function(){if(!this.match(28))return null;var e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")},r.isLet=function(){return!!this.isContextual(100)&&this.hasFollowingBindingAtom()},r.isUsing=function(){return!!this.isContextual(107)&&this.nextTokenIsIdentifierOnSameLine()},r.isForUsing=function(){if(!this.isContextual(107))return!1;var e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);if(this.isUnparsedContextual(e,"of")){var r=this.lookaheadCharCodeSince(e+2);if(61!==r&&58!==r&&59!==r)return!1}return!(!this.chStartsBindingIdentifier(t,e)&&!this.isUnparsedContextual(e,"void"))},r.nextTokenIsIdentifierOnSameLine=function(){var e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifier(t,e)},r.isAwaitUsing=function(){if(!this.isContextual(96))return!1;var e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);var t=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(t,e))return!0}return!1},r.chStartsBindingIdentifier=function(e,t){if(Mr(e)){if(eR.lastIndex=t,eR.test(this.input)){var r=this.codePointAtPos(eR.lastIndex);if(!Fr(r)&&92!==r)return!1}return!0}return 92===e},r.chStartsBindingPattern=function(e){return 91===e||123===e},r.hasFollowingBindingAtom=function(){var e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)},r.hasInLineFollowingBindingIdentifierOrBrace=function(){var e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return 123===t||this.chStartsBindingIdentifier(t,e)},r.allowsUsing=function(){return(this.scope.inModule||!this.scope.inTopLevel)&&!this.scope.inBareCaseStatement},r.parseModuleItem=function(){return this.parseStatementLike(Jx|Yx|$x|Qx)},r.parseStatementListItem=function(){return this.parseStatementLike(Yx|$x|(!this.options.annexB||this.state.strict?0:Qx))},r.parseStatementOrSloppyAnnexBFunctionDeclaration=function(e){void 0===e&&(e=!1);var t=Xx;return this.options.annexB&&!this.state.strict&&(t|=$x,e&&(t|=Qx)),this.parseStatementLike(t)},r.parseStatement=function(){return this.parseStatementLike(Xx)},r.parseStatementLike=function(e){var t=null;return this.match(26)&&(t=this.parseDecorators(!0)),this.parseStatementContent(e,t)},r.parseStatementContent=function(e,t){var r=this.state.type,a=this.startNode(),n=!!(e&Yx),s=!!(e&$x),o=e&Jx;switch(r){case 60:return this.parseBreakContinueStatement(a,!0);case 63:return this.parseBreakContinueStatement(a,!1);case 64:return this.parseDebuggerStatement(a);case 90:return this.parseDoWhileStatement(a);case 91:return this.parseForStatement(a);case 68:if(46===this.lookaheadCharCode())break;return s||this.raise(this.state.strict?Rh.StrictFunction:this.options.annexB?Rh.SloppyFunctionAnnexB:Rh.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(a,!1,!n&&s);case 80:return n||this.unexpected(),this.parseClass(this.maybeTakeDecorators(t,a),!0);case 69:return this.parseIfStatement(a);case 70:return this.parseReturnStatement(a);case 71:return this.parseSwitchStatement(a);case 72:return this.parseThrowStatement(a);case 73:return this.parseTryStatement(a);case 96:if(this.isAwaitUsing())return this.allowsUsing()?n?this.recordAwaitIfAllowed()||this.raise(Rh.AwaitUsingNotInAsyncContext,a):this.raise(Rh.UnexpectedLexicalDeclaration,a):this.raise(Rh.UnexpectedUsingDeclaration,a),this.next(),this.parseVarStatement(a,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.allowsUsing()?n||this.raise(Rh.UnexpectedLexicalDeclaration,this.state.startLoc):this.raise(Rh.UnexpectedUsingDeclaration,this.state.startLoc),this.parseVarStatement(a,"using");case 100:if(this.state.containsEsc)break;var i=this.nextTokenStart(),d=this.codePointAtPos(i);if(91!==d){if(!n&&this.hasFollowingLineBreak())break;if(!this.chStartsBindingIdentifier(d,i)&&123!==d)break}case 75:n||this.raise(Rh.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:var c=this.state.value;return this.parseVarStatement(a,c);case 92:return this.parseWhileStatement(a);case 76:return this.parseWithStatement(a);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(a);case 83:var l=this.lookaheadCharCode();if(40===l||46===l)break;case 82:var u;return this.optionFlags&Sh||o||this.raise(Rh.UnexpectedImportExport,this.state.startLoc),this.next(),u=83===r?this.parseImport(a):this.parseExport(a,t),this.assertModuleNodeAllowed(u),u;default:if(this.isAsyncFunction())return n||this.raise(Rh.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(a,!0,!n&&s)}var p=this.state.value,f=this.parseExpression();return ob(r)&&"Identifier"===f.type&&this.eat(14)?this.parseLabeledStatement(a,p,f,e):this.parseExpressionStatement(a,f,t)},r.assertModuleNodeAllowed=function(e){this.optionFlags&Sh||this.inModule||this.raise(Rh.ImportOutsideModule,e)},r.decoratorsEnabledBeforeExport=function(){return!!this.hasPlugin("decorators-legacy")||this.hasPlugin("decorators")&&!1!==this.getPluginOption("decorators","decoratorsBeforeExport")},r.maybeTakeDecorators=function(e,t,r){if(e){var a,n;if(null!=(a=t.decorators)&&a.length)"boolean"!=typeof this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(Rh.DecoratorsBeforeAfterExport,t.decorators[0]),(n=t.decorators).unshift.apply(n,e);else t.decorators=e;this.resetStartLocationFromNode(t,e[0]),r&&this.resetStartLocationFromNode(r,t)}return t},r.canHaveLeadingDecorator=function(){return this.match(80)},r.parseDecorators=function(e){var t=[];do{t.push(this.parseDecorator())}while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(Rh.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(Rh.UnexpectedLeadingDecorator,this.state.startLoc);return t},r.parseDecorator=function(){this.expectOnePlugin(["decorators","decorators-legacy"]);var e=this.startNode();if(this.next(),this.hasPlugin("decorators")){var t,r=this.state.startLoc;if(this.match(10)){var a=this.state.startLoc;this.next(),t=this.parseExpression(),this.expect(11),t=this.wrapParenthesis(a,t);var n=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(t,a),!1===this.getPluginOption("decorators","allowCallParenthesized")&&e.expression!==t&&this.raise(Rh.DecoratorArgumentsOutsideParentheses,n)}else{for(t=this.parseIdentifier(!1);this.eat(16);){var s=this.startNodeAt(r);s.object=t,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),s.computed=!1,t=this.finishNode(s,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(t,r)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")},r.parseMaybeDecoratorArguments=function(e,t){if(this.eat(10)){var r=this.startNodeAt(t);return r.callee=e,r.arguments=this.parseCallExpressionArguments(),this.toReferencedList(r.arguments),this.finishNode(r,"CallExpression")}return e},r.parseBreakContinueStatement=function(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")},r.verifyBreakContinue=function(e,t){var r;for(r=0;r<this.state.labels.length;++r){var a=this.state.labels[r];if(null==e.label||a.name===e.label.name){if(null!=a.kind&&(t||a.kind===Qv))break;if(e.label&&t)break}}if(r===this.state.labels.length){var n=t?"BreakStatement":"ContinueStatement";this.raise(Rh.IllegalBreakContinue,e,{type:n})}},r.parseDebuggerStatement=function(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")},r.parseHeaderExpression=function(){this.expect(10);var e=this.parseExpression();return this.expect(11),e},r.parseDoWhileStatement=function(e){var t=this;return this.next(),this.state.labels.push(qx),e.body=this.withSmartMixTopicForbiddingContext(function(){return t.parseStatement()}),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")},r.parseForStatement=function(e){this.next(),this.state.labels.push(qx);var t=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(t=this.state.startLoc,this.next()),this.scope.enter(vb),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);var r=this.isContextual(100),a=this.isAwaitUsing(),n=a||this.isForUsing(),s=r&&this.hasFollowingBindingAtom()||n;if(this.match(74)||this.match(75)||s){var o,i=this.startNode();a?(o="await using",this.recordAwaitIfAllowed()||this.raise(Rh.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):o=this.state.value,this.next(),this.parseVar(i,!0,o);var d=this.finishNode(i,"VariableDeclaration"),c=this.match(58);return c&&n&&this.raise(Rh.ForInUsing,d),(c||this.isContextual(102))&&1===d.declarations.length?this.parseForIn(e,d,t):(null!==t&&this.unexpected(t),this.parseFor(e,d))}var l=this.isContextual(95),u=new px,p=this.parseExpression(!0,u),f=this.isContextual(102);if(f&&(r&&this.raise(Rh.ForOfLet,p),null===t&&l&&"Identifier"===p.type&&this.raise(Rh.ForOfAsync,p)),f||this.match(58)){this.checkDestructuringPrivate(u),this.toAssignable(p,!0);var g=f?"ForOfStatement":"ForInStatement";return this.checkLVal(p,{type:g}),this.parseForIn(e,p,t)}return this.checkExpressionErrors(u,!0),null!==t&&this.unexpected(t),this.parseFor(e,p)},r.parseFunctionStatement=function(e,t,r){return this.next(),this.parseFunction(e,Vx|(r?Hx:0)|(t?Kx:0))},r.parseIfStatement=function(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),e.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(e,"IfStatement")},r.parseReturnStatement=function(e){return this.prodParam.hasReturn||this.raise(Rh.IllegalReturn,this.state.startLoc),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")},r.parseSwitchStatement=function(e){this.next(),e.discriminant=this.parseHeaderExpression();var t,r,a=e.cases=[];for(this.expect(5),this.state.labels.push(Gx),this.scope.enter(Ab);!this.match(8);)if(this.match(61)||this.match(65)){var n=this.match(61);t&&this.finishNode(t,"SwitchCase"),a.push(t=this.startNode()),t.consequent=[],this.next(),n?t.test=this.parseExpression():(r&&this.raise(Rh.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),r=!0,t.test=null),this.expect(14)}else t?t.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),t&&this.finishNode(t,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")},r.parseThrowStatement=function(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(Rh.NewlineAfterThrow,this.state.lastTokEndLoc),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")},r.parseCatchClauseParam=function(){var e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&"Identifier"===e.type?wb:vb),this.checkLVal(e,{type:"CatchClause"},Xb),e},r.parseTryStatement=function(e){var t=this;if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){var r=this.startNode();this.next(),this.match(10)?(this.expect(10),r.param=this.parseCatchClauseParam(),this.expect(11)):(r.param=null,this.scope.enter(vb)),r.body=this.withSmartMixTopicForbiddingContext(function(){return t.parseBlock(!1,!1)}),this.scope.exit(),e.handler=this.finishNode(r,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,e.handler||e.finalizer||this.raise(Rh.NoCatchOrFinally,e),this.finishNode(e,"TryStatement")},r.parseVarStatement=function(e,t,r){return void 0===r&&(r=!1),this.next(),this.parseVar(e,!1,t,r),this.semicolon(),this.finishNode(e,"VariableDeclaration")},r.parseWhileStatement=function(e){var t=this;return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(qx),e.body=this.withSmartMixTopicForbiddingContext(function(){return t.parseStatement()}),this.state.labels.pop(),this.finishNode(e,"WhileStatement")},r.parseWithStatement=function(e){var t=this;return this.state.strict&&this.raise(Rh.StrictWith,this.state.startLoc),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext(function(){return t.parseStatement()}),this.finishNode(e,"WithStatement")},r.parseEmptyStatement=function(e){return this.next(),this.finishNode(e,"EmptyStatement")},r.parseLabeledStatement=function(e,t,r,a){for(var n=0,s=this.state.labels;n<s.length;n++){s[n].name===t&&this.raise(Rh.LabelRedeclaration,r,{labelName:t})}for(var o,i=(o=this.state.type)>=90&&o<=92?Qv:this.match(71)?Zv:null,d=this.state.labels.length-1;d>=0;d--){var c=this.state.labels[d];if(c.statementStart!==e.start)break;c.statementStart=this.sourceToOffsetPos(this.state.start),c.kind=i}return this.state.labels.push({name:t,kind:i,statementStart:this.sourceToOffsetPos(this.state.start)}),e.body=a&Qx?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")},r.parseExpressionStatement=function(e,t,r){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},r.parseBlock=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=!0);var a=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(vb),this.parseBlockBody(a,e,!1,8,r),t&&this.scope.exit(),this.finishNode(a,"BlockStatement")},r.isValidDirective=function(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized},r.parseBlockBody=function(e,t,r,a,n){var s=e.body=[],o=e.directives=[];this.parseBlockOrModuleBlockBody(s,t?o:void 0,r,a,n)},r.parseBlockOrModuleBlockBody=function(e,t,r,a,n){for(var s=this.state.strict,o=!1,i=!1;!this.match(a);){var d=r?this.parseModuleItem():this.parseStatementListItem();if(t&&!i){if(this.isValidDirective(d)){var c=this.stmtToDirective(d);t.push(c),o||"use strict"!==c.value.value||(o=!0,this.setStrict(!0));continue}i=!0,this.state.strictErrors.clear()}e.push(d)}null==n||n.call(this,o),s||this.setStrict(!1),this.next()},r.parseFor=function(e,t){var r=this;return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext(function(){return r.parseStatement()}),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")},r.parseForIn=function(e,t,r){var a=this,n=this.match(58);return this.next(),n?null!==r&&this.unexpected(r):e.await=null!==r,"VariableDeclaration"!==t.type||null==t.declarations[0].init||n&&this.options.annexB&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(Rh.ForInOfLoopInitializer,t,{type:n?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(Rh.InvalidLhs,t,{ancestor:{type:"ForStatement"}}),e.left=t,e.right=n?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext(function(){return a.parseStatement()}),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,n?"ForInStatement":"ForOfStatement")},r.parseVar=function(e,t,r,a){void 0===a&&(a=!1);var n=e.declarations=[];for(e.kind=r;;){var s=this.startNode();if(this.parseVarId(s,r),s.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==s.init||a||("Identifier"===s.id.type||t&&(this.match(58)||this.isContextual(102))?"const"!==r&&"using"!==r&&"await using"!==r||this.match(58)||this.isContextual(102)||this.raise(Rh.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:r}):this.raise(Rh.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"})),n.push(this.finishNode(s,"VariableDeclarator")),!this.eat(12))break}return e},r.parseVarId=function(e,t){var r=this.parseBindingAtom();"using"===t||"await using"===t?"ArrayPattern"!==r.type&&"ObjectPattern"!==r.type||this.raise(Rh.UsingDeclarationHasBindingPattern,r.loc.start):"VoidPattern"===r.type&&this.raise(Rh.UnexpectedVoidPattern,r.loc.start),this.checkLVal(r,{type:"VariableDeclarator"},"var"===t?Jb:Kb),e.id=r},r.parseAsyncFunctionExpression=function(e){return this.parseFunction(e,Kx)},r.parseFunction=function(e,t){var r=this;void 0===t&&(t=Wx);var a=t&Hx,n=!!(t&Vx),s=n&&!(t&zx),o=!!(t&Kx);this.initFunction(e,o),this.match(55)&&(a&&this.raise(Rh.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),n&&(e.id=this.parseFunctionId(s));var i=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(_b),this.prodParam.enter(zv(o,e.generator)),n||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext(function(){r.parseFunctionBodyAndFinish(e,n?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),n&&!a&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=i,e},r.parseFunctionId=function(e){return e||ob(this.state.type)?this.parseIdentifier():null},r.parseFunctionParams=function(e,t){this.expect(10),this.expressionScope.enter(new ix(3)),e.params=this.parseBindingList(11,41,vx|(t?xx:0)),this.expressionScope.exit()},r.registerFunctionStatementId=function(e){e.id&&this.scope.declareName(e.id.name,!this.options.annexB||this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?Jb:Kb:Yb,e.id.loc.start)},r.parseClass=function(e,t,r){this.next();var a=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,r),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,a),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},r.isClassProperty=function(){return this.match(29)||this.match(13)||this.match(8)},r.isClassMethod=function(){return this.match(10)},r.nameIsConstructor=function(e){return"Identifier"===e.type&&"constructor"===e.name||"StringLiteral"===e.type&&"constructor"===e.value},r.isNonstaticConstructor=function(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)},r.parseClassBody=function(e,t){var r=this;this.classScope.enter();var a={hadConstructor:!1,hadSuperClass:e},n=[],s=this.startNode();if(s.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(function(){for(;!r.match(8);)if(r.eat(13)){if(n.length>0)throw r.raise(Rh.DecoratorSemicolon,r.state.lastTokEndLoc)}else if(r.match(26))n.push(r.parseDecorator());else{var e=r.startNode();n.length&&(e.decorators=n,r.resetStartLocationFromNode(e,n[0]),n=[]),r.parseClassMember(s,e,a),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&r.raise(Rh.DecoratorConstructor,e)}}),this.state.strict=t,this.next(),n.length)throw this.raise(Rh.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(s,"ClassBody")},r.parseClassMemberFromModifier=function(e,t){var r=this.parseIdentifier(!0);if(this.isClassMethod()){var a=t;return a.kind="method",a.computed=!1,a.key=r,a.static=!1,this.pushClassMethod(e,a,!1,!1,!1,!1),!0}if(this.isClassProperty()){var n=t;return n.computed=!1,n.key=r,n.static=!1,e.body.push(this.parseClassProperty(n)),!0}return this.resetPreviousNodeTrailingComments(r),!1},r.parseClassMember=function(e,t,r){var a=this.isContextual(106);if(a){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,r,a)},r.parseClassMemberWithIsStatic=function(e,t,r,a){var n=t,s=t,o=t,i=t,d=t,c=n,l=n;if(t.static=a,this.parsePropertyNamePrefixOperator(t),this.eat(55)){c.kind="method";var u=this.match(139);return this.parseClassElementName(c),this.parsePostMemberNameModifiers(c),u?void this.pushClassPrivateMethod(e,s,!0,!1):(this.isNonstaticConstructor(n)&&this.raise(Rh.ConstructorIsGenerator,n.key),void this.pushClassMethod(e,n,!0,!1,!1,!1))}var p=!this.state.containsEsc&&ob(this.state.type),f=this.parseClassElementName(t),g=p?f.name:null,m=this.isPrivateName(f),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(l),this.isClassMethod()){if(c.kind="method",m)return void this.pushClassPrivateMethod(e,s,!1,!1);var h=this.isNonstaticConstructor(n),b=!1;h&&(n.kind="constructor",r.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(Rh.DuplicateConstructor,f),h&&this.hasPlugin("typescript")&&t.override&&this.raise(Rh.OverrideOnConstructor,f),r.hadConstructor=!0,b=r.hadSuperClass),this.pushClassMethod(e,n,!1,!1,h,b)}else if(this.isClassProperty())m?this.pushClassPrivateProperty(e,i):this.pushClassProperty(e,o);else if("async"!==g||this.isLineTerminator())if("get"!==g&&"set"!==g||this.match(55)&&this.isLineTerminator())if("accessor"!==g||this.isLineTerminator())this.isLineTerminator()?m?this.pushClassPrivateProperty(e,i):this.pushClassProperty(e,o):this.unexpected();else{this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(f);var v=this.match(139);this.parseClassElementName(o),this.pushClassAccessorProperty(e,d,v)}else{this.resetPreviousNodeTrailingComments(f),c.kind=g;var x=this.match(139);this.parseClassElementName(n),x?this.pushClassPrivateMethod(e,s,!1,!1):(this.isNonstaticConstructor(n)&&this.raise(Rh.ConstructorIsAccessor,n.key),this.pushClassMethod(e,n,!1,!1,!1,!1)),this.checkGetterSetterParams(n)}else{this.resetPreviousNodeTrailingComments(f);var R=this.eat(55);l.optional&&this.unexpected(y),c.kind="method";var j=this.match(139);this.parseClassElementName(c),this.parsePostMemberNameModifiers(l),j?this.pushClassPrivateMethod(e,s,R,!0):(this.isNonstaticConstructor(n)&&this.raise(Rh.ConstructorIsAsync,n.key),this.pushClassMethod(e,n,R,!0,!1,!1))}},r.parseClassElementName=function(e){var t=this.state,r=t.type,a=t.value;if(132!==r&&134!==r||!e.static||"prototype"!==a||this.raise(Rh.StaticPrototype,this.state.startLoc),139===r){"constructor"===a&&this.raise(Rh.ConstructorClassPrivateField,this.state.startLoc);var n=this.parsePrivateName();return e.key=n,n}return this.parsePropertyName(e),e.key},r.parseClassStaticBlock=function(e,t){var r;this.scope.enter(Ib|Pb|Eb);var a=this.state.labels;this.state.labels=[],this.prodParam.enter(Uv);var n=t.body=[];this.parseBlockOrModuleBlockBody(n,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=a,e.body.push(this.finishNode(t,"StaticBlock")),null!=(r=t.decorators)&&r.length&&this.raise(Rh.DecoratorStaticBlock,t)},r.pushClassProperty=function(e,t){!t.computed&&this.nameIsConstructor(t.key)&&this.raise(Rh.ConstructorClassField,t.key),e.body.push(this.parseClassProperty(t))},r.pushClassPrivateProperty=function(e,t){var r=this.parseClassPrivateProperty(t);e.body.push(r),this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),dv,r.key.loc.start)},r.pushClassAccessorProperty=function(e,t,r){r||t.computed||!this.nameIsConstructor(t.key)||this.raise(Rh.ConstructorClassField,t.key);var a=this.parseClassAccessorProperty(t);e.body.push(a),r&&this.classScope.declarePrivateName(this.getPrivateNameSV(a.key),dv,a.key.loc.start)},r.pushClassMethod=function(e,t,r,a,n,s){e.body.push(this.parseMethod(t,r,a,n,s,"ClassMethod",!0))},r.pushClassPrivateMethod=function(e,t,r,a){var n=this.parseMethod(t,r,a,!1,!1,"ClassPrivateMethod",!0);e.body.push(n);var s="get"===n.kind?n.static?uv:fv:"set"===n.kind?n.static?pv:gv:dv;this.declareClassPrivateMethodInScope(n,s)},r.declareClassPrivateMethodInScope=function(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)},r.parsePostMemberNameModifiers=function(e){},r.parseClassPrivateProperty=function(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")},r.parseClassProperty=function(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")},r.parseClassAccessorProperty=function(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")},r.parseInitializer=function(e){this.scope.enter(Ib|Eb),this.expressionScope.enter(lx()),this.prodParam.enter(Uv),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()},r.parseClassId=function(e,t,r,a){if(void 0===a&&(a=zb),ob(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,a);else{if(!r&&t)throw this.raise(Rh.MissingClassName,this.state.startLoc);e.id=null}},r.parseClassSuper=function(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null},r.parseExport=function(e,t){var r=this.parseMaybeImportPhase(e,!0),a=this.maybeParseExportDefaultSpecifier(e,r),n=!a||this.eat(12),s=n&&this.eatExportStar(e),o=s&&this.maybeParseExportNamespaceSpecifier(e),i=n&&(!o||this.eat(12)),d=a||s;if(s&&!o){if(a&&this.unexpected(),t)throw this.raise(Rh.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.sawUnambiguousESM=!0,this.finishNode(e,"ExportAllDeclaration")}var c,l=this.maybeParseExportNamedSpecifiers(e);if(a&&n&&!s&&!l&&this.unexpected(null,5),o&&i&&this.unexpected(null,98),d||l){if(c=!1,t)throw this.raise(Rh.UnsupportedDecoratorExport,e);this.parseExportFrom(e,d)}else c=this.maybeParseExportDeclaration(e);if(d||l||c){var u,p=e;if(this.checkExport(p,!0,!1,!!p.source),"ClassDeclaration"===(null==(u=p.declaration)?void 0:u.type))this.maybeTakeDecorators(t,p.declaration,p);else if(t)throw this.raise(Rh.UnsupportedDecoratorExport,e);return this.sawUnambiguousESM=!0,this.finishNode(p,"ExportNamedDeclaration")}if(this.eat(65)){var f=e,g=this.parseExportDefaultExpression();if(f.declaration=g,"ClassDeclaration"===g.type)this.maybeTakeDecorators(t,g,f);else if(t)throw this.raise(Rh.UnsupportedDecoratorExport,e);return this.checkExport(f,!0,!0),this.sawUnambiguousESM=!0,this.finishNode(f,"ExportDefaultDeclaration")}throw this.unexpected(null,5)},r.eatExportStar=function(e){return this.eat(55)},r.maybeParseExportDefaultSpecifier=function(e,t){if(t||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",null==t?void 0:t.loc.start);var r=t||this.parseIdentifier(!0),a=this.startNodeAtNode(r);return a.exported=r,e.specifiers=[this.finishNode(a,"ExportDefaultSpecifier")],!0}return!1},r.maybeParseExportNamespaceSpecifier=function(e){if(this.isContextual(93)){var t;null!=(t=e).specifiers||(t.specifiers=[]);var r=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),r.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(r,"ExportNamespaceSpecifier")),!0}return!1},r.maybeParseExportNamedSpecifiers=function(e){if(this.match(5)){var t,r=e;r.specifiers||(r.specifiers=[]);var a="type"===r.exportKind;return(t=r.specifiers).push.apply(t,this.parseExportSpecifiers(a)),r.source=null,this.hasPlugin("importAssertions")?r.assertions=[]:r.attributes=[],r.declaration=null,!0}return!1},r.maybeParseExportDeclaration=function(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")?e.assertions=[]:e.attributes=[],e.declaration=this.parseExportDeclaration(e),!0)},r.isAsyncFunction=function(){if(!this.isContextual(95))return!1;var e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,"function")},r.parseExportDefaultExpression=function(){var e=this.startNode();if(this.match(68))return this.next(),this.parseFunction(e,Vx|zx);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(e,Vx|zx|Kx);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(Rh.DecoratorBeforeExport,this.state.startLoc),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet()||this.isUsing()||this.isAwaitUsing())throw this.raise(Rh.UnsupportedDefaultExport,this.state.startLoc);var t=this.parseMaybeAssignAllowIn();return this.semicolon(),t},r.parseExportDeclaration=function(e){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()},r.isExportDefaultSpecifier=function(){var e=this.state.type;if(ob(e)){if(95===e&&!this.state.containsEsc||100===e)return!1;if((130===e||129===e)&&!this.state.containsEsc){var t=this.nextTokenStart(),r=this.input.charCodeAt(t);if(123===r||this.chStartsBindingIdentifier(r,t)&&!this.input.startsWith("from",t))return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;var a=this.nextTokenStart(),n=this.isUnparsedContextual(a,"from");if(44===this.input.charCodeAt(a)||ob(this.state.type)&&n)return!0;if(this.match(65)&&n){var s=this.input.charCodeAt(this.nextTokenStartSince(a+4));return 34===s||39===s}return!1},r.parseExportFrom=function(e,t){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()},r.shouldParseExportDeclaration=function(){var e=this.state.type;return 26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(Rh.DecoratorBeforeExport,this.state.startLoc),!0):this.isUsing()||this.isAwaitUsing()?(this.raise(Rh.UsingDeclarationExport,this.state.startLoc),!0):74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()},r.checkExport=function(e,t,r,a){var n;if(t)if(r){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var s,o=e.declaration;"Identifier"!==o.type||"from"!==o.name||o.end-o.start!==4||null!=(s=o.extra)&&s.parenthesized||this.raise(Rh.ExportDefaultFromAsIdentifier,o)}}else if(null!=(n=e.specifiers)&&n.length)for(var i=0,d=e.specifiers;i<d.length;i++){var c=d[i],l=c.exported,u="Identifier"===l.type?l.name:l.value;if(this.checkDuplicateExports(c,u),!a&&c.local){var p=c.local;"Identifier"!==p.type?this.raise(Rh.ExportBindingIsString,c,{localName:p.value,exportName:u}):(this.checkReservedWord(p.name,p.loc.start,!0,!1),this.scope.checkLocalExport(p))}}else if(e.declaration){var f=e.declaration;if("FunctionDeclaration"===f.type||"ClassDeclaration"===f.type){var g=f.id;if(!g)throw new Error("Assertion failure");this.checkDuplicateExports(e,g.name)}else if("VariableDeclaration"===f.type)for(var m=0,y=f.declarations;m<y.length;m++){var h=y[m];this.checkDeclaration(h.id)}}},r.checkDeclaration=function(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(var t=0,r=e.properties;t<r.length;t++){var a=r[t];this.checkDeclaration(a)}else if("ArrayPattern"===e.type)for(var n=0,s=e.elements;n<s.length;n++){var o=s[n];o&&this.checkDeclaration(o)}else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)},r.checkDuplicateExports=function(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(Rh.DuplicateDefaultExport,e):this.raise(Rh.DuplicateExport,e,{exportName:t})),this.exportedIdentifiers.add(t)},r.parseExportSpecifiers=function(e){var t=[],r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else if(this.expect(12),this.eat(8))break;var a=this.isContextual(130),n=this.match(134),s=this.startNode();s.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(s,n,e,a))}return t},r.parseExportSpecifier=function(e,t,r,a){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=this.cloneStringLiteral(e.local):e.exported||(e.exported=this.cloneIdentifier(e.local)),this.finishNode(e,"ExportSpecifier")},r.parseModuleExportName=function(){if(this.match(134)){var e=this.parseStringLiteral(this.state.value),t=Zx.exec(e.value);return t&&this.raise(Rh.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)},r.isJSONModuleImport=function(e){return null!=e.assertions&&e.assertions.some(function(e){var t=e.key;return"json"===e.value.value&&("Identifier"===t.type?"type"===t.name:"type"===t.value)})},r.checkImportReflection=function(e){var t=e.specifiers,r=1===t.length?t[0].type:null;if("source"===e.phase)"ImportDefaultSpecifier"!==r&&this.raise(Rh.SourcePhaseImportRequiresDefault,t[0].loc.start);else if("defer"===e.phase)"ImportNamespaceSpecifier"!==r&&this.raise(Rh.DeferImportRequiresNamespace,t[0].loc.start);else if(e.module){var a;"ImportDefaultSpecifier"!==r&&this.raise(Rh.ImportReflectionNotBinding,t[0].loc.start),(null==(a=e.assertions)?void 0:a.length)>0&&this.raise(Rh.ImportReflectionHasAssertion,t[0].loc.start)}},r.checkJSONModuleImport=function(e){if(this.isJSONModuleImport(e)&&"ExportAllDeclaration"!==e.type){var t=e.specifiers;if(null!=t){var r=t.find(function(e){var t;if("ExportSpecifier"===e.type?t=e.local:"ImportSpecifier"===e.type&&(t=e.imported),void 0!==t)return"Identifier"===t.type?"default"!==t.name:"default"!==t.value});void 0!==r&&this.raise(Rh.ImportJSONBindingNotDefault,r.loc.start)}}},r.isPotentialImportPhase=function(e){return!e&&(this.isContextual(105)||this.isContextual(97)||this.isContextual(127))},r.applyImportPhase=function(e,t,r,a){t||("module"===r?(this.expectPlugin("importReflection",a),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1),"source"===r?(this.expectPlugin("sourcePhaseImports",a),e.phase="source"):"defer"===r?(this.expectPlugin("deferredImportEvaluation",a),e.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(e.phase=null))},r.parseMaybeImportPhase=function(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;var r=this.startNode(),a=this.parseIdentifierName(!0),n=this.state.type;return(ib(n)?98!==n||102===this.lookaheadCharCode():12!==n)?(this.applyImportPhase(e,t,a,r.loc.start),null):(this.applyImportPhase(e,t,null),this.createIdentifier(r,a))},r.isPrecedingIdImportPhase=function(e){var t=this.state.type;return ob(t)?98!==t||102===this.lookaheadCharCode():12!==t},r.parseImport=function(e){return this.match(134)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))},r.parseImportSpecifiersAndAfter=function(e,t){e.specifiers=[];var r=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),a=r&&this.maybeParseStarImportSpecifier(e);return r&&!a&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)},r.parseImportSourceAndAttributes=function(e){return null!=e.specifiers||(e.specifiers=[]),e.source=this.parseImportSource(),this.maybeParseImportAttributes(e),this.checkImportReflection(e),this.checkJSONModuleImport(e),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(e,"ImportDeclaration")},r.parseImportSource=function(){return this.match(134)||this.unexpected(),this.parseExprAtom()},r.parseImportSpecifierLocal=function(e,t,r){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,r))},r.finishImportSpecifier=function(e,t,r){return void 0===r&&(r=Kb),this.checkLVal(e.local,{type:t},r),this.finishNode(e,t)},r.parseImportAttributes=function(){this.expect(5);var e=[],t=new Set;do{if(this.match(8))break;var r=this.startNode(),a=this.state.value;if(t.has(a)&&this.raise(Rh.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:a}),t.add(a),this.match(134)?r.key=this.parseStringLiteral(a):r.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(Rh.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e},r.parseModuleAttributes=function(){var e=[],t=new Set;do{var r=this.startNode();if(r.key=this.parseIdentifier(!0),"type"!==r.key.name&&this.raise(Rh.ModuleAttributeDifferentFromType,r.key),t.has(r.key.name)&&this.raise(Rh.ModuleAttributesWithDuplicateKeys,r.key,{key:r.key.name}),t.add(r.key.name),this.expect(14),!this.match(134))throw this.raise(Rh.ModuleAttributeInvalidValue,this.state.startLoc);r.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(r,"ImportAttribute"))}while(this.eat(12));return e},r.maybeParseImportAttributes=function(e){var t,r=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&40===this.lookaheadCharCode())return;this.next(),this.hasPlugin("moduleAttributes")?(t=this.parseModuleAttributes(),this.addExtra(e,"deprecatedWithLegacySyntax",!0)):t=this.parseImportAttributes(),r=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(this.hasPlugin("deprecatedImportAssert")||this.hasPlugin("importAssertions")||this.raise(Rh.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(e,"deprecatedAssertSyntax",!0),this.next(),t=this.parseImportAttributes()):t=[];!r&&this.hasPlugin("importAssertions")?e.assertions=t:e.attributes=t},r.maybeParseDefaultImportSpecifier=function(e,t){if(t){var r=this.startNodeAtNode(t);return r.local=t,e.specifiers.push(this.finishImportSpecifier(r,"ImportDefaultSpecifier")),!0}return!!ib(this.state.type)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)},r.maybeParseStarImportSpecifier=function(e){if(this.match(55)){var t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1},r.parseNamedImportSpecifiers=function(e){var t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(Rh.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}var r=this.startNode(),a=this.match(134),n=this.isContextual(130);r.imported=this.parseModuleExportName();var s=this.parseImportSpecifier(r,a,"type"===e.importKind||"typeof"===e.importKind,n,void 0);e.specifiers.push(s)}},r.parseImportSpecifier=function(e,t,r,a,n){if(this.eatContextual(93))e.local=this.parseIdentifier();else{var s=e.imported;if(t)throw this.raise(Rh.ImportBindingIsString,e,{importName:s.value});this.checkReservedWord(s.name,e.loc.start,!0,!0),e.local||(e.local=this.cloneIdentifier(s))}return this.finishImportSpecifier(e,"ImportSpecifier",n)},r.isThisParam=function(e){return"Identifier"===e.type&&"this"===e.name},o(t)}(Ux),rR=function(e){function t(t,r,a){var n,s=function(e){var t={sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,allowYieldOutsideFunction:!1,plugins:[],strictMode:void 0,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};if(null==e)return t;if(null!=e.annexB&&!1!==e.annexB)throw new Error("The `annexB` option can only be set to `false`.");for(var r=0,a=Object.keys(t);r<a.length;r++){var n=a[r];null!=e[n]&&(t[n]=e[n])}if(1===t.startLine)null==e.startIndex&&t.startColumn>0?t.startIndex=t.startColumn:null==e.startColumn&&t.startIndex>0&&(t.startColumn=t.startIndex);else if((null==e.startColumn||null==e.startIndex)&&null!=e.startIndex)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");if("commonjs"===t.sourceType){if(null!=e.allowAwaitOutsideFunction)throw new Error("The `allowAwaitOutsideFunction` option cannot be used with `sourceType: 'commonjs'`.");if(null!=e.allowReturnOutsideFunction)throw new Error("`sourceType: 'commonjs'` implies `allowReturnOutsideFunction: true`, please remove the `allowReturnOutsideFunction` option or use `sourceType: 'script'`.");if(null!=e.allowNewTargetOutsideFunction)throw new Error("`sourceType: 'commonjs'` implies `allowNewTargetOutsideFunction: true`, please remove the `allowNewTargetOutsideFunction` option or use `sourceType: 'script'`.")}return t}(t);(n=e.call(this,s,r)||this).options=s,n.initializeScopes(),n.plugins=a,n.filename=s.sourceFilename,n.startIndex=s.startIndex;var o=0;return s.allowAwaitOutsideFunction&&(o|=jh),s.allowReturnOutsideFunction&&(o|=wh),s.allowImportExportEverywhere&&(o|=Sh),s.allowSuperOutsideMethod&&(o|=Th),s.allowUndeclaredExports&&(o|=Ah),s.allowNewTargetOutsideFunction&&(o|=Eh),s.allowYieldOutsideFunction&&(o|=Ph),s.ranges&&(o|=kh),s.tokens&&(o|=Ch),s.createImportExpressions&&(o|=_h),s.createParenthesizedExpressions&&(o|=Ih),s.errorRecovery&&(o|=Dh),s.attachComment&&(o|=Oh),s.annexB&&(o|=Nh),n.optionFlags=o,n}c(t,e);var r=t.prototype;return r.getScopeHandler=function(){return vv},r.parse=function(){this.enterInitialScopes();var e=this.startNode(),t=this.startNode();this.nextToken(),e.errors=null;var r=this.parseTopLevel(e,t);return r.errors=this.state.errors,r.comments.length=this.state.commentsLen,r},o(t)}(tR);function aR(e,t){var r;if("unambiguous"!==(null==(r=t)?void 0:r.sourceType))return sR(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";var a=sR(t,e),n=a.parse();if(a.sawUnambiguousESM)return n;if(a.ambiguousScriptDifferentAst)try{return t.sourceType="script",sR(t,e).parse()}catch(e){}else n.program.sourceType="script";return n}catch(r){try{return t.sourceType="script",sR(t,e).parse()}catch(e){}throw r}}var nR=function(e){for(var t={},r=0,a=Object.keys(e);r<a.length;r++){var n=a[r];t[n]=yb(e[n])}return t}(sb);function sR(e,t){var r=rR,a=new Map;if(null!=e&&e.plugins){for(var n=0,s=e.plugins;n<s.length;n++){var o=s[n],i=void 0,d=void 0;"string"==typeof o?i=o:(i=o[0],d=o[1]),a.has(i)||a.set(i,d||{})}!function(e){if(e.has("decorators")){if(e.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");var t=e.get("decorators").decoratorsBeforeExport;if(null!=t&&"boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");var r=e.get("decorators").allowCallParenthesized;if(null!=r&&"boolean"!=typeof r)throw new Error("'allowCallParenthesized' must be a boolean.")}if(e.has("flow")&&e.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(e.has("placeholders")&&e.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(e.has("pipelineOperator")){var a,n=e.get("pipelineOperator").proposal;if(!Bx.includes(n)){var s=Bx.map(function(e){return'"'+e+'"'}).join(", ");throw new Error('"pipelineOperator" requires "proposal" option whose value must be one of: '+s+".")}if("hack"===n){var o;if(e.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(e.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");var i=e.get("pipelineOperator").topicToken;if(!Mx.includes(i)){var d=Mx.map(function(e){return'"'+e+'"'}).join(", ");throw new Error('"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: '+d+".")}if("#"===i&&"hash"===(null==(o=e.get("recordAndTuple"))?void 0:o.syntaxType))throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `'+JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])+"`.")}else if("smart"===n&&"hash"===(null==(a=e.get("recordAndTuple"))?void 0:a.syntaxType))throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `'+JSON.stringify(["recordAndTuple",e.get("recordAndTuple")])+"`.")}if(e.has("moduleAttributes")){if(e.has("deprecatedImportAssert")||e.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if("may-2020"!==e.get("moduleAttributes").version)throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(e.has("importAssertions")&&e.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(e.has("deprecatedImportAssert")||e.has("importAttributes")&&e.get("importAttributes").deprecatedAssertSyntax&&e.set("deprecatedImportAssert",{}),e.has("recordAndTuple")){var c=e.get("recordAndTuple").syntaxType;if(null!=c){var l=["hash","bar"];if(!l.includes(c))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+l.map(function(e){return"'"+e+"'"}).join(", "))}}if(e.has("asyncDoExpressions")&&!e.has("doExpressions")){var u=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw u.missingPlugins="doExpressions",u}if(e.has("optionalChainingAssign")&&"2023-07"!==e.get("optionalChainingAssign").version)throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.");if(e.has("discardBinding")&&"void"!==e.get("discardBinding").syntaxType)throw new Error("The 'discardBinding' plugin requires a 'syntaxType' option. Currently the only supported value is 'void'.")}(a),r=function(e){for(var t=[],r=0;r<Lx.length;r++){var a=Lx[r];e.has(a)&&t.push(a)}var n=t.join("|"),s=oR.get(n);if(!s){s=rR;for(var o=0;o<t.length;o++){var i=t[o];s=Fx[i](s)}oR.set(n,s)}return s}(a)}return new r(e,t,a)}var oR=new Map;var iR=Object.freeze({__proto__:null,parse:aR,parseExpression:function(e,t){var r=sR(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()},tokTypes:nR}),dR="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function cR(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var r=function e(){return this instanceof e?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};r.prototype=t.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(e).forEach(function(t){var a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,a.get?a:{enumerable:!0,get:function(){return e[t]}})}),r}var lR={exports:{}},uR=String,pR=function(){return{isColorSupported:!1,reset:uR,bold:uR,dim:uR,italic:uR,underline:uR,inverse:uR,hidden:uR,strikethrough:uR,black:uR,red:uR,green:uR,yellow:uR,blue:uR,magenta:uR,cyan:uR,white:uR,gray:uR,bgBlack:uR,bgRed:uR,bgGreen:uR,bgYellow:uR,bgBlue:uR,bgMagenta:uR,bgCyan:uR,bgWhite:uR,blackBright:uR,redBright:uR,greenBright:uR,yellowBright:uR,blueBright:uR,magentaBright:uR,cyanBright:uR,whiteBright:uR,bgBlackBright:uR,bgRedBright:uR,bgGreenBright:uR,bgYellowBright:uR,bgBlueBright:uR,bgMagentaBright:uR,bgCyanBright:uR,bgWhiteBright:uR}};lR.exports=pR();var fR=lR.exports.createColors=pR,gR=lR.exports;var mR=function(e,t){return function(r){return e(t(r))}};function yR(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:mR(mR(e.white,e.bgRed),e.bold),gutter:e.gray,marker:mR(e.red,e.bold),message:mR(e.red,e.bold),reset:e.reset}}var hR=yR(fR(!0)),bR=yR(fR(!1));function vR(e){return e?hR:bR}var xR,RR={};function jR(){return xR||(xR=1,Object.defineProperty(RR,"__esModule",{value:!0}),RR.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g,RR.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!(!e[3]&&!e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}),RR}var wR,ER=(void z.env.BABEL_8_BREAKING,jR()),SR=new Set(["as","async","from","get","of","set"]),TR=/\r\n|[\n\r\u2028\u2029]/,PR=/^[()[\]{}]$/,AR=/^[a-z][\w-]*$/i,kR=function(e,t,r){if("name"===e.type){var a=e.value;if(Jr(a)||zr(a,!0)||SR.has(a))return"keyword";if(AR.test(a)&&("<"===r[t-1]||"</"===r.slice(t-2,t)))return"jsxIdentifier";var n=String.fromCodePoint(a.codePointAt(0));if(n!==n.toLowerCase())return"capitalized"}return"punctuator"===e.type&&PR.test(e.value)?"bracket":"invalid"!==e.type||"@"!==e.value&&"#"!==e.value?e.type:"punctuator"};wR=p().m(function e(t){var r,a;return p().w(function(e){for(;;)switch(e.n){case 0:if(!(r=ER.default.exec(t))){e.n=2;break}return a=ER.matchToToken(r),e.n=1,{type:kR(a,r.index,t),value:a.value};case 1:e.n=0;break;case 2:return e.a(2)}},e)});var CR=/\r\n|[\n\r\u2028\u2029]/;function _R(e,t,r){void 0===r&&(r={});var a=r.forceColor||("object"!=typeof z||"0"!==z.env.FORCE_COLOR&&"false"!==z.env.FORCE_COLOR)&&gR.isColorSupported&&r.highlightCode,n=(r.startLine||1)-1,s=vR(a),o=function(e,t,r,a){var n=Object.assign({column:0,line:-1},e.start),s=Object.assign({},n,e.end),o=r||{},i=o.linesAbove,d=void 0===i?2:i,c=o.linesBelow,l=void 0===c?3:c,u=n.line-a,p=n.column,f=s.line-a,g=s.column,m=Math.max(u-(d+1),0),y=Math.min(t.length,f+l);-1===u&&(m=0),-1===f&&(y=t.length);var h=f-u,b={};if(h)for(var v=0;v<=h;v++){var x=v+u;if(p)if(0===v){var R=t[x-1].length;b[x]=[p,R-p+1]}else if(v===h)b[x]=[0,g];else{var j=t[x-v].length;b[x]=[0,j]}else b[x]=!0}else b[u]=p===g?!p||[p,0]:[p,g-p];return{start:m,end:y,markerLines:b}}(t,e.split(CR),r,n),d=o.start,c=o.end,l=o.markerLines,u=t.start&&"number"==typeof t.start.column,p=String(c+n).length,f=a?function(e){if(""===e)return"";for(var t,r=vR(!0),a="",n=function(){var e=t.value,n=e.type,s=e.value;a+=n in r?s.split(TR).map(function(e){return r[n](e)}).join("\n"):s},s=i(wR(e));!(t=s()).done;)n();return a}(e):e,g=f.split(CR,c).slice(d,c).map(function(e,t){var a=d+1+t,o=" "+(" "+(a+n)).slice(-p)+" |",i=l[a],c=!l[a+1];if(i){var u="";if(Array.isArray(i)){var f=e.slice(0,Math.max(i[0]-1,0)).replace(/[^\t]/g," "),g=i[1]||1;u=["\n ",s.gutter(o.replace(/\d/g," "))," ",f,s.marker("^").repeat(g)].join(""),c&&r.message&&(u+=" "+s.message(r.message))}return[s.marker(">"),s.gutter(o),e.length>0?" "+e:"",u].join("")}return" "+s.gutter(o)+(e.length>0?" "+e:"")}).join("\n");return r.message&&!u&&(g=""+" ".repeat(p+1)+r.message+"\n"+g),a?s.reset(g):g}var IR=Z,DR=re,OR=nr,NR=ie,BR=Pt,MR=ye,FR=Dt,LR=er,UR=le,qR=Sy,GR=By,WR=/^[_$A-Z0-9]+$/;function VR(e,t,r){var a=r.placeholderWhitelist,n=r.placeholderPattern,s=r.preserveComments,o=r.syntacticPlaceholders,i=function(e,t,r){var a=(t.plugins||[]).slice();!1!==r&&a.push("placeholders");t=Object.assign({allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,allowNewTargetOutsideFunction:!0,allowSuperOutsideMethod:!0,allowYieldOutsideFunction:!0,sourceType:"module"},t,{plugins:a});try{return aR(e,t)}catch(t){var n=t.loc;throw n&&(t.message+="\n"+_R(e,{start:n}),t.code="BABEL_TEMPLATE_PARSE_ERROR"),t}}(t,r.parser,o);qR(i,{preserveComments:s}),e.validate(i);var d={syntactic:{placeholders:[],placeholderNames:new Set},legacy:{placeholders:[],placeholderNames:new Set},placeholderWhitelist:a,placeholderPattern:n,syntacticPlaceholders:o};return GR(i,HR,d),Object.assign({ast:i},d.syntactic.placeholders.length?d.syntactic:d.legacy)}function HR(e,t,r){var a,n,s=r.syntactic.placeholders.length>0;if(FR(e)){if(!1===r.syntacticPlaceholders)throw new Error("%%foo%%-style placeholders can't be used when '.syntacticPlaceholders' is false.");n=e.name.name,s=!0}else{if(s||r.syntacticPlaceholders)return;if(NR(e)||BR(e))n=e.name;else{if(!UR(e))return;n=e.value}}if(s&&(null!=r.placeholderPattern||null!=r.placeholderWhitelist))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");if(s||!1!==r.placeholderPattern&&(r.placeholderPattern||WR).test(n)||null!=(a=r.placeholderWhitelist)&&a.has(n)){var o,i=(t=t.slice())[t.length-1],d=i.node,c=i.key;UR(e)||FR(e,{expectedNode:"StringLiteral"})?o="string":MR(d)&&"arguments"===c||IR(d)&&"arguments"===c||OR(d)&&"params"===c?o="param":DR(d)&&!FR(e)?(o="statement",t=t.slice(0,-1)):o=LR(e)&&FR(e)?"statement":"other";var l=s?r.syntactic:r.legacy,u=l.placeholders,p=l.placeholderNames;u.push({name:n,type:o,resolve:function(e){return function(e,t){for(var r=e,a=0;a<t.length-1;a++){var n=t[a],s=n.key,o=n.index;r=void 0===o?r[s]:r[s][o]}var i=t[t.length-1],d=i.key,c=i.index;return{parent:r,key:d,index:c}}(e,t)},isDuplicate:p.has(n)}),p.add(n)}}var zR=ps,KR=sm,XR=xs,JR=Rs,YR=Ps,$R=er,QR=le,ZR=Cs,ej=es;function tj(e,t){var r=KR(e.ast);return t&&(e.placeholders.forEach(function(e){if(!hasOwnProperty.call(t,e.name)){var r=e.name;throw new Error('Error: No substitution given for "'+r+"\". If this is not meant to be a\n placeholder you may want to consider passing one of the following options to @babel/template:\n - { placeholderPattern: false, placeholderWhitelist: new Set(['"+r+"'])}\n - { placeholderPattern: /^"+r+"$/ }")}}),Object.keys(t).forEach(function(t){if(!e.placeholderNames.has(t))throw new Error('Unknown substitution "'+t+'" given')})),e.placeholders.slice().reverse().forEach(function(e){try{var a;!function(e,t,r){e.isDuplicate&&(Array.isArray(r)?r=r.map(function(e){return KR(e)}):"object"==typeof r&&(r=KR(r)));var a=e.resolve(t),n=a.parent,s=a.key,o=a.index;if("string"===e.type){if("string"==typeof r&&(r=ZR(r)),!r||!QR(r))throw new Error("Expected string substitution")}else if("statement"===e.type)void 0===o?r?Array.isArray(r)?r=zR(r):"string"==typeof r?r=JR(YR(r)):$R(r)||(r=JR(r)):r=XR():r&&!Array.isArray(r)&&("string"==typeof r&&(r=YR(r)),$R(r)||(r=JR(r)));else if("param"===e.type){if("string"==typeof r&&(r=YR(r)),void 0===o)throw new Error("Assertion failure.")}else if("string"==typeof r&&(r=YR(r)),Array.isArray(r))throw new Error("Cannot replace single expression with an array.");function i(e,t,r){var a=e[t];e[t]=r,"Identifier"!==a.type&&"Placeholder"!==a.type||(a.typeAnnotation&&(r.typeAnnotation=a.typeAnnotation),a.optional&&(r.optional=a.optional),a.decorators&&(r.decorators=a.decorators))}if(void 0===o)ej(n,s,r),i(n,s,r);else{var d=n[s].slice();"statement"===e.type||"param"===e.type?null==r?d.splice(o,1):Array.isArray(r)?d.splice.apply(d,[o,1].concat(b(r))):i(d,o,r):i(d,o,r),ej(n,s,d),n[s]=d}}(e,r,null!=(a=t&&t[e.name])?a:null)}catch(t){throw t.message='@babel/template placeholder "'+e.name+'": '+t.message,t}}),r}function rj(e,t,r){var a;return t=e.code(t),function(n){var s=sh(n);return a||(a=VR(e,t,r)),e.unwrap(tj(a,s))}}function aj(e,t,r){var a=function(e,t,r){var a="BABEL_TPL$",n=t.join("");do{a="$$"+a}while(n.includes(a));var s=function(e,t){for(var r=[],a=e[0],n=1;n<e.length;n++){var s=""+t+(n-1);r.push(s),a+=s+e[n]}return{names:r,code:a}}(t,a),o=s.names,i=s.code,d=VR(e,e.code(i),{parser:r.parser,placeholderWhitelist:new Set(o.concat(r.placeholderWhitelist?Array.from(r.placeholderWhitelist):[])),placeholderPattern:r.placeholderPattern,preserveComments:r.preserveComments,syntacticPlaceholders:r.syntacticPlaceholders});return{metadata:d,names:o}}(e,t,r),n=a.metadata,s=a.names;return function(t){var r={};return t.forEach(function(e,t){r[s[t]]=e}),function(t){var a=sh(t);return a&&Object.keys(a).forEach(function(e){if(hasOwnProperty.call(r,e))throw new Error("Unexpected replacement overlap.")}),e.unwrap(tj(n,a?Object.assign(a,r):r))}}}var nj=nh({placeholderPattern:!1});function sj(e,t){var r=new WeakMap,a=new WeakMap,n=t||nh(null);return Object.assign(function(t){for(var a=arguments.length,s=new Array(a>1?a-1:0),o=1;o<a;o++)s[o-1]=arguments[o];if("string"==typeof t){if(s.length>1)throw new Error("Unexpected extra params.");return oj(rj(e,t,ah(n,nh(s[0]))))}if(Array.isArray(t)){var i=r.get(t);return i||(i=aj(e,t,n),r.set(t,i)),oj(i(s))}if("object"==typeof t&&t){if(s.length>0)throw new Error("Unexpected extra params.");return sj(e,ah(n,nh(t)))}throw new Error("Unexpected template param "+typeof t)},{ast:function(t){for(var r=arguments.length,s=new Array(r>1?r-1:0),o=1;o<r;o++)s[o-1]=arguments[o];if("string"==typeof t){if(s.length>1)throw new Error("Unexpected extra params.");return rj(e,t,ah(ah(n,nh(s[0])),nj))()}if(Array.isArray(t)){var i=a.get(t);return i||(i=aj(e,t,ah(n,nj)),a.set(t,i)),i(s)()}throw new Error("Unexpected template param "+typeof t)}})}function oj(e){var t="";try{throw new Error}catch(e){e.stack&&(t=e.stack.split("\n").slice(3).join("\n"))}return function(r){try{return e(r)}catch(e){throw e.stack+="\n =============\n"+t,e}}}var ij=sj(Qy),dj=sj(eh),cj=sj(Zy),lj=sj(th),uj=sj({code:function(e){return e},validate:function(){},unwrap:function(e){return e.program}}),pj=Object.assign(ij.bind(void 0),{smart:ij,statement:dj,statements:cj,expression:lj,program:uj,ast:ij.ast}),fj=Object.freeze({__proto__:null,default:pj,expression:lj,program:uj,smart:ij,statement:dj,statements:cj});function gj(e,t,r){return Object.freeze({minVersion:e,ast:function(){return pj.program.ast(t,{preserveComments:!0})},metadata:r})}var mj={__proto__:null,OverloadYield:gj("7.18.14","function _OverloadYield(e,d){this.v=e,this.k=d}",{globals:[],locals:{_OverloadYield:["body.0.id"]},exportBindingAssignments:[],exportName:"_OverloadYield",dependencies:{},internal:!1}),applyDecoratedDescriptor:gj("7.0.0-beta.0",'function _applyDecoratedDescriptor(i,e,r,n,l){var a={};return Object.keys(n).forEach(function(i){a[i]=n[i]}),a.enumerable=!!a.enumerable,a.configurable=!!a.configurable,("value"in a||a.initializer)&&(a.writable=!0),a=r.slice().reverse().reduce(function(r,n){return n(i,e,r)||r},a),l&&void 0!==a.initializer&&(a.value=a.initializer?a.initializer.call(l):void 0,a.initializer=void 0),void 0===a.initializer?(Object.defineProperty(i,e,a),null):a}',{globals:["Object"],locals:{_applyDecoratedDescriptor:["body.0.id"]},exportBindingAssignments:[],exportName:"_applyDecoratedDescriptor",dependencies:{},internal:!1}),applyDecs2311:gj("7.24.0",'function applyDecs2311(e,t,n,r,o,i){var a,c,u,s,f,l,p,d=Symbol.metadata||Symbol.for("Symbol.metadata"),m=Object.defineProperty,h=Object.create,y=[h(null),h(null)],v=t.length;function g(t,n,r){return function(o,i){n&&(i=o,o=e);for(var a=0;a<t.length;a++)i=t[a].apply(o,r?[i]:[]);return r?i:o}}function b(e,t,n,r){if("function"!=typeof e&&(r||void 0!==e))throw new TypeError(t+" must "+(n||"be")+" a function"+(r?"":" or undefined"));return e}function applyDec(e,t,n,r,o,i,u,s,f,l,p){function d(e){if(!p(e))throw new TypeError("Attempted to access private element on non-instance")}var h=[].concat(t[0]),v=t[3],w=!u,D=1===o,S=3===o,j=4===o,E=2===o;function I(t,n,r){return function(o,i){return n&&(i=o,o=e),r&&r(o),P[t].call(o,i)}}if(!w){var P={},k=[],F=S?"get":j||D?"set":"value";if(f?(l||D?P={get:setFunctionName(function(){return v(this)},r,"get"),set:function(e){t[4](this,e)}}:P[F]=v,l||setFunctionName(P[F],r,E?"":F)):l||(P=Object.getOwnPropertyDescriptor(e,r)),!l&&!f){if((c=y[+s][r])&&7!==(c^o))throw Error("Decorating two elements with the same name ("+P[F].name+") is not supported yet");y[+s][r]=o<3?1:o}}for(var N=e,O=h.length-1;O>=0;O-=n?2:1){var T=b(h[O],"A decorator","be",!0),z=n?h[O-1]:void 0,A={},H={kind:["field","accessor","method","getter","setter","class"][o],name:r,metadata:a,addInitializer:function(e,t){if(e.v)throw new TypeError("attempted to call addInitializer after decoration was finished");b(t,"An initializer","be",!0),i.push(t)}.bind(null,A)};if(w)c=T.call(z,N,H),A.v=1,b(c,"class decorators","return")&&(N=c);else if(H.static=s,H.private=f,c=H.access={has:f?p.bind():function(e){return r in e}},j||(c.get=f?E?function(e){return d(e),P.value}:I("get",0,d):function(e){return e[r]}),E||S||(c.set=f?I("set",0,d):function(e,t){e[r]=t}),N=T.call(z,D?{get:P.get,set:P.set}:P[F],H),A.v=1,D){if("object"==typeof N&&N)(c=b(N.get,"accessor.get"))&&(P.get=c),(c=b(N.set,"accessor.set"))&&(P.set=c),(c=b(N.init,"accessor.init"))&&k.unshift(c);else if(void 0!==N)throw new TypeError("accessor decorators must return an object with get, set, or init properties or undefined")}else b(N,(l?"field":"method")+" decorators","return")&&(l?k.unshift(N):P[F]=N)}return o<2&&u.push(g(k,s,1),g(i,s,0)),l||w||(f?D?u.splice(-1,0,I("get",s),I("set",s)):u.push(E?P[F]:b.call.bind(P[F])):m(e,r,P)),N}function w(e){return m(e,d,{configurable:!0,enumerable:!0,value:a})}return void 0!==i&&(a=i[d]),a=h(null==a?null:a),f=[],l=function(e){e&&f.push(g(e))},p=function(t,r){for(var i=0;i<n.length;i++){var a=n[i],c=a[1],l=7&c;if((8&c)==t&&!l==r){var p=a[2],d=!!a[3],m=16&c;applyDec(t?e:e.prototype,a,m,d?"#"+p:toPropertyKey(p),l,l<2?[]:t?s=s||[]:u=u||[],f,!!t,d,r,t&&d?function(t){return checkInRHS(t)===e}:o)}}},p(8,0),p(0,0),p(8,1),p(0,1),l(u),l(s),c=f,v||w(e),{e:c,get c(){var n=[];return v&&[w(e=applyDec(e,[t],r,e.name,5,n)),g(n,1)]}}}',{globals:["Symbol","Object","TypeError","Error"],locals:{applyDecs2311:["body.0.id"]},exportBindingAssignments:[],exportName:"applyDecs2311",dependencies:{checkInRHS:["body.0.body.body.5.argument.expressions.4.right.body.body.0.body.body.1.consequent.body.1.expression.arguments.10.consequent.body.body.0.argument.left.callee"],setFunctionName:["body.0.body.body.3.body.body.3.consequent.body.1.test.expressions.0.consequent.expressions.0.consequent.right.properties.0.value.callee","body.0.body.body.3.body.body.3.consequent.body.1.test.expressions.0.consequent.expressions.1.right.callee"],toPropertyKey:["body.0.body.body.5.argument.expressions.4.right.body.body.0.body.body.1.consequent.body.1.expression.arguments.3.alternate.callee"]},internal:!1}),arrayLikeToArray:gj("7.9.0","function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}",{globals:["Array"],locals:{_arrayLikeToArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_arrayLikeToArray",dependencies:{},internal:!1}),arrayWithHoles:gj("7.0.0-beta.0","function _arrayWithHoles(r){if(Array.isArray(r))return r}",{globals:["Array"],locals:{_arrayWithHoles:["body.0.id"]},exportBindingAssignments:[],exportName:"_arrayWithHoles",dependencies:{},internal:!1}),arrayWithoutHoles:gj("7.0.0-beta.0","function _arrayWithoutHoles(r){if(Array.isArray(r))return arrayLikeToArray(r)}",{globals:["Array"],locals:{_arrayWithoutHoles:["body.0.id"]},exportBindingAssignments:[],exportName:"_arrayWithoutHoles",dependencies:{arrayLikeToArray:["body.0.body.body.0.consequent.argument.callee"]},internal:!1}),assertClassBrand:gj("7.24.0",'function _assertClassBrand(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}',{globals:["TypeError"],locals:{_assertClassBrand:["body.0.id"]},exportBindingAssignments:[],exportName:"_assertClassBrand",dependencies:{},internal:!1}),assertThisInitialized:gj("7.0.0-beta.0","function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return e}",{globals:["ReferenceError"],locals:{_assertThisInitialized:["body.0.id"]},exportBindingAssignments:[],exportName:"_assertThisInitialized",dependencies:{},internal:!1}),asyncGeneratorDelegate:gj("7.0.0-beta.0",'function _asyncGeneratorDelegate(t){var e={},n=!1;function pump(e,r){return n=!0,r=new Promise(function(n){n(t[e](r))}),{done:!1,value:new OverloadYield(r,1)}}return e["undefined"!=typeof Symbol&&Symbol.iterator||"@@iterator"]=function(){return this},e.next=function(t){return n?(n=!1,t):pump("next",t)},"function"==typeof t.throw&&(e.throw=function(t){if(n)throw n=!1,t;return pump("throw",t)}),"function"==typeof t.return&&(e.return=function(t){return n?(n=!1,t):pump("return",t)}),e}',{globals:["Promise","Symbol"],locals:{_asyncGeneratorDelegate:["body.0.id"]},exportBindingAssignments:[],exportName:"_asyncGeneratorDelegate",dependencies:{OverloadYield:["body.0.body.body.1.body.body.0.argument.expressions.2.properties.1.value.callee"]},internal:!1}),asyncIterator:gj("7.15.9",'function _asyncIterator(r){var n,t,o,e=2;for("undefined"!=typeof Symbol&&(t=Symbol.asyncIterator,o=Symbol.iterator);e--;){if(t&&null!=(n=r[t]))return n.call(r);if(o&&null!=(n=r[o]))return new AsyncFromSyncIterator(n.call(r));t="@@asyncIterator",o="@@iterator"}throw new TypeError("Object is not async iterable")}function AsyncFromSyncIterator(r){function AsyncFromSyncIteratorContinuation(r){if(Object(r)!==r)return Promise.reject(new TypeError(r+" is not an object."));var n=r.done;return Promise.resolve(r.value).then(function(r){return{value:r,done:n}})}return AsyncFromSyncIterator=function(r){this.s=r,this.n=r.next},AsyncFromSyncIterator.prototype={s:null,n:null,next:function(){return AsyncFromSyncIteratorContinuation(this.n.apply(this.s,arguments))},return:function(r){var n=this.s.return;return void 0===n?Promise.resolve({value:r,done:!0}):AsyncFromSyncIteratorContinuation(n.apply(this.s,arguments))},throw:function(r){var n=this.s.return;return void 0===n?Promise.reject(r):AsyncFromSyncIteratorContinuation(n.apply(this.s,arguments))}},new AsyncFromSyncIterator(r)}',{globals:["Symbol","TypeError","Object","Promise"],locals:{_asyncIterator:["body.0.id"],AsyncFromSyncIterator:["body.1.id","body.0.body.body.1.body.body.1.consequent.argument.callee","body.1.body.body.1.argument.expressions.1.left.object","body.1.body.body.1.argument.expressions.2.callee","body.1.body.body.1.argument.expressions.0.left"]},exportBindingAssignments:[],exportName:"_asyncIterator",dependencies:{},internal:!1}),asyncToGenerator:gj("7.0.0-beta.0",'function asyncGeneratorStep(n,t,e,r,o,a,c){try{var i=n[a](c),u=i.value}catch(n){return void e(n)}i.done?t(u):Promise.resolve(u).then(r,o)}function _asyncToGenerator(n){return function(){var t=this,e=arguments;return new Promise(function(r,o){var a=n.apply(t,e);function _next(n){asyncGeneratorStep(a,r,o,_next,_throw,"next",n)}function _throw(n){asyncGeneratorStep(a,r,o,_next,_throw,"throw",n)}_next(void 0)})}}',{globals:["Promise"],locals:{asyncGeneratorStep:["body.0.id","body.1.body.body.0.argument.body.body.1.argument.arguments.0.body.body.1.body.body.0.expression.callee","body.1.body.body.0.argument.body.body.1.argument.arguments.0.body.body.2.body.body.0.expression.callee"],_asyncToGenerator:["body.1.id"]},exportBindingAssignments:[],exportName:"_asyncToGenerator",dependencies:{},internal:!1}),awaitAsyncGenerator:gj("7.0.0-beta.0","function _awaitAsyncGenerator(e){return new OverloadYield(e,0)}",{globals:[],locals:{_awaitAsyncGenerator:["body.0.id"]},exportBindingAssignments:[],exportName:"_awaitAsyncGenerator",dependencies:{OverloadYield:["body.0.body.body.0.argument.callee"]},internal:!1}),callSuper:gj("7.23.8","function _callSuper(t,o,e){return o=getPrototypeOf(o),possibleConstructorReturn(t,isNativeReflectConstruct()?Reflect.construct(o,e||[],getPrototypeOf(t).constructor):o.apply(t,e))}",{globals:["Reflect"],locals:{_callSuper:["body.0.id"]},exportBindingAssignments:[],exportName:"_callSuper",dependencies:{getPrototypeOf:["body.0.body.body.0.argument.expressions.0.right.callee","body.0.body.body.0.argument.expressions.1.arguments.1.consequent.arguments.2.object.callee"],isNativeReflectConstruct:["body.0.body.body.0.argument.expressions.1.arguments.1.test.callee"],possibleConstructorReturn:["body.0.body.body.0.argument.expressions.1.callee"]},internal:!1}),checkInRHS:gj("7.20.5",'function _checkInRHS(e){if(Object(e)!==e)throw TypeError("right-hand side of \'in\' should be an object, got "+(null!==e?typeof e:"null"));return e}',{globals:["Object","TypeError"],locals:{_checkInRHS:["body.0.id"]},exportBindingAssignments:[],exportName:"_checkInRHS",dependencies:{},internal:!1}),checkPrivateRedeclaration:gj("7.14.1",'function _checkPrivateRedeclaration(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}',{globals:["TypeError"],locals:{_checkPrivateRedeclaration:["body.0.id"]},exportBindingAssignments:[],exportName:"_checkPrivateRedeclaration",dependencies:{},internal:!1}),classCallCheck:gj("7.0.0-beta.0",'function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function")}',{globals:["TypeError"],locals:{_classCallCheck:["body.0.id"]},exportBindingAssignments:[],exportName:"_classCallCheck",dependencies:{},internal:!1}),classNameTDZError:gj("7.0.0-beta.0","function _classNameTDZError(e){throw new ReferenceError('Class \"'+e+'\" cannot be referenced in computed property keys.')}",{globals:["ReferenceError"],locals:{_classNameTDZError:["body.0.id"]},exportBindingAssignments:[],exportName:"_classNameTDZError",dependencies:{},internal:!1}),classPrivateFieldGet2:gj("7.24.0","function _classPrivateFieldGet2(s,a){return s.get(assertClassBrand(s,a))}",{globals:[],locals:{_classPrivateFieldGet2:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldGet2",dependencies:{assertClassBrand:["body.0.body.body.0.argument.arguments.0.callee"]},internal:!1}),classPrivateFieldInitSpec:gj("7.14.1","function _classPrivateFieldInitSpec(e,t,a){checkPrivateRedeclaration(e,t),t.set(e,a)}",{globals:[],locals:{_classPrivateFieldInitSpec:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldInitSpec",dependencies:{checkPrivateRedeclaration:["body.0.body.body.0.expression.expressions.0.callee"]},internal:!1}),classPrivateFieldLooseBase:gj("7.0.0-beta.0",'function _classPrivateFieldBase(e,t){if(!{}.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}',{globals:["TypeError"],locals:{_classPrivateFieldBase:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldBase",dependencies:{},internal:!1}),classPrivateFieldLooseKey:gj("7.0.0-beta.0",'var id=0;function _classPrivateFieldKey(e){return"__private_"+id+++"_"+e}',{globals:[],locals:{id:["body.0.declarations.0.id","body.1.body.body.0.argument.left.left.right.argument","body.1.body.body.0.argument.left.left.right.argument"],_classPrivateFieldKey:["body.1.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldKey",dependencies:{},internal:!1}),classPrivateFieldSet2:gj("7.24.0","function _classPrivateFieldSet2(s,a,r){return s.set(assertClassBrand(s,a),r),r}",{globals:[],locals:{_classPrivateFieldSet2:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldSet2",dependencies:{assertClassBrand:["body.0.body.body.0.argument.expressions.0.arguments.0.callee"]},internal:!1}),classPrivateGetter:gj("7.24.0","function _classPrivateGetter(s,r,a){return a(assertClassBrand(s,r))}",{globals:[],locals:{_classPrivateGetter:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateGetter",dependencies:{assertClassBrand:["body.0.body.body.0.argument.arguments.0.callee"]},internal:!1}),classPrivateMethodInitSpec:gj("7.14.1","function _classPrivateMethodInitSpec(e,a){checkPrivateRedeclaration(e,a),a.add(e)}",{globals:[],locals:{_classPrivateMethodInitSpec:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateMethodInitSpec",dependencies:{checkPrivateRedeclaration:["body.0.body.body.0.expression.expressions.0.callee"]},internal:!1}),classPrivateSetter:gj("7.24.0","function _classPrivateSetter(s,r,a,t){return r(assertClassBrand(s,a),t),t}",{globals:[],locals:{_classPrivateSetter:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateSetter",dependencies:{assertClassBrand:["body.0.body.body.0.argument.expressions.0.arguments.0.callee"]},internal:!1}),classStaticPrivateMethodGet:gj("7.3.2","function _classStaticPrivateMethodGet(s,a,t){return assertClassBrand(a,s),t}",{globals:[],locals:{_classStaticPrivateMethodGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classStaticPrivateMethodGet",dependencies:{assertClassBrand:["body.0.body.body.0.argument.expressions.0.callee"]},internal:!1}),construct:gj("7.0.0-beta.0","function _construct(t,e,r){if(isNativeReflectConstruct())return Reflect.construct.apply(null,arguments);var o=[null];o.push.apply(o,e);var p=new(t.bind.apply(t,o));return r&&setPrototypeOf(p,r.prototype),p}",{globals:["Reflect"],locals:{_construct:["body.0.id"]},exportBindingAssignments:[],exportName:"_construct",dependencies:{isNativeReflectConstruct:["body.0.body.body.0.test.callee"],setPrototypeOf:["body.0.body.body.4.argument.expressions.0.right.callee"]},internal:!1}),createClass:gj("7.0.0-beta.0",'function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,toPropertyKey(o.key),o)}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}',{globals:["Object"],locals:{_defineProperties:["body.0.id","body.1.body.body.0.argument.expressions.0.right.callee","body.1.body.body.0.argument.expressions.1.right.callee"],_createClass:["body.1.id"]},exportBindingAssignments:[],exportName:"_createClass",dependencies:{toPropertyKey:["body.0.body.body.0.body.body.1.expression.expressions.3.arguments.1.callee"]},internal:!1}),createForOfIteratorHelper:gj("7.9.0",'function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var n=0,F=function(){};return{s:F,n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(r){throw r},f:F}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,u=!1;return{s:function(){t=t.call(r)},n:function(){var r=t.next();return a=r.done,r},e:function(r){u=!0,o=r},f:function(){try{a||null==t.return||t.return()}finally{if(u)throw o}}}}',{globals:["Symbol","Array","TypeError"],locals:{_createForOfIteratorHelper:["body.0.id"]},exportBindingAssignments:[],exportName:"_createForOfIteratorHelper",dependencies:{unsupportedIterableToArray:["body.0.body.body.1.consequent.body.0.test.left.right.right.callee"]},internal:!1}),createForOfIteratorHelperLoose:gj("7.9.0",'function _createForOfIteratorHelperLoose(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(t)return(t=t.call(r)).next.bind(t);if(Array.isArray(r)||(t=unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var o=0;return function(){return o>=r.length?{done:!0}:{done:!1,value:r[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}',{globals:["Symbol","Array","TypeError"],locals:{_createForOfIteratorHelperLoose:["body.0.id"]},exportBindingAssignments:[],exportName:"_createForOfIteratorHelperLoose",dependencies:{unsupportedIterableToArray:["body.0.body.body.2.test.left.right.right.callee"]},internal:!1}),createSuper:gj("7.9.0","function _createSuper(t){var r=isNativeReflectConstruct();return function(){var e,o=getPrototypeOf(t);if(r){var s=getPrototypeOf(this).constructor;e=Reflect.construct(o,arguments,s)}else e=o.apply(this,arguments);return possibleConstructorReturn(this,e)}}",{globals:["Reflect"],locals:{_createSuper:["body.0.id"]},exportBindingAssignments:[],exportName:"_createSuper",dependencies:{getPrototypeOf:["body.0.body.body.1.argument.body.body.0.declarations.1.init.callee","body.0.body.body.1.argument.body.body.1.consequent.body.0.declarations.0.init.object.callee"],isNativeReflectConstruct:["body.0.body.body.0.declarations.0.init.callee"],possibleConstructorReturn:["body.0.body.body.1.argument.body.body.2.argument.callee"]},internal:!1}),decorate:gj("7.1.5",'function _decorate(e,r,t,i){var o=_getDecoratorsApi();if(i)for(var n=0;n<i.length;n++)o=i[n](o);var s=r(function(e){o.initializeInstanceElements(e,a.elements)},t),a=o.decorateClass(_coalesceClassElements(s.d.map(_createElementDescriptor)),e);return o.initializeClassElements(s.F,a.elements),o.runClassFinishers(s.F,a.finishers)}function _getDecoratorsApi(){_getDecoratorsApi=function(){return e};var e={elementsDefinitionOrder:[["method"],["field"]],initializeInstanceElements:function(e,r){["method","field"].forEach(function(t){r.forEach(function(r){r.kind===t&&"own"===r.placement&&this.defineClassElement(e,r)},this)},this)},initializeClassElements:function(e,r){var t=e.prototype;["method","field"].forEach(function(i){r.forEach(function(r){var o=r.placement;if(r.kind===i&&("static"===o||"prototype"===o)){var n="static"===o?e:t;this.defineClassElement(n,r)}},this)},this)},defineClassElement:function(e,r){var t=r.descriptor;if("field"===r.kind){var i=r.initializer;t={enumerable:t.enumerable,writable:t.writable,configurable:t.configurable,value:void 0===i?void 0:i.call(e)}}Object.defineProperty(e,r.key,t)},decorateClass:function(e,r){var t=[],i=[],o={static:[],prototype:[],own:[]};if(e.forEach(function(e){this.addElementPlacement(e,o)},this),e.forEach(function(e){if(!_hasDecorators(e))return t.push(e);var r=this.decorateElement(e,o);t.push(r.element),t.push.apply(t,r.extras),i.push.apply(i,r.finishers)},this),!r)return{elements:t,finishers:i};var n=this.decorateConstructor(t,r);return i.push.apply(i,n.finishers),n.finishers=i,n},addElementPlacement:function(e,r,t){var i=r[e.placement];if(!t&&-1!==i.indexOf(e.key))throw new TypeError("Duplicated element ("+e.key+")");i.push(e.key)},decorateElement:function(e,r){for(var t=[],i=[],o=e.decorators,n=o.length-1;n>=0;n--){var s=r[e.placement];s.splice(s.indexOf(e.key),1);var a=this.fromElementDescriptor(e),l=this.toElementFinisherExtras((0,o[n])(a)||a);e=l.element,this.addElementPlacement(e,r),l.finisher&&i.push(l.finisher);var c=l.extras;if(c){for(var p=0;p<c.length;p++)this.addElementPlacement(c[p],r);t.push.apply(t,c)}}return{element:e,finishers:i,extras:t}},decorateConstructor:function(e,r){for(var t=[],i=r.length-1;i>=0;i--){var o=this.fromClassDescriptor(e),n=this.toClassDescriptor((0,r[i])(o)||o);if(void 0!==n.finisher&&t.push(n.finisher),void 0!==n.elements){e=n.elements;for(var s=0;s<e.length-1;s++)for(var a=s+1;a<e.length;a++)if(e[s].key===e[a].key&&e[s].placement===e[a].placement)throw new TypeError("Duplicated element ("+e[s].key+")")}}return{elements:e,finishers:t}},fromElementDescriptor:function(e){var r={kind:e.kind,key:e.key,placement:e.placement,descriptor:e.descriptor};return Object.defineProperty(r,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),"field"===e.kind&&(r.initializer=e.initializer),r},toElementDescriptors:function(e){if(void 0!==e)return toArray(e).map(function(e){var r=this.toElementDescriptor(e);return this.disallowProperty(e,"finisher","An element descriptor"),this.disallowProperty(e,"extras","An element descriptor"),r},this)},toElementDescriptor:function(e){var r=e.kind+"";if("method"!==r&&"field"!==r)throw new TypeError(\'An element descriptor\\\'s .kind property must be either "method" or "field", but a decorator created an element descriptor with .kind "\'+r+\'"\');var t=toPropertyKey(e.key),i=e.placement+"";if("static"!==i&&"prototype"!==i&&"own"!==i)throw new TypeError(\'An element descriptor\\\'s .placement property must be one of "static", "prototype" or "own", but a decorator created an element descriptor with .placement "\'+i+\'"\');var o=e.descriptor;this.disallowProperty(e,"elements","An element descriptor");var n={kind:r,key:t,placement:i,descriptor:Object.assign({},o)};return"field"!==r?this.disallowProperty(e,"initializer","A method descriptor"):(this.disallowProperty(o,"get","The property descriptor of a field descriptor"),this.disallowProperty(o,"set","The property descriptor of a field descriptor"),this.disallowProperty(o,"value","The property descriptor of a field descriptor"),n.initializer=e.initializer),n},toElementFinisherExtras:function(e){return{element:this.toElementDescriptor(e),finisher:_optionalCallableProperty(e,"finisher"),extras:this.toElementDescriptors(e.extras)}},fromClassDescriptor:function(e){var r={kind:"class",elements:e.map(this.fromElementDescriptor,this)};return Object.defineProperty(r,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),r},toClassDescriptor:function(e){var r=e.kind+"";if("class"!==r)throw new TypeError(\'A class descriptor\\\'s .kind property must be "class", but a decorator created a class descriptor with .kind "\'+r+\'"\');this.disallowProperty(e,"key","A class descriptor"),this.disallowProperty(e,"placement","A class descriptor"),this.disallowProperty(e,"descriptor","A class descriptor"),this.disallowProperty(e,"initializer","A class descriptor"),this.disallowProperty(e,"extras","A class descriptor");var t=_optionalCallableProperty(e,"finisher");return{elements:this.toElementDescriptors(e.elements),finisher:t}},runClassFinishers:function(e,r){for(var t=0;t<r.length;t++){var i=(0,r[t])(e);if(void 0!==i){if("function"!=typeof i)throw new TypeError("Finishers must return a constructor.");e=i}}return e},disallowProperty:function(e,r,t){if(void 0!==e[r])throw new TypeError(t+" can\'t have a ."+r+" property.")}};return e}function _createElementDescriptor(e){var r,t=toPropertyKey(e.key);"method"===e.kind?r={value:e.value,writable:!0,configurable:!0,enumerable:!1}:"get"===e.kind?r={get:e.value,configurable:!0,enumerable:!1}:"set"===e.kind?r={set:e.value,configurable:!0,enumerable:!1}:"field"===e.kind&&(r={configurable:!0,writable:!0,enumerable:!0});var i={kind:"field"===e.kind?"field":"method",key:t,placement:e.static?"static":"field"===e.kind?"own":"prototype",descriptor:r};return e.decorators&&(i.decorators=e.decorators),"field"===e.kind&&(i.initializer=e.value),i}function _coalesceGetterSetter(e,r){void 0!==e.descriptor.get?r.descriptor.get=e.descriptor.get:r.descriptor.set=e.descriptor.set}function _coalesceClassElements(e){for(var r=[],isSameElement=function(e){return"method"===e.kind&&e.key===o.key&&e.placement===o.placement},t=0;t<e.length;t++){var i,o=e[t];if("method"===o.kind&&(i=r.find(isSameElement)))if(_isDataDescriptor(o.descriptor)||_isDataDescriptor(i.descriptor)){if(_hasDecorators(o)||_hasDecorators(i))throw new ReferenceError("Duplicated methods ("+o.key+") can\'t be decorated.");i.descriptor=o.descriptor}else{if(_hasDecorators(o)){if(_hasDecorators(i))throw new ReferenceError("Decorators can\'t be placed on different accessors with for the same property ("+o.key+").");i.decorators=o.decorators}_coalesceGetterSetter(o,i)}else r.push(o)}return r}function _hasDecorators(e){return e.decorators&&e.decorators.length}function _isDataDescriptor(e){return void 0!==e&&!(void 0===e.value&&void 0===e.writable)}function _optionalCallableProperty(e,r){var t=e[r];if(void 0!==t&&"function"!=typeof t)throw new TypeError("Expected \'"+r+"\' to be a function");return t}',{globals:["Object","TypeError","Symbol","ReferenceError"],locals:{_decorate:["body.0.id"],_getDecoratorsApi:["body.1.id","body.0.body.body.0.declarations.0.init.callee","body.1.body.body.0.expression.left"],_createElementDescriptor:["body.2.id","body.0.body.body.2.declarations.1.init.arguments.0.arguments.0.arguments.0"],_coalesceGetterSetter:["body.3.id","body.4.body.body.0.body.body.1.consequent.alternate.body.1.expression.callee"],_coalesceClassElements:["body.4.id","body.0.body.body.2.declarations.1.init.arguments.0.callee"],_hasDecorators:["body.5.id","body.1.body.body.1.declarations.0.init.properties.4.value.body.body.1.test.expressions.1.arguments.0.body.body.0.test.argument.callee","body.4.body.body.0.body.body.1.consequent.consequent.body.0.test.left.callee","body.4.body.body.0.body.body.1.consequent.consequent.body.0.test.right.callee","body.4.body.body.0.body.body.1.consequent.alternate.body.0.test.callee","body.4.body.body.0.body.body.1.consequent.alternate.body.0.consequent.body.0.test.callee"],_isDataDescriptor:["body.6.id","body.4.body.body.0.body.body.1.consequent.test.left.callee","body.4.body.body.0.body.body.1.consequent.test.right.callee"],_optionalCallableProperty:["body.7.id","body.1.body.body.1.declarations.0.init.properties.11.value.body.body.0.argument.properties.1.value.callee","body.1.body.body.1.declarations.0.init.properties.13.value.body.body.3.declarations.0.init.callee"]},exportBindingAssignments:[],exportName:"_decorate",dependencies:{toArray:["body.1.body.body.1.declarations.0.init.properties.9.value.body.body.0.consequent.argument.callee.object.callee"],toPropertyKey:["body.1.body.body.1.declarations.0.init.properties.10.value.body.body.2.declarations.0.init.callee","body.2.body.body.0.declarations.1.init.callee"]},internal:!1}),defaults:gj("7.0.0-beta.0","function _defaults(e,r){for(var t=Object.getOwnPropertyNames(r),o=0;o<t.length;o++){var n=t[o],a=Object.getOwnPropertyDescriptor(r,n);a&&a.configurable&&void 0===e[n]&&Object.defineProperty(e,n,a)}return e}",{globals:["Object"],locals:{_defaults:["body.0.id"]},exportBindingAssignments:[],exportName:"_defaults",dependencies:{},internal:!1}),defineAccessor:gj("7.20.7","function _defineAccessor(e,r,n,t){var c={configurable:!0,enumerable:!0};return c[e]=t,Object.defineProperty(r,n,c)}",{globals:["Object"],locals:{_defineAccessor:["body.0.id"]},exportBindingAssignments:[],exportName:"_defineAccessor",dependencies:{},internal:!1}),defineProperty:gj("7.0.0-beta.0","function _defineProperty(e,r,t){return(r=toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}",{globals:["Object"],locals:{_defineProperty:["body.0.id"]},exportBindingAssignments:[],exportName:"_defineProperty",dependencies:{toPropertyKey:["body.0.body.body.0.argument.expressions.0.test.left.right.callee"]},internal:!1}),extends:gj("7.0.0-beta.0","function _extends(){return _extends=Object.assign?Object.assign.bind():function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(n[r]=t[r])}return n},_extends.apply(null,arguments)}",{globals:["Object"],locals:{_extends:["body.0.id","body.0.body.body.0.argument.expressions.1.callee.object","body.0.body.body.0.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.0.argument.expressions.0"],exportName:"_extends",dependencies:{},internal:!1}),get:gj("7.0.0-beta.0",'function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value}},_get.apply(null,arguments)}',{globals:["Reflect","Object"],locals:{_get:["body.0.id","body.0.body.body.0.argument.expressions.1.callee.object","body.0.body.body.0.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.0.argument.expressions.0"],exportName:"_get",dependencies:{superPropBase:["body.0.body.body.0.argument.expressions.0.right.alternate.body.body.0.declarations.0.init.callee"]},internal:!1}),getPrototypeOf:gj("7.0.0-beta.0","function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_getPrototypeOf(t)}",{globals:["Object"],locals:{_getPrototypeOf:["body.0.id","body.0.body.body.0.argument.expressions.1.callee","body.0.body.body.0.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.0.argument.expressions.0"],exportName:"_getPrototypeOf",dependencies:{},internal:!1}),identity:gj("7.17.0","function _identity(t){return t}",{globals:[],locals:{_identity:["body.0.id"]},exportBindingAssignments:[],exportName:"_identity",dependencies:{},internal:!1}),importDeferProxy:gj("7.23.0","function _importDeferProxy(e){var t=null,constValue=function(e){return function(){return e}},proxy=function(r){return function(n,o,f){return null===t&&(t=e()),r(t,o,f)}};return new Proxy({},{defineProperty:constValue(!1),deleteProperty:constValue(!1),get:proxy(Reflect.get),getOwnPropertyDescriptor:proxy(Reflect.getOwnPropertyDescriptor),getPrototypeOf:constValue(null),isExtensible:constValue(!1),has:proxy(Reflect.has),ownKeys:proxy(Reflect.ownKeys),preventExtensions:constValue(!0),set:constValue(!1),setPrototypeOf:constValue(!1)})}",{globals:["Proxy","Reflect"],locals:{_importDeferProxy:["body.0.id"]},exportBindingAssignments:[],exportName:"_importDeferProxy",dependencies:{},internal:!1}),inherits:gj("7.0.0-beta.0",'function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&setPrototypeOf(t,e)}',{globals:["TypeError","Object"],locals:{_inherits:["body.0.id"]},exportBindingAssignments:[],exportName:"_inherits",dependencies:{setPrototypeOf:["body.0.body.body.1.expression.expressions.2.right.callee"]},internal:!1}),inheritsLoose:gj("7.0.0-beta.0","function _inheritsLoose(t,o){t.prototype=Object.create(o.prototype),t.prototype.constructor=t,setPrototypeOf(t,o)}",{globals:["Object"],locals:{_inheritsLoose:["body.0.id"]},exportBindingAssignments:[],exportName:"_inheritsLoose",dependencies:{setPrototypeOf:["body.0.body.body.0.expression.expressions.2.callee"]},internal:!1}),initializerDefineProperty:gj("7.0.0-beta.0","function _initializerDefineProperty(e,i,r,l){r&&Object.defineProperty(e,i,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(l):void 0})}",{globals:["Object"],locals:{_initializerDefineProperty:["body.0.id"]},exportBindingAssignments:[],exportName:"_initializerDefineProperty",dependencies:{},internal:!1}),initializerWarningHelper:gj("7.0.0-beta.0",'function _initializerWarningHelper(r,e){throw Error("Decorating class property failed. Please ensure that transform-class-properties is enabled and runs after the decorators transform.")}',{globals:["Error"],locals:{_initializerWarningHelper:["body.0.id"]},exportBindingAssignments:[],exportName:"_initializerWarningHelper",dependencies:{},internal:!1}),instanceof:gj("7.0.0-beta.0",'function _instanceof(n,e){return null!=e&&"undefined"!=typeof Symbol&&e[Symbol.hasInstance]?!!e[Symbol.hasInstance](n):n instanceof e}',{globals:["Symbol"],locals:{_instanceof:["body.0.id"]},exportBindingAssignments:[],exportName:"_instanceof",dependencies:{},internal:!1}),interopRequireDefault:gj("7.0.0-beta.0","function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}",{globals:[],locals:{_interopRequireDefault:["body.0.id"]},exportBindingAssignments:[],exportName:"_interopRequireDefault",dependencies:{},internal:!1}),interopRequireWildcard:gj("7.14.0",'function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return(_interopRequireWildcard=function(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?o(f,t,i):f[t]=e[t]);return f})(e,t)}',{globals:["WeakMap","Object"],locals:{_interopRequireWildcard:["body.0.id","body.0.body.body.1.argument.callee.left"]},exportBindingAssignments:["body.0.body.body.1.argument.callee"],exportName:"_interopRequireWildcard",dependencies:{},internal:!1}),isNativeFunction:gj("7.0.0-beta.0",'function _isNativeFunction(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(n){return"function"==typeof t}}',{globals:["Function"],locals:{_isNativeFunction:["body.0.id"]},exportBindingAssignments:[],exportName:"_isNativeFunction",dependencies:{},internal:!1}),isNativeReflectConstruct:gj("7.9.0","function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(_isNativeReflectConstruct=function(){return!!t})()}",{globals:["Boolean","Reflect"],locals:{_isNativeReflectConstruct:["body.0.id","body.0.body.body.1.argument.callee.left"]},exportBindingAssignments:["body.0.body.body.1.argument.callee"],exportName:"_isNativeReflectConstruct",dependencies:{},internal:!1}),iterableToArray:gj("7.0.0-beta.0",'function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}',{globals:["Symbol","Array"],locals:{_iterableToArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_iterableToArray",dependencies:{},internal:!1}),iterableToArrayLimit:gj("7.0.0-beta.0",'function _iterableToArrayLimit(r,l){var t=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=t){var e,n,i,u,a=[],f=!0,o=!1;try{if(i=(t=t.call(r)).next,0===l){if(Object(t)!==t)return;f=!1}else for(;!(f=(e=i.call(t)).done)&&(a.push(e.value),a.length!==l);f=!0);}catch(r){o=!0,n=r}finally{try{if(!f&&null!=t.return&&(u=t.return(),Object(u)!==u))return}finally{if(o)throw n}}return a}}',{globals:["Symbol","Object"],locals:{_iterableToArrayLimit:["body.0.id"]},exportBindingAssignments:[],exportName:"_iterableToArrayLimit",dependencies:{},internal:!1}),jsx:gj("7.0.0-beta.0",'var REACT_ELEMENT_TYPE;function _createRawReactElement(e,r,E,l){REACT_ELEMENT_TYPE||(REACT_ELEMENT_TYPE="function"==typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103);var o=e&&e.defaultProps,n=arguments.length-3;if(r||0===n||(r={children:void 0}),1===n)r.children=l;else if(n>1){for(var t=Array(n),f=0;f<n;f++)t[f]=arguments[f+3];r.children=t}if(r&&o)for(var i in o)void 0===r[i]&&(r[i]=o[i]);else r||(r=o||{});return{$$typeof:REACT_ELEMENT_TYPE,type:e,key:void 0===E?null:""+E,ref:null,props:r,_owner:null}}',{globals:["Symbol","Array"],locals:{REACT_ELEMENT_TYPE:["body.0.declarations.0.id","body.1.body.body.0.expression.left","body.1.body.body.4.argument.properties.0.value","body.1.body.body.0.expression.right.left"],_createRawReactElement:["body.1.id"]},exportBindingAssignments:[],exportName:"_createRawReactElement",dependencies:{},internal:!1}),maybeArrayLike:gj("7.9.0",'function _maybeArrayLike(r,a,e){if(a&&!Array.isArray(a)&&"number"==typeof a.length){var y=a.length;return arrayLikeToArray(a,void 0!==e&&e<y?e:y)}return r(a,e)}',{globals:["Array"],locals:{_maybeArrayLike:["body.0.id"]},exportBindingAssignments:[],exportName:"_maybeArrayLike",dependencies:{arrayLikeToArray:["body.0.body.body.0.consequent.body.1.argument.callee"]},internal:!1}),newArrowCheck:gj("7.0.0-beta.0",'function _newArrowCheck(n,r){if(n!==r)throw new TypeError("Cannot instantiate an arrow function")}',{globals:["TypeError"],locals:{_newArrowCheck:["body.0.id"]},exportBindingAssignments:[],exportName:"_newArrowCheck",dependencies:{},internal:!1}),nonIterableRest:gj("7.0.0-beta.0",'function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}',{globals:["TypeError"],locals:{_nonIterableRest:["body.0.id"]},exportBindingAssignments:[],exportName:"_nonIterableRest",dependencies:{},internal:!1}),nonIterableSpread:gj("7.0.0-beta.0",'function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}',{globals:["TypeError"],locals:{_nonIterableSpread:["body.0.id"]},exportBindingAssignments:[],exportName:"_nonIterableSpread",dependencies:{},internal:!1}),nullishReceiverError:gj("7.22.6",'function _nullishReceiverError(r){throw new TypeError("Cannot set property of null or undefined.")}',{globals:["TypeError"],locals:{_nullishReceiverError:["body.0.id"]},exportBindingAssignments:[],exportName:"_nullishReceiverError",dependencies:{},internal:!1}),objectDestructuringEmpty:gj("7.0.0-beta.0",'function _objectDestructuringEmpty(t){if(null==t)throw new TypeError("Cannot destructure "+t)}',{globals:["TypeError"],locals:{_objectDestructuringEmpty:["body.0.id"]},exportBindingAssignments:[],exportName:"_objectDestructuringEmpty",dependencies:{},internal:!1}),objectSpread2:gj("7.5.0","function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread2(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}",{globals:["Object"],locals:{ownKeys:["body.0.id","body.1.body.body.0.body.body.1.expression.consequent.callee.object.callee","body.1.body.body.0.body.body.1.expression.alternate.alternate.callee.object.callee"],_objectSpread2:["body.1.id"]},exportBindingAssignments:[],exportName:"_objectSpread2",dependencies:{defineProperty:["body.1.body.body.0.body.body.1.expression.consequent.arguments.0.body.body.0.expression.callee"]},internal:!1}),objectWithoutProperties:gj("7.0.0-beta.0","function _objectWithoutProperties(e,t){if(null==e)return{};var o,r,i=objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r<n.length;r++)o=n[r],-1===t.indexOf(o)&&{}.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}",{globals:["Object"],locals:{_objectWithoutProperties:["body.0.id"]},exportBindingAssignments:[],exportName:"_objectWithoutProperties",dependencies:{objectWithoutPropertiesLoose:["body.0.body.body.1.declarations.2.init.callee"]},internal:!1}),objectWithoutPropertiesLoose:gj("7.0.0-beta.0","function _objectWithoutPropertiesLoose(r,e){if(null==r)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(-1!==e.indexOf(n))continue;t[n]=r[n]}return t}",{globals:[],locals:{_objectWithoutPropertiesLoose:["body.0.id"]},exportBindingAssignments:[],exportName:"_objectWithoutPropertiesLoose",dependencies:{},internal:!1}),possibleConstructorReturn:gj("7.0.0-beta.0",'function _possibleConstructorReturn(t,e){if(e&&("object"==typeof e||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return assertThisInitialized(t)}',{globals:["TypeError"],locals:{_possibleConstructorReturn:["body.0.id"]},exportBindingAssignments:[],exportName:"_possibleConstructorReturn",dependencies:{assertThisInitialized:["body.0.body.body.2.argument.callee"]},internal:!1}),readOnlyError:gj("7.0.0-beta.0","function _readOnlyError(r){throw new TypeError('\"'+r+'\" is read-only')}",{globals:["TypeError"],locals:{_readOnlyError:["body.0.id"]},exportBindingAssignments:[],exportName:"_readOnlyError",dependencies:{},internal:!1}),regenerator:gj("7.27.0",'function _regenerator(){\n/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */\nvar e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",o=r.toStringTag||"@@toStringTag";function i(r,n,o,i){var c=n&&n.prototype instanceof Generator?n:Generator,u=Object.create(c.prototype);return define(u,"_invoke",function(r,n,o){var i,c,u,f=0,p=o||[],y=!1,G={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,r){return i=t,c=0,u=e,G.n=r,a}};function d(r,n){for(c=r,u=n,t=0;!y&&f&&!o&&t<p.length;t++){var o,i=p[t],d=G.p,l=i[2];r>3?(o=l===n)&&(u=i[(c=i[4])?5:(c=3,3)],i[4]=i[5]=e):i[0]<=d&&((o=r<2&&d<i[1])?(c=0,G.v=n,G.n=i[1]):d<l&&(o=r<3||i[0]>n||n>l)&&(i[4]=r,i[5]=n,G.n=l,c=0))}if(o||r>1)return a;throw y=!0,n}return function(o,p,l){if(f>1)throw TypeError("Generator is already running");for(y&&1===p&&d(p,l),c=p,u=l;(t=c<2?e:u)||!y;){i||(c?c<3?(c>1&&(G.n=-1),d(c,u)):G.n=u:G.v=u);try{if(f=2,i){if(c||(o="next"),t=i[o]){if(!(t=t.call(i,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,c<2&&(c=0)}else 1===c&&(t=i.return)&&t.call(i),c<2&&(u=TypeError("The iterator does not provide a \'"+o+"\' method"),c=1);i=e}else if((t=(y=G.n<0)?u:r.call(n,G))!==a)break}catch(t){i=e,c=1,u=t}finally{f=1}}return{value:t,done:y}}}(r,o,i),!0),u}var a={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var c=[][n]?t(t([][n]())):(define(t={},n,function(){return this}),t),u=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(c);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,define(e,o,"GeneratorFunction")),e.prototype=Object.create(u),e}return GeneratorFunction.prototype=GeneratorFunctionPrototype,define(u,"constructor",GeneratorFunctionPrototype),define(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",define(GeneratorFunctionPrototype,o,"GeneratorFunction"),define(u),define(u,o,"Generator"),define(u,n,function(){return this}),define(u,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:i,m:f}})()}',{globals:["Symbol","Object","TypeError"],locals:{_regenerator:["body.0.id","body.0.body.body.9.argument.expressions.9.callee.left"]},exportBindingAssignments:["body.0.body.body.9.argument.expressions.9.callee"],exportName:"_regenerator",dependencies:{regeneratorDefine:["body.0.body.body.1.body.body.1.argument.expressions.0.callee","body.0.body.body.7.declarations.0.init.alternate.expressions.0.callee","body.0.body.body.8.body.body.0.argument.expressions.0.alternate.expressions.1.callee","body.0.body.body.9.argument.expressions.1.callee","body.0.body.body.9.argument.expressions.2.callee","body.0.body.body.9.argument.expressions.4.callee","body.0.body.body.9.argument.expressions.5.callee","body.0.body.body.9.argument.expressions.6.callee","body.0.body.body.9.argument.expressions.7.callee","body.0.body.body.9.argument.expressions.8.callee"]},internal:!1}),regeneratorAsync:gj("7.27.0","function _regeneratorAsync(n,e,r,t,o){var a=asyncGen(n,e,r,t,o);return a.next().then(function(n){return n.done?n.value:a.next()})}",{globals:[],locals:{_regeneratorAsync:["body.0.id"]},exportBindingAssignments:[],exportName:"_regeneratorAsync",dependencies:{regeneratorAsyncGen:["body.0.body.body.0.declarations.0.init.callee"]},internal:!1}),regeneratorAsyncGen:gj("7.27.0","function _regeneratorAsyncGen(r,e,t,o,n){return new regeneratorAsyncIterator(regenerator().w(r,e,t,o),n||Promise)}",{globals:["Promise"],locals:{_regeneratorAsyncGen:["body.0.id"]},exportBindingAssignments:[],exportName:"_regeneratorAsyncGen",dependencies:{regenerator:["body.0.body.body.0.argument.arguments.0.callee.object.callee"],regeneratorAsyncIterator:["body.0.body.body.0.argument.callee"]},internal:!1}),regeneratorAsyncIterator:gj("7.27.0",'function AsyncIterator(t,e){function n(r,o,i,f){try{var c=t[r](o),u=c.value;return u instanceof OverloadYield?e.resolve(u.v).then(function(t){n("next",t,i,f)},function(t){n("throw",t,i,f)}):e.resolve(u).then(function(t){c.value=t,i(c)},function(t){return n("throw",t,i,f)})}catch(t){f(t)}}var r;this.next||(define(AsyncIterator.prototype),define(AsyncIterator.prototype,"function"==typeof Symbol&&Symbol.asyncIterator||"@asyncIterator",function(){return this})),define(this,"_invoke",function(t,o,i){function f(){return new e(function(e,r){n(t,i,e,r)})}return r=r?r.then(f,f):f()},!0)}',{globals:["Symbol"],locals:{AsyncIterator:["body.0.id","body.0.body.body.2.expression.expressions.0.right.expressions.0.arguments.0.object","body.0.body.body.2.expression.expressions.0.right.expressions.1.arguments.0.object"]},exportBindingAssignments:[],exportName:"AsyncIterator",dependencies:{OverloadYield:["body.0.body.body.0.body.body.0.block.body.1.argument.test.right"],regeneratorDefine:["body.0.body.body.2.expression.expressions.0.right.expressions.0.callee","body.0.body.body.2.expression.expressions.0.right.expressions.1.callee","body.0.body.body.2.expression.expressions.1.callee"]},internal:!0}),regeneratorDefine:gj("7.27.0",'function regeneratorDefine(e,r,n,t){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}regeneratorDefine=function(e,r,n,t){function o(r,n){regeneratorDefine(e,r,function(e){return this._invoke(r,n,e)})}r?i?i(e,r,{value:n,enumerable:!t,configurable:!t,writable:!t}):e[r]=n:(o("next",0),o("throw",1),o("return",2))},regeneratorDefine(e,r,n,t)}',{globals:["Object"],locals:{regeneratorDefine:["body.0.id","body.0.body.body.2.expression.expressions.0.right.body.body.0.body.body.0.expression.callee","body.0.body.body.2.expression.expressions.1.callee","body.0.body.body.2.expression.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.2.expression.expressions.0"],exportName:"regeneratorDefine",dependencies:{},internal:!0}),regeneratorKeys:gj("7.27.0","function _regeneratorKeys(e){var n=Object(e),r=[];for(var t in n)r.unshift(t);return function e(){for(;r.length;)if((t=r.pop())in n)return e.value=t,e.done=!1,e;return e.done=!0,e}}",{globals:["Object"],locals:{_regeneratorKeys:["body.0.id"]},exportBindingAssignments:[],exportName:"_regeneratorKeys",dependencies:{},internal:!1}),regeneratorValues:gj("7.18.0",'function _regeneratorValues(e){if(null!=e){var t=e["function"==typeof Symbol&&Symbol.iterator||"@@iterator"],r=0;if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length))return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}}}throw new TypeError(typeof e+" is not iterable")}',{globals:["Symbol","isNaN","TypeError"],locals:{_regeneratorValues:["body.0.id"]},exportBindingAssignments:[],exportName:"_regeneratorValues",dependencies:{},internal:!1}),set:gj("7.0.0-beta.0",'function set(e,r,t,o){return set="undefined"!=typeof Reflect&&Reflect.set?Reflect.set:function(e,r,t,o){var f,i=superPropBase(e,r);if(i){if((f=Object.getOwnPropertyDescriptor(i,r)).set)return f.set.call(o,t),!0;if(!f.writable)return!1}if(f=Object.getOwnPropertyDescriptor(o,r)){if(!f.writable)return!1;f.value=t,Object.defineProperty(o,r,f)}else defineProperty(o,r,t);return!0},set(e,r,t,o)}function _set(e,r,t,o,f){if(!set(e,r,t,o||e)&&f)throw new TypeError("failed to set property");return t}',{globals:["Reflect","Object","TypeError"],locals:{set:["body.0.id","body.0.body.body.0.argument.expressions.1.callee","body.1.body.body.0.test.left.argument.callee","body.0.body.body.0.argument.expressions.0.left"],_set:["body.1.id"]},exportBindingAssignments:[],exportName:"_set",dependencies:{superPropBase:["body.0.body.body.0.argument.expressions.0.right.alternate.body.body.0.declarations.1.init.callee"],defineProperty:["body.0.body.body.0.argument.expressions.0.right.alternate.body.body.2.alternate.expression.callee"]},internal:!1}),setFunctionName:gj("7.23.6",'function setFunctionName(e,t,n){"symbol"==typeof t&&(t=(t=t.description)?"["+t+"]":"");try{Object.defineProperty(e,"name",{configurable:!0,value:n?n+" "+t:t})}catch(e){}return e}',{globals:["Object"],locals:{setFunctionName:["body.0.id"]},exportBindingAssignments:[],exportName:"setFunctionName",dependencies:{},internal:!1}),setPrototypeOf:gj("7.0.0-beta.0","function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},_setPrototypeOf(t,e)}",{globals:["Object"],locals:{_setPrototypeOf:["body.0.id","body.0.body.body.0.argument.expressions.1.callee","body.0.body.body.0.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.0.argument.expressions.0"],exportName:"_setPrototypeOf",dependencies:{},internal:!1}),skipFirstGeneratorNext:gj("7.0.0-beta.0","function _skipFirstGeneratorNext(t){return function(){var r=t.apply(this,arguments);return r.next(),r}}",{globals:[],locals:{_skipFirstGeneratorNext:["body.0.id"]},exportBindingAssignments:[],exportName:"_skipFirstGeneratorNext",dependencies:{},internal:!1}),slicedToArray:gj("7.0.0-beta.0","function _slicedToArray(r,e){return arrayWithHoles(r)||iterableToArrayLimit(r,e)||unsupportedIterableToArray(r,e)||nonIterableRest()}",{globals:[],locals:{_slicedToArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_slicedToArray",dependencies:{arrayWithHoles:["body.0.body.body.0.argument.left.left.left.callee"],iterableToArrayLimit:["body.0.body.body.0.argument.left.left.right.callee"],unsupportedIterableToArray:["body.0.body.body.0.argument.left.right.callee"],nonIterableRest:["body.0.body.body.0.argument.right.callee"]},internal:!1}),superPropBase:gj("7.0.0-beta.0","function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=getPrototypeOf(t)););return t}",{globals:[],locals:{_superPropBase:["body.0.id"]},exportBindingAssignments:[],exportName:"_superPropBase",dependencies:{getPrototypeOf:["body.0.body.body.0.test.right.right.right.callee"]},internal:!1}),superPropGet:gj("7.25.0",'function _superPropGet(t,o,e,r){var p=get(getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t)}:p}',{globals:[],locals:{_superPropGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_superPropGet",dependencies:{get:["body.0.body.body.0.declarations.0.init.callee"],getPrototypeOf:["body.0.body.body.0.declarations.0.init.arguments.0.callee"]},internal:!1}),superPropSet:gj("7.25.0","function _superPropSet(t,e,o,r,p,f){return set(getPrototypeOf(f?t.prototype:t),e,o,r,p)}",{globals:[],locals:{_superPropSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_superPropSet",dependencies:{set:["body.0.body.body.0.argument.callee"],getPrototypeOf:["body.0.body.body.0.argument.arguments.0.callee"]},internal:!1}),taggedTemplateLiteral:gj("7.0.0-beta.0","function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}",{globals:["Object"],locals:{_taggedTemplateLiteral:["body.0.id"]},exportBindingAssignments:[],exportName:"_taggedTemplateLiteral",dependencies:{},internal:!1}),taggedTemplateLiteralLoose:gj("7.0.0-beta.0","function _taggedTemplateLiteralLoose(e,t){return t||(t=e.slice(0)),e.raw=t,e}",{globals:[],locals:{_taggedTemplateLiteralLoose:["body.0.id"]},exportBindingAssignments:[],exportName:"_taggedTemplateLiteralLoose",dependencies:{},internal:!1}),tdz:gj("7.5.5",'function _tdzError(e){throw new ReferenceError(e+" is not defined - temporal dead zone")}',{globals:["ReferenceError"],locals:{_tdzError:["body.0.id"]},exportBindingAssignments:[],exportName:"_tdzError",dependencies:{},internal:!1}),temporalRef:gj("7.0.0-beta.0","function _temporalRef(r,e){return r===undef?err(e):r}",{globals:[],locals:{_temporalRef:["body.0.id"]},exportBindingAssignments:[],exportName:"_temporalRef",dependencies:{temporalUndefined:["body.0.body.body.0.argument.test.right"],tdz:["body.0.body.body.0.argument.consequent.callee"]},internal:!1}),temporalUndefined:gj("7.0.0-beta.0","function _temporalUndefined(){}",{globals:[],locals:{_temporalUndefined:["body.0.id"]},exportBindingAssignments:[],exportName:"_temporalUndefined",dependencies:{},internal:!1}),toArray:gj("7.0.0-beta.0","function _toArray(r){return arrayWithHoles(r)||iterableToArray(r)||unsupportedIterableToArray(r)||nonIterableRest()}",{globals:[],locals:{_toArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_toArray",dependencies:{arrayWithHoles:["body.0.body.body.0.argument.left.left.left.callee"],iterableToArray:["body.0.body.body.0.argument.left.left.right.callee"],unsupportedIterableToArray:["body.0.body.body.0.argument.left.right.callee"],nonIterableRest:["body.0.body.body.0.argument.right.callee"]},internal:!1}),toConsumableArray:gj("7.0.0-beta.0","function _toConsumableArray(r){return arrayWithoutHoles(r)||iterableToArray(r)||unsupportedIterableToArray(r)||nonIterableSpread()}",{globals:[],locals:{_toConsumableArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_toConsumableArray",dependencies:{arrayWithoutHoles:["body.0.body.body.0.argument.left.left.left.callee"],iterableToArray:["body.0.body.body.0.argument.left.left.right.callee"],unsupportedIterableToArray:["body.0.body.body.0.argument.left.right.callee"],nonIterableSpread:["body.0.body.body.0.argument.right.callee"]},internal:!1}),toPrimitive:gj("7.1.5",'function toPrimitive(t,r){if("object"!=typeof t||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}',{globals:["Symbol","TypeError","String","Number"],locals:{toPrimitive:["body.0.id"]},exportBindingAssignments:[],exportName:"toPrimitive",dependencies:{},internal:!1}),toPropertyKey:gj("7.1.5",'function toPropertyKey(t){var i=toPrimitive(t,"string");return"symbol"==typeof i?i:i+""}',{globals:[],locals:{toPropertyKey:["body.0.id"]},exportBindingAssignments:[],exportName:"toPropertyKey",dependencies:{toPrimitive:["body.0.body.body.0.declarations.0.init.callee"]},internal:!1}),toSetter:gj("7.24.0",'function _toSetter(t,e,n){e||(e=[]);var r=e.length++;return Object.defineProperty({},"_",{set:function(o){e[r]=o,t.apply(n,e)}})}',{globals:["Object"],locals:{_toSetter:["body.0.id"]},exportBindingAssignments:[],exportName:"_toSetter",dependencies:{},internal:!1}),tsRewriteRelativeImportExtensions:gj("7.27.0",'function tsRewriteRelativeImportExtensions(t,e){return"string"==typeof t&&/^\\.\\.?\\//.test(t)?t.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+)?)\\.([cm]?)ts$/i,function(t,s,r,n,o){return s?e?".jsx":".js":!r||n&&o?r+n+"."+o.toLowerCase()+"js":t}):t}',{globals:[],locals:{tsRewriteRelativeImportExtensions:["body.0.id"]},exportBindingAssignments:[],exportName:"tsRewriteRelativeImportExtensions",dependencies:{},internal:!1}),typeof:gj("7.0.0-beta.0",'function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}',{globals:["Symbol"],locals:{_typeof:["body.0.id","body.0.body.body.0.argument.expressions.1.callee","body.0.body.body.0.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.0.argument.expressions.0"],exportName:"_typeof",dependencies:{},internal:!1}),unsupportedIterableToArray:gj("7.9.0",'function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?arrayLikeToArray(r,a):void 0}}',{globals:["Array"],locals:{_unsupportedIterableToArray:["body.0.id"]},exportBindingAssignments:[],exportName:"_unsupportedIterableToArray",dependencies:{arrayLikeToArray:["body.0.body.body.0.consequent.body.0.consequent.argument.callee","body.0.body.body.0.consequent.body.2.argument.expressions.1.alternate.consequent.callee"]},internal:!1}),usingCtx:gj("7.23.9",'function _usingCtx(){var r="function"==typeof SuppressedError?SuppressedError:function(r,e){var n=Error();return n.name="SuppressedError",n.error=r,n.suppressed=e,n},e={},n=[];function using(r,e){if(null!=e){if(Object(e)!==e)throw new TypeError("using declarations can only be used with objects, functions, null, or undefined.");if(r)var o=e[Symbol.asyncDispose||Symbol.for("Symbol.asyncDispose")];if(void 0===o&&(o=e[Symbol.dispose||Symbol.for("Symbol.dispose")],r))var t=o;if("function"!=typeof o)throw new TypeError("Object is not disposable.");t&&(o=function(){try{t.call(e)}catch(r){return Promise.reject(r)}}),n.push({v:e,d:o,a:r})}else r&&n.push({d:e,a:r});return e}return{e:e,u:using.bind(null,!1),a:using.bind(null,!0),d:function(){var o,t=this.e,s=0;function next(){for(;o=n.pop();)try{if(!o.a&&1===s)return s=0,n.push(o),Promise.resolve().then(next);if(o.d){var r=o.d.call(o.v);if(o.a)return s|=2,Promise.resolve(r).then(next,err)}else s|=1}catch(r){return err(r)}if(1===s)return t!==e?Promise.reject(t):Promise.resolve();if(t!==e)throw t}function err(n){return t=t!==e?new r(n,t):n,next()}return next()}}}',{globals:["SuppressedError","Error","Object","TypeError","Symbol","Promise"],locals:{_usingCtx:["body.0.id"]},exportBindingAssignments:[],exportName:"_usingCtx",dependencies:{},internal:!1}),wrapAsyncGenerator:gj("7.0.0-beta.0",'function _wrapAsyncGenerator(e){return function(){return new AsyncGenerator(e.apply(this,arguments))}}function AsyncGenerator(e){var r,t;function resume(r,t){try{var n=e[r](t),o=n.value,u=o instanceof OverloadYield;Promise.resolve(u?o.v:o).then(function(t){if(u){var i="return"===r?"return":"next";if(!o.k||t.done)return resume(i,t);t=e[i](t).value}settle(n.done?"return":"normal",t)},function(e){resume("throw",e)})}catch(e){settle("throw",e)}}function settle(e,n){switch(e){case"return":r.resolve({value:n,done:!0});break;case"throw":r.reject(n);break;default:r.resolve({value:n,done:!1})}(r=r.next)?resume(r.key,r.arg):t=null}this._invoke=function(e,n){return new Promise(function(o,u){var i={key:e,arg:n,resolve:o,reject:u,next:null};t?t=t.next=i:(r=t=i,resume(e,n))})},"function"!=typeof e.return&&(this.return=void 0)}AsyncGenerator.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},AsyncGenerator.prototype.next=function(e){return this._invoke("next",e)},AsyncGenerator.prototype.throw=function(e){return this._invoke("throw",e)},AsyncGenerator.prototype.return=function(e){return this._invoke("return",e)};',{globals:["Promise","Symbol"],locals:{_wrapAsyncGenerator:["body.0.id"],AsyncGenerator:["body.1.id","body.0.body.body.0.argument.body.body.0.argument.callee","body.2.expression.expressions.0.left.object.object","body.2.expression.expressions.1.left.object.object","body.2.expression.expressions.2.left.object.object","body.2.expression.expressions.3.left.object.object"]},exportBindingAssignments:[],exportName:"_wrapAsyncGenerator",dependencies:{OverloadYield:["body.1.body.body.1.body.body.0.block.body.0.declarations.2.init.right"]},internal:!1}),wrapNativeSuper:gj("7.0.0-beta.0",'function _wrapNativeSuper(t){var r="function"==typeof Map?new Map:void 0;return _wrapNativeSuper=function(t){if(null===t||!isNativeFunction(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(t))return r.get(t);r.set(t,Wrapper)}function Wrapper(){return construct(t,arguments,getPrototypeOf(this).constructor)}return Wrapper.prototype=Object.create(t.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),setPrototypeOf(Wrapper,t)},_wrapNativeSuper(t)}',{globals:["Map","TypeError","Object"],locals:{_wrapNativeSuper:["body.0.id","body.0.body.body.1.argument.expressions.1.callee","body.0.body.body.1.argument.expressions.0.left"]},exportBindingAssignments:["body.0.body.body.1.argument.expressions.0"],exportName:"_wrapNativeSuper",dependencies:{getPrototypeOf:["body.0.body.body.1.argument.expressions.0.right.body.body.3.body.body.0.argument.arguments.2.object.callee"],setPrototypeOf:["body.0.body.body.1.argument.expressions.0.right.body.body.4.argument.expressions.1.callee"],isNativeFunction:["body.0.body.body.1.argument.expressions.0.right.body.body.0.test.right.argument.callee"],construct:["body.0.body.body.1.argument.expressions.0.right.body.body.3.body.body.0.argument.callee"]},internal:!1}),wrapRegExp:gj("7.19.0",'function _wrapRegExp(){_wrapRegExp=function(e,r){return new BabelRegExp(e,void 0,r)};var e=RegExp.prototype,r=new WeakMap;function BabelRegExp(e,t,p){var o=RegExp(e,t);return r.set(o,p||r.get(e)),setPrototypeOf(o,BabelRegExp.prototype)}function buildGroups(e,t){var p=r.get(t);return Object.keys(p).reduce(function(r,t){var o=p[t];if("number"==typeof o)r[t]=e[o];else{for(var i=0;void 0===e[o[i]]&&i+1<o.length;)i++;r[t]=e[o[i]]}return r},Object.create(null))}return inherits(BabelRegExp,RegExp),BabelRegExp.prototype.exec=function(r){var t=e.exec.call(this,r);if(t){t.groups=buildGroups(t,this);var p=t.indices;p&&(p.groups=buildGroups(p,this))}return t},BabelRegExp.prototype[Symbol.replace]=function(t,p){if("string"==typeof p){var o=r.get(this);return e[Symbol.replace].call(this,t,p.replace(/\\$<([^>]+)(>|$)/g,function(e,r,t){if(""===t)return e;var p=o[r];return Array.isArray(p)?"$"+p.join("$"):"number"==typeof p?"$"+p:""}))}if("function"==typeof p){var i=this;return e[Symbol.replace].call(this,t,function(){var e=arguments;return"object"!=typeof e[e.length-1]&&(e=[].slice.call(e)).push(buildGroups(e,i)),p.apply(this,e)})}return e[Symbol.replace].call(this,t,p)},_wrapRegExp.apply(this,arguments)}',{globals:["RegExp","WeakMap","Object","Symbol","Array"],locals:{_wrapRegExp:["body.0.id","body.0.body.body.4.argument.expressions.3.callee.object","body.0.body.body.0.expression.left"]},exportBindingAssignments:["body.0.body.body.0.expression"],exportName:"_wrapRegExp",dependencies:{setPrototypeOf:["body.0.body.body.2.body.body.1.argument.expressions.1.callee"],inherits:["body.0.body.body.4.argument.expressions.0.callee"]},internal:!1}),writeOnlyError:gj("7.12.13","function _writeOnlyError(r){throw new TypeError('\"'+r+'\" is write-only')}",{globals:["TypeError"],locals:{_writeOnlyError:["body.0.id"]},exportBindingAssignments:[],exportName:"_writeOnlyError",dependencies:{},internal:!1})};Object.assign(mj,{AwaitValue:gj("7.0.0-beta.0","function _AwaitValue(t){this.wrapped=t}",{globals:[],locals:{_AwaitValue:["body.0.id"]},exportBindingAssignments:[],exportName:"_AwaitValue",dependencies:{},internal:!1}),applyDecs:gj("7.17.8",'function old_createMetadataMethodsForProperty(e,t,a,r){return{getMetadata:function(o){old_assertNotFinished(r,"getMetadata"),old_assertMetadataKey(o);var i=e[o];if(void 0!==i)if(1===t){var n=i.public;if(void 0!==n)return n[a]}else if(2===t){var l=i.private;if(void 0!==l)return l.get(a)}else if(Object.hasOwnProperty.call(i,"constructor"))return i.constructor},setMetadata:function(o,i){old_assertNotFinished(r,"setMetadata"),old_assertMetadataKey(o);var n=e[o];if(void 0===n&&(n=e[o]={}),1===t){var l=n.public;void 0===l&&(l=n.public={}),l[a]=i}else if(2===t){var s=n.priv;void 0===s&&(s=n.private=new Map),s.set(a,i)}else n.constructor=i}}}function old_convertMetadataMapToFinal(e,t){var a=e[Symbol.metadata||Symbol.for("Symbol.metadata")],r=Object.getOwnPropertySymbols(t);if(0!==r.length){for(var o=0;o<r.length;o++){var i=r[o],n=t[i],l=a?a[i]:null,s=n.public,c=l?l.public:null;s&&c&&Object.setPrototypeOf(s,c);var d=n.private;if(d){var u=Array.from(d.values()),f=l?l.private:null;f&&(u=u.concat(f)),n.private=u}l&&Object.setPrototypeOf(n,l)}a&&Object.setPrototypeOf(t,a),e[Symbol.metadata||Symbol.for("Symbol.metadata")]=t}}function old_createAddInitializerMethod(e,t){return function(a){old_assertNotFinished(t,"addInitializer"),old_assertCallable(a,"An initializer"),e.push(a)}}function old_memberDec(e,t,a,r,o,i,n,l,s){var c;switch(i){case 1:c="accessor";break;case 2:c="method";break;case 3:c="getter";break;case 4:c="setter";break;default:c="field"}var d,u,f={kind:c,name:l?"#"+t:toPropertyKey(t),isStatic:n,isPrivate:l},p={v:!1};if(0!==i&&(f.addInitializer=old_createAddInitializerMethod(o,p)),l){d=2,u=Symbol(t);var v={};0===i?(v.get=a.get,v.set=a.set):2===i?v.get=function(){return a.value}:(1!==i&&3!==i||(v.get=function(){return a.get.call(this)}),1!==i&&4!==i||(v.set=function(e){a.set.call(this,e)})),f.access=v}else d=1,u=t;try{return e(s,Object.assign(f,old_createMetadataMethodsForProperty(r,d,u,p)))}finally{p.v=!0}}function old_assertNotFinished(e,t){if(e.v)throw Error("attempted to call "+t+" after decoration was finished")}function old_assertMetadataKey(e){if("symbol"!=typeof e)throw new TypeError("Metadata keys must be symbols, received: "+e)}function old_assertCallable(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function old_assertValidReturnValue(e,t){var a=typeof t;if(1===e){if("object"!==a||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&old_assertCallable(t.get,"accessor.get"),void 0!==t.set&&old_assertCallable(t.set,"accessor.set"),void 0!==t.init&&old_assertCallable(t.init,"accessor.init"),void 0!==t.initializer&&old_assertCallable(t.initializer,"accessor.initializer")}else if("function"!==a)throw new TypeError((0===e?"field":10===e?"class":"method")+" decorators must return a function or void 0")}function old_getInit(e){var t;return null==(t=e.init)&&(t=e.initializer)&&void 0!==console&&console.warn(".initializer has been renamed to .init as of March 2022"),t}function old_applyMemberDec(e,t,a,r,o,i,n,l,s){var c,d,u,f,p,v,y,h=a[0];if(n?(0===o||1===o?(c={get:a[3],set:a[4]},u="get"):3===o?(c={get:a[3]},u="get"):4===o?(c={set:a[3]},u="set"):c={value:a[3]},0!==o&&(1===o&&setFunctionName(a[4],"#"+r,"set"),setFunctionName(a[3],"#"+r,u))):0!==o&&(c=Object.getOwnPropertyDescriptor(t,r)),1===o?f={get:c.get,set:c.set}:2===o?f=c.value:3===o?f=c.get:4===o&&(f=c.set),"function"==typeof h)void 0!==(p=old_memberDec(h,r,c,l,s,o,i,n,f))&&(old_assertValidReturnValue(o,p),0===o?d=p:1===o?(d=old_getInit(p),v=p.get||f.get,y=p.set||f.set,f={get:v,set:y}):f=p);else for(var m=h.length-1;m>=0;m--){var b;void 0!==(p=old_memberDec(h[m],r,c,l,s,o,i,n,f))&&(old_assertValidReturnValue(o,p),0===o?b=p:1===o?(b=old_getInit(p),v=p.get||f.get,y=p.set||f.set,f={get:v,set:y}):f=p,void 0!==b&&(void 0===d?d=b:"function"==typeof d?d=[d,b]:d.push(b)))}if(0===o||1===o){if(void 0===d)d=function(e,t){return t};else if("function"!=typeof d){var g=d;d=function(e,t){for(var a=t,r=0;r<g.length;r++)a=g[r].call(e,a);return a}}else{var _=d;d=function(e,t){return _.call(e,t)}}e.push(d)}0!==o&&(1===o?(c.get=f.get,c.set=f.set):2===o?c.value=f:3===o?c.get=f:4===o&&(c.set=f),n?1===o?(e.push(function(e,t){return f.get.call(e,t)}),e.push(function(e,t){return f.set.call(e,t)})):2===o?e.push(f):e.push(function(e,t){return f.call(e,t)}):Object.defineProperty(t,r,c))}function old_applyMemberDecs(e,t,a,r,o){for(var i,n,l=new Map,s=new Map,c=0;c<o.length;c++){var d=o[c];if(Array.isArray(d)){var u,f,p,v=d[1],y=d[2],h=d.length>3,m=v>=5;if(m?(u=t,f=r,0!=(v-=5)&&(p=n=n||[])):(u=t.prototype,f=a,0!==v&&(p=i=i||[])),0!==v&&!h){var b=m?s:l,g=b.get(y)||0;if(!0===g||3===g&&4!==v||4===g&&3!==v)throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+y);!g&&v>2?b.set(y,v):b.set(y,!0)}old_applyMemberDec(e,u,d,y,v,m,h,f,p)}}old_pushInitializers(e,i),old_pushInitializers(e,n)}function old_pushInitializers(e,t){t&&e.push(function(e){for(var a=0;a<t.length;a++)t[a].call(e);return e})}function old_applyClassDecs(e,t,a,r){if(r.length>0){for(var o=[],i=t,n=t.name,l=r.length-1;l>=0;l--){var s={v:!1};try{var c=Object.assign({kind:"class",name:n,addInitializer:old_createAddInitializerMethod(o,s)},old_createMetadataMethodsForProperty(a,0,n,s)),d=r[l](i,c)}finally{s.v=!0}void 0!==d&&(old_assertValidReturnValue(10,d),i=d)}e.push(i,function(){for(var e=0;e<o.length;e++)o[e].call(i)})}}function applyDecs(e,t,a){var r=[],o={},i={};return old_applyMemberDecs(r,e,i,o,t),old_convertMetadataMapToFinal(e.prototype,i),old_applyClassDecs(r,e,o,a),old_convertMetadataMapToFinal(e,o),r}',{globals:["Object","Map","Symbol","Array","Error","TypeError","console"],locals:{old_createMetadataMethodsForProperty:["body.0.id","body.3.body.body.4.block.body.0.argument.arguments.1.arguments.1.callee","body.12.body.body.0.consequent.body.0.body.body.1.block.body.0.declarations.0.init.arguments.1.callee"],old_convertMetadataMapToFinal:["body.1.id","body.13.body.body.1.argument.expressions.1.callee","body.13.body.body.1.argument.expressions.3.callee"],old_createAddInitializerMethod:["body.2.id","body.3.body.body.3.test.expressions.0.right.right.callee","body.12.body.body.0.consequent.body.0.body.body.1.block.body.0.declarations.0.init.arguments.0.properties.2.value.callee"],old_memberDec:["body.3.id","body.9.body.body.1.consequent.expression.left.right.right.callee","body.9.body.body.1.alternate.body.body.1.expression.left.right.right.callee"],old_assertNotFinished:["body.4.id","body.0.body.body.0.argument.properties.0.value.body.body.0.expression.expressions.0.callee","body.0.body.body.0.argument.properties.1.value.body.body.0.expression.expressions.0.callee","body.2.body.body.0.argument.body.body.0.expression.expressions.0.callee"],old_assertMetadataKey:["body.5.id","body.0.body.body.0.argument.properties.0.value.body.body.0.expression.expressions.1.callee","body.0.body.body.0.argument.properties.1.value.body.body.0.expression.expressions.1.callee"],old_assertCallable:["body.6.id","body.2.body.body.0.argument.body.body.0.expression.expressions.1.callee","body.7.body.body.1.consequent.body.1.expression.expressions.0.right.callee","body.7.body.body.1.consequent.body.1.expression.expressions.1.right.callee","body.7.body.body.1.consequent.body.1.expression.expressions.2.right.callee","body.7.body.body.1.consequent.body.1.expression.expressions.3.right.callee"],old_assertValidReturnValue:["body.7.id","body.9.body.body.1.consequent.expression.right.expressions.0.callee","body.9.body.body.1.alternate.body.body.1.expression.right.expressions.0.callee","body.12.body.body.0.consequent.body.0.body.body.2.expression.right.expressions.0.callee"],old_getInit:["body.8.id","body.9.body.body.1.consequent.expression.right.expressions.1.alternate.consequent.expressions.0.right.callee","body.9.body.body.1.alternate.body.body.1.expression.right.expressions.1.alternate.consequent.expressions.0.right.callee"],old_applyMemberDec:["body.9.id","body.10.body.body.0.body.body.1.consequent.body.2.expression.callee"],old_applyMemberDecs:["body.10.id","body.13.body.body.1.argument.expressions.0.callee"],old_pushInitializers:["body.11.id","body.10.body.body.1.expression.expressions.0.callee","body.10.body.body.1.expression.expressions.1.callee"],old_applyClassDecs:["body.12.id","body.13.body.body.1.argument.expressions.2.callee"],applyDecs:["body.13.id"]},exportBindingAssignments:[],exportName:"applyDecs",dependencies:{setFunctionName:["body.9.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.0.right.callee","body.9.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.1.callee"],toPropertyKey:["body.3.body.body.2.declarations.2.init.properties.1.value.alternate.callee"]},internal:!1}),applyDecs2203:gj("7.19.0",'function applyDecs2203Factory(){function createAddInitializerMethod(e,t){return function(r){!function(e){if(e.v)throw Error("attempted to call addInitializer after decoration was finished")}(t),assertCallable(r,"An initializer"),e.push(r)}}function memberDec(e,t,r,a,n,i,s,o){var c;switch(n){case 1:c="accessor";break;case 2:c="method";break;case 3:c="getter";break;case 4:c="setter";break;default:c="field"}var l,u,f={kind:c,name:s?"#"+t:t,static:i,private:s},p={v:!1};0!==n&&(f.addInitializer=createAddInitializerMethod(a,p)),0===n?s?(l=r.get,u=r.set):(l=function(){return this[t]},u=function(e){this[t]=e}):2===n?l=function(){return r.value}:(1!==n&&3!==n||(l=function(){return r.get.call(this)}),1!==n&&4!==n||(u=function(e){r.set.call(this,e)})),f.access=l&&u?{get:l,set:u}:l?{get:l}:{set:u};try{return e(o,f)}finally{p.v=!0}}function assertCallable(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function assertValidReturnValue(e,t){var r=typeof t;if(1===e){if("object"!==r||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&assertCallable(t.get,"accessor.get"),void 0!==t.set&&assertCallable(t.set,"accessor.set"),void 0!==t.init&&assertCallable(t.init,"accessor.init")}else if("function"!==r)throw new TypeError((0===e?"field":10===e?"class":"method")+" decorators must return a function or void 0")}function applyMemberDec(e,t,r,a,n,i,s,o){var c,l,u,f,p,d,h=r[0];if(s?c=0===n||1===n?{get:r[3],set:r[4]}:3===n?{get:r[3]}:4===n?{set:r[3]}:{value:r[3]}:0!==n&&(c=Object.getOwnPropertyDescriptor(t,a)),1===n?u={get:c.get,set:c.set}:2===n?u=c.value:3===n?u=c.get:4===n&&(u=c.set),"function"==typeof h)void 0!==(f=memberDec(h,a,c,o,n,i,s,u))&&(assertValidReturnValue(n,f),0===n?l=f:1===n?(l=f.init,p=f.get||u.get,d=f.set||u.set,u={get:p,set:d}):u=f);else for(var v=h.length-1;v>=0;v--){var g;void 0!==(f=memberDec(h[v],a,c,o,n,i,s,u))&&(assertValidReturnValue(n,f),0===n?g=f:1===n?(g=f.init,p=f.get||u.get,d=f.set||u.set,u={get:p,set:d}):u=f,void 0!==g&&(void 0===l?l=g:"function"==typeof l?l=[l,g]:l.push(g)))}if(0===n||1===n){if(void 0===l)l=function(e,t){return t};else if("function"!=typeof l){var y=l;l=function(e,t){for(var r=t,a=0;a<y.length;a++)r=y[a].call(e,r);return r}}else{var m=l;l=function(e,t){return m.call(e,t)}}e.push(l)}0!==n&&(1===n?(c.get=u.get,c.set=u.set):2===n?c.value=u:3===n?c.get=u:4===n&&(c.set=u),s?1===n?(e.push(function(e,t){return u.get.call(e,t)}),e.push(function(e,t){return u.set.call(e,t)})):2===n?e.push(u):e.push(function(e,t){return u.call(e,t)}):Object.defineProperty(t,a,c))}function pushInitializers(e,t){t&&e.push(function(e){for(var r=0;r<t.length;r++)t[r].call(e);return e})}return function(e,t,r){var a=[];return function(e,t,r){for(var a,n,i=new Map,s=new Map,o=0;o<r.length;o++){var c=r[o];if(Array.isArray(c)){var l,u,f=c[1],p=c[2],d=c.length>3,h=f>=5;if(h?(l=t,0!=(f-=5)&&(u=n=n||[])):(l=t.prototype,0!==f&&(u=a=a||[])),0!==f&&!d){var v=h?s:i,g=v.get(p)||0;if(!0===g||3===g&&4!==f||4===g&&3!==f)throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+p);!g&&f>2?v.set(p,f):v.set(p,!0)}applyMemberDec(e,l,c,p,f,h,d,u)}}pushInitializers(e,a),pushInitializers(e,n)}(a,e,t),function(e,t,r){if(r.length>0){for(var a=[],n=t,i=t.name,s=r.length-1;s>=0;s--){var o={v:!1};try{var c=r[s](n,{kind:"class",name:i,addInitializer:createAddInitializerMethod(a,o)})}finally{o.v=!0}void 0!==c&&(assertValidReturnValue(10,c),n=c)}e.push(n,function(){for(var e=0;e<a.length;e++)a[e].call(n)})}}(a,e,r),a}}var applyDecs2203Impl;function applyDecs2203(e,t,r){return(applyDecs2203Impl=applyDecs2203Impl||applyDecs2203Factory())(e,t,r)}',{globals:["Error","TypeError","Object","Map","Array"],locals:{applyDecs2203Factory:["body.0.id","body.2.body.body.0.argument.callee.right.right.callee"],applyDecs2203Impl:["body.1.declarations.0.id","body.2.body.body.0.argument.callee.right.left","body.2.body.body.0.argument.callee.left"],applyDecs2203:["body.2.id"]},exportBindingAssignments:[],exportName:"applyDecs2203",dependencies:{},internal:!1}),applyDecs2203R:gj("7.20.0",'function applyDecs2203RFactory(){function createAddInitializerMethod(e,t){return function(r){!function(e){if(e.v)throw Error("attempted to call addInitializer after decoration was finished")}(t),assertCallable(r,"An initializer"),e.push(r)}}function memberDec(e,t,r,n,a,i,o,s){var c;switch(a){case 1:c="accessor";break;case 2:c="method";break;case 3:c="getter";break;case 4:c="setter";break;default:c="field"}var l,u,f={kind:c,name:o?"#"+t:toPropertyKey(t),static:i,private:o},p={v:!1};0!==a&&(f.addInitializer=createAddInitializerMethod(n,p)),0===a?o?(l=r.get,u=r.set):(l=function(){return this[t]},u=function(e){this[t]=e}):2===a?l=function(){return r.value}:(1!==a&&3!==a||(l=function(){return r.get.call(this)}),1!==a&&4!==a||(u=function(e){r.set.call(this,e)})),f.access=l&&u?{get:l,set:u}:l?{get:l}:{set:u};try{return e(s,f)}finally{p.v=!0}}function assertCallable(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function assertValidReturnValue(e,t){var r=typeof t;if(1===e){if("object"!==r||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&assertCallable(t.get,"accessor.get"),void 0!==t.set&&assertCallable(t.set,"accessor.set"),void 0!==t.init&&assertCallable(t.init,"accessor.init")}else if("function"!==r)throw new TypeError((0===e?"field":10===e?"class":"method")+" decorators must return a function or void 0")}function applyMemberDec(e,t,r,n,a,i,o,s){var c,l,u,f,p,d,h,v=r[0];if(o?(0===a||1===a?(c={get:r[3],set:r[4]},u="get"):3===a?(c={get:r[3]},u="get"):4===a?(c={set:r[3]},u="set"):c={value:r[3]},0!==a&&(1===a&&setFunctionName(r[4],"#"+n,"set"),setFunctionName(r[3],"#"+n,u))):0!==a&&(c=Object.getOwnPropertyDescriptor(t,n)),1===a?f={get:c.get,set:c.set}:2===a?f=c.value:3===a?f=c.get:4===a&&(f=c.set),"function"==typeof v)void 0!==(p=memberDec(v,n,c,s,a,i,o,f))&&(assertValidReturnValue(a,p),0===a?l=p:1===a?(l=p.init,d=p.get||f.get,h=p.set||f.set,f={get:d,set:h}):f=p);else for(var g=v.length-1;g>=0;g--){var y;void 0!==(p=memberDec(v[g],n,c,s,a,i,o,f))&&(assertValidReturnValue(a,p),0===a?y=p:1===a?(y=p.init,d=p.get||f.get,h=p.set||f.set,f={get:d,set:h}):f=p,void 0!==y&&(void 0===l?l=y:"function"==typeof l?l=[l,y]:l.push(y)))}if(0===a||1===a){if(void 0===l)l=function(e,t){return t};else if("function"!=typeof l){var m=l;l=function(e,t){for(var r=t,n=0;n<m.length;n++)r=m[n].call(e,r);return r}}else{var b=l;l=function(e,t){return b.call(e,t)}}e.push(l)}0!==a&&(1===a?(c.get=f.get,c.set=f.set):2===a?c.value=f:3===a?c.get=f:4===a&&(c.set=f),o?1===a?(e.push(function(e,t){return f.get.call(e,t)}),e.push(function(e,t){return f.set.call(e,t)})):2===a?e.push(f):e.push(function(e,t){return f.call(e,t)}):Object.defineProperty(t,n,c))}function applyMemberDecs(e,t){for(var r,n,a=[],i=new Map,o=new Map,s=0;s<t.length;s++){var c=t[s];if(Array.isArray(c)){var l,u,f=c[1],p=c[2],d=c.length>3,h=f>=5;if(h?(l=e,0!=(f-=5)&&(u=n=n||[])):(l=e.prototype,0!==f&&(u=r=r||[])),0!==f&&!d){var v=h?o:i,g=v.get(p)||0;if(!0===g||3===g&&4!==f||4===g&&3!==f)throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+p);!g&&f>2?v.set(p,f):v.set(p,!0)}applyMemberDec(a,l,c,p,f,h,d,u)}}return pushInitializers(a,r),pushInitializers(a,n),a}function pushInitializers(e,t){t&&e.push(function(e){for(var r=0;r<t.length;r++)t[r].call(e);return e})}return function(e,t,r){return{e:applyMemberDecs(e,t),get c(){return function(e,t){if(t.length>0){for(var r=[],n=e,a=e.name,i=t.length-1;i>=0;i--){var o={v:!1};try{var s=t[i](n,{kind:"class",name:a,addInitializer:createAddInitializerMethod(r,o)})}finally{o.v=!0}void 0!==s&&(assertValidReturnValue(10,s),n=s)}return[n,function(){for(var e=0;e<r.length;e++)r[e].call(n)}]}}(e,r)}}}}function applyDecs2203R(e,t,r){return(applyDecs2203R=applyDecs2203RFactory())(e,t,r)}',{globals:["Error","TypeError","Object","Map","Array"],locals:{applyDecs2203RFactory:["body.0.id","body.1.body.body.0.argument.callee.right.callee"],applyDecs2203R:["body.1.id","body.1.body.body.0.argument.callee.left"]},exportBindingAssignments:["body.1.body.body.0.argument.callee"],exportName:"applyDecs2203R",dependencies:{setFunctionName:["body.0.body.body.4.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.0.right.callee","body.0.body.body.4.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.1.callee"],toPropertyKey:["body.0.body.body.1.body.body.2.declarations.2.init.properties.1.value.alternate.callee"]},internal:!1}),applyDecs2301:gj("7.21.0",'function applyDecs2301Factory(){function createAddInitializerMethod(e,t){return function(r){!function(e){if(e.v)throw Error("attempted to call addInitializer after decoration was finished")}(t),assertCallable(r,"An initializer"),e.push(r)}}function assertInstanceIfPrivate(e,t){if(!e(t))throw new TypeError("Attempted to access private element on non-instance")}function memberDec(e,t,r,n,a,i,s,o,c){var u;switch(a){case 1:u="accessor";break;case 2:u="method";break;case 3:u="getter";break;case 4:u="setter";break;default:u="field"}var l,f,p={kind:u,name:s?"#"+t:toPropertyKey(t),static:i,private:s},d={v:!1};if(0!==a&&(p.addInitializer=createAddInitializerMethod(n,d)),s||0!==a&&2!==a)if(2===a)l=function(e){return assertInstanceIfPrivate(c,e),r.value};else{var h=0===a||1===a;(h||3===a)&&(l=s?function(e){return assertInstanceIfPrivate(c,e),r.get.call(e)}:function(e){return r.get.call(e)}),(h||4===a)&&(f=s?function(e,t){assertInstanceIfPrivate(c,e),r.set.call(e,t)}:function(e,t){r.set.call(e,t)})}else l=function(e){return e[t]},0===a&&(f=function(e,r){e[t]=r});var v=s?c.bind():function(e){return t in e};p.access=l&&f?{get:l,set:f,has:v}:l?{get:l,has:v}:{set:f,has:v};try{return e(o,p)}finally{d.v=!0}}function assertCallable(e,t){if("function"!=typeof e)throw new TypeError(t+" must be a function")}function assertValidReturnValue(e,t){var r=typeof t;if(1===e){if("object"!==r||null===t)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0");void 0!==t.get&&assertCallable(t.get,"accessor.get"),void 0!==t.set&&assertCallable(t.set,"accessor.set"),void 0!==t.init&&assertCallable(t.init,"accessor.init")}else if("function"!==r)throw new TypeError((0===e?"field":10===e?"class":"method")+" decorators must return a function or void 0")}function curryThis2(e){return function(t){e(this,t)}}function applyMemberDec(e,t,r,n,a,i,s,o,c){var u,l,f,p,d,h,v,y,g=r[0];if(s?(0===a||1===a?(u={get:(d=r[3],function(){return d(this)}),set:curryThis2(r[4])},f="get"):3===a?(u={get:r[3]},f="get"):4===a?(u={set:r[3]},f="set"):u={value:r[3]},0!==a&&(1===a&&setFunctionName(u.set,"#"+n,"set"),setFunctionName(u[f||"value"],"#"+n,f))):0!==a&&(u=Object.getOwnPropertyDescriptor(t,n)),1===a?p={get:u.get,set:u.set}:2===a?p=u.value:3===a?p=u.get:4===a&&(p=u.set),"function"==typeof g)void 0!==(h=memberDec(g,n,u,o,a,i,s,p,c))&&(assertValidReturnValue(a,h),0===a?l=h:1===a?(l=h.init,v=h.get||p.get,y=h.set||p.set,p={get:v,set:y}):p=h);else for(var m=g.length-1;m>=0;m--){var b;void 0!==(h=memberDec(g[m],n,u,o,a,i,s,p,c))&&(assertValidReturnValue(a,h),0===a?b=h:1===a?(b=h.init,v=h.get||p.get,y=h.set||p.set,p={get:v,set:y}):p=h,void 0!==b&&(void 0===l?l=b:"function"==typeof l?l=[l,b]:l.push(b)))}if(0===a||1===a){if(void 0===l)l=function(e,t){return t};else if("function"!=typeof l){var I=l;l=function(e,t){for(var r=t,n=0;n<I.length;n++)r=I[n].call(e,r);return r}}else{var w=l;l=function(e,t){return w.call(e,t)}}e.push(l)}0!==a&&(1===a?(u.get=p.get,u.set=p.set):2===a?u.value=p:3===a?u.get=p:4===a&&(u.set=p),s?1===a?(e.push(function(e,t){return p.get.call(e,t)}),e.push(function(e,t){return p.set.call(e,t)})):2===a?e.push(p):e.push(function(e,t){return p.call(e,t)}):Object.defineProperty(t,n,u))}function applyMemberDecs(e,t,r){for(var n,a,i,s=[],o=new Map,c=new Map,u=0;u<t.length;u++){var l=t[u];if(Array.isArray(l)){var f,p,d=l[1],h=l[2],v=l.length>3,y=d>=5,g=r;if(y?(f=e,0!=(d-=5)&&(p=a=a||[]),v&&!i&&(i=function(t){return checkInRHS(t)===e}),g=i):(f=e.prototype,0!==d&&(p=n=n||[])),0!==d&&!v){var m=y?c:o,b=m.get(h)||0;if(!0===b||3===b&&4!==d||4===b&&3!==d)throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+h);!b&&d>2?m.set(h,d):m.set(h,!0)}applyMemberDec(s,f,l,h,d,y,v,p,g)}}return pushInitializers(s,n),pushInitializers(s,a),s}function pushInitializers(e,t){t&&e.push(function(e){for(var r=0;r<t.length;r++)t[r].call(e);return e})}return function(e,t,r,n){return{e:applyMemberDecs(e,t,n),get c(){return function(e,t){if(t.length>0){for(var r=[],n=e,a=e.name,i=t.length-1;i>=0;i--){var s={v:!1};try{var o=t[i](n,{kind:"class",name:a,addInitializer:createAddInitializerMethod(r,s)})}finally{s.v=!0}void 0!==o&&(assertValidReturnValue(10,o),n=o)}return[n,function(){for(var e=0;e<r.length;e++)r[e].call(n)}]}}(e,r)}}}}function applyDecs2301(e,t,r,n){return(applyDecs2301=applyDecs2301Factory())(e,t,r,n)}',{globals:["Error","TypeError","Object","Map","Array"],locals:{applyDecs2301Factory:["body.0.id","body.1.body.body.0.argument.callee.right.callee"],applyDecs2301:["body.1.id","body.1.body.body.0.argument.callee.left"]},exportBindingAssignments:["body.1.body.body.0.argument.callee"],exportName:"applyDecs2301",dependencies:{checkInRHS:["body.0.body.body.7.body.body.0.body.body.1.consequent.body.1.test.expressions.0.consequent.expressions.2.right.right.body.body.0.argument.left.callee"],setFunctionName:["body.0.body.body.6.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.0.right.callee","body.0.body.body.6.body.body.1.test.expressions.0.consequent.expressions.1.right.expressions.1.callee"],toPropertyKey:["body.0.body.body.2.body.body.2.declarations.2.init.properties.1.value.alternate.callee"]},internal:!1}),applyDecs2305:gj("7.21.0",'function applyDecs2305(e,t,r,n,o,a){function i(e,t,r){return function(n,o){return r&&r(n),e[t].call(n,o)}}function c(e,t){for(var r=0;r<e.length;r++)e[r].call(t);return t}function s(e,t,r,n){if("function"!=typeof e&&(n||void 0!==e))throw new TypeError(t+" must "+(r||"be")+" a function"+(n?"":" or undefined"));return e}function applyDec(e,t,r,n,o,a,c,u,l,f,p,d,h){function m(e){if(!h(e))throw new TypeError("Attempted to access private element on non-instance")}var y,v=t[0],g=t[3],b=!u;if(!b){r||Array.isArray(v)||(v=[v]);var w={},S=[],A=3===o?"get":4===o||d?"set":"value";f?(p||d?w={get:setFunctionName(function(){return g(this)},n,"get"),set:function(e){t[4](this,e)}}:w[A]=g,p||setFunctionName(w[A],n,2===o?"":A)):p||(w=Object.getOwnPropertyDescriptor(e,n))}for(var P=e,j=v.length-1;j>=0;j-=r?2:1){var D=v[j],E=r?v[j-1]:void 0,I={},O={kind:["field","accessor","method","getter","setter","class"][o],name:n,metadata:a,addInitializer:function(e,t){if(e.v)throw Error("attempted to call addInitializer after decoration was finished");s(t,"An initializer","be",!0),c.push(t)}.bind(null,I)};try{if(b)(y=s(D.call(E,P,O),"class decorators","return"))&&(P=y);else{var k,F;O.static=l,O.private=f,f?2===o?k=function(e){return m(e),w.value}:(o<4&&(k=i(w,"get",m)),3!==o&&(F=i(w,"set",m))):(k=function(e){return e[n]},(o<2||4===o)&&(F=function(e,t){e[n]=t}));var N=O.access={has:f?h.bind():function(e){return n in e}};if(k&&(N.get=k),F&&(N.set=F),P=D.call(E,d?{get:w.get,set:w.set}:w[A],O),d){if("object"==typeof P&&P)(y=s(P.get,"accessor.get"))&&(w.get=y),(y=s(P.set,"accessor.set"))&&(w.set=y),(y=s(P.init,"accessor.init"))&&S.push(y);else if(void 0!==P)throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0")}else s(P,(p?"field":"method")+" decorators","return")&&(p?S.push(P):w[A]=P)}}finally{I.v=!0}}return(p||d)&&u.push(function(e,t){for(var r=S.length-1;r>=0;r--)t=S[r].call(e,t);return t}),p||b||(f?d?u.push(i(w,"get"),i(w,"set")):u.push(2===o?w[A]:i.call.bind(w[A])):Object.defineProperty(e,n,w)),P}function u(e,t){return Object.defineProperty(e,Symbol.metadata||Symbol.for("Symbol.metadata"),{configurable:!0,enumerable:!0,value:t})}if(arguments.length>=6)var l=a[Symbol.metadata||Symbol.for("Symbol.metadata")];var f=Object.create(null==l?null:l),p=function(e,t,r,n){var o,a,i=[],s=function(t){return checkInRHS(t)===e},u=new Map;function l(e){e&&i.push(c.bind(null,e))}for(var f=0;f<t.length;f++){var p=t[f];if(Array.isArray(p)){var d=p[1],h=p[2],m=p.length>3,y=16&d,v=!!(8&d),g=0==(d&=7),b=h+"/"+v;if(!g&&!m){var w=u.get(b);if(!0===w||3===w&&4!==d||4===w&&3!==d)throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: "+h);u.set(b,!(d>2)||d)}applyDec(v?e:e.prototype,p,y,m?"#"+h:toPropertyKey(h),d,n,v?a=a||[]:o=o||[],i,v,m,g,1===d,v&&m?s:r)}}return l(o),l(a),i}(e,t,o,f);return r.length||u(e,f),{e:p,get c(){var t=[];return r.length&&[u(applyDec(e,[r],n,e.name,5,f,t),f),c.bind(null,t,e)]}}}',{globals:["TypeError","Array","Object","Error","Symbol","Map"],locals:{applyDecs2305:["body.0.id"]},exportBindingAssignments:[],exportName:"applyDecs2305",dependencies:{checkInRHS:["body.0.body.body.6.declarations.1.init.callee.body.body.0.declarations.3.init.body.body.0.argument.left.callee"],setFunctionName:["body.0.body.body.3.body.body.2.consequent.body.2.expression.consequent.expressions.0.consequent.right.properties.0.value.callee","body.0.body.body.3.body.body.2.consequent.body.2.expression.consequent.expressions.1.right.callee"],toPropertyKey:["body.0.body.body.6.declarations.1.init.callee.body.body.2.body.body.1.consequent.body.2.expression.arguments.3.alternate.callee"]},internal:!1}),classApplyDescriptorDestructureSet:gj("7.13.10",'function _classApplyDescriptorDestructureSet(e,t){if(t.set)return"__destrObj"in t||(t.__destrObj={set value(r){t.set.call(e,r)}}),t.__destrObj;if(!t.writable)throw new TypeError("attempted to set read only private field");return t}',{globals:["TypeError"],locals:{_classApplyDescriptorDestructureSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classApplyDescriptorDestructureSet",dependencies:{},internal:!1}),classApplyDescriptorGet:gj("7.13.10","function _classApplyDescriptorGet(e,t){return t.get?t.get.call(e):t.value}",{globals:[],locals:{_classApplyDescriptorGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classApplyDescriptorGet",dependencies:{},internal:!1}),classApplyDescriptorSet:gj("7.13.10",'function _classApplyDescriptorSet(e,t,l){if(t.set)t.set.call(e,l);else{if(!t.writable)throw new TypeError("attempted to set read only private field");t.value=l}}',{globals:["TypeError"],locals:{_classApplyDescriptorSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classApplyDescriptorSet",dependencies:{},internal:!1}),classCheckPrivateStaticAccess:gj("7.13.10","function _classCheckPrivateStaticAccess(s,a,r){return assertClassBrand(a,s,r)}",{globals:[],locals:{_classCheckPrivateStaticAccess:["body.0.id"]},exportBindingAssignments:[],exportName:"_classCheckPrivateStaticAccess",dependencies:{assertClassBrand:["body.0.body.body.0.argument.callee"]},internal:!1}),classCheckPrivateStaticFieldDescriptor:gj("7.13.10",'function _classCheckPrivateStaticFieldDescriptor(t,e){if(void 0===t)throw new TypeError("attempted to "+e+" private static field before its declaration")}',{globals:["TypeError"],locals:{_classCheckPrivateStaticFieldDescriptor:["body.0.id"]},exportBindingAssignments:[],exportName:"_classCheckPrivateStaticFieldDescriptor",dependencies:{},internal:!1}),classExtractFieldDescriptor:gj("7.13.10","function _classExtractFieldDescriptor(e,t){return classPrivateFieldGet2(t,e)}",{globals:[],locals:{_classExtractFieldDescriptor:["body.0.id"]},exportBindingAssignments:[],exportName:"_classExtractFieldDescriptor",dependencies:{classPrivateFieldGet2:["body.0.body.body.0.argument.callee"]},internal:!1}),classPrivateFieldDestructureSet:gj("7.4.4","function _classPrivateFieldDestructureSet(e,t){var r=classPrivateFieldGet2(t,e);return classApplyDescriptorDestructureSet(e,r)}",{globals:[],locals:{_classPrivateFieldDestructureSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldDestructureSet",dependencies:{classApplyDescriptorDestructureSet:["body.0.body.body.1.argument.callee"],classPrivateFieldGet2:["body.0.body.body.0.declarations.0.init.callee"]},internal:!1}),classPrivateFieldGet:gj("7.0.0-beta.0","function _classPrivateFieldGet(e,t){var r=classPrivateFieldGet2(t,e);return classApplyDescriptorGet(e,r)}",{globals:[],locals:{_classPrivateFieldGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldGet",dependencies:{classApplyDescriptorGet:["body.0.body.body.1.argument.callee"],classPrivateFieldGet2:["body.0.body.body.0.declarations.0.init.callee"]},internal:!1}),classPrivateFieldSet:gj("7.0.0-beta.0","function _classPrivateFieldSet(e,t,r){var s=classPrivateFieldGet2(t,e);return classApplyDescriptorSet(e,s,r),r}",{globals:[],locals:{_classPrivateFieldSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateFieldSet",dependencies:{classApplyDescriptorSet:["body.0.body.body.1.argument.expressions.0.callee"],classPrivateFieldGet2:["body.0.body.body.0.declarations.0.init.callee"]},internal:!1}),classPrivateMethodGet:gj("7.1.6","function _classPrivateMethodGet(s,a,r){return assertClassBrand(a,s),r}",{globals:[],locals:{_classPrivateMethodGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateMethodGet",dependencies:{assertClassBrand:["body.0.body.body.0.argument.expressions.0.callee"]},internal:!1}),classPrivateMethodSet:gj("7.1.6",'function _classPrivateMethodSet(){throw new TypeError("attempted to reassign private method")}',{globals:["TypeError"],locals:{_classPrivateMethodSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classPrivateMethodSet",dependencies:{},internal:!1}),classStaticPrivateFieldDestructureSet:gj("7.13.10",'function _classStaticPrivateFieldDestructureSet(t,r,s){return assertClassBrand(r,t),classCheckPrivateStaticFieldDescriptor(s,"set"),classApplyDescriptorDestructureSet(t,s)}',{globals:[],locals:{_classStaticPrivateFieldDestructureSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classStaticPrivateFieldDestructureSet",dependencies:{classApplyDescriptorDestructureSet:["body.0.body.body.0.argument.expressions.2.callee"],assertClassBrand:["body.0.body.body.0.argument.expressions.0.callee"],classCheckPrivateStaticFieldDescriptor:["body.0.body.body.0.argument.expressions.1.callee"]},internal:!1}),classStaticPrivateFieldSpecGet:gj("7.0.2",'function _classStaticPrivateFieldSpecGet(t,s,r){return assertClassBrand(s,t),classCheckPrivateStaticFieldDescriptor(r,"get"),classApplyDescriptorGet(t,r)}',{globals:[],locals:{_classStaticPrivateFieldSpecGet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classStaticPrivateFieldSpecGet",dependencies:{classApplyDescriptorGet:["body.0.body.body.0.argument.expressions.2.callee"],assertClassBrand:["body.0.body.body.0.argument.expressions.0.callee"],classCheckPrivateStaticFieldDescriptor:["body.0.body.body.0.argument.expressions.1.callee"]},internal:!1}),classStaticPrivateFieldSpecSet:gj("7.0.2",'function _classStaticPrivateFieldSpecSet(s,t,r,e){return assertClassBrand(t,s),classCheckPrivateStaticFieldDescriptor(r,"set"),classApplyDescriptorSet(s,r,e),e}',{globals:[],locals:{_classStaticPrivateFieldSpecSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classStaticPrivateFieldSpecSet",dependencies:{classApplyDescriptorSet:["body.0.body.body.0.argument.expressions.2.callee"],assertClassBrand:["body.0.body.body.0.argument.expressions.0.callee"],classCheckPrivateStaticFieldDescriptor:["body.0.body.body.0.argument.expressions.1.callee"]},internal:!1}),classStaticPrivateMethodSet:gj("7.3.2",'function _classStaticPrivateMethodSet(){throw new TypeError("attempted to set read only static private field")}',{globals:["TypeError"],locals:{_classStaticPrivateMethodSet:["body.0.id"]},exportBindingAssignments:[],exportName:"_classStaticPrivateMethodSet",dependencies:{},internal:!1}),defineEnumerableProperties:gj("7.0.0-beta.0",'function _defineEnumerableProperties(e,r){for(var t in r){var n=r[t];n.configurable=n.enumerable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,t,n)}if(Object.getOwnPropertySymbols)for(var a=Object.getOwnPropertySymbols(r),b=0;b<a.length;b++){var i=a[b];(n=r[i]).configurable=n.enumerable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,i,n)}return e}',{globals:["Object"],locals:{_defineEnumerableProperties:["body.0.id"]},exportBindingAssignments:[],exportName:"_defineEnumerableProperties",dependencies:{},internal:!1}),dispose:gj("7.22.0",'function dispose_SuppressedError(r,e){return"undefined"!=typeof SuppressedError?dispose_SuppressedError=SuppressedError:(dispose_SuppressedError=function(r,e){this.suppressed=e,this.error=r,this.stack=Error().stack},dispose_SuppressedError.prototype=Object.create(Error.prototype,{constructor:{value:dispose_SuppressedError,writable:!0,configurable:!0}})),new dispose_SuppressedError(r,e)}function _dispose(r,e,s){function next(){for(;r.length>0;)try{var o=r.pop(),p=o.d.call(o.v);if(o.a)return Promise.resolve(p).then(next,err)}catch(r){return err(r)}if(s)throw e}function err(r){return e=s?new dispose_SuppressedError(e,r):r,s=!0,next()}return next()}',{globals:["SuppressedError","Error","Object","Promise"],locals:{dispose_SuppressedError:["body.0.id","body.0.body.body.0.argument.expressions.0.alternate.expressions.1.left.object","body.0.body.body.0.argument.expressions.0.alternate.expressions.1.right.arguments.1.properties.0.value.properties.0.value","body.0.body.body.0.argument.expressions.1.callee","body.1.body.body.1.body.body.0.argument.expressions.0.right.consequent.callee","body.0.body.body.0.argument.expressions.0.consequent.left","body.0.body.body.0.argument.expressions.0.alternate.expressions.0.left"],_dispose:["body.1.id"]},exportBindingAssignments:[],exportName:"_dispose",dependencies:{},internal:!1}),objectSpread:gj("7.0.0-beta.0",'function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?Object(arguments[r]):{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&o.push.apply(o,Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),o.forEach(function(r){defineProperty(e,r,t[r])})}return e}',{globals:["Object"],locals:{_objectSpread:["body.0.id"]},exportBindingAssignments:[],exportName:"_objectSpread",dependencies:{defineProperty:["body.0.body.body.0.body.body.1.expression.expressions.1.arguments.0.body.body.0.expression.callee"]},internal:!1}),regeneratorRuntime:gj("7.18.0",'function _regeneratorRuntime(){"use strict";var r=regenerator(),e=r.m(_regeneratorRuntime),t=(Object.getPrototypeOf?Object.getPrototypeOf(e):e.__proto__).constructor;function n(r){var e="function"==typeof r&&r.constructor;return!!e&&(e===t||"GeneratorFunction"===(e.displayName||e.name))}var o={throw:1,return:2,break:3,continue:3};function a(r){var e,t;return function(n){e||(e={stop:function(){return t(n.a,2)},catch:function(){return n.v},abrupt:function(r,e){return t(n.a,o[r],e)},delegateYield:function(r,o,a){return e.resultName=o,t(n.d,values(r),a)},finish:function(r){return t(n.f,r)}},t=function(r,t,o){n.p=e.prev,n.n=e.next;try{return r(t,o)}finally{e.next=n.n}}),e.resultName&&(e[e.resultName]=n.v,e.resultName=void 0),e.sent=n.v,e.next=n.n;try{return r.call(this,e)}finally{n.p=e.prev,n.n=e.next}}}return(_regeneratorRuntime=function(){return{wrap:function(e,t,n,o){return r.w(a(e),t,n,o&&o.reverse())},isGeneratorFunction:n,mark:r.m,awrap:function(r,e){return new OverloadYield(r,e)},AsyncIterator:AsyncIterator,async:function(r,e,t,o,u){return(n(e)?asyncGen:async)(a(r),e,t,o,u)},keys:keys,values:values}})()}',{globals:["Object"],locals:{_regeneratorRuntime:["body.0.id","body.0.body.body.0.declarations.1.init.arguments.0","body.0.body.body.4.argument.callee.left"]},exportBindingAssignments:["body.0.body.body.4.argument.callee"],exportName:"_regeneratorRuntime",dependencies:{OverloadYield:["body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.3.value.body.body.0.argument.callee"],regenerator:["body.0.body.body.0.declarations.0.init.callee"],regeneratorAsync:["body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.5.value.body.body.0.argument.callee.alternate"],regeneratorAsyncGen:["body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.5.value.body.body.0.argument.callee.consequent"],regeneratorAsyncIterator:["body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.4.value"],regeneratorKeys:["body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.6.value"],regeneratorValues:["body.0.body.body.3.body.body.1.argument.body.body.0.expression.expressions.0.right.expressions.0.right.properties.3.value.body.body.0.argument.expressions.1.arguments.1.callee","body.0.body.body.4.argument.callee.right.body.body.0.argument.properties.7.value"]},internal:!1}),using:gj("7.22.0",'function _using(o,n,e){if(null==n)return n;if(Object(n)!==n)throw new TypeError("using declarations can only be used with objects, functions, null, or undefined.");if(e)var r=n[Symbol.asyncDispose||Symbol.for("Symbol.asyncDispose")];if(null==r&&(r=n[Symbol.dispose||Symbol.for("Symbol.dispose")]),"function"!=typeof r)throw new TypeError("Property [Symbol.dispose] is not a function.");return o.push({v:n,d:r,a:e}),n}',{globals:["Object","TypeError","Symbol"],locals:{_using:["body.0.id"]},exportBindingAssignments:[],exportName:"_using",dependencies:{},internal:!1})});var yj=sm,hj=Ps;function bj(e,t,r){try{for(var a=t.split("."),n=a.shift();a.length>0;)e=e[n],n=a.shift();if(!(arguments.length>2))return e[n];e[n]=r}catch(e){throw e.message+=" (when accessing "+t+")",e}}var vj=Object.create(null);function xj(e){if(!vj[e]){var t=mj[e];if(!t)throw Object.assign(new ReferenceError("Unknown helper "+e),{code:"BABEL_HELPER_UNKNOWN",helper:e});vj[e]={minVersion:t.minVersion,build:function(e,r,a,n){var s=t.ast();return function(e,t,r,a,n,s){var o=t.locals,d=t.dependencies,c=t.exportBindingAssignments,l=t.exportName,u=new Set(a||[]);r&&u.add(r);for(var p=0,f=(Object.entries||function(e){return Object.keys(e).map(function(t){return[t,e[t]]})})(o);p<f.length;p++){var g=y(f[p],2),m=g[0],h=g[1],b=m;if(r&&m===l)b=r;else for(;u.has(b);)b="_"+b;if(b!==m)for(var v,x=i(h);!(v=x()).done;){var R=v.value;bj(e,R,hj(b))}}for(var j=0,w=(Object.entries||function(e){return Object.keys(e).map(function(t){return[t,e[t]]})})(d);j<w.length;j++)for(var E,S=y(w[j],2),T=S[0],P=S[1],A="function"==typeof n&&n(T)||hj(T),k=i(P);!(E=k()).done;){var C=E.value;bj(e,C,yj(A))}null==s||s(e,l,function(t){c.forEach(function(r){return bj(e,r,t(bj(e,r)))})})}(s,t.metadata,r,a,e,n),{nodes:s.body,globals:t.metadata.globals}},getDependencies:function(){return Object.keys(t.metadata.dependencies)}}}return vj[e]}function Rj(e,t,r,a,n){if("object"==typeof r){var s=r;r="Identifier"===(null==s?void 0:s.type)?s.name:void 0}return xj(e).build(t,r,a,n)}function jj(e){return xj(e).minVersion}function wj(e){var t;return null==(t=mj[e])?void 0:t.metadata.internal}e.ensure=function(e){xj(e)};var Ej,Sj,Tj=Object.keys(mj).map(function(e){return e.replace(/^_/,"")}),Pj=Object.freeze({__proto__:null,BindingIdentifier:["Identifier"],BlockScoped:["FunctionDeclaration","ClassDeclaration","VariableDeclaration"],ExistentialTypeParam:["ExistsTypeAnnotation"],Expression:["Expression"],Flow:["Flow","ImportDeclaration","ExportDeclaration","ImportSpecifier"],ForAwaitStatement:["ForOfStatement"],Generated:null,NumericLiteralTypeAnnotation:["NumberLiteralTypeAnnotation"],Pure:null,Referenced:null,ReferencedIdentifier:["Identifier","JSXIdentifier"],ReferencedMemberExpression:["MemberExpression"],RestProperty:["RestElement"],Scope:["Scopable","Pattern"],SpreadProperty:["RestElement"],Statement:["Statement"],User:null,Var:["VariableDeclaration"]}),Aj={exports:{}};function kj(){if(Sj)return Ej;Sj=1;var e=1e3,t=60*e,r=60*t,a=24*r,n=7*a,s=365.25*a;function o(e,t,r,a){var n=t>=1.5*r;return Math.round(e/r)+" "+a+(n?"s":"")}return Ej=function(i,d){d=d||{};var c=typeof i;if("string"===c&&i.length>0)return function(o){if((o=String(o)).length>100)return;var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(o);if(!i)return;var d=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return d*s;case"weeks":case"week":case"w":return d*n;case"days":case"day":case"d":return d*a;case"hours":case"hour":case"hrs":case"hr":case"h":return d*r;case"minutes":case"minute":case"mins":case"min":case"m":return d*t;case"seconds":case"second":case"secs":case"sec":case"s":return d*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return d;default:return}}(i);if("number"===c&&isFinite(i))return d.long?function(n){var s=Math.abs(n);if(s>=a)return o(n,s,a,"day");if(s>=r)return o(n,s,r,"hour");if(s>=t)return o(n,s,t,"minute");if(s>=e)return o(n,s,e,"second");return n+" ms"}(i):function(n){var s=Math.abs(n);if(s>=a)return Math.round(n/a)+"d";if(s>=r)return Math.round(n/r)+"h";if(s>=t)return Math.round(n/t)+"m";if(s>=e)return Math.round(n/e)+"s";return n+"ms"}(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))},Ej}var Cj=function(e){function t(e){var a,n,s,o=null;function i(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];if(i.enabled){var s=i,o=Number(new Date),d=o-(a||o);s.diff=d,s.prev=a,s.curr=o,a=o,r[0]=t.coerce(r[0]),"string"!=typeof r[0]&&r.unshift("%O");var c=0;r[0]=r[0].replace(/%([a-zA-Z%])/g,function(e,a){if("%%"===e)return"%";c++;var n=t.formatters[a];if("function"==typeof n){var o=r[c];e=n.call(s,o),r.splice(c,1),c--}return e}),t.formatArgs.call(s,r),(s.log||t.log).apply(s,r)}}return i.namespace=e,i.useColors=t.useColors(),i.color=t.selectColor(e),i.extend=r,i.destroy=t.destroy,Object.defineProperty(i,"enabled",{enumerable:!0,configurable:!1,get:function(){return null!==o?o:(n!==t.namespaces&&(n=t.namespaces,s=t.enabled(e)),s)},set:function(e){o=e}}),"function"==typeof t.init&&t.init(i),i}function r(e,r){var a=t(this.namespace+(void 0===r?":":r)+e);return a.log=this.log,a}function a(e,t){for(var r=0,a=0,n=-1,s=0;r<e.length;)if(a<t.length&&(t[a]===e[r]||"*"===t[a]))"*"===t[a]?(n=a,s=r,a++):(r++,a++);else{if(-1===n)return!1;a=n+1,r=++s}for(;a<t.length&&"*"===t[a];)a++;return a===t.length}return t.debug=t,t.default=t,t.coerce=function(e){if(e instanceof Error)return e.stack||e.message;return e},t.disable=function(){var e=[].concat(b(t.names),b(t.skips.map(function(e){return"-"+e}))).join(",");return t.enable(""),e},t.enable=function(e){t.save(e),t.namespaces=e,t.names=[],t.skips=[];for(var r,a=i(("string"==typeof e?e:"").trim().replace(/\s+/g,",").split(",").filter(Boolean));!(r=a()).done;){var n=r.value;"-"===n[0]?t.skips.push(n.slice(1)):t.names.push(n)}},t.enabled=function(e){for(var r,n=i(t.skips);!(r=n()).done;){if(a(e,r.value))return!1}for(var s,o=i(t.names);!(s=o()).done;){if(a(e,s.value))return!0}return!1},t.humanize=kj(),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(function(r){t[r]=e[r]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){for(var r=0,a=0;a<e.length;a++)r=(r<<5)-r+e.charCodeAt(a),r|=0;return t.colors[Math.abs(r)%t.colors.length]},t.enable(t.load()),t};!function(e,t){var r;t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;var r="color: "+this.color;t.splice(1,0,r,"color: inherit");var a=0,n=0;t[0].replace(/%[a-zA-Z%]/g,function(e){"%%"!==e&&(a++,"%c"===e&&(n=a))}),t.splice(n,0,r)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){var e;try{e=t.storage.getItem("debug")||t.storage.getItem("DEBUG")}catch(e){}!e&&void 0!==z&&"env"in z&&(e=z.env.DEBUG);return e},t.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;var e;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&(e=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(e[1],10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(r=!1,function(){r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||function(){},e.exports=Cj(t),e.exports.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}(Aj,Aj.exports);var _j=Aj.exports,Ij=Fy,Dj=qy,Oj=gr,Nj=$t,Bj=hr,Mj=ne,Fj=ar,Lj=ie,Uj=qe,qj=Ve,Gj=Pt,Wj=At,Vj=me,Hj=Re,zj=Gy,Kj=Wy,Xj=er,Jj=Ky,Yj=Ae,$j=Ue,Qj=Xy.isCompatTag;e.isExistentialTypeParam=function(){throw new Error("`path.isExistentialTypeParam` has been renamed to `path.isExistsTypeAnnotation()` in Babel 7.")},e.isNumericLiteralTypeAnnotation=function(){throw new Error("`path.isNumericLiteralTypeAnnotation()` has been renamed to `path.isNumberLiteralTypeAnnotation()` in Babel 7.")};var Zj=Object.freeze({__proto__:null,isBindingIdentifier:function(){var e=this.node,t=this.parent,r=this.parentPath.parent;return Lj(e)&&Ij(e,t,r)},isBlockScoped:function(){return Dj(this.node)},isExpression:function(){return this.isIdentifier()?this.isReferencedIdentifier():Nj(this.node)},isFlow:function(){var e=this.node;return!!Bj(e)||(Uj(e)?"type"===e.importKind||"typeof"===e.importKind:Oj(e)?"type"===e.exportKind:!!qj(e)&&("type"===e.importKind||"typeof"===e.importKind))},isForAwaitStatement:function(){return $j(this.node,{await:!0})},isGenerated:function(){return!this.isUser()},isPure:function(e){return this.scope.isPure(this.node,e)},isReferenced:function(){return zj(this.node,this.parent)},isReferencedIdentifier:function(e){var t=this.node,r=this.parent;return Lj(t,e)?zj(t,r,this.parentPath.parent):!!Gj(t,e)&&(!(!Wj(r)&&Qj(t.name))&&zj(t,r,this.parentPath.parent))},isReferencedMemberExpression:function(){var e=this.node,t=this.parent;return Vj(e)&&zj(e,t)},isRestProperty:function(){var e;return Hj(this.node)&&(null==(e=this.parentPath)?void 0:e.isObjectPattern())},isScope:function(){return Kj(this.node,this.parent)},isSpreadProperty:function(){var e;return Hj(this.node)&&(null==(e=this.parentPath)?void 0:e.isObjectExpression())},isStatement:function(){var e=this.node,t=this.parent;if(Xj(e)){if(Yj(e)){if(Fj(t,{left:e}))return!1;if(Mj(t,{init:e}))return!1}return!0}return!1},isUser:function(){var e;return!(null==(e=this.node)||!e.loc)},isVar:function(){return Jj(this.node)}}),ew=Pa,tw=Wn,rw=Ea,aw=Zn,nw=J;function sw(e){return e in Pj}function ow(e){return null==e?void 0:e._exploded}function iw(e){if(ow(e))return e;e._exploded=!0;for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t];if(!gw(a)){var n=a.split("|");if(1!==n.length){var s=e[a];delete e[a];for(var o,d=i(n);!(o=d()).done;){e[o.value]=s}}}}dw(e),delete e.__esModule,function(e){for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t];if(!gw(a)){var n=e[a];"function"==typeof n&&(e[a]={enter:n})}}}(e),pw(e);for(var c=0,l=Object.keys(e);c<l.length;c++){var u=l[c];if(!gw(u)&&sw(u)){for(var p=e[u],f=0,g=Object.keys(p);f<g.length;f++){var m=g[f];p[m]=fw(u,p[m])}delete e[u];var y=Pj[u];if(null!==y)for(var h,b=i(y);!(h=b()).done;){var v=h.value;null!=e[v]||(e[v]={}),mw(e[v],p)}else mw(e,p)}}for(var x=0,R=Object.keys(e);x<R.length;x++){var j=R[x];if(!gw(j)){var w=rw[j];if(j in ew){var E=ew[j];nw(j,E,"Visitor "),w=[E]}else if(j in tw){var S=tw[j];nw(j,S,"Visitor "),w=rw[S]}if(w){var T=e[j];delete e[j];for(var P,A=i(w);!(P=A()).done;){var k=P.value,C=e[k];C?mw(C,T):e[k]=Object.assign({},T)}}}}for(var _=0,I=Object.keys(e);_<I.length;_++){var D=I[_];gw(D)||pw(e[D])}return e}function dw(e){if(!e._verified){if("function"==typeof e)throw new Error("You passed `traverse()` a function when it expected a visitor object, are you sure you didn't mean `{ enter: Function }`?");for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t];if("enter"!==a&&"exit"!==a||cw(a,e[a]),!gw(a)){if(!aw.includes(a))throw new Error("You gave us a visitor for the node type "+a+" but it's not a valid type in @babel/traverse 7.29.0");var n=e[a];if("object"==typeof n)for(var s=0,o=Object.keys(n);s<o.length;s++){var i=o[s];if("enter"!==i&&"exit"!==i)throw new Error("You passed `traverse()` a visitor object with the property "+a+" that has the invalid property "+i);cw(a+"."+i,n[i])}}}e._verified=!0}}function cw(e,t){for(var r,a=i([].concat(t));!(r=a()).done;){var n=r.value;if("function"!=typeof n)throw new TypeError("Non-function found defined in "+e+" with type "+typeof n)}}function lw(e,t,r){void 0===t&&(t=[]);var a={_verified:!0,_exploded:!0};Object.defineProperty(a,"_exploded",{enumerable:!1}),Object.defineProperty(a,"_verified",{enumerable:!1});for(var n=0;n<e.length;n++){var s=iw(e[n]),o=t[n],i=s;(o||r)&&(i=uw(i,o,r)),mw(a,i);for(var d=0,c=Object.keys(s);d<c.length;d++){var l=c[d];if(!gw(l)){var u=s[l];(o||r)&&(u=uw(u,o,r)),mw(a[l]||(a[l]={}),u)}}}return a}function uw(e,t,r){for(var a={},n=function(){var n=o[s],i=e[n];if(!Array.isArray(i))return 1;i=i.map(function(e){var a=e;return t&&(a=function(r){e.call(t,r,t)}),r&&(a=r(null==t?void 0:t.key,n,a)),a!==e&&(a.toString=function(){return e.toString()}),a}),a[n]=i},s=0,o=["enter","exit"];s<o.length;s++)n();return a}function pw(e){e.enter&&!Array.isArray(e.enter)&&(e.enter=[e.enter]),e.exit&&!Array.isArray(e.exit)&&(e.exit=[e.exit])}function fw(e,t){var r=Zj["is"+e],a=function(e){if(r.call(e))return t.apply(this,arguments)};return a.toString=function(){return t.toString()},a}function gw(e){return!!e.startsWith("_")||("enter"===e||"exit"===e||"shouldSkip"===e||("denylist"===e||"noScope"===e||"skipKeys"===e||"blacklist"===e))}function mw(e,t){for(var r=0,a=["enter","exit"];r<a.length;r++){var n=a[r];t[n]&&(e[n]=[].concat(e[n]||[],t[n]))}}var yw={FunctionParent:function(e){e.isArrowFunctionExpression()||(e.skip(),e.isMethod()&&(e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():kO.call(e)))},Property:function(e){e.isObjectProperty()||(e.skip(),e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():kO.call(e))}};function hw(e){return lw([yw,e])}var bw=Object.freeze({__proto__:null,environmentVisitor:hw,explode:iw,isExplodedVisitor:ow,merge:lw,verify:dw}),vw=_y,xw={ReferencedIdentifier:function(e,t){var r=e.node;r.name===t.oldName&&(r.name=t.newName)},Scope:function(e,t){e.scope.bindingIdentifierEquals(t.oldName,t.binding.identifier)||(e.skip(),e.isMethod()&&(e.requeueComputedKeyAndDecorators?e.requeueComputedKeyAndDecorators():kO.call(e)),e.isSwitchStatement()&&e.context.maybeQueue(e.get("discriminant")))},ObjectProperty:function(e,t){var r,a=e.node,n=e.scope,s=a.key.name;!a.shorthand||s!==t.oldName&&s!==t.newName||n.getBindingIdentifier(s)!==t.binding.identifier||(a.shorthand=!1,null!=(r=a.extra)&&r.shorthand&&(a.extra.shorthand=!1))},"AssignmentExpression|Declaration|VariableDeclarator":function(e,t){if(!e.isVariableDeclaration()){var r=e.isAssignmentExpression()?vw(e.node):e.getOuterBindingIdentifiers();for(var a in r)a===t.oldName&&(r[a].name=t.newName)}}},Rw=function(){function e(e,t,r){this.newName=r,this.oldName=t,this.binding=e}var t=e.prototype;return t.maybeConvertFromExportDeclaration=function(e){var t=e.parentPath;if(t.isExportDeclaration()){if(t.isExportDefaultDeclaration()){var r=t.node.declaration;if(ir(r)&&!r.id)return}t.isExportAllDeclaration()||t.splitExportDeclaration()}},t.maybeConvertFromClassFunctionDeclaration=function(e){return e},t.maybeConvertFromClassFunctionExpression=function(e){return e},t.rename=function(){var e=this.binding,t=this.oldName,r=this.newName,a=e.scope,n=e.path,s=n.find(function(e){return e.isDeclaration()||e.isFunctionExpression()||e.isClassExpression()});s&&(s.getOuterBindingIdentifiers()[t]===e.identifier&&this.maybeConvertFromExportDeclaration(s));var o=arguments[0]||a.block,i={discriminant:!0};cr(o)&&(o.computed&&(i.key=!0),ve(o)||(i.decorators=!0)),iO(o,iw(xw),a,this,a.path,i),arguments[0]||(a.removeOwnBinding(t),a.bindings[r]=e,this.binding.identifier.name=r),s&&(this.maybeConvertFromClassFunctionDeclaration(n),this.maybeConvertFromClassFunctionExpression(n))},o(e)}(),jw=function(){function e(e){var t=e.identifier,r=e.scope,a=e.path,n=e.kind;this.identifier=void 0,this.scope=void 0,this.path=void 0,this.kind=void 0,this.constantViolations=[],this.constant=!0,this.referencePaths=[],this.referenced=!1,this.references=0,this.identifier=t,this.scope=r,this.path=a,this.kind=n,"var"!==n&&"hoisted"!==n||!function(e){for(var t=!e.isVariableDeclarator()||e.node.init,r=e.parentPath,a=e.key;r;r=(n=r).parentPath,a=n.key,n){var n;if(r.isFunctionParent())return!1;if("left"===a&&r.isForXStatement()||t&&"body"===a&&r.isLoop())return!0}return!1}(a)||this.reassign(a),this.clearValue()}var t=e.prototype;return t.deoptValue=function(){this.clearValue(),this.hasDeoptedValue=!0},t.setValue=function(e){this.hasDeoptedValue||(this.hasValue=!0,this.value=e)},t.clearValue=function(){this.hasDeoptedValue=!1,this.hasValue=!1,this.value=null},t.reassign=function(e){this.constant=!1,this.constantViolations.includes(e)||this.constantViolations.push(e)},t.reference=function(e){this.referencePaths.includes(e)||(this.referenced=!0,this.references++,this.referencePaths.push(e))},t.dereference=function(){this.references--,this.referenced=!!this.references},o(e)}();var ww=["AggregateError","Array","ArrayBuffer","Atomics","BigInt","BigInt64Array","BigUint64Array","Boolean","DataView","Date","Error","EvalError","FinalizationRegistry","Float16Array","Float32Array","Float64Array","Function","Infinity","Int16Array","Int32Array","Int8Array","Intl","Iterator","JSON","Map","Math","NaN","Number","Object","Promise","Proxy","RangeError","ReferenceError","Reflect","RegExp","Set","SharedArrayBuffer","String","Symbol","SyntaxError","TypeError","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray","URIError","WeakMap","WeakRef","WeakSet"],Ew=new WeakMap,Sw=new WeakMap;function Tw(){Ew=new WeakMap}function Pw(){Sw=new WeakMap}function Aw(e){var t=e.parent;return e.parentPath,Ew.get(t)}function kw(e,t){var r=Ew.get(e);return r||Ew.set(e,r=new Map),r}var Cw=Object.freeze({__proto__:null,clear:function(){Tw(),Pw()},clearPath:Tw,clearScope:Pw,getCachedPaths:Aw,getOrCreateCachedPaths:kw,get path(){return Ew},get scope(){return Sw}}),_w=is,Iw=gs,Dw=sm,Ow=Iy,Nw=Ps,Bw=Y,Mw=Qt,Fw=Z,Lw=pr,Uw=De,qw=Ne,Gw=Be,Ww=Me,Vw=Fe,Hw=se,zw=ie,Kw=qe,Xw=dr,Jw=me,Yw=cr,$w=mr,Qw=pe,Zw=be,eE=lr,tE=or,rE=ge,aE=Je,nE=Ye,sE=$e,oE=Se,iE=Te,dE=Ae,cE=Rs,lE=Er,uE=Bs,pE=_s,fE=my,gE=Zs,mE=eo,yE=xe,hE=Bt,bE=He,vE=it,xE=gr,RE=tm,jE=Vs;function wE(e,t){switch(null==e?void 0:e.type){default:var r;if(Kw(e)||xE(e))if((Gw(e)||Vw(e)||Kw(e))&&e.source)wE(e.source,t);else if((Vw(e)||Kw(e))&&null!=(r=e.specifiers)&&r.length)for(var a,n=i(e.specifiers);!(a=n()).done;){wE(a.value,t)}else(Ww(e)||Vw(e))&&e.declaration&&wE(e.declaration,t);else $w(e)?wE(e.local,t):!Xw(e)||Qw(e)||rE(e)||sE(e)||t.push(e.value);break;case"MemberExpression":case"OptionalMemberExpression":case"JSXMemberExpression":wE(e.object,t),wE(e.property,t);break;case"Identifier":case"JSXIdentifier":t.push(e.name);break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":wE(e.callee,t);break;case"ObjectExpression":case"ObjectPattern":for(var s,o=i(e.properties);!(s=o()).done;){wE(s.value,t)}break;case"SpreadElement":case"RestElement":case"UnaryExpression":case"UpdateExpression":wE(e.argument,t);break;case"ObjectProperty":case"ObjectMethod":case"ClassProperty":case"ClassMethod":case"ClassPrivateProperty":case"ClassPrivateMethod":wE(e.key,t);break;case"ThisExpression":t.push("this");break;case"Super":t.push("super");break;case"Import":case"ImportExpression":t.push("import");break;case"DoExpression":t.push("do");break;case"YieldExpression":t.push("yield"),wE(e.argument,t);break;case"AwaitExpression":t.push("await"),wE(e.argument,t);break;case"AssignmentExpression":wE(e.left,t);break;case"VariableDeclarator":case"FunctionExpression":case"FunctionDeclaration":case"ClassExpression":case"ClassDeclaration":case"PrivateName":wE(e.id,t);break;case"ParenthesizedExpression":wE(e.expression,t);break;case"MetaProperty":wE(e.meta,t),wE(e.property,t);break;case"JSXElement":wE(e.openingElement,t);break;case"JSXOpeningElement":wE(e.name,t);break;case"JSXFragment":wE(e.openingFragment,t);break;case"JSXOpeningFragment":t.push("Fragment");break;case"JSXNamespacedName":wE(e.namespace,t),wE(e.name,t)}}function EE(e){e.references=Object.create(null),e.uids=Object.create(null),e.bindings=Object.create(null),e.globals=Object.create(null)}var SE,TE=Symbol.for("should not be considered a local binding"),PE={ForStatement:function(e){var t=e.get("init");if(t.isVar()){var r=e.scope;(r.getFunctionParent()||r.getProgramParent()).registerBinding("var",t)}},Declaration:function(e){e.isBlockScoped()||(e.isImportDeclaration()||e.isExportDeclaration()||(e.scope.getFunctionParent()||e.scope.getProgramParent()).registerDeclaration(e))},ImportDeclaration:function(e){e.scope.getBlockParent().registerDeclaration(e)},TSImportEqualsDeclaration:function(e){e.scope.getBlockParent().registerDeclaration(e)},ReferencedIdentifier:function(e,t){Ft(e.parent)&&e.parent.right===e.node||e.parentPath.isTSImportEqualsDeclaration()||t.references.push(e)},ForXStatement:function(e,t){var r=e.get("left");if(r.isPattern()||r.isIdentifier())t.constantViolations.push(e);else if(r.isVar()){var a=e.scope;(a.getFunctionParent()||a.getProgramParent()).registerBinding("var",r)}},ExportDeclaration:{exit:function(e){var t=e.node,r=e.scope;if(!Gw(t)){var a=t.declaration;if(qw(a)||Hw(a)){var n=a.id;if(!n)return;var s=r.getBinding(n.name);null==s||s.reference(e)}else if(dE(a))for(var o,d=i(a.declarations);!(o=d()).done;)for(var c=o.value,l=0,u=Object.keys(Ow(c));l<u.length;l++){var p=u[l],f=r.getBinding(p);null==f||f.reference(e)}}}},LabeledStatement:function(e){e.scope.getBlockParent().registerDeclaration(e)},AssignmentExpression:function(e,t){t.assignments.push(e)},UpdateExpression:function(e,t){t.constantViolations.push(e)},UnaryExpression:function(e,t){"delete"===e.node.operator&&t.constantViolations.push(e)},BlockScoped:function(e){var t=e.scope;if(t.path===e&&(t=t.parent),t.getBlockParent().registerDeclaration(e),e.isClassDeclaration()&&e.node.id){var r=e.node.id.name;e.scope.bindings[r]=e.scope.parent.getBinding(r)}},CatchClause:function(e){e.scope.registerBinding("let",e)},Function:function(e){for(var t,r=i(e.get("params"));!(t=r()).done;){var a=t.value;e.scope.registerBinding("param",a)}e.isFunctionExpression()&&e.node.id&&!e.node.id[TE]&&e.scope.registerBinding("local",e.get("id"),e)},ClassExpression:function(e){e.node.id&&!e.node.id[TE]&&e.scope.registerBinding("local",e.get("id"),e)},TSTypeAnnotation:function(e){e.skip()}},AE=0,kE=function(){function e(e){this.uid=void 0,this.path=void 0,this.block=void 0,this.inited=void 0,this.labels=void 0,this.bindings=void 0,this.referencesSet=void 0,this.globals=void 0,this.uidsSet=void 0,this.data=void 0,this.crawling=void 0;var t=e.node,r=Sw.get(t);if((null==r?void 0:r.path)===e)return r;Sw.set(t,this),this.uid=AE++,this.block=t,this.path=e,this.labels=new Map,this.inited=!1,Object.defineProperties(this,{references:{enumerable:!0,configurable:!0,writable:!0,value:Object.create(null)},uids:{enumerable:!0,configurable:!0,writable:!0,value:Object.create(null)}})}var t=e.prototype;return t.generateDeclaredUidIdentifier=function(e){var t=this.generateUidIdentifier(e);return this.push({id:t}),Dw(t)},t.generateUidIdentifier=function(e){return Nw(this.generateUid(e))},t.generateUid=function(e){var t;void 0===e&&(e="temp"),e=fE(e).replace(/^_+/,"").replace(/\d+$/g,"");var r=0;do{t="_"+e,r>=11?t+=r-1:r>=9?t+=r-9:r>=1&&(t+=r+1),r++}while(this.hasLabel(t)||this.hasBinding(t)||this.hasGlobal(t)||this.hasReference(t));var a=this.getProgramParent();return a.references[t]=!0,a.uids[t]=!0,t},t.generateUidBasedOnNode=function(e,t){var r=[];wE(e,r);var a=r.join("$");return a=a.replace(/^_/,"")||t||"ref",this.generateUid(a.slice(0,20))},t.generateUidIdentifierBasedOnNode=function(e,t){return Nw(this.generateUidBasedOnNode(e,t))},t.isStatic=function(e){if(oE(e)||aE(e)||hE(e))return!0;if(zw(e)){var t=this.getBinding(e.name);return t?t.constant:this.hasBinding(e.name)}return!1},t.maybeGenerateMemoised=function(e,t){if(this.isStatic(e))return null;var r=this.generateUidIdentifierBasedOnNode(e);return t?r:(this.push({id:r}),Dw(r))},t.checkBlockScopedCollisions=function(e,t,r,a){if("param"!==t&&("local"!==e.kind&&("let"===t||"let"===e.kind||"const"===e.kind||"module"===e.kind||"param"===e.kind&&"const"===t)))throw this.path.hub.buildError(a,'Duplicate declaration "'+r+'"',TypeError)},t.rename=function(e,t){var r=this.getBinding(e);r&&(t||(t=this.generateUidIdentifier(e).name),new Rw(r,e,t).rename(arguments[2]))},t.dump=function(){var e="-".repeat(60);console.log(e);var t=this;do{console.log("#",t.block.type);for(var r=0,a=Object.keys(t.bindings);r<a.length;r++){var n=a[r],s=t.bindings[n];console.log(" -",n,{constant:s.constant,references:s.references,violations:s.constantViolations.length,kind:s.kind})}}while(t=t.parent);console.log(e)},t.hasLabel=function(e){return!!this.getLabel(e)},t.getLabel=function(e){return this.labels.get(e)},t.registerLabel=function(e){this.labels.set(e.node.label.name,e)},t.registerDeclaration=function(e){if(e.isLabeledStatement())this.registerLabel(e);else if(e.isFunctionDeclaration())this.registerBinding("hoisted",e.get("id"),e);else if(e.isVariableDeclaration())for(var t,r=e.get("declarations"),a=e.node.kind,n=i(r);!(t=n()).done;){var s=t.value;this.registerBinding("using"===a||"await using"===a?"const":a,s)}else if(e.isClassDeclaration()){if(e.node.declare)return;this.registerBinding("let",e)}else if(e.isImportDeclaration())for(var o,d="type"===e.node.importKind||"typeof"===e.node.importKind,c=i(e.get("specifiers"));!(o=c()).done;){var l=o.value,u=d||l.isImportSpecifier()&&("type"===l.node.importKind||"typeof"===l.node.importKind);this.registerBinding(u?"unknown":"module",l)}else if(e.isExportDeclaration()){var p=e.get("declaration");(p.isClassDeclaration()||p.isFunctionDeclaration()||p.isVariableDeclaration())&&this.registerDeclaration(p)}else this.registerBinding("unknown",e)},t.buildUndefinedNode=function(){return RE()},t.registerConstantViolation=function(e){for(var t=e.getAssignmentIdentifiers(),r=0,a=Object.keys(t);r<a.length;r++){var n,s=a[r];null==(n=this.getBinding(s))||n.reassign(e)}},t.registerBinding=function(e,t,r){if(void 0===r&&(r=t),!e)throw new ReferenceError("no `kind`");if(t.isVariableDeclaration())for(var a,n=i(t.get("declarations"));!(a=n()).done;){var s=a.value;this.registerBinding(e,s)}else for(var o=this.getProgramParent(),d=t.getOuterBindingIdentifiers(!0),c=0,l=Object.keys(d);c<l.length;c++){var u=l[c];o.references[u]=!0;for(var p,f=i(d[u]);!(p=f()).done;){var g=p.value,m=this.getOwnBinding(u);if(m){if(m.identifier===g)continue;this.checkBlockScopedCollisions(m,e,u,g)}m?m.reassign(r):this.bindings[u]=new jw({identifier:g,scope:this,path:r,kind:e})}}},t.addGlobal=function(e){this.globals[e.name]=e},t.hasUid=function(e){var t=this;do{if(t.uids[e])return!0}while(t=t.parent);return!1},t.hasGlobal=function(e){var t=this;do{if(t.globals[e])return!0}while(t=t.parent);return!1},t.hasReference=function(e){return!!this.getProgramParent().references[e]},t.isPure=function(e,t){if(zw(e)){var r=this.getBinding(e.name);return!!r&&(!t||r.constant)}if(oE(e)||bE(e)||hE(e)||vE(e))return!0;var a,n,s;if(Lw(e))return!(e.superClass&&!this.isPure(e.superClass,t))&&(!((null==(a=e.decorators)?void 0:a.length)>0)&&this.isPure(e.body,t));if(Uw(e)){for(var o,d=i(e.body);!(o=d()).done;){var c=o.value;if(!this.isPure(c,t))return!1}return!0}if(Mw(e))return this.isPure(e.left,t)&&this.isPure(e.right,t);if(Bw(e)||"TupleExpression"===(null==e?void 0:e.type)){for(var l,u=i(e.elements);!(l=u()).done;){var p=l.value;if(null!==p&&!this.isPure(p,t))return!1}return!0}if(Zw(e)||"RecordExpression"===(null==e?void 0:e.type)){for(var f,g=i(e.properties);!(f=g()).done;){var m=f.value;if(!this.isPure(m,t))return!1}return!0}if(Yw(e))return!(e.computed&&!this.isPure(e.key,t))&&!((null==(n=e.decorators)?void 0:n.length)>0);if(eE(e))return!(e.computed&&!this.isPure(e.key,t))&&(!((null==(s=e.decorators)?void 0:s.length)>0)&&!((yE(e)||e.static)&&null!==e.value&&!this.isPure(e.value,t)));if(iE(e))return this.isPure(e.argument,t);if(sE(e)){for(var y,h=i(e.expressions);!(y=h()).done;){var b=y.value;if(!this.isPure(b,t))return!1}return!0}return nE(e)?lE(e.tag,"String.raw")&&!this.hasBinding("String",{noGlobals:!0})&&this.isPure(e.quasi,t):Jw(e)?!e.computed&&zw(e.object)&&"Symbol"===e.object.name&&zw(e.property)&&"for"!==e.property.name&&!this.hasBinding("Symbol",{noGlobals:!0}):Fw(e)?lE(e.callee,"Symbol.for")&&!this.hasBinding("Symbol",{noGlobals:!0})&&1===e.arguments.length&&le(e.arguments[0]):tE(e)},t.setData=function(e,t){return this.data[e]=t},t.getData=function(e){var t=this;do{var r=t.data[e];if(null!=r)return r}while(t=t.parent)},t.removeData=function(e){var t=this;do{null!=t.data[e]&&(t.data[e]=null)}while(t=t.parent)},t.init=function(){this.inited||(this.inited=!0,this.crawl())},t.crawl=function(){var e=this.path;EE(this),this.data=Object.create(null);var t=this;do{if(t.crawling)return;if(t.path.isProgram())break}while(t=t.parent);var r=t,a={references:[],constantViolations:[],assignments:[]};if(this.crawling=!0,SE||(SE=OO.visitors.merge([{Scope:function(e){EE(e.scope)}},PE])),"Program"!==e.type){var n=SE[e.type];if(n)for(var s,o=i(n.enter);!(s=o()).done;){s.value.call(a,e,a)}}e.traverse(SE,a),this.crawling=!1;for(var d,c=i(a.assignments);!(d=c()).done;){for(var l=d.value,u=l.getAssignmentIdentifiers(),p=0,f=Object.keys(u);p<f.length;p++){var g=f[p];l.scope.getBinding(g)||r.addGlobal(u[g])}l.scope.registerConstantViolation(l)}for(var m,y=i(a.references);!(m=y()).done;){var h=m.value,b=h.scope.getBinding(h.node.name);b?b.reference(h):r.addGlobal(h.node)}for(var v,x=i(a.constantViolations);!(v=x()).done;){var R=v.value;R.scope.registerConstantViolation(R)}},t.push=function(e){var t=this.path;t.isPattern()?t=this.getPatternParent().path:t.isBlockStatement()||t.isProgram()||(t=this.getBlockParent().path),t.isSwitchStatement()&&(t=(this.getFunctionParent()||this.getProgramParent()).path);var r=e.init,a=e.unique,n=e.kind,s=void 0===n?"var":n,o=e.id;if(!r&&!a&&("var"===s||"let"===s)&&function(e){return e.isFunctionExpression()&&!e.node.id||e.isArrowFunctionExpression()}(t)&&Fw(t.parent,{callee:t.node})&&t.parent.arguments.length<=t.node.params.length&&zw(o))return t.pushContainer("params",o),void t.scope.registerBinding("param",t.get("params")[t.node.params.length-1]);(t.isLoop()||t.isCatchClause()||t.isFunction())&&(t.ensureBlock(),t=t.get("body"));var i=null==e._blockHoist?2:e._blockHoist,d="declaration:"+s+":"+i,c=!a&&t.getData(d);if(!c){var l=gE(s,[]);l._blockHoist=i,c=y(t.unshiftContainer("body",[l]),1)[0],a||t.setData(d,c)}var u=mE(o,r),p=c.node.declarations.push(u);t.scope.registerBinding(s,c.get("declarations")[p-1])},t.getProgramParent=function(){var e=this;do{if(e.path.isProgram())return e}while(e=e.parent);throw new Error("Couldn't find a Program")},t.getFunctionParent=function(){var e=this;do{if(e.path.isFunctionParent())return e}while(e=e.parent);return null},t.getBlockParent=function(){var e=this;do{if(e.path.isBlockParent())return e}while(e=e.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")},t.getPatternParent=function(){var e=this;do{if(!e.path.isPattern())return e.getBlockParent()}while(e=e.parent.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")},t.getAllBindings=function(){var e=Object.create(null),t=this;do{for(var r=0,a=Object.keys(t.bindings);r<a.length;r++){var n=a[r];n in e==!1&&(e[n]=t.bindings[n])}t=t.parent}while(t);return e},t.bindingIdentifierEquals=function(e,t){return this.getBindingIdentifier(e)===t},t.getBinding=function(e){var t,r=this;do{var a,n=r.getOwnBinding(e);if(n){if(null==(a=t)||!a.isPattern()||"param"===n.kind||"local"===n.kind)return n}else if(!n&&"arguments"===e&&r.path.isFunction()&&!r.path.isArrowFunctionExpression())break;t=r.path}while(r=r.parent)},t.getOwnBinding=function(e){return this.bindings[e]},t.getBindingIdentifier=function(e){var t;return null==(t=this.getBinding(e))?void 0:t.identifier},t.getOwnBindingIdentifier=function(e){var t=this.bindings[e];return null==t?void 0:t.identifier},t.hasOwnBinding=function(e){return!!this.getOwnBinding(e)},t.hasBinding=function(t,r){if(!t)return!1;var a,n,s;"object"==typeof r?(a=r.noGlobals,n=r.noUids,s=r.upToScope):"boolean"==typeof r&&(a=r);var o=this;do{if(s===o)break;if(o.hasOwnBinding(t))return!0}while(o=o.parent);return!(n||!this.hasUid(t))||(!(a||!e.globals.includes(t))||!(a||!e.contextVariables.includes(t)))},t.parentHasBinding=function(e,t){var r;return null==(r=this.parent)?void 0:r.hasBinding(e,t)},t.moveBindingTo=function(e,t){var r=this.getBinding(e);r&&(r.scope.removeOwnBinding(e),r.scope=t,t.bindings[e]=r)},t.removeOwnBinding=function(e){delete this.bindings[e]},t.removeBinding=function(e){var t;null==(t=this.getBinding(e))||t.scope.removeOwnBinding(e);var r=this;do{r.uids[e]&&(r.uids[e]=!1)}while(r=r.parent)},t.hoistVariables=function(e){var t=this;void 0===e&&(e=function(e){return t.push({id:e})}),this.crawl();for(var r=new Set,a=0,n=Object.keys(this.bindings);a<n.length;a++){var s=n[a],o=this.bindings[s];if(o){var d=o.path;if(d.isVariableDeclarator()){var c=d.parent,l=d.parentPath;if("var"===c.kind&&!r.has(c)){r.add(d.parent);for(var u,p=void 0,f=[],g=i(c.declarations);!(u=g()).done;){var m=u.value;null!=p||(p=m.id),m.init&&f.push(_w("=",m.id,m.init));for(var y=0,h=Object.keys(Ow(m,!1,!0,!0));y<h.length;y++){var b=h[y];e(Nw(b),null!=m.init)}}if(l.parentPath.isForXStatement({left:c}))l.replaceWith(p);else if(0===f.length)l.remove();else{var v=1===f.length?f[0]:jE(f);l.parentPath.isForStatement({init:c})?l.replaceWith(v):l.replaceWith(cE(v))}}}}}},o(e,[{key:"parent",get:function(){var e,t,r=this.path;do{var a,n="key"===r.key||"decorators"===r.listKey;r=r.parentPath,n&&r.isMethod()&&(r=r.parentPath),null!=(a=r)&&a.isScope()&&(t=r)}while(r&&!t);return null==(e=t)?void 0:e.scope}},{key:"references",get:function(){throw new Error("Scope#references is not available in Babel 8. Use Scope#referencesSet instead.")}},{key:"uids",get:function(){throw new Error("Scope#uids is not available in Babel 8. Use Scope#uidsSet instead.")}}])}();kE.globals=[].concat(b(["decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","eval","globalThis","isFinite","isNaN","parseFloat","parseInt","undefined","unescape"]),b(ww)),kE.contextVariables=["arguments","undefined","Infinity","NaN"],kE.prototype._renameFromMap=function(e,t,r,a){e[t]&&(e[r]=a,e[t]=null)},kE.prototype.traverse=function(e,t,r){OO(e,t,this,r,this.path)},kE.prototype._generateUid=function(e,t){var r=e;return t>1&&(r+=t),"_"+r},kE.prototype.toArray=function(e,t,r){if(zw(e)){var a=this.getBinding(e.name);if(null!=a&&a.constant&&a.path.isGenericType("Array"))return e}if(Bw(e))return e;if(zw(e,{name:"arguments"}))return Iw(uE(uE(uE(Nw("Array"),Nw("prototype")),Nw("slice")),Nw("call")),[e]);var n,s=[e];return!0===t?n="toConsumableArray":"number"==typeof t?(s.push(pE(t)),n="slicedToArray"):n="toArray",r&&(s.unshift(this.path.hub.addHelper(n)),n="maybeArrayLike"),Iw(this.path.hub.addHelper(n),s)},kE.prototype.getAllBindingsOfKind=function(){for(var e=Object.create(null),t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];for(var n=0,s=r;n<s.length;n++){var o=s[n],i=this;do{for(var d=0,c=Object.keys(i.bindings);d<c.length;d++){var l=c[d],u=i.bindings[l];u.kind===o&&(e[l]=u)}i=i.parent}while(i)}return e},Object.defineProperties(kE.prototype,{parentBlock:{configurable:!0,enumerable:!0,get:function(){return this.path.parent}},hub:{configurable:!0,enumerable:!0,get:function(){return this.path.hub}}});var CE=[],_E=[],IE="undefined"!=typeof Uint8Array?Uint8Array:Array,DE=!1;function OE(){DE=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;t<64;++t)CE[t]=e[t],_E[e.charCodeAt(t)]=t;_E["-".charCodeAt(0)]=62,_E["_".charCodeAt(0)]=63}function NE(e){return CE[e>>18&63]+CE[e>>12&63]+CE[e>>6&63]+CE[63&e]}function BE(e,t,r){for(var a,n=[],s=t;s<r;s+=3)a=(e[s]<<16)+(e[s+1]<<8)+e[s+2],n.push(NE(a));return n.join("")}function ME(e){var t;DE||OE();for(var r=e.length,a=r%3,n="",s=[],o=16383,i=0,d=r-a;i<d;i+=o)s.push(BE(e,i,i+o>d?d:i+o));return 1===a?(t=e[r-1],n+=CE[t>>2],n+=CE[t<<4&63],n+="=="):2===a&&(t=(e[r-2]<<8)+e[r-1],n+=CE[t>>10],n+=CE[t>>4&63],n+=CE[t<<2&63],n+="="),s.push(n),s.join("")}function FE(e,t,r,a,n){var s,o,i=8*n-a-1,d=(1<<i)-1,c=d>>1,l=-7,u=r?n-1:0,p=r?-1:1,f=e[t+u];for(u+=p,s=f&(1<<-l)-1,f>>=-l,l+=i;l>0;s=256*s+e[t+u],u+=p,l-=8);for(o=s&(1<<-l)-1,s>>=-l,l+=a;l>0;o=256*o+e[t+u],u+=p,l-=8);if(0===s)s=1-c;else{if(s===d)return o?NaN:1/0*(f?-1:1);o+=Math.pow(2,a),s-=c}return(f?-1:1)*o*Math.pow(2,s-a)}function LE(e,t,r,a,n,s){var o,i,d,c=8*s-n-1,l=(1<<c)-1,u=l>>1,p=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,f=a?0:s-1,g=a?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(i=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(d=Math.pow(2,-o))<1&&(o--,d*=2),(t+=o+u>=1?p/d:p*Math.pow(2,1-u))*d>=2&&(o++,d/=2),o+u>=l?(i=0,o=l):o+u>=1?(i=(t*d-1)*Math.pow(2,n),o+=u):(i=t*Math.pow(2,u-1)*Math.pow(2,n),o=0));n>=8;e[r+f]=255&i,f+=g,i/=256,n-=8);for(o=o<<n|i,c+=n;c>0;e[r+f]=255&o,f+=g,o/=256,c-=8);e[r+f-g]|=128*m}var UE={}.toString,qE=Array.isArray||function(e){return"[object Array]"==UE.call(e)};function GE(){return VE.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function WE(e,t){if(GE()<t)throw new RangeError("Invalid typed array length");return VE.TYPED_ARRAY_SUPPORT?(e=new Uint8Array(t)).__proto__=VE.prototype:(null===e&&(e=new VE(t)),e.length=t),e}function VE(e,t,r){if(!(VE.TYPED_ARRAY_SUPPORT||this instanceof VE))return new VE(e,t,r);if("number"==typeof e){if("string"==typeof t)throw new Error("If encoding is specified then the first argument must be a string");return KE(this,e)}return HE(this,e,t,r)}function HE(e,t,r,a){if("number"==typeof t)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer?function(e,t,r,a){if(t.byteLength,r<0||t.byteLength<r)throw new RangeError("'offset' is out of bounds");if(t.byteLength<r+(a||0))throw new RangeError("'length' is out of bounds");t=void 0===r&&void 0===a?new Uint8Array(t):void 0===a?new Uint8Array(t,r):new Uint8Array(t,r,a);VE.TYPED_ARRAY_SUPPORT?(e=t).__proto__=VE.prototype:e=XE(e,t);return e}(e,t,r,a):"string"==typeof t?function(e,t,r){"string"==typeof r&&""!==r||(r="utf8");if(!VE.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var a=0|$E(t,r);e=WE(e,a);var n=e.write(t,r);n!==a&&(e=e.slice(0,n));return e}(e,t,r):function(e,t){if(YE(t)){var r=0|JE(t.length);return 0===(e=WE(e,r)).length||t.copy(e,0,0,r),e}if(t){if("undefined"!=typeof ArrayBuffer&&t.buffer instanceof ArrayBuffer||"length"in t)return"number"!=typeof t.length||(a=t.length)!=a?WE(e,0):XE(e,t);if("Buffer"===t.type&&qE(t.data))return XE(e,t.data)}var a;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(e,t)}function zE(e){if("number"!=typeof e)throw new TypeError('"size" argument must be a number');if(e<0)throw new RangeError('"size" argument must not be negative')}function KE(e,t){if(zE(t),e=WE(e,t<0?0:0|JE(t)),!VE.TYPED_ARRAY_SUPPORT)for(var r=0;r<t;++r)e[r]=0;return e}function XE(e,t){var r=t.length<0?0:0|JE(t.length);e=WE(e,r);for(var a=0;a<r;a+=1)e[a]=255&t[a];return e}function JE(e){if(e>=GE())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+GE().toString(16)+" bytes");return 0|e}function YE(e){return!(null==e||!e._isBuffer)}function $E(e,t){if(YE(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var r=e.length;if(0===r)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return ES(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return SS(e).length;default:if(a)return ES(e).length;t=(""+t).toLowerCase(),a=!0}}function QE(e,t,r){var a=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return fS(this,t,r);case"utf8":case"utf-8":return cS(this,t,r);case"ascii":return uS(this,t,r);case"latin1":case"binary":return pS(this,t,r);case"base64":return dS(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return gS(this,t,r);default:if(a)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),a=!0}}function ZE(e,t,r){var a=e[t];e[t]=e[r],e[r]=a}function eS(e,t,r,a,n){if(0===e.length)return-1;if("string"==typeof r?(a=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=n?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(n)return-1;r=e.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof t&&(t=VE.from(t,a)),YE(t))return 0===t.length?-1:tS(e,t,r,a,n);if("number"==typeof t)return t&=255,VE.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):tS(e,[t],r,a,n);throw new TypeError("val must be string, number or Buffer")}function tS(e,t,r,a,n){var s,o=1,i=e.length,d=t.length;if(void 0!==a&&("ucs2"===(a=String(a).toLowerCase())||"ucs-2"===a||"utf16le"===a||"utf-16le"===a)){if(e.length<2||t.length<2)return-1;o=2,i/=2,d/=2,r/=2}function c(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(n){var l=-1;for(s=r;s<i;s++)if(c(e,s)===c(t,-1===l?0:s-l)){if(-1===l&&(l=s),s-l+1===d)return l*o}else-1!==l&&(s-=s-l),l=-1}else for(r+d>i&&(r=i-d),s=r;s>=0;s--){for(var u=!0,p=0;p<d;p++)if(c(e,s+p)!==c(t,p)){u=!1;break}if(u)return s}return-1}function rS(e,t,r,a){r=Number(r)||0;var n=e.length-r;a?(a=Number(a))>n&&(a=n):a=n;var s=t.length;if(s%2!=0)throw new TypeError("Invalid hex string");a>s/2&&(a=s/2);for(var o=0;o<a;++o){var i=parseInt(t.substr(2*o,2),16);if(isNaN(i))return o;e[r+o]=i}return o}function aS(e,t,r,a){return TS(ES(t,e.length-r),e,r,a)}function nS(e,t,r,a){return TS(function(e){for(var t=[],r=0;r<e.length;++r)t.push(255&e.charCodeAt(r));return t}(t),e,r,a)}function sS(e,t,r,a){return nS(e,t,r,a)}function oS(e,t,r,a){return TS(SS(t),e,r,a)}function iS(e,t,r,a){return TS(function(e,t){for(var r,a,n,s=[],o=0;o<e.length&&!((t-=2)<0);++o)a=(r=e.charCodeAt(o))>>8,n=r%256,s.push(n),s.push(a);return s}(t,e.length-r),e,r,a)}function dS(e,t,r){return 0===t&&r===e.length?ME(e):ME(e.slice(t,r))}function cS(e,t,r){r=Math.min(e.length,r);for(var a=[],n=t;n<r;){var s,o,i,d,c=e[n],l=null,u=c>239?4:c>223?3:c>191?2:1;if(n+u<=r)switch(u){case 1:c<128&&(l=c);break;case 2:128==(192&(s=e[n+1]))&&(d=(31&c)<<6|63&s)>127&&(l=d);break;case 3:s=e[n+1],o=e[n+2],128==(192&s)&&128==(192&o)&&(d=(15&c)<<12|(63&s)<<6|63&o)>2047&&(d<55296||d>57343)&&(l=d);break;case 4:s=e[n+1],o=e[n+2],i=e[n+3],128==(192&s)&&128==(192&o)&&128==(192&i)&&(d=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&i)>65535&&d<1114112&&(l=d)}null===l?(l=65533,u=1):l>65535&&(l-=65536,a.push(l>>>10&1023|55296),l=56320|1023&l),a.push(l),n+=u}return function(e){var t=e.length;if(t<=lS)return String.fromCharCode.apply(String,e);var r="",a=0;for(;a<t;)r+=String.fromCharCode.apply(String,e.slice(a,a+=lS));return r}(a)}VE.TYPED_ARRAY_SUPPORT=void 0===j.TYPED_ARRAY_SUPPORT||j.TYPED_ARRAY_SUPPORT,GE(),VE.poolSize=8192,VE._augment=function(e){return e.__proto__=VE.prototype,e},VE.from=function(e,t,r){return HE(null,e,t,r)},VE.TYPED_ARRAY_SUPPORT&&(VE.prototype.__proto__=Uint8Array.prototype,VE.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&VE[Symbol.species]),VE.alloc=function(e,t,r){return function(e,t,r,a){return zE(t),t<=0?WE(e,t):void 0!==r?"string"==typeof a?WE(e,t).fill(r,a):WE(e,t).fill(r):WE(e,t)}(null,e,t,r)},VE.allocUnsafe=function(e){return KE(null,e)},VE.allocUnsafeSlow=function(e){return KE(null,e)},VE.isBuffer=PS,VE.compare=function(e,t){if(!YE(e)||!YE(t))throw new TypeError("Arguments must be Buffers");if(e===t)return 0;for(var r=e.length,a=t.length,n=0,s=Math.min(r,a);n<s;++n)if(e[n]!==t[n]){r=e[n],a=t[n];break}return r<a?-1:a<r?1:0},VE.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},VE.concat=function(e,t){if(!qE(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return VE.alloc(0);var r;if(void 0===t)for(t=0,r=0;r<e.length;++r)t+=e[r].length;var a=VE.allocUnsafe(t),n=0;for(r=0;r<e.length;++r){var s=e[r];if(!YE(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(a,n),n+=s.length}return a},VE.byteLength=$E,VE.prototype._isBuffer=!0,VE.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)ZE(this,t,t+1);return this},VE.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)ZE(this,t,t+3),ZE(this,t+1,t+2);return this},VE.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)ZE(this,t,t+7),ZE(this,t+1,t+6),ZE(this,t+2,t+5),ZE(this,t+3,t+4);return this},VE.prototype.toString=function(){var e=0|this.length;return 0===e?"":0===arguments.length?cS(this,0,e):QE.apply(this,arguments)},VE.prototype.equals=function(e){if(!YE(e))throw new TypeError("Argument must be a Buffer");return this===e||0===VE.compare(this,e)},VE.prototype.inspect=function(){var e="";return this.length>0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),"<Buffer "+e+">"},VE.prototype.compare=function(e,t,r,a,n){if(!YE(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===a&&(a=0),void 0===n&&(n=this.length),t<0||r>e.length||a<0||n>this.length)throw new RangeError("out of range index");if(a>=n&&t>=r)return 0;if(a>=n)return-1;if(t>=r)return 1;if(this===e)return 0;for(var s=(n>>>=0)-(a>>>=0),o=(r>>>=0)-(t>>>=0),i=Math.min(s,o),d=this.slice(a,n),c=e.slice(t,r),l=0;l<i;++l)if(d[l]!==c[l]){s=d[l],o=c[l];break}return s<o?-1:o<s?1:0},VE.prototype.includes=function(e,t,r){return-1!==this.indexOf(e,t,r)},VE.prototype.indexOf=function(e,t,r){return eS(this,e,t,r,!0)},VE.prototype.lastIndexOf=function(e,t,r){return eS(this,e,t,r,!1)},VE.prototype.write=function(e,t,r,a){if(void 0===t)a="utf8",r=this.length,t=0;else if(void 0===r&&"string"==typeof t)a=t,r=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t|=0,isFinite(r)?(r|=0,void 0===a&&(a="utf8")):(a=r,r=void 0)}var n=this.length-t;if((void 0===r||r>n)&&(r=n),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");a||(a="utf8");for(var s=!1;;)switch(a){case"hex":return rS(this,e,t,r);case"utf8":case"utf-8":return aS(this,e,t,r);case"ascii":return nS(this,e,t,r);case"latin1":case"binary":return sS(this,e,t,r);case"base64":return oS(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return iS(this,e,t,r);default:if(s)throw new TypeError("Unknown encoding: "+a);a=(""+a).toLowerCase(),s=!0}},VE.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var lS=4096;function uS(e,t,r){var a="";r=Math.min(e.length,r);for(var n=t;n<r;++n)a+=String.fromCharCode(127&e[n]);return a}function pS(e,t,r){var a="";r=Math.min(e.length,r);for(var n=t;n<r;++n)a+=String.fromCharCode(e[n]);return a}function fS(e,t,r){var a=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>a)&&(r=a);for(var n="",s=t;s<r;++s)n+=wS(e[s]);return n}function gS(e,t,r){for(var a=e.slice(t,r),n="",s=0;s<a.length;s+=2)n+=String.fromCharCode(a[s]+256*a[s+1]);return n}function mS(e,t,r){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}function yS(e,t,r,a,n,s){if(!YE(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>n||t<s)throw new RangeError('"value" argument is out of bounds');if(r+a>e.length)throw new RangeError("Index out of range")}function hS(e,t,r,a){t<0&&(t=65535+t+1);for(var n=0,s=Math.min(e.length-r,2);n<s;++n)e[r+n]=(t&255<<8*(a?n:1-n))>>>8*(a?n:1-n)}function bS(e,t,r,a){t<0&&(t=4294967295+t+1);for(var n=0,s=Math.min(e.length-r,4);n<s;++n)e[r+n]=t>>>8*(a?n:3-n)&255}function vS(e,t,r,a,n,s){if(r+a>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function xS(e,t,r,a,n){return n||vS(e,0,r,4),LE(e,t,r,a,23,4),r+4}function RS(e,t,r,a,n){return n||vS(e,0,r,8),LE(e,t,r,a,52,8),r+8}VE.prototype.slice=function(e,t){var r,a=this.length;if((e=~~e)<0?(e+=a)<0&&(e=0):e>a&&(e=a),(t=void 0===t?a:~~t)<0?(t+=a)<0&&(t=0):t>a&&(t=a),t<e&&(t=e),VE.TYPED_ARRAY_SUPPORT)(r=this.subarray(e,t)).__proto__=VE.prototype;else{var n=t-e;r=new VE(n,void 0);for(var s=0;s<n;++s)r[s]=this[s+e]}return r},VE.prototype.readUIntLE=function(e,t,r){e|=0,t|=0,r||mS(e,t,this.length);for(var a=this[e],n=1,s=0;++s<t&&(n*=256);)a+=this[e+s]*n;return a},VE.prototype.readUIntBE=function(e,t,r){e|=0,t|=0,r||mS(e,t,this.length);for(var a=this[e+--t],n=1;t>0&&(n*=256);)a+=this[e+--t]*n;return a},VE.prototype.readUInt8=function(e,t){return t||mS(e,1,this.length),this[e]},VE.prototype.readUInt16LE=function(e,t){return t||mS(e,2,this.length),this[e]|this[e+1]<<8},VE.prototype.readUInt16BE=function(e,t){return t||mS(e,2,this.length),this[e]<<8|this[e+1]},VE.prototype.readUInt32LE=function(e,t){return t||mS(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},VE.prototype.readUInt32BE=function(e,t){return t||mS(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},VE.prototype.readIntLE=function(e,t,r){e|=0,t|=0,r||mS(e,t,this.length);for(var a=this[e],n=1,s=0;++s<t&&(n*=256);)a+=this[e+s]*n;return a>=(n*=128)&&(a-=Math.pow(2,8*t)),a},VE.prototype.readIntBE=function(e,t,r){e|=0,t|=0,r||mS(e,t,this.length);for(var a=t,n=1,s=this[e+--a];a>0&&(n*=256);)s+=this[e+--a]*n;return s>=(n*=128)&&(s-=Math.pow(2,8*t)),s},VE.prototype.readInt8=function(e,t){return t||mS(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},VE.prototype.readInt16LE=function(e,t){t||mS(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},VE.prototype.readInt16BE=function(e,t){t||mS(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},VE.prototype.readInt32LE=function(e,t){return t||mS(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},VE.prototype.readInt32BE=function(e,t){return t||mS(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},VE.prototype.readFloatLE=function(e,t){return t||mS(e,4,this.length),FE(this,e,!0,23,4)},VE.prototype.readFloatBE=function(e,t){return t||mS(e,4,this.length),FE(this,e,!1,23,4)},VE.prototype.readDoubleLE=function(e,t){return t||mS(e,8,this.length),FE(this,e,!0,52,8)},VE.prototype.readDoubleBE=function(e,t){return t||mS(e,8,this.length),FE(this,e,!1,52,8)},VE.prototype.writeUIntLE=function(e,t,r,a){(e=+e,t|=0,r|=0,a)||yS(this,e,t,r,Math.pow(2,8*r)-1,0);var n=1,s=0;for(this[t]=255&e;++s<r&&(n*=256);)this[t+s]=e/n&255;return t+r},VE.prototype.writeUIntBE=function(e,t,r,a){(e=+e,t|=0,r|=0,a)||yS(this,e,t,r,Math.pow(2,8*r)-1,0);var n=r-1,s=1;for(this[t+n]=255&e;--n>=0&&(s*=256);)this[t+n]=e/s&255;return t+r},VE.prototype.writeUInt8=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,1,255,0),VE.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},VE.prototype.writeUInt16LE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,2,65535,0),VE.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):hS(this,e,t,!0),t+2},VE.prototype.writeUInt16BE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,2,65535,0),VE.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):hS(this,e,t,!1),t+2},VE.prototype.writeUInt32LE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,4,4294967295,0),VE.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):bS(this,e,t,!0),t+4},VE.prototype.writeUInt32BE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,4,4294967295,0),VE.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):bS(this,e,t,!1),t+4},VE.prototype.writeIntLE=function(e,t,r,a){if(e=+e,t|=0,!a){var n=Math.pow(2,8*r-1);yS(this,e,t,r,n-1,-n)}var s=0,o=1,i=0;for(this[t]=255&e;++s<r&&(o*=256);)e<0&&0===i&&0!==this[t+s-1]&&(i=1),this[t+s]=(e/o|0)-i&255;return t+r},VE.prototype.writeIntBE=function(e,t,r,a){if(e=+e,t|=0,!a){var n=Math.pow(2,8*r-1);yS(this,e,t,r,n-1,-n)}var s=r-1,o=1,i=0;for(this[t+s]=255&e;--s>=0&&(o*=256);)e<0&&0===i&&0!==this[t+s+1]&&(i=1),this[t+s]=(e/o|0)-i&255;return t+r},VE.prototype.writeInt8=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,1,127,-128),VE.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},VE.prototype.writeInt16LE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,2,32767,-32768),VE.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):hS(this,e,t,!0),t+2},VE.prototype.writeInt16BE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,2,32767,-32768),VE.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):hS(this,e,t,!1),t+2},VE.prototype.writeInt32LE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,4,2147483647,-2147483648),VE.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):bS(this,e,t,!0),t+4},VE.prototype.writeInt32BE=function(e,t,r){return e=+e,t|=0,r||yS(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),VE.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):bS(this,e,t,!1),t+4},VE.prototype.writeFloatLE=function(e,t,r){return xS(this,e,t,!0,r)},VE.prototype.writeFloatBE=function(e,t,r){return xS(this,e,t,!1,r)},VE.prototype.writeDoubleLE=function(e,t,r){return RS(this,e,t,!0,r)},VE.prototype.writeDoubleBE=function(e,t,r){return RS(this,e,t,!1,r)},VE.prototype.copy=function(e,t,r,a){if(r||(r=0),a||0===a||(a=this.length),t>=e.length&&(t=e.length),t||(t=0),a>0&&a<r&&(a=r),a===r)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(a<0)throw new RangeError("sourceEnd out of bounds");a>this.length&&(a=this.length),e.length-t<a-r&&(a=e.length-t+r);var n,s=a-r;if(this===e&&r<t&&t<a)for(n=s-1;n>=0;--n)e[n+t]=this[n+r];else if(s<1e3||!VE.TYPED_ARRAY_SUPPORT)for(n=0;n<s;++n)e[n+t]=this[n+r];else Uint8Array.prototype.set.call(e,this.subarray(r,r+s),t);return s},VE.prototype.fill=function(e,t,r,a){if("string"==typeof e){if("string"==typeof t?(a=t,t=0,r=this.length):"string"==typeof r&&(a=r,r=this.length),1===e.length){var n=e.charCodeAt(0);n<256&&(e=n)}if(void 0!==a&&"string"!=typeof a)throw new TypeError("encoding must be a string");if("string"==typeof a&&!VE.isEncoding(a))throw new TypeError("Unknown encoding: "+a)}else"number"==typeof e&&(e&=255);if(t<0||this.length<t||this.length<r)throw new RangeError("Out of range index");if(r<=t)return this;var s;if(t>>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(s=t;s<r;++s)this[s]=e;else{var o=YE(e)?e:ES(new VE(e,a).toString()),i=o.length;for(s=0;s<r-t;++s)this[s+t]=o[s%i]}return this};var jS=/[^+\/0-9A-Za-z-_]/g;function wS(e){return e<16?"0"+e.toString(16):e.toString(16)}function ES(e,t){var r;t=t||1/0;for(var a=e.length,n=null,s=[],o=0;o<a;++o){if((r=e.charCodeAt(o))>55295&&r<57344){if(!n){if(r>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===a){(t-=3)>-1&&s.push(239,191,189);continue}n=r;continue}if(r<56320){(t-=3)>-1&&s.push(239,191,189),n=r;continue}r=65536+(n-55296<<10|r-56320)}else n&&(t-=3)>-1&&s.push(239,191,189);if(n=null,r<128){if((t-=1)<0)break;s.push(r)}else if(r<2048){if((t-=2)<0)break;s.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;s.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return s}function SS(e){return function(e){var t,r,a,n,s,o;DE||OE();var i=e.length;if(i%4>0)throw new Error("Invalid string. Length must be a multiple of 4");s="="===e[i-2]?2:"="===e[i-1]?1:0,o=new IE(3*i/4-s),a=s>0?i-4:i;var d=0;for(t=0,r=0;t<a;t+=4,r+=3)n=_E[e.charCodeAt(t)]<<18|_E[e.charCodeAt(t+1)]<<12|_E[e.charCodeAt(t+2)]<<6|_E[e.charCodeAt(t+3)],o[d++]=n>>16&255,o[d++]=n>>8&255,o[d++]=255&n;return 2===s?(n=_E[e.charCodeAt(t)]<<2|_E[e.charCodeAt(t+1)]>>4,o[d++]=255&n):1===s&&(n=_E[e.charCodeAt(t)]<<10|_E[e.charCodeAt(t+1)]<<4|_E[e.charCodeAt(t+2)]>>2,o[d++]=n>>8&255,o[d++]=255&n),o}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(jS,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function TS(e,t,r,a){for(var n=0;n<a&&!(n+r>=t.length||n>=e.length);++n)t[n+r]=e[n];return n}function PS(e){return null!=e&&(!!e._isBuffer||AS(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&AS(e.slice(0,0))}(e))}function AS(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}for(var kS=",".charCodeAt(0),CS=";".charCodeAt(0),_S="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",IS=new Uint8Array(64),DS=new Uint8Array(128),OS=0;OS<64;OS++){var NS=_S.charCodeAt(OS);IS[OS]=NS,DS[NS]=OS}function BS(e,t){var r=0,a=0,n=0;do{var s=e.next();r|=(31&(n=DS[s]))<<a,a+=5}while(32&n);var o=1&r;return r>>>=1,o&&(r=-2147483648|-r),t+r}function MS(e,t,r){var a=t-r;a=a<0?-a<<1|1:a<<1;do{var n=31&a;(a>>>=5)>0&&(n|=32),e.write(IS[n])}while(a>0);return t}function FS(e,t){return!(e.pos>=t)&&e.peek()!==kS}var LS="undefined"!=typeof TextDecoder?new TextDecoder:void 0!==VE?{decode:function(e){return VE.from(e.buffer,e.byteOffset,e.byteLength).toString()}}:{decode:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t}},US=function(){function e(){this.pos=0,this.out="",this.buffer=new Uint8Array(16384)}var t=e.prototype;return t.write=function(e){var t=this.buffer;t[this.pos++]=e,16384===this.pos&&(this.out+=LS.decode(t),this.pos=0)},t.flush=function(){var e=this.buffer,t=this.out,r=this.pos;return r>0?t+LS.decode(e.subarray(0,r)):t},o(e)}(),qS=function(){function e(e){this.pos=0,this.buffer=e}var t=e.prototype;return t.next=function(){return this.buffer.charCodeAt(this.pos++)},t.peek=function(){return this.buffer.charCodeAt(this.pos)},t.indexOf=function(e){var t=this.buffer,r=this.pos,a=t.indexOf(e,r);return-1===a?t.length:a},o(e)}();function GS(e){e.sort(WS)}function WS(e,t){return e[0]-t[0]}function VS(e){for(var t=new US,r=0,a=0,n=0,s=0,o=0;o<e.length;o++){var i=e[o];if(o>0&&t.write(CS),0!==i.length)for(var d=0,c=0;c<i.length;c++){var l=i[c];c>0&&t.write(kS),d=MS(t,l[0],d),1!==l.length&&(r=MS(t,l[1],r),a=MS(t,l[2],a),n=MS(t,l[3],n),4!==l.length&&(s=MS(t,l[4],s)))}}return t.flush()}var HS=/^[\w+.-]+:\/\//,zS=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,KS=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;function XS(e){return e.startsWith("/")}function JS(e){return/^[.?#]/.test(e)}function YS(e){var t=zS.exec(e);return $S(t[1],t[2]||"",t[3],t[4]||"",t[5]||"/",t[6]||"",t[7]||"")}function $S(e,t,r,a,n,s,o){return{scheme:e,user:t,host:r,port:a,path:n,query:s,hash:o,type:7}}function QS(e){if(function(e){return e.startsWith("//")}(e)){var t=YS("http:"+e);return t.scheme="",t.type=6,t}if(XS(e)){var r=YS("http://foo.com"+e);return r.scheme="",r.host="",r.type=5,r}if(function(e){return e.startsWith("file:")}(e))return function(e){var t=KS.exec(e),r=t[2];return $S("file:","",t[1]||"","",XS(r)?r:"/"+r,t[3]||"",t[4]||"")}(e);if(function(e){return HS.test(e)}(e))return YS(e);var a=YS("http://foo.com/"+e);return a.scheme="",a.host="",a.type=e?e.startsWith("?")?3:e.startsWith("#")?2:4:1,a}function ZS(e,t){for(var r=t<=4,a=e.path.split("/"),n=1,s=0,o=!1,i=1;i<a.length;i++){var d=a[i];d?(o=!1,"."!==d&&(".."!==d?(a[n++]=d,s++):s?(o=!0,s--,n--):r&&(a[n++]=d))):o=!0}for(var c="",l=1;l<n;l++)c+="/"+a[l];(!c||o&&!c.endsWith("/.."))&&(c+="/"),e.path=c}function eT(e,t){if(!e&&!t)return"";var r=QS(e),a=r.type;if(t&&7!==a){var n=QS(t),s=n.type;switch(a){case 1:r.hash=n.hash;case 2:r.query=n.query;case 3:case 4:!function(e,t){ZS(t,t.type),"/"===e.path?e.path=t.path:e.path=function(e){if(e.endsWith("/.."))return e;var t=e.lastIndexOf("/");return e.slice(0,t+1)}(t.path)+e.path}(r,n);case 5:r.user=n.user,r.host=n.host,r.port=n.port;case 6:r.scheme=n.scheme}s>a&&(a=s)}ZS(r,a);var o=r.query+r.hash;switch(a){case 2:case 3:return o;case 4:var i=r.path.slice(1);return i?JS(t||e)&&!JS(i)?"./"+i+o:i+o:o||".";case 5:return r.path+o;default:return r.scheme+"//"+r.user+r.host+r.port+r.path+o}}function tT(e,t){for(var r=t;r<e.length;r++)if(!rT(e[r]))return r;return e.length}function rT(e){for(var t=1;t<e.length;t++)if(e[t][0]<e[t-1][0])return!1;return!0}function aT(e,t){return t||(e=e.slice()),e.sort(nT)}function nT(e,t){return e[0]-t[0]}var sT=!1;function oT(e,t,r){for(var a=r+1;a<e.length&&e[a][0]===t;r=a++);return r}function iT(e,t,r){for(var a=r-1;a>=0&&e[a][0]===t;r=a--);return r}function dT(e,t,r,a){var n=r.lastKey,s=r.lastNeedle,o=r.lastIndex,i=0,d=e.length-1;if(a===n){if(t===s)return sT=-1!==o&&e[o][0]===t,o;t>=s?i=-1===o?0:o:d=o}return r.lastKey=a,r.lastNeedle=t,r.lastIndex=function(e,t,r,a){for(;r<=a;){var n=r+(a-r>>1),s=e[n][0]-t;if(0===s)return sT=!0,n;s<0?r=n+1:a=n-1}return sT=!1,r-1}(e,t,i,d)}var cT=o(function(e,t){var r="string"==typeof e;if(!r&&e._decodedMemo)return e;var a=function(e){return"string"==typeof e?JSON.parse(e):e}(e),n=a.version,s=a.file,o=a.names,i=a.sourceRoot,d=a.sources,c=a.sourcesContent;this.version=n,this.file=s,this.names=o||[],this.sourceRoot=i,this.sources=d,this.sourcesContent=c,this.ignoreList=a.ignoreList||a.x_google_ignoreList||void 0;var l=function(e,t){var r=function(e){if(!e)return"";var t=e.lastIndexOf("/");return e.slice(0,t+1)}(e),a=t?t+"/":"";return function(e){return eT(a+(e||""),r)}}(t,i);this.resolvedSources=d.map(l);var u=a.mappings;if("string"==typeof u)this._encoded=u,this._decoded=void 0;else{if(!Array.isArray(u))throw a.sections?new Error("TraceMap passed sectioned source map, please use FlattenMap export instead"):new Error("invalid source map: "+JSON.stringify(a));this._encoded=void 0,this._decoded=function(e,t){var r=tT(e,0);if(r===e.length)return e;t||(e=e.slice());for(var a=r;a<e.length;a=tT(e,a+1))e[a]=aT(e[a],t);return e}(u,r)}this._decodedMemo={lastKey:-1,lastNeedle:-1,lastIndex:-1},this._bySources=void 0,this._bySourceMemos=void 0});function lT(e){var t;return(t=e)._decoded||(t._decoded=function(e){var t=e.length,r=new qS(e),a=[],n=0,s=0,o=0,i=0,d=0;do{var c=r.indexOf(";"),l=[],u=!0,p=0;for(n=0;r.pos<c;){var f=void 0;(n=BS(r,n))<p&&(u=!1),p=n,FS(r,c)?(s=BS(r,s),o=BS(r,o),i=BS(r,i),f=FS(r,c)?[n,s,o,i,d=BS(r,d)]:[n,s,o,i]):f=[n],l.push(f),r.pos++}u||GS(l),a.push(l),r.pos=c+1}while(r.pos<=t);return a}(e._encoded))}function uT(e,t){var r=t.line,a=t.column,n=t.bias;if(--r<0)throw new Error("`line` must be greater than 0 (lines start at line 1)");if(a<0)throw new Error("`column` must be greater than or equal to 0 (columns start at column 0)");var s=lT(e);if(r>=s.length)return pT(null,null,null,null);var o=s[r],i=fT(o,e._decodedMemo,r,a,n||1);if(-1===i)return pT(null,null,null,null);var d=o[i];if(1===d.length)return pT(null,null,null,null);var c=e.names;return pT(e.resolvedSources[d[1]],d[2]+1,d[3],5===d.length?c[d[4]]:null)}function pT(e,t,r,a){return{source:e,line:t,column:r,name:a}}function fT(e,t,r,a,n){var s=dT(e,a,t,r);return sT?s=(-1===n?oT:iT)(e,a,s):-1===n&&s++,-1===s||s===e.length?-1:s}var gT=o(function(){this._indexes={__proto__:null},this.array=[]});function mT(e,t){var r=function(e,t){return e._indexes[t]}(e,t);if(void 0!==r)return r;var a=e,n=a.array,s=a._indexes,o=n.push(t);return s[t]=o-1}var yT=o(function(e){var t=void 0===e?{}:e,r=t.file,a=t.sourceRoot;this._names=new gT,this._sources=new gT,this._sourcesContent=[],this._mappings=[],this.file=r,this.sourceRoot=a,this._ignoreList=new gT});var hT=function(e,t,r,a,n,s,o,i){return wT(!0,e,t,r,a,n,s,o,i)},bT=function(e,t){return function(e,t,r){var a=r.generated,n=r.source,s=r.original,o=r.name,i=r.content;if(!n)return wT(e,t,a.line-1,a.column,null,null,null,null,null);return wT(e,t,a.line-1,a.column,n,s.line-1,s.column,o,i)}(!0,e,t)};function vT(e,t,r){var a=e,n=a._sources;a._sourcesContent[mT(n,t)]=r}function xT(e,t,r){var a=e,n=a._sources,s=a._sourcesContent,o=a._ignoreList,i=mT(n,t);i===s.length&&(s[i]=null),mT(o,i)}function RT(e){var t=e,r=t._mappings,a=t._sources,n=t._sourcesContent,s=t._names,o=t._ignoreList;return function(e){for(var t=e.length,r=t,a=r-1;a>=0&&!(e[a].length>0);r=a,a--);r<t&&(e.length=r)}(r),{version:3,file:e.file||void 0,names:s.array,sourceRoot:e.sourceRoot||void 0,sources:a.array,sourcesContent:n,mappings:r,ignoreList:o.array}}function jT(e){var t=RT(e);return Object.assign({},t,{mappings:VS(t.mappings)})}function wT(e,t,r,a,n,s,o,i,d){var c=t,l=c._mappings,u=c._sources,p=c._sourcesContent,f=c._names,g=function(e,t){for(var r=e.length;r<=t;r++)e[r]=[];return e[t]}(l,r),m=function(e,t){for(var r=e.length,a=r-1;a>=0;r=a--){if(t>=e[a][0])break}return r}(g,a);if(!n){if(function(e,t){if(0===t)return!0;var r=e[t-1];return 1===r.length}(g,m))return;return ET(g,m,[a])}var y=mT(u,n),h=i?mT(f,i):-1;if(y===p.length&&(p[y]=null!=d?d:null),!function(e,t,r,a,n,s){if(0===t)return!1;var o=e[t-1];return 1!==o.length&&(r===o[1]&&a===o[2]&&n===o[3]&&s===(5===o.length?o[4]:-1))}(g,m,y,s,o,h))return ET(g,m,i?[a,y,s,o,h]:[a,y,s,o])}function ET(e,t,r){for(var a=e.length;a>t;a--)e[a]=e[a-1];e[t]=r}for(var ST=function(){function e(e,t){var r;this._map=void 0,this._rawMappings=void 0,this._sourceFileName=void 0,this._lastGenLine=0,this._lastSourceLine=0,this._lastSourceColumn=0,this._inputMap=null;var a=this._map=new yT({sourceRoot:e.sourceRoot});if(this._sourceFileName=null==(r=e.sourceFileName)?void 0:r.replace(/\\/g,"/"),this._rawMappings=void 0,e.inputSourceMap){this._inputMap=new cT(e.inputSourceMap);var n=this._inputMap.resolvedSources;if(n.length)for(var s=0;s<n.length;s++){var o;vT(a,n[s],null==(o=this._inputMap.sourcesContent)?void 0:o[s])}}if("string"!=typeof t||e.inputSourceMap){if("object"==typeof t)for(var i=0,d=Object.keys(t);i<d.length;i++){var c=d[i];vT(a,c.replace(/\\/g,"/"),t[c])}}else vT(a,this._sourceFileName,t)}var t=e.prototype;return t.get=function(){return jT(this._map)},t.getDecoded=function(){return RT(this._map)},t.getRawMappings=function(){return this._rawMappings||(this._rawMappings=function(e){for(var t=[],r=e,a=r._mappings,n=r._sources,s=r._names,o=0;o<a.length;o++)for(var i=a[o],d=0;d<i.length;d++){var c=i[d],l={line:o+1,column:c[0]},u=void 0,p=void 0,f=void 0;1!==c.length&&(u=n.array[c[1]],p={line:c[2]+1,column:c[3]},5===c.length&&(f=s.array[c[4]])),t.push({generated:l,source:u,original:p,name:f})}return t}(this._map))},t.mark=function(e,t,r,a,n,s){var o,i;if(this._rawMappings=void 0,null!=t)if(this._inputMap){if(!(i=uT(this._inputMap,{line:t,column:r})).name&&n){var d=uT(this._inputMap,n);d.name&&(a=d.name)}}else i={name:null,source:(null==s?void 0:s.replace(/\\/g,"/"))||this._sourceFileName,line:t,column:r};bT(this._map,{name:a,generated:e,source:null==(o=i)?void 0:o.source,original:i})},o(e)}(),TT=[],PT=0;PT<32;PT++)TT.push(" ".repeat(2*PT));var AT=function(){function e(e,t){this._map=null,this._buf="",this._str="",this._appendCount=0,this._last=0,this._canMarkIdName=!0,this._indentChar="",this._queuedChar=0,this._position={line:1,column:0},this._sourcePosition={identifierName:void 0,identifierNamePos:void 0,line:void 0,column:void 0,filename:void 0},this._map=e,this._indentChar=t}var t=e.prototype;return t.get=function(){var e=this._map,t=this._last;32!==this._queuedChar&&this._flush();var r=10===t?(this._buf+this._str).trimRight():this._buf+this._str;if(null===e)return{code:r,decodedMap:void 0,map:null,rawMappings:void 0};var a={code:r,decodedMap:e.getDecoded(),get __mergedMap(){return this.map},get map(){var t=e.get();return a.map=t,t},set map(e){Object.defineProperty(a,"map",{value:e,writable:!0})},get rawMappings(){var t=e.getRawMappings();return a.rawMappings=t,t},set rawMappings(e){Object.defineProperty(a,"rawMappings",{value:e,writable:!0})}};return a},t.append=function(e,t){this._flush(),this._append(e,t)},t.appendChar=function(e){this._flush(),this._appendChar(e,1,!0)},t.queue=function(e){this._flush(),this._queuedChar=e},t._flush=function(){var e=this._queuedChar;0!==e&&(this._appendChar(e,1,!0),this._queuedChar=0)},t._appendChar=function(e,t,r){if(this._last=e,-1===e){var a=t>64?this._indentChar.repeat(t):TT[t/2];this._str+=a}else this._str+=t>1?String.fromCharCode(e).repeat(t):String.fromCharCode(e);var n=32===e,s=this._position;if(10!==e){if(this._map){var o=this._sourcePosition;r&&o?(this._map.mark(s,o.line,o.column,n?void 0:o.identifierName,n?void 0:o.identifierNamePos,o.filename),!n&&this._canMarkIdName&&(o.identifierName=void 0,o.identifierNamePos=void 0)):this._map.mark(s)}s.column+=t}else s.line++,s.column=0},t._append=function(e,t){var r=e.length,a=this._position,n=this._sourcePosition;this._last=-1,++this._appendCount>4096?(this._str,this._buf+=this._str,this._str=e,this._appendCount=0):this._str+=e;var s=null!==this._map;if(t||s){var o=n.column,i=n.identifierName,d=n.identifierNamePos,c=n.filename,l=n.line;null==i&&null==d||!this._canMarkIdName||(n.identifierName=void 0,n.identifierNamePos=void 0);var u=e.indexOf("\n"),p=0;for(s&&0!==u&&this._map.mark(a,l,o,i,d,c);-1!==u;)a.line++,a.column=0,(p=u+1)<r&&void 0!==l&&(l++,s&&this._map.mark(a,l,0,void 0,void 0,c)),u=e.indexOf("\n",p);a.column+=r-p}else a.column+=r},t.removeLastSemicolon=function(){59===this._queuedChar&&(this._queuedChar=0)},t.getLastChar=function(e){if(!e)return this._last;var t=this._queuedChar;return 0!==t?t:this._last},t.getNewlineCount=function(){return 0===this._queuedChar&&10===this._last?1:0},t.hasContent=function(){return 0!==this._last},t.exactSource=function(e,t){if(this._map){this.source("start",e);var r=e.identifierName,a=this._sourcePosition;null!=r&&(this._canMarkIdName=!1,a.identifierName=r),t(),null!=r&&(this._canMarkIdName=!0,a.identifierName=void 0,a.identifierNamePos=void 0),this.source("end",e)}else t()},t.source=function(e,t){this._map&&this._normalizePosition(e,t,0)},t.sourceWithOffset=function(e,t,r){this._map&&this._normalizePosition(e,t,r)},t._normalizePosition=function(e,t,r){this._flush();var a=t[e],n=this._sourcePosition;a&&(n.line=a.line,n.column=Math.max(a.column+r,0),n.filename=t.filename)},t.getCurrentColumn=function(){return this._position.column+(this._queuedChar?1:0)},t.getCurrentLine=function(){return this._position.line},o(e)}(),kT=me,CT=at,_T=Qe,IT=er,DT=new Map([["||",0],["??",1],["&&",2],["|",3],["^",4],["&",5],["==",6],["===",6],["!=",6],["!==",6],["<",7],[">",7],["<=",7],[">=",7],["in",7],["instanceof",7],[">>",8],["<<",8],[">>>",8],["+",9],["-",9],["*",10],["/",10],["%",10],["**",11]]);function OT(e){return 156===e||201===e||209===e}var NT=function(e,t,r){return(21===r||22===r)&&t.superClass===e},BT=function(e,t,r){switch(r){case 108:case 132:return t.object===e;case 17:case 130:case 112:return t.callee===e;case 222:return t.tag===e;case 191:return!0}return!1};function MT(e){return(e&(HA.expressionStatement|HA.arrowBody))>0}function FT(e,t,r,a){if(NT(e,t,r))return!0;if(BT(e,t,r)||238===r||145===r||8===r)return!0;var n;switch(r){case 10:case 107:n=DT.get(t.operator);break;case 156:case 201:n=7}if(void 0!==n){var s=2===a?7:DT.get(e.operator);if(n>s)return!0;if(n===s&&10===r&&(11===s?t.left===e:t.right===e))return!0;if(1===a&&107===r&&(1===s&&1!==n||1===n&&1!==s))return!0}return!1}function LT(e,t,r){switch(r){case 4:case 115:case 90:case 239:return!0}return!1}function UT(e,t,r){return(6===r||7===r)&&t.left===e||(10===r&&("|"===t.operator||"&"===t.operator)&&e===t.left||FT(e,t,r,2))}function qT(e,t,r){switch(r){case 181:case 211:case 155:case 195:return!0;case 175:return t.objectType===e}return!1}function GT(e,t,r){switch(r){case 155:case 195:return!0;case 175:if(t.objectType===e)return!0}return!1}function WT(e,t,r){return!!qT(e,t,r)||(219===r||161===r&&(t.checkType===e||t.extendsType===e))}function VT(e,t,r){return 10===r||107===r||238===r||145===r||BT(e,t,r)||8===r&&_T(e)||28===r&&e===t.test||NT(e,t,r)||OT(r)}function HT(e,t,r){return BT(e,t,r)||10===r&&"**"===t.operator&&t.left===e||NT(e,t,r)}function zT(e,t,r){switch(r){case 238:case 145:case 10:case 107:case 8:return!0;case 28:if(t.test===e)return!0}return!!OT(r)||HT(e,t,r)}function KT(e,t,r){switch(r){case 17:return t.callee===e;case 108:return t.object===e}return!1}var XT=Object.freeze({__proto__:null,ArrowFunctionExpression:zT,AssignmentExpression:function(e,t,r,a){return!(!MT(a)||"ObjectPattern"!==e.left.type)||zT(e,t,r)},AwaitExpression:VT,BinaryExpression:function(e,t,r,a){return!!FT(e,t,r,0)||(a&HA.forInOrInitHeadAccumulate)>0&&"in"===e.operator},ClassExpression:function(e,t,r,a){return(a&(HA.expressionStatement|HA.exportDefault))>0},ConditionalExpression:zT,DoExpression:function(e,t,r,a){return(a&HA.expressionStatement)>0&&!e.async},FunctionExpression:function(e,t,r,a){return(a&(HA.expressionStatement|HA.exportDefault))>0},FunctionTypeAnnotation:function(e,t,r,a){return 239===r||90===r||4===r||(a&HA.arrowFlowReturnType)>0},Identifier:function(e,t,r,a,n){var s;if(n&&n(e)!==e.name)return!1;if(6===r&&null!=(s=e.extra)&&s.parenthesized&&t.left===e){var o=t.right.type;if(("FunctionExpression"===o||"ClassExpression"===o)&&null==t.right.id)return!0}return(a&HA.forOfHead||(108===r||132===r)&&a&(HA.expressionStatement|HA.forInitHead|HA.forInHead))&&"let"===e.name?!!((kT(t,{object:e,computed:!0})||CT(t,{object:e,computed:!0,optional:!1}))&&a&(HA.expressionStatement|HA.forInitHead|HA.forInHead))||(a&HA.forOfHead)>0:68===r&&t.left===e&&"async"===e.name&&!t.await},IntersectionTypeAnnotation:LT,LogicalExpression:function(e,t,r){return FT(e,t,r,1)},NullableTypeAnnotation:function(e,t,r){return 4===r},ObjectExpression:function(e,t,r,a){return MT(a)},OptionalCallExpression:KT,OptionalIndexedAccessType:function(e,t,r){return 84===r&&t.objectType===e},OptionalMemberExpression:KT,SequenceExpression:function(e,t,r){return!(144===r||133===r||108===r&&t.property===e||132===r&&t.property===e||224===r)&&(21===r||(68===r?t.right===e:60===r||!IT(t)))},SpreadElement:HT,TSAsExpression:UT,TSConditionalType:function(e,t,r){switch(r){case 155:case 195:case 211:case 212:return!0;case 175:return t.objectType===e;case 181:case 219:return t.types[0]===e;case 161:return t.checkType===e||t.extendsType===e}return!1},TSConstructorType:WT,TSFunctionType:WT,TSInferType:function(e,t,r){return!!GT(e,t,r)||!(181!==r&&219!==r||!e.typeParameter.constraint||t.types[0]!==e)},TSInstantiationExpression:function(e,t,r){switch(r){case 17:case 130:case 112:case 177:return null!=t.typeParameters}return!1},TSIntersectionType:function(e,t,r){return 211===r||GT(e,t,r)},TSSatisfiesExpression:UT,TSTypeAssertion:HT,TSTypeOperator:GT,TSUnionType:qT,UnaryExpression:HT,UnionTypeAnnotation:LT,UpdateExpression:function(e,t,r){return BT(e,t,r)||NT(e,t,r)},YieldExpression:VT});function JT(e,t){for(var r=e.quasis,a="`",n=0;n<r.length-1;n++)if(a+=r[n].value.raw,this.token(a+"${",!0),this.print(t[n]),a="}",this.tokenMap){var s=this.tokenMap.findMatching(e,"}",n);s&&this._catchUpTo(s.loc.start)}a+=r[r.length-1].value.raw,this.token(a+"`",!0)}var YT=Z,$T=dr,QT=me,ZT=ye,eP=ur;function tP(e){return"boolean"==typeof this.format.decoratorsBeforeExport?this.format.decoratorsBeforeExport:"number"==typeof e.start&&e.start===e.declaration.start}function rP(e){this.print(e.left),this.space(),this.token(e.operator,!1,0,!0),this.space(),this.print(e.right)}var aP=rr,nP=de,sP=er;function oP(e){var t=e.body;return!1===sP(t)?e:oP(t)}function iP(e,t){t&&(e.space(),e.printTerminatorless(t)),e.semicolon()}function dP(e){this.tokenChar(44,e),this.newline()}var cP=ie;function lP(e,t,r,a){if(this.print(e.typeParameters),void 0!==r||void 0!==a){var n=bP.call(this,r,a);n&&this.sourceIdentifierName(n.name,n.pos)}this.tokenChar(40),uP.call(this,e.params,41),this.print(e.returnType,t),this._noLineTerminator=t}function uP(e,t){for(var r=this.enterDelimited(),a=this.shouldPrintTrailingComma(t),n=e.length,s=0;s<n;s++)pP.call(this,e[s]),(a||s<n-1)&&(this.tokenChar(44,s),this.space());this.tokenChar(t),this._noLineTerminatorAfterNode=r}function pP(e){this.printJoin(e.decorators,void 0,void 0,void 0,void 0,!0),this.print(e,void 0,!0),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation,void 0,!0)}function fP(e){var t=e.kind,r=e.key;"get"!==t&&"set"!==t||(this.word(t),this.space()),e.async&&(this.word("async",!0),this.space()),"method"!==t&&"init"!==t||e.generator&&this.tokenChar(42),e.computed?(this.tokenChar(91),this.print(r),this.tokenChar(93)):this.print(r),e.optional&&this.tokenChar(63),this._buf._map?lP.call(this,e,!1,e.computed&&"StringLiteral"!==e.key.type?void 0:e.key):lP.call(this,e,!1)}function gP(e,t){e.predicate&&(e.returnType||this.tokenChar(58),this.space(),this.print(e.predicate,t))}function mP(e,t,r){e.async&&(this.word("async"),this.format.preserveFormat||(this._innerCommentsState=0),this.space()),this.word("function"),e.generator&&(this.format.preserveFormat||(this._innerCommentsState=0),this.tokenChar(42)),this.space(),e.id&&this.print(e.id),this._buf._map?lP.call(this,e,!1,e.id,t):lP.call(this,e,!1),r&&gP.call(this,e)}function yP(e,t){mP.call(this,e,t,!0),this.space(),this.print(e.body)}function hP(e){var t,r;if(1!==e.params.length)return!0;if(e.typeParameters||e.returnType||e.predicate)return!0;var a=e.params[0];if(!cP(a)||a.typeAnnotation||a.optional||null!=(t=a.leadingComments)&&t.length||null!=(r=a.trailingComments)&&r.length)return!0;if(this.tokenMap){if(null==e.loc)return!0;if(null!==this.tokenMap.findMatching(e,"("))return!0;var n=this.tokenMap.findMatching(e,"=>");return null==(null==n?void 0:n.loc)||n.loc.start.line!==e.loc.start.line}return!!this.format.retainLines}function bP(e,t){var r=e;if(!r&&t){var a=t.type;"VariableDeclarator"===a?r=t.id:"AssignmentExpression"===a||"AssignmentPattern"===a?r=t.left:"ObjectProperty"===a||"ClassProperty"===a?t.computed&&"StringLiteral"!==t.key.type||(r=t.key):"ClassPrivateProperty"!==a&&"ClassAccessorProperty"!==a||(r=t.key)}if(r){var n,s,o;if("Identifier"===r.type)n={pos:null==(s=r.loc)?void 0:s.start,name:(null==(o=r.loc)?void 0:o.identifierName)||r.name};else if("PrivateName"===r.type){var i;n={pos:null==(i=r.loc)?void 0:i.start,name:"#"+r.id.name}}else if("StringLiteral"===r.type){var d;n={pos:null==(d=r.loc)?void 0:d.start,name:r.value}}return n}}function vP(e,t){var r=this;this.tokenChar(60);var a="ArrowFunctionExpression"===t.type&&1===e.params.length;this.tokenMap&&null!=e.start&&null!=e.end&&(a&&(a=!!this.tokenMap.find(e,function(e){return r.tokenMap.matchesOriginal(e,",")})),a||(a=this.shouldPrintTrailingComma(">"))),this.printList(e.params,a),this.tokenChar(62)}function xP(e,t){e.tokenMap&&t.start&&t.end?e.tokenMap.endMatches(t,",")?e.token(","):e.tokenMap.endMatches(t,";")&&e.semicolon():e.semicolon()}function RP(e){e.computed&&this.tokenChar(91),this.print(e.key),e.computed&&this.tokenChar(93),e.optional&&this.tokenChar(63)}function jP(e){var t=e.typeParameters,r=e.parameters;this.print(t),this.tokenChar(40),uP.call(this,r,41),this.space();var a=e.typeAnnotation;this.print(a)}function wP(e,t,r){var a,n=0;null!=(a=e.tokenMap)&&a.startMatches(t,r)&&(n=1,e.token(r)),e.printJoin(t.types,void 0,void 0,function(e){this.space(),this.token(r,void 0,e+n),this.space()})}function EP(e,t){!0!==t&&e.token(t)}function SP(e){this.print(e.expression),this.print(e.typeArguments)}function TP(e){var t=this;kP(this,e,function(){var r;return t.printList(e.members,null==(r=t.shouldPrintTrailingComma("}"))||r,!0,!0,void 0,!0)})}function PP(e){var t=e.typeParameters,r=e.parameters;this.print(t),this.tokenChar(40),uP.call(this,r,41);var a=e.typeAnnotation;this.print(a)}function AP(e){var t="ClassPrivateProperty"===e.type,r="ClassAccessorProperty"===e.type||"ClassProperty"===e.type;CP(this,e,[r&&e.declare&&"declare",!t&&e.accessibility]),e.static&&(this.word("static"),this.space()),CP(this,e,[!t&&e.abstract&&"abstract",!t&&e.override&&"override",(r||t)&&e.readonly&&"readonly"])}function kP(e,t,r){e.token("{");var a=e.enterDelimited();r(),e._noLineTerminatorAfterNode=a,e.rightBrace(t)}function CP(e,t,r){for(var a,n,s=new Set,o=i(r);!(n=o()).done;){var d=n.value;d&&s.add(d)}null==(a=e.tokenMap)||a.find(t,function(t){return!!s.has(t.value)&&(e.token(t.value),e.space(),s.delete(t.value),0===s.size)});for(var c,l=i(s);!(c=l()).done;){var u=c.value;e.word(u),e.space()}}var _P=Ne,IP=Nt,DP=rt,OP=Ge,NP=We,BP=er;var MP=!1;function FP(e,t){var r,a=e.attributes,n=e.assertions,s=this.format.importAttributesKeyword;a&&!s&&e.extra&&(e.extra.deprecatedAssertSyntax||e.extra.deprecatedWithLegacySyntax)&&!MP&&(MP=!0,console.warn('You are using import attributes, without specifying the desired output syntax.\nPlease specify the "importAttributesKeyword" generator option, whose value can be one of:\n - "with" : `import { a } from "b" with { type: "json" };`\n - "assert" : `import { a } from "b" assert { type: "json" };`\n - "with-legacy" : `import { a } from "b" with type: "json";`\n'));var o="assert"===s||!s&&n;if(this.word(o?"assert":"with"),this.space(),o||"with-legacy"!==s&&(s||null==(r=e.extra)||!r.deprecatedWithLegacySyntax)){var i=t?1:0;this.token("{",void 0,i),this.space(),this.printList(a||n,this.shouldPrintTrailingComma("}")),this.space(),this.token("}",void 0,i)}else this.printList(a||n)}function LP(e){var t,r;this.word("export"),this.space(),"type"===e.exportKind&&(this.word("type"),this.space()),this.tokenChar(42),this.space(),this.word("from"),this.space(),null!=(t=e.attributes)&&t.length||null!=(r=e.assertions)&&r.length?(this.print(e.source,!0),this.space(),FP.call(this,e,!1)):this.print(e.source),this.semicolon()}function UP(e,t){_P(t.declaration)&&tP.call(e,t)&&e.printJoin(t.declaration.decorators)}var qP={},GP=qP.hasOwnProperty,WP=function(e,t){for(var r in e)GP.call(e,r)&&t(r,e[r])},VP=function(e){return"\\u"+("0000"+e).slice(-4)},HP=function(e,t){var r=e.toString(16);return t?r:r.toUpperCase()},zP=qP.toString,KP=Array.isArray,XP={"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},JP=/[\\\b\f\n\r\t]/,YP=/[0-9]/,$P=/[\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,QP=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^]/g,ZP=/([\uD800-\uDBFF][\uDC00-\uDFFF])|([\uD800-\uDFFF])|(['"`])|[^ !#-&\(-\[\]-_a-~]/g,eA=function(e,t){var r,a,n=function(){p=u,++t.indentLevel,u=t.indent.repeat(t.indentLevel)},s={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:"\t",indentLevel:0,__inline1__:!1,__inline2__:!1},o=t&&t.json;o&&(s.quotes="double",s.wrap=!0),r=s,t=(a=t)?(WP(a,function(e,t){r[e]=t}),r):r,"single"!=t.quotes&&"double"!=t.quotes&&"backtick"!=t.quotes&&(t.quotes="single");var i,d="double"==t.quotes?'"':"backtick"==t.quotes?"`":"'",c=t.compact,l=t.lowercaseHex,u=t.indent.repeat(t.indentLevel),p="",f=t.__inline1__,g=t.__inline2__,m=c?"":"\n",y=!0,h="binary"==t.numbers,b="octal"==t.numbers,v="decimal"==t.numbers,x="hexadecimal"==t.numbers;if(o&&e&&function(e){return"function"==typeof e}(e.toJSON)&&(e=e.toJSON()),!function(e){return"string"==typeof e||"[object String]"==zP.call(e)}(e)){if(function(e){return"[object Map]"==zP.call(e)}(e))return 0==e.size?"new Map()":(c||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+eA(Array.from(e),t)+")");if(function(e){return"[object Set]"==zP.call(e)}(e))return 0==e.size?"new Set()":"new Set("+eA(Array.from(e),t)+")";if(function(e){return VE.isBuffer(e)}(e))return 0==e.length?"Buffer.from([])":"Buffer.from("+eA(Array.from(e),t)+")";if(KP(e))return i=[],t.wrap=!0,f&&(t.__inline1__=!1,t.__inline2__=!0),g||n(),function(e,t){for(var r=e.length,a=-1;++a<r;)t(e[a])}(e,function(e){y=!1,g&&(t.__inline2__=!1),i.push((c||g?"":u)+eA(e,t))}),y?"[]":g?"["+i.join(", ")+"]":"["+m+i.join(","+m)+m+(c?"":p)+"]";if(!function(e){return"number"==typeof e||"[object Number]"==zP.call(e)}(e))return function(e){return"[object Object]"==zP.call(e)}(e)?(i=[],t.wrap=!0,n(),WP(e,function(e,r){y=!1,i.push((c?"":u)+eA(e,t)+":"+(c?"":" ")+eA(r,t))}),y?"{}":"{"+m+i.join(","+m)+m+(c?"":p)+"}"):o?JSON.stringify(e)||"null":String(e);if(o)return JSON.stringify(e);if(v)return String(e);if(x){var R=e.toString(16);return l||(R=R.toUpperCase()),"0x"+R}if(h)return"0b"+e.toString(2);if(b)return"0o"+e.toString(8)}var j=t.escapeEverything?QP:ZP;return i=e.replace(j,function(e,r,a,n,s,i){if(r){if(t.minimal)return r;var c=r.charCodeAt(0),u=r.charCodeAt(1);return t.es6?"\\u{"+HP(1024*(c-55296)+u-56320+65536,l)+"}":VP(HP(c,l))+VP(HP(u,l))}if(a)return VP(HP(a.charCodeAt(0),l));if("\0"==e&&!o&&!YP.test(i.charAt(s+1)))return"\\0";if(n)return n==d||t.escapeEverything?"\\"+n:n;if(JP.test(e))return XP[e];if(t.minimal&&!$P.test(e))return e;var p=HP(e.charCodeAt(0),l);return o||p.length>2?VP(p):"\\x"+("00"+p).slice(-2)}),"`"==d&&(i=i.replace(/\$\{/g,"\\${")),t.isScriptContext&&(i=i.replace(/<\/(script|style)/gi,"<\\/$1").replace(/<!--/g,o?"\\u003C!--":"\\x3C!--")),t.wrap&&(i=d+i+d),i};eA.version="3.0.2";var tA=eA,rA=Ce,aA=ie,nA="";function sA(e){var t=e.name,r=this.tokenMap.find(e,function(e){return e.value===t});return nA=r?this._originalCode.slice(r.start,r.end):e.name}function oA(e){this.token("..."),this.print(e.argument)}function iA(e){var t=e.properties;if(this.tokenChar(123),t.length){var r=this.enterDelimited();this.space(),this.printList(t,this.shouldPrintTrailingComma("}"),!0,!0,void 0,!0),this.space(),this._noLineTerminatorAfterNode=r}this.rightBrace(e)}function dA(e){var t=e.elements,r=t.length;this.tokenChar(91);for(var a=this.enterDelimited(),n=0;n<t.length;n++){var s=t[n];s?(n>0&&this.space(),this.print(s,void 0,!0),(n<r-1||this.shouldPrintTrailingComma("]"))&&this.tokenChar(44,n)):this.tokenChar(44,n)}this._noLineTerminatorAfterNode=a,this.tokenChar(93)}function cA(e){var t=this.getPossibleRaw(e),r=this.format.jsescOption,a=e.value,n=a+"";r.numbers?this.number(tA(a,r),a):null==t?this.number(n,a):this.format.minified?this.number(t.length<n.length?t:n,a):this.number(t,a)}function lA(e){var t=this.getPossibleRaw(e);if(this.format.minified||void 0===t){var r=tA(e.value,this.format.jsescOption);this.token(r)}else this.token(t)}var uA=new Set(["^^","@@","^","%","#"]);var pA=pt,fA=er;function gA(e,t,r){r&&(e.space(),e.word("of"),e.space(),e.word(t)),e.space()}function mA(e,t){var r=t.members;e.token("{"),e.indent(),e.newline();for(var a,n=i(r);!(a=n()).done;){var s=a.value;e.print(s),e.newline()}t.hasUnknownMembers&&(e.token("..."),e.newline()),e.dedent(),e.token("}")}function yA(e,t){e.print(t.id),e.space(),e.token("="),e.space(),e.print(t.init),e.token(",")}function hA(e){if(e.declaration){var t=e.declaration;this.print(t),fA(t)||this.semicolon()}else this.tokenChar(123),e.specifiers.length&&(this.space(),this.printList(e.specifiers),this.space()),this.tokenChar(125),e.source&&(this.space(),this.word("from"),this.space(),this.print(e.source)),this.semicolon()}function bA(e){this.print(e.id),this.print(e.typeParameters,!0)}function vA(e){var t,r,a;(this.print(e.id),this.print(e.typeParameters),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends)),"DeclareClass"===e.type)&&(null!=(r=e.mixins)&&r.length&&(this.space(),this.word("mixins"),this.space(),this.printList(e.mixins)),null!=(a=e.implements)&&a.length&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements)));this.space(),this.print(e.body)}function xA(e){var t,r=null==(t=e.variance)?void 0:t.kind;null!=r&&("plus"===r?this.tokenChar(43):"minus"===r&&this.tokenChar(45))}function RA(e){this.word("interface"),this.space(),vA.call(this,e)}function jA(e){this.space(),this.token("&",!1,e),this.space()}function wA(e){this.word("type"),this.space(),this.print(e.id),this.print(e.typeParameters),this.space(),this.tokenChar(61),this.space(),this.print(e.right),this.semicolon()}function EA(e){this.tokenChar(60),this.printList(e.params),this.tokenChar(62)}function SA(e){this.word("opaque"),this.space(),this.word("type"),this.space(),this.print(e.id),this.print(e.typeParameters),e.supertype&&(this.tokenChar(58),this.space(),this.print(e.supertype)),e.impltype&&(this.space(),this.tokenChar(61),this.space(),this.print(e.impltype)),this.semicolon()}function TA(e){this.space(),this.token("|",!1,e),this.space()}var PA=Me,AA=Fe;function kA(e,t){(PA(t)||AA(t))&&tP.call(this,t)||this.printJoin(e.decorators),e.declare&&(this.word("declare"),this.space()),e.abstract&&(this.word("abstract"),this.space()),this.word("class"),e.id&&(this.space(),this.print(e.id)),this.print(e.typeParameters),e.superClass&&(this.space(),this.word("extends"),this.space(),this.print(e.superClass),this.print(e.superTypeParameters)),e.implements&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements)),this.space(),this.print(e.body)}function CA(e){if(this.printJoin(e.decorators),!this.format.preserveFormat){var t,r=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;r&&this.catchUp(r)}AP.call(this,e),fP.call(this,e)}var _A=/(?:^|[^\\])(?:\\\\)*'/,IA=/(?:^|[^\\])(?:\\\\)*"/;function DA(){this.space()}var OA=Object.freeze({__proto__:null,AnyTypeAnnotation:function(){this.word("any")},ArgumentPlaceholder:function(){this.tokenChar(63)},ArrayExpression:dA,ArrayPattern:dA,ArrayTypeAnnotation:function(e){this.print(e.elementType,!0),this.tokenChar(91),this.tokenChar(93)},ArrowFunctionExpression:function(e,t){e.async&&(this.word("async",!0),this.space()),hP.call(this,e)?lP.call(this,e,!0,void 0,this._buf._map?t:void 0):this.print(e.params[0],!0),gP.call(this,e,!0),this.space(),this.printInnerComments(),this.token("=>"),this.space(),this.tokenContext|=HA.arrowBody,this.print(e.body)},AssignmentExpression:rP,AssignmentPattern:function(e){this.print(e.left),("Identifier"===e.left.type||eP(e.left))&&(e.left.optional&&this.tokenChar(63),this.print(e.left.typeAnnotation)),this.space(),this.tokenChar(61),this.space(),this.print(e.right)},AwaitExpression:function(e){this.word("await"),this.space(),this.print(e.argument)},BigIntLiteral:function(e){var t=this.getPossibleRaw(e);this.format.minified||void 0===t?this.word(e.value+"n"):this.word(t)},BinaryExpression:function(e){this.print(e.left),this.space();var t=e.operator;105===t.charCodeAt(0)?this.word(t):(this.token(t,!1,0,!0),this.setLastChar(t.charCodeAt(t.length-1))),this.space(),this.print(e.right)},BindExpression:function(e){this.print(e.object),this.token("::"),this.print(e.callee)},BlockStatement:function(e){var t;this.tokenChar(123);var r=this.enterDelimited(),a=null==(t=e.directives)?void 0:t.length;if(a){var n,s=e.body.length?2:1;this.printSequence(e.directives,!0,!0,s),null!=(n=e.directives[a-1].trailingComments)&&n.length||this.newline(s)}this.printSequence(e.body,!0,!0),this._noLineTerminatorAfterNode=r,this.rightBrace(e)},BooleanLiteral:function(e){this.word(e.value?"true":"false")},BooleanLiteralTypeAnnotation:function(e){this.word(e.value?"true":"false")},BooleanTypeAnnotation:function(){this.word("boolean")},BreakStatement:function(e){this.word("break"),iP(this,e.label)},CallExpression:function(e){this.print(e.callee),this.print(e.typeArguments),this.print(e.typeParameters),this.tokenChar(40);var t=this.enterDelimited();this.printList(e.arguments,this.shouldPrintTrailingComma(")"),void 0,void 0,void 0,!0),this._noLineTerminatorAfterNode=t,this.rightParens(e)},CatchClause:function(e){this.word("catch"),this.space(),e.param&&(this.tokenChar(40),this.print(e.param),this.print(e.param.typeAnnotation),this.tokenChar(41),this.space()),this.print(e.body)},ClassAccessorProperty:function(e){var t;this.printJoin(e.decorators);var r=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;r&&this.catchUp(r),AP.call(this,e),this.word("accessor",!0),this.space(),e.computed?(this.tokenChar(91),this.print(e.key),this.tokenChar(93)):(xA.call(this,e),this.print(e.key)),e.optional&&this.tokenChar(63),e.definite&&this.tokenChar(33),this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value)),this.semicolon()},ClassBody:function(e){if(this.tokenChar(123),0===e.body.length)this.tokenChar(125);else{var t=function(e,t){if(!e.tokenMap||null==t.start||null==t.end)return null;var r=e.tokenMap.getIndexes(t);if(!r)return null;var a=1,n=0,s=0,o=function(){for(;s<t.body.length&&null==t.body[s].start;)s++};return o(),function(i){s<=i&&(s=i+1,o());for(var d,c=s===t.body.length?t.end:t.body[s].start;a<r.length&&e.tokenMap.matchesOriginal(d=e._tokens[r[a]],";")&&d.start<c;)e.tokenChar(59,n++),a++}}(this,e);null==t||t(-1);var r=this.enterDelimited();this.printJoin(e.body,!0,!0,t,!0,!0),this._noLineTerminatorAfterNode=r,this.endsWith(10)||this.newline(),this.rightBrace(e)}},ClassDeclaration:kA,ClassExpression:kA,ClassImplements:bA,ClassMethod:function(e){CA.call(this,e),this.space(),this.print(e.body)},ClassPrivateMethod:function(e){CA.call(this,e),this.space(),this.print(e.body)},ClassPrivateProperty:function(e){this.printJoin(e.decorators),AP.call(this,e),this.print(e.key),e.optional&&this.tokenChar(63),e.definite&&this.tokenChar(33),this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value)),this.semicolon()},ClassProperty:function(e){if(this.printJoin(e.decorators),!e.static&&!this.format.preserveFormat){var t,r=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;r&&this.catchUp(r)}AP.call(this,e),e.computed?(this.tokenChar(91),this.print(e.key),this.tokenChar(93)):(xA.call(this,e),this.print(e.key)),e.optional&&this.tokenChar(63),e.definite&&this.tokenChar(33),this.print(e.typeAnnotation),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value)),this.semicolon()},ConditionalExpression:function(e){this.print(e.test),this.space(),this.tokenChar(63),this.space(),this.print(e.consequent),this.space(),this.tokenChar(58),this.space(),this.print(e.alternate)},ContinueStatement:function(e){this.word("continue"),iP(this,e.label)},DebuggerStatement:function(){this.word("debugger"),this.semicolon()},DeclareClass:function(e,t){pA(t)||(this.word("declare"),this.space()),this.word("class"),this.space(),vA.call(this,e)},DeclareExportAllDeclaration:function(e){this.word("declare"),this.space(),LP.call(this,e)},DeclareExportDeclaration:function(e){this.word("declare"),this.space(),this.word("export"),this.space(),e.default&&(this.word("default"),this.space()),hA.call(this,e)},DeclareFunction:function(e,t){pA(t)||(this.word("declare"),this.space()),this.word("function"),this.space(),this.print(e.id),this.print(e.id.typeAnnotation.typeAnnotation),e.predicate&&(this.space(),this.print(e.predicate)),this.semicolon()},DeclareInterface:function(e){this.word("declare"),this.space(),RA.call(this,e)},DeclareModule:function(e){this.word("declare"),this.space(),this.word("module"),this.space(),this.print(e.id),this.space(),this.print(e.body)},DeclareModuleExports:function(e){this.word("declare"),this.space(),this.word("module"),this.tokenChar(46),this.word("exports"),this.print(e.typeAnnotation)},DeclareOpaqueType:function(e,t){pA(t)||(this.word("declare"),this.space()),SA.call(this,e)},DeclareTypeAlias:function(e){this.word("declare"),this.space(),wA.call(this,e)},DeclareVariable:function(e,t){pA(t)||(this.word("declare"),this.space()),this.word("var"),this.space(),this.print(e.id),this.print(e.id.typeAnnotation),this.semicolon()},DeclaredPredicate:function(e){this.tokenChar(37),this.word("checks"),this.tokenChar(40),this.print(e.value),this.tokenChar(41)},Decorator:function(e){this.tokenChar(64);var t=e.expression;this.print(t),this.newline()},Directive:function(e){this.print(e.value),this.semicolon()},DirectiveLiteral:function(e){var t=this.getPossibleRaw(e);if(this.format.minified||void 0===t){var r=e.value;if(IA.test(r)){if(_A.test(r))throw new Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes.");this.token("'"+r+"'")}else this.token('"'+r+'"')}else this.token(t)},DoExpression:function(e){e.async&&(this.word("async",!0),this.space()),this.word("do"),this.space(),this.print(e.body)},DoWhileStatement:function(e){this.word("do"),this.space(),this.print(e.body),this.space(),this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.semicolon()},EmptyStatement:function(){this.semicolon(!0)},EmptyTypeAnnotation:function(){this.word("empty")},EnumBooleanBody:function(e){gA(this,"boolean",e.explicitType),mA(this,e)},EnumBooleanMember:function(e){yA(this,e)},EnumDeclaration:function(e){var t=e.id,r=e.body;this.word("enum"),this.space(),this.print(t),this.print(r)},EnumDefaultedMember:function(e){var t=e.id;this.print(t),this.tokenChar(44)},EnumNumberBody:function(e){gA(this,"number",e.explicitType),mA(this,e)},EnumNumberMember:function(e){yA(this,e)},EnumStringBody:function(e){gA(this,"string",e.explicitType),mA(this,e)},EnumStringMember:function(e){yA(this,e)},EnumSymbolBody:function(e){gA(this,"symbol",!0),mA(this,e)},ExistsTypeAnnotation:function(){this.tokenChar(42)},ExportAllDeclaration:LP,ExportDefaultDeclaration:function(e){UP(this,e),this.word("export"),this.noIndentInnerCommentsHere(),this.space(),this.word("default"),this.space(),this.tokenContext|=HA.exportDefault;var t=e.declaration;this.print(t),BP(t)||this.semicolon()},ExportDefaultSpecifier:function(e){this.print(e.exported)},ExportNamedDeclaration:function(e){if(UP(this,e),this.word("export"),this.space(),e.declaration){var t=e.declaration;this.print(t),BP(t)||this.semicolon()}else{"type"===e.exportKind&&(this.word("type"),this.space());for(var r=e.specifiers.slice(0),a=!1;;){var n=r[0];if(!IP(n)&&!DP(n))break;a=!0,this.print(r.shift()),r.length&&(this.tokenChar(44),this.space())}var s,o,i=!1;if((r.length||!r.length&&!a)&&(i=!0,this.tokenChar(123),r.length&&(this.space(),this.printList(r,this.shouldPrintTrailingComma("}")),this.space()),this.tokenChar(125)),e.source)this.space(),this.word("from"),this.space(),null!=(s=e.attributes)&&s.length||null!=(o=e.assertions)&&o.length?(this.print(e.source,!0),this.space(),FP.call(this,e,i)):this.print(e.source);this.semicolon()}},ExportNamespaceSpecifier:function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.exported)},ExportSpecifier:function(e){"type"===e.exportKind&&(this.word("type"),this.space()),this.print(e.local),e.exported&&e.local.name!==e.exported.name&&(this.space(),this.word("as"),this.space(),this.print(e.exported))},ExpressionStatement:function(e){this.tokenContext|=HA.expressionStatement,this.print(e.expression),this.semicolon()},File:function(e){e.program&&this.print(e.program.interpreter),this.print(e.program)},ForInStatement:function(e){this.word("for"),this.space(),this.noIndentInnerCommentsHere(),this.tokenChar(40),this.tokenContext|=HA.forInHead|HA.forInOrInitHeadAccumulate,this.print(e.left),this.tokenContext=HA.normal,this.space(),this.word("in"),this.space(),this.print(e.right),this.tokenChar(41),this.printBlock(e.body)},ForOfStatement:function(e){this.word("for"),this.space(),e.await&&(this.word("await"),this.space()),this.noIndentInnerCommentsHere(),this.tokenChar(40),this.tokenContext|=HA.forOfHead,this.print(e.left),this.space(),this.word("of"),this.space(),this.print(e.right),this.tokenChar(41),this.printBlock(e.body)},ForStatement:function(e){this.word("for"),this.space(),this.tokenChar(40),this.tokenContext|=HA.forInitHead|HA.forInOrInitHeadAccumulate,this.print(e.init),this.tokenContext=HA.normal,this.tokenChar(59),e.test&&(this.space(),this.print(e.test)),this.tokenChar(59,1),e.update&&(this.space(),this.print(e.update)),this.tokenChar(41),this.printBlock(e.body)},FunctionDeclaration:yP,FunctionExpression:yP,FunctionTypeAnnotation:function(e,t){this.print(e.typeParameters),this.tokenChar(40),e.this&&(this.word("this"),this.tokenChar(58),this.space(),this.print(e.this.typeAnnotation),(e.params.length||e.rest)&&(this.tokenChar(44),this.space())),this.printList(e.params),e.rest&&(e.params.length&&(this.tokenChar(44),this.space()),this.token("..."),this.print(e.rest)),this.tokenChar(41);var r=null==t?void 0:t.type;null!=r&&("ObjectTypeCallProperty"===r||"ObjectTypeInternalSlot"===r||"DeclareFunction"===r||"ObjectTypeProperty"===r&&t.method)?this.tokenChar(58):(this.space(),this.token("=>")),this.space(),this.print(e.returnType)},FunctionTypeParam:function(e){this.print(e.name),e.optional&&this.tokenChar(63),e.name&&(this.tokenChar(58),this.space()),this.print(e.typeAnnotation)},GenericTypeAnnotation:bA,Identifier:function(e){var t;this._buf._map&&this.sourceIdentifierName((null==(t=e.loc)?void 0:t.identifierName)||e.name),this.word(this.tokenMap?nA:e.name)},IfStatement:function(e){this.word("if"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.space();var t=e.alternate&&nP(oP(e.consequent));t&&(this.tokenChar(123),this.newline(),this.indent()),this.printAndIndentOnComments(e.consequent),t&&(this.dedent(),this.newline(),this.tokenChar(125)),e.alternate&&(this.endsWith(125)&&this.space(),this.word("else"),this.space(),this.printAndIndentOnComments(e.alternate))},Import:function(){this.word("import")},ImportAttribute:function(e){this.print(e.key),this.tokenChar(58),this.space(),this.print(e.value)},ImportDeclaration:function(e){var t,r;this.word("import"),this.space();var a="type"===e.importKind||"typeof"===e.importKind;a?(this.noIndentInnerCommentsHere(),this.word(e.importKind),this.space()):e.module?(this.noIndentInnerCommentsHere(),this.word("module"),this.space()):e.phase&&(this.noIndentInnerCommentsHere(),this.word(e.phase),this.space());for(var n=e.specifiers.slice(0),s=!!n.length;s;){var o=n[0];if(!OP(o)&&!NP(o))break;this.print(n.shift()),n.length&&(this.tokenChar(44),this.space())}var i=!1;n.length?(i=!0,this.tokenChar(123),this.space(),this.printList(n,this.shouldPrintTrailingComma("}")),this.space(),this.tokenChar(125)):a&&!s&&(i=!0,this.tokenChar(123),this.tokenChar(125)),(s||a)&&(this.space(),this.word("from"),this.space()),null!=(t=e.attributes)&&t.length||null!=(r=e.assertions)&&r.length?(this.print(e.source,!0),this.space(),FP.call(this,e,i)):this.print(e.source),this.semicolon()},ImportDefaultSpecifier:function(e){this.print(e.local)},ImportExpression:function(e){this.word("import"),e.phase&&(this.tokenChar(46),this.word(e.phase)),this.tokenChar(40);var t=this.shouldPrintTrailingComma(")");this.print(e.source),null!=e.options&&(this.tokenChar(44),this.space(),this.print(e.options)),t&&this.tokenChar(44),this.rightParens(e)},ImportNamespaceSpecifier:function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.local)},ImportSpecifier:function(e){"type"!==e.importKind&&"typeof"!==e.importKind||(this.word(e.importKind),this.space()),this.print(e.imported),e.local&&e.local.name!==e.imported.name&&(this.space(),this.word("as"),this.space(),this.print(e.local))},IndexedAccessType:function(e){this.print(e.objectType,!0),this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},InferredPredicate:function(){this.tokenChar(37),this.word("checks")},InterfaceDeclaration:RA,InterfaceExtends:bA,InterfaceTypeAnnotation:function(e){var t;this.word("interface"),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends)),this.space(),this.print(e.body)},InterpreterDirective:function(e){this.token("#!"+e.value),this._newline()},IntersectionTypeAnnotation:function(e){this.printJoin(e.types,void 0,void 0,jA)},JSXAttribute:function(e){this.print(e.name),e.value&&(this.tokenChar(61),this.print(e.value))},JSXClosingElement:function(e){this.tokenChar(60),this.tokenChar(47),this.print(e.name),this.tokenChar(62)},JSXClosingFragment:function(){this.token("</"),this.tokenChar(62)},JSXElement:function(e){var t=e.openingElement;if(this.print(t),!t.selfClosing){this.indent();for(var r,a=i(e.children);!(r=a()).done;){var n=r.value;this.print(n)}this.dedent(),this.print(e.closingElement)}},JSXEmptyExpression:function(){this.printInnerComments()},JSXExpressionContainer:function(e){this.tokenChar(123),this.print(e.expression),this.rightBrace(e)},JSXFragment:function(e){this.print(e.openingFragment),this.indent();for(var t,r=i(e.children);!(t=r()).done;){var a=t.value;this.print(a)}this.dedent(),this.print(e.closingFragment)},JSXIdentifier:function(e){this.word(e.name)},JSXMemberExpression:function(e){this.print(e.object),this.tokenChar(46),this.print(e.property)},JSXNamespacedName:function(e){this.print(e.namespace),this.tokenChar(58),this.print(e.name)},JSXOpeningElement:function(e){this.tokenChar(60),this.print(e.name),e.typeArguments&&this.print(e.typeArguments),this.print(e.typeParameters),e.attributes.length>0&&(this.space(),this.printJoin(e.attributes,void 0,void 0,DA)),e.selfClosing&&(this.space(),this.tokenChar(47)),this.tokenChar(62)},JSXOpeningFragment:function(){this.tokenChar(60),this.tokenChar(62)},JSXSpreadAttribute:function(e){this.tokenChar(123),this.token("..."),this.print(e.argument),this.rightBrace(e)},JSXSpreadChild:function(e){this.tokenChar(123),this.token("..."),this.print(e.expression),this.rightBrace(e)},JSXText:function(e){var t=this.getPossibleRaw(e);void 0!==t?this.token(t,!0):this.token(e.value,!0)},LabeledStatement:function(e){this.print(e.label),this.tokenChar(58),this.space(),this.print(e.body)},LogicalExpression:rP,MemberExpression:function(e){if(this.print(e.object),!e.computed&&QT(e.property))throw new TypeError("Got a MemberExpression for MemberExpression property");var t=e.computed;if($T(e.property)&&"number"==typeof e.property.value&&(t=!0),t){var r=this.enterDelimited();this.tokenChar(91),this.print(e.property,void 0,!0),this.tokenChar(93),this._noLineTerminatorAfterNode=r}else this.tokenChar(46),this.print(e.property)},MetaProperty:function(e){this.print(e.meta),this.tokenChar(46),this.print(e.property)},MixedTypeAnnotation:function(){this.word("mixed")},ModuleExpression:function(e){this.word("module",!0),this.space(),this.tokenChar(123),this.indent();var t=e.body;(t.body.length||t.directives.length)&&this.newline(),this.print(t),this.dedent(),this.rightBrace(e)},NewExpression:function(e,t){if(this.word("new"),this.space(),this.print(e.callee),(!this.format.minified||0!==e.arguments.length||e.optional||YT(t,{callee:e})||QT(t)||ZT(t))&&(this.print(e.typeArguments),this.print(e.typeParameters),e.optional&&this.token("?."),0!==e.arguments.length||!this.tokenMap||this.tokenMap.endMatches(e,")"))){this.tokenChar(40);var r=this.enterDelimited();this.printList(e.arguments,this.shouldPrintTrailingComma(")"),void 0,void 0,void 0,!0),this._noLineTerminatorAfterNode=r,this.rightParens(e)}},NullLiteral:function(){this.word("null")},NullLiteralTypeAnnotation:function(){this.word("null")},NullableTypeAnnotation:function(e){this.tokenChar(63),this.print(e.typeAnnotation)},NumberLiteralTypeAnnotation:cA,NumberTypeAnnotation:function(){this.word("number")},NumericLiteral:cA,ObjectExpression:iA,ObjectMethod:function(e){this.printJoin(e.decorators),fP.call(this,e),this.space(),this.print(e.body)},ObjectPattern:iA,ObjectProperty:function(e){if(this.printJoin(e.decorators),e.computed)this.tokenChar(91),this.print(e.key),this.tokenChar(93);else{if(rA(e.value)&&aA(e.key)&&e.key.name===e.value.left.name)return void this.print(e.value);if(this.print(e.key),e.shorthand&&aA(e.key)&&aA(e.value)&&e.key.name===e.value.name)return}this.tokenChar(58),this.space(),this.print(e.value)},ObjectTypeAnnotation:function(e){var t=this;e.exact?this.token("{|"):this.tokenChar(123);var r=[].concat(b(e.properties),b(e.callProperties||[]),b(e.indexers||[]),b(e.internalSlots||[]));r.length&&(this.newline(),this.space(),this.printJoin(r,!0,!0,function(){(1!==r.length||e.inexact)&&(t.token(","),t.space())},!0),this.space()),e.inexact&&(this.indent(),this.token("..."),r.length&&this.newline(),this.dedent()),e.exact?this.token("|}"):this.tokenChar(125)},ObjectTypeCallProperty:function(e){e.static&&(this.word("static"),this.space()),this.print(e.value)},ObjectTypeIndexer:function(e){e.static&&(this.word("static"),this.space()),xA.call(this,e),this.tokenChar(91),e.id&&(this.print(e.id),this.tokenChar(58),this.space()),this.print(e.key),this.tokenChar(93),this.tokenChar(58),this.space(),this.print(e.value)},ObjectTypeInternalSlot:function(e){e.static&&(this.word("static"),this.space()),this.tokenChar(91),this.tokenChar(91),this.print(e.id),this.tokenChar(93),this.tokenChar(93),e.optional&&this.tokenChar(63),e.method||(this.tokenChar(58),this.space()),this.print(e.value)},ObjectTypeProperty:function(e){e.proto&&(this.word("proto"),this.space()),e.static&&(this.word("static"),this.space()),"get"!==e.kind&&"set"!==e.kind||(this.word(e.kind),this.space()),xA.call(this,e),this.print(e.key),e.optional&&this.tokenChar(63),e.method||(this.tokenChar(58),this.space()),this.print(e.value)},ObjectTypeSpreadProperty:function(e){this.token("..."),this.print(e.argument)},OpaqueType:SA,OptionalCallExpression:function(e){this.print(e.callee),this.print(e.typeParameters),e.optional&&this.token("?."),this.print(e.typeArguments),this.tokenChar(40);var t=this.enterDelimited();this.printList(e.arguments,void 0,void 0,void 0,void 0,!0),this._noLineTerminatorAfterNode=t,this.rightParens(e)},OptionalIndexedAccessType:function(e){this.print(e.objectType),e.optional&&this.token("?."),this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},OptionalMemberExpression:function(e){var t=e.computed,r=e.optional,a=e.property;if(this.print(e.object),!t&&QT(a))throw new TypeError("Got a MemberExpression for MemberExpression property");$T(a)&&"number"==typeof a.value&&(t=!0),r&&this.token("?."),t?(this.tokenChar(91),this.print(a),this.tokenChar(93)):(r||this.tokenChar(46),this.print(a))},ParenthesizedExpression:function(e){this.tokenChar(40);var t=this.enterDelimited();this.print(e.expression,void 0,!0),this._noLineTerminatorAfterNode=t,this.rightParens(e)},PipelineBareFunction:function(e){this.print(e.callee)},PipelinePrimaryTopicReference:function(){this.tokenChar(35)},PipelineTopicExpression:function(e){this.print(e.expression)},Placeholder:function(e){this.token("%%"),this.print(e.name),this.token("%%"),"Statement"===e.expectedNode&&this.semicolon()},PrivateName:function(e){this.tokenChar(35),this.print(e.id)},Program:function(e){var t;this.printInnerComments(!1);var r=null==(t=e.directives)?void 0:t.length;if(r){var a,n=e.body.length?2:1;this.printSequence(e.directives,void 0,void 0,n),null!=(a=e.directives[r-1].trailingComments)&&a.length||this.newline(n)}this.printSequence(e.body)},QualifiedTypeIdentifier:function(e){this.print(e.qualification),this.tokenChar(46),this.print(e.id)},RegExpLiteral:function(e){this.word("/"+e.pattern+"/"+e.flags,!1)},RestElement:oA,ReturnStatement:function(e){this.word("return"),iP(this,e.argument)},SequenceExpression:function(e){this.printList(e.expressions)},SpreadElement:oA,StaticBlock:function(e){this.word("static"),this.space(),this.tokenChar(123),0===e.body.length?this.tokenChar(125):(this.newline(),this.printSequence(e.body,!0),this.rightBrace(e))},StringLiteral:lA,StringLiteralTypeAnnotation:lA,StringTypeAnnotation:function(){this.word("string")},Super:function(){this.word("super")},SwitchCase:function(e){e.test?(this.word("case"),this.space(),this.print(e.test),this.tokenChar(58)):(this.word("default"),this.tokenChar(58)),e.consequent.length&&(this.newline(),this.printSequence(e.consequent,!0))},SwitchStatement:function(e){this.word("switch"),this.space(),this.tokenChar(40),this.print(e.discriminant),this.tokenChar(41),this.space(),this.tokenChar(123),this.printSequence(e.cases,!0),this.rightBrace(e)},SymbolTypeAnnotation:function(){this.word("symbol")},TSAnyKeyword:function(){this.word("any")},TSArrayType:function(e){this.print(e.elementType,!0),this.tokenChar(91),this.tokenChar(93)},TSAsExpression:function(e){var t=e.expression,r=e.typeAnnotation;this.print(t,!0),this.space(),this.word("as"),this.space(),this.print(r)},TSBigIntKeyword:function(){this.word("bigint")},TSBooleanKeyword:function(){this.word("boolean")},TSCallSignatureDeclaration:function(e){PP.call(this,e),xP(this,e)},TSClassImplements:SP,TSConditionalType:function(e){this.print(e.checkType),this.space(),this.word("extends"),this.space(),this.print(e.extendsType),this.space(),this.tokenChar(63),this.space(),this.print(e.trueType),this.space(),this.tokenChar(58),this.space(),this.print(e.falseType)},TSConstructSignatureDeclaration:function(e){this.word("new"),this.space(),PP.call(this,e),xP(this,e)},TSConstructorType:function(e){e.abstract&&(this.word("abstract"),this.space()),this.word("new"),this.space(),jP.call(this,e)},TSDeclareFunction:function(e,t){e.declare&&(this.word("declare"),this.space()),mP.call(this,e,t,!1),this.semicolon()},TSDeclareMethod:function(e){CA.call(this,e),this.semicolon()},TSEnumBody:TP,TSEnumDeclaration:function(e){var t=e.declare,r=e.const,a=e.id;t&&(this.word("declare"),this.space()),r&&(this.word("const"),this.space()),this.word("enum"),this.space(),this.print(a),this.space(),TP.call(this,e)},TSEnumMember:function(e){var t=e.id,r=e.initializer;this.print(t),r&&(this.space(),this.tokenChar(61),this.space(),this.print(r))},TSExportAssignment:function(e){this.word("export"),this.space(),this.tokenChar(61),this.space(),this.print(e.expression),this.semicolon()},TSExternalModuleReference:function(e){this.token("require("),this.print(e.expression),this.tokenChar(41)},TSFunctionType:function(e){jP.call(this,e)},TSImportEqualsDeclaration:function(e){var t=e.id,r=e.moduleReference;e.isExport&&(this.word("export"),this.space()),this.word("import"),this.space(),this.print(t),this.space(),this.tokenChar(61),this.space(),this.print(r),this.semicolon()},TSImportType:function(e){var t=e.qualifier,r=e.options;this.word("import"),this.tokenChar(40),this.print(e.argument),r&&(this.tokenChar(44),this.print(r)),this.tokenChar(41),t&&(this.tokenChar(46),this.print(t));var a=e.typeParameters;a&&this.print(a)},TSIndexSignature:function(e){var t=e.readonly;e.static&&(this.word("static"),this.space()),t&&(this.word("readonly"),this.space()),this.tokenChar(91),uP.call(this,e.parameters,93),this.print(e.typeAnnotation),xP(this,e)},TSIndexedAccessType:function(e){this.print(e.objectType,!0),this.tokenChar(91),this.print(e.indexType),this.tokenChar(93)},TSInferType:function(e){this.word("infer"),this.print(e.typeParameter)},TSInstantiationExpression:function(e){this.print(e.expression),this.print(e.typeParameters)},TSInterfaceBody:function(e){var t=this;kP(this,e,function(){return t.printJoin(e.body,!0,!0,void 0,void 0,!0)})},TSInterfaceDeclaration:function(e){var t=e.declare,r=e.id,a=e.typeParameters,n=e.extends,s=e.body;t&&(this.word("declare"),this.space()),this.word("interface"),this.space(),this.print(r),this.print(a),null!=n&&n.length&&(this.space(),this.word("extends"),this.space(),this.printList(n)),this.space(),this.print(s)},TSInterfaceHeritage:SP,TSIntersectionType:function(e){wP(this,e,"&")},TSIntrinsicKeyword:function(){this.word("intrinsic")},TSLiteralType:function(e){this.print(e.literal)},TSMappedType:function(e){var t=e.nameType,r=e.optional,a=e.readonly,n=e.typeAnnotation;this.tokenChar(123);var s=this.enterDelimited();this.space(),a&&(EP(this,a),this.word("readonly"),this.space()),this.tokenChar(91),this.word(e.typeParameter.name),this.space(),this.word("in"),this.space(),this.print(e.typeParameter.constraint,void 0,!0),t&&(this.space(),this.word("as"),this.space(),this.print(t,void 0,!0)),this.tokenChar(93),r&&(EP(this,r),this.tokenChar(63)),n&&(this.tokenChar(58),this.space(),this.print(n,void 0,!0)),this.space(),this._noLineTerminatorAfterNode=s,this.tokenChar(125)},TSMethodSignature:function(e){var t=e.kind;"set"!==t&&"get"!==t||(this.word(t),this.space()),RP.call(this,e),PP.call(this,e),xP(this,e)},TSModuleBlock:function(e){var t=this;kP(this,e,function(){return t.printSequence(e.body,!0,!0)})},TSModuleDeclaration:function(e){var t=e.declare,r=e.id,a=e.kind;if(t&&(this.word("declare"),this.space()),e.global||(this.word(null!=a?a:"Identifier"===r.type?"namespace":"module"),this.space()),this.print(r),e.body){for(var n=e.body;"TSModuleDeclaration"===n.type;)this.tokenChar(46),this.print(n.id),n=n.body;this.space(),this.print(n)}else this.semicolon()},TSNamedTupleMember:function(e){this.print(e.label),e.optional&&this.tokenChar(63),this.tokenChar(58),this.space(),this.print(e.elementType)},TSNamespaceExportDeclaration:function(e){this.word("export"),this.space(),this.word("as"),this.space(),this.word("namespace"),this.space(),this.print(e.id),this.semicolon()},TSNeverKeyword:function(){this.word("never")},TSNonNullExpression:function(e){this.print(e.expression),this.tokenChar(33),this.setLastChar(33)},TSNullKeyword:function(){this.word("null")},TSNumberKeyword:function(){this.word("number")},TSObjectKeyword:function(){this.word("object")},TSOptionalType:function(e){this.print(e.typeAnnotation),this.tokenChar(63)},TSParameterProperty:function(e){e.accessibility&&(this.word(e.accessibility),this.space()),e.readonly&&(this.word("readonly"),this.space()),pP.call(this,e.parameter)},TSParenthesizedType:function(e){this.tokenChar(40),this.print(e.typeAnnotation),this.tokenChar(41)},TSPropertySignature:function(e){e.readonly&&(this.word("readonly"),this.space()),RP.call(this,e),this.print(e.typeAnnotation),xP(this,e)},TSQualifiedName:function(e){this.print(e.left),this.tokenChar(46),this.print(e.right)},TSRestType:function(e){this.token("..."),this.print(e.typeAnnotation)},TSSatisfiesExpression:function(e){var t=e.expression,r=e.typeAnnotation;this.print(t,!0),this.space(),this.word("satisfies"),this.space(),this.print(r)},TSStringKeyword:function(){this.word("string")},TSSymbolKeyword:function(){this.word("symbol")},TSTemplateLiteralType:function(e){JT.call(this,e,e.types)},TSThisType:function(){this.word("this")},TSTupleType:function(e){this.tokenChar(91),this.printList(e.elementTypes,this.shouldPrintTrailingComma("]")),this.tokenChar(93)},TSTypeAliasDeclaration:function(e){var t=e.declare,r=e.id,a=e.typeParameters,n=e.typeAnnotation;t&&(this.word("declare"),this.space()),this.word("type"),this.space(),this.print(r),this.print(a),this.space(),this.tokenChar(61),this.space(),this.print(n),this.semicolon()},TSTypeAnnotation:function(e,t){this.token("TSFunctionType"!==t.type&&"TSConstructorType"!==t.type||t.typeAnnotation!==e?":":"=>"),this.space(),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation)},TSTypeAssertion:function(e){var t=e.typeAnnotation,r=e.expression;this.tokenChar(60),this.print(t),this.tokenChar(62),this.space(),this.print(r)},TSTypeLiteral:function(e){var t=this;kP(this,e,function(){return t.printJoin(e.members,!0,!0,void 0,void 0,!0)})},TSTypeOperator:function(e){this.word(e.operator),this.space(),this.print(e.typeAnnotation)},TSTypeParameter:function(e){e.const&&(this.word("const"),this.space()),e.in&&(this.word("in"),this.space()),e.out&&(this.word("out"),this.space()),this.word(e.name),e.constraint&&(this.space(),this.word("extends"),this.space(),this.print(e.constraint)),e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default))},TSTypeParameterDeclaration:vP,TSTypeParameterInstantiation:vP,TSTypePredicate:function(e){e.asserts&&(this.word("asserts"),this.space()),this.print(e.parameterName),e.typeAnnotation&&(this.space(),this.word("is"),this.space(),this.print(e.typeAnnotation.typeAnnotation))},TSTypeQuery:function(e){this.word("typeof"),this.space(),this.print(e.exprName);var t=e.typeParameters;t&&this.print(t)},TSTypeReference:function(e){var t=e.typeParameters;this.print(e.typeName,!!t),this.print(t)},TSUndefinedKeyword:function(){this.word("undefined")},TSUnionType:function(e){wP(this,e,"|")},TSUnknownKeyword:function(){this.word("unknown")},TSVoidKeyword:function(){this.word("void")},TaggedTemplateExpression:function(e){this.print(e.tag),this.print(e.typeParameters),this.print(e.quasi)},TemplateElement:function(){throw new Error("TemplateElement printing is handled in TemplateLiteral")},TemplateLiteral:function(e){JT.call(this,e,e.expressions)},ThisExpression:function(){this.word("this")},ThisTypeAnnotation:function(){this.word("this")},ThrowStatement:function(e){this.word("throw"),iP(this,e.argument)},TopicReference:function(){var e=this.format.topicToken;if(!uA.has(e)){var t=JSON.stringify(e),r=Array.from(uA,function(e){return JSON.stringify(e)});throw new Error('The "topicToken" generator option must be one of '+r.join(", ")+" ("+t+" received instead).")}this.token(e)},TryStatement:function(e){this.word("try"),this.space(),this.print(e.block),this.space(),e.handlers?this.print(e.handlers[0]):this.print(e.handler),e.finalizer&&(this.space(),this.word("finally"),this.space(),this.print(e.finalizer))},TupleTypeAnnotation:function(e){this.tokenChar(91),this.printList(e.types),this.tokenChar(93)},TypeAlias:wA,TypeAnnotation:function(e,t){this.tokenChar(58),this.space(),"ArrowFunctionExpression"===t.type?this.tokenContext|=HA.arrowFlowReturnType:e.optional&&this.tokenChar(63),this.print(e.typeAnnotation)},TypeCastExpression:function(e){this.tokenChar(40),this.print(e.expression),this.print(e.typeAnnotation),this.tokenChar(41)},TypeParameter:function(e){xA.call(this,e),this.word(e.name),e.bound&&this.print(e.bound),e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default))},TypeParameterDeclaration:EA,TypeParameterInstantiation:EA,TypeofTypeAnnotation:function(e){this.word("typeof"),this.space(),this.print(e.argument)},UnaryExpression:function(e){var t=e.operator,r=t.charCodeAt(0);r>=97&&r<=122?(this.word(t),this.space()):this.tokenChar(r),this.print(e.argument)},UnionTypeAnnotation:function(e){this.printJoin(e.types,void 0,void 0,TA)},UpdateExpression:function(e){e.prefix?(this.token(e.operator,!1,0,!0),this.print(e.argument)):(this.print(e.argument,!0),this.token(e.operator,!1,0,!0))},V8IntrinsicIdentifier:function(e){this.tokenChar(37),this.word(e.name)},VariableDeclaration:function(e,t){e.declare&&(this.word("declare"),this.space());var r=e.kind;switch(r){case"await using":this.word("await"),this.space();case"using":this.word("using",!0);break;default:this.word(r)}this.space();var a=!1;if(!aP(t))for(var n,s=i(e.declarations);!(n=s()).done;){if(n.value.init){a=!0;break}}if(this.printList(e.declarations,void 0,void 0,e.declarations.length>1,a?dP:void 0),null!=t)switch(t.type){case"ForStatement":if(t.init===e)return;break;case"ForInStatement":case"ForOfStatement":if(t.left===e)return}this.semicolon()},VariableDeclarator:function(e){this.print(e.id),e.definite&&this.tokenChar(33),this.print(e.id.typeAnnotation),e.init&&(this.space(),this.tokenChar(61),this.space(),this.print(e.init))},Variance:function(e){"plus"===e.kind?this.tokenChar(43):this.tokenChar(45)},VoidPattern:function(){this.word("void")},VoidTypeAnnotation:function(){this.word("void")},WhileStatement:function(e){this.word("while"),this.space(),this.tokenChar(40),this.print(e.test),this.tokenChar(41),this.printBlock(e.body)},WithStatement:function(e){this.word("with"),this.space(),this.tokenChar(40),this.print(e.object),this.tokenChar(41),this.printBlock(e.body)},YieldExpression:function(e){e.delegate?(this.word("yield",!0),this.tokenChar(42),e.argument&&(this.space(),this.print(e.argument))):e.argument?(this.word("yield",!0),this.space(),this.print(e.argument)):this.word("yield")},_classMethodHead:CA,_functionHead:mP,_getRawIdentifier:sA,_interfaceish:vA,_methodHead:fP,_param:pP,_parameters:uP,_params:lP,_predicate:gP,_printAttributes:FP,_printTemplate:JT,_shouldPrintArrowParamsParens:hP,_shouldPrintDecoratorsBeforeExport:tP,_tsPrintClassMemberModifiers:AP,_variance:xA});for(var NA=Object.freeze({__proto__:null,DecimalLiteral:function(e){var t=this.getPossibleRaw(e);this.format.minified||void 0===t?this.word(e.value+"m"):this.word(t)},Noop:function(){},RecordExpression:function(e){var t,r,a=e.properties;if("bar"===this.format.recordAndTupleSyntaxType)t="{|",r="|}";else{if("hash"!==this.format.recordAndTupleSyntaxType&&null!=this.format.recordAndTupleSyntaxType)throw new Error('The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" ('+JSON.stringify(this.format.recordAndTupleSyntaxType)+" received).");t="#{",r="}"}this.token(t),a.length&&(this.space(),this.printList(a,this.shouldPrintTrailingComma(r),!0,!0),this.space()),this.token(r)},TSExpressionWithTypeArguments:function(e){this.print(e.expression),this.print(e.typeParameters)},TupleExpression:function(e){var t,r,a=e.elements,n=a.length;if("bar"===this.format.recordAndTupleSyntaxType)t="[|",r="|]";else{if("hash"!==this.format.recordAndTupleSyntaxType)throw new Error(this.format.recordAndTupleSyntaxType+" is not a valid recordAndTuple syntax type");t="#[",r="]"}this.token(t);for(var s=0;s<a.length;s++){var o=a[s];o&&(s>0&&this.space(),this.print(o),(s<n-1||this.shouldPrintTrailingComma(r))&&this.token(",",!1,s))}this.token(r)}}),BA=new Map,MA=0,FA=0,LA=Object.keys(OA).sort();FA<LA.length;FA++){var UA=LA[FA];UA.startsWith("_")||BA.set(UA,[OA[UA],MA++,void 0])}for(var qA=0,GA=Object.keys(NA);qA<GA.length;qA++){var WA=GA[qA];BA.set(WA,[NA[WA],MA++,void 0])}for(var VA=ja,HA={normal:0,expressionStatement:1,arrowBody:2,exportDefault:4,arrowFlowReturnType:8,forInitHead:16,forInHead:32,forOfHead:64,forInOrInitHeadAccumulate:128,forInOrInitHeadAccumulatePassThroughMask:128},zA=0,KA=Object.keys(XT);zA<KA.length;zA++){var XA=KA[zA],JA=XT[XA];BA.has(XA)&&(BA.get(XA)[2]=JA)}function YA(e){switch(e.type){case"CallExpression":return!0;case"MemberExpression":return YA(e.object)}return!1}function $A(e,t,r){switch(r){case 112:if(t.callee===e&&YA(e))return!0;break;case 42:return!(QA(e)||"CallExpression"===e.type&&QA(e.callee)||"ParenthesizedExpression"===e.type)}return!1}function QA(e){switch(e.type){case"Identifier":return!0;case"MemberExpression":return!e.computed&&"Identifier"===e.property.type&&QA(e.object);default:return!1}}var ZA=p().m(ak),ek=Ry,tk=ja,rk=function(){function e(e,t,r){var a=this;this._tokens=void 0,this._source=void 0,this._nodesToTokenIndexes=new Map,this._nodesOccurrencesCountCache=new Map,this._tokensCache=new Map,this._tokens=t,this._source=r,ek(e,function(e){var t=a._getTokensIndexesOfNode(e);t.length>0&&a._nodesToTokenIndexes.set(e,t)}),this._tokensCache.clear()}var t=e.prototype;return t.has=function(e){return this._nodesToTokenIndexes.has(e)},t.getIndexes=function(e){return this._nodesToTokenIndexes.get(e)},t.find=function(e,t){var r=this._nodesToTokenIndexes.get(e);if(r)for(var a=0;a<r.length;a++){var n=r[a],s=this._tokens[n];if(t(s,n))return s}return null},t.findLastIndex=function(e,t){var r=this._nodesToTokenIndexes.get(e);if(r)for(var a=r.length-1;a>=0;a--){var n=r[a];if(t(this._tokens[n],n))return n}return-1},t.findMatching=function(e,t,r){void 0===r&&(r=0);var a=this._nodesToTokenIndexes.get(e);if(a){"number"==typeof t&&(t=String.fromCharCode(t));var n=0,s=r;if(s>1){var o=this._nodesOccurrencesCountCache.get(e);(null==o?void 0:o.test)===t&&o.count<s&&(n=o.i+1,r-=o.count+1)}for(;n<a.length;n++){var i=this._tokens[a[n]];if(this.matchesOriginal(i,t)){if(0===r)return s>0&&this._nodesOccurrencesCountCache.set(e,{test:t,count:s,i:n}),i;r--}}}return null},t.matchesOriginal=function(e,t){return e.end-e.start===t.length&&(null!=e.value?e.value===t:this._source.startsWith(t,e.start))},t.startMatches=function(e,t){var r=this._nodesToTokenIndexes.get(e);if(!r)return!1;var a=this._tokens[r[0]];return a.start===e.start&&this.matchesOriginal(a,t)},t.endMatches=function(e,t){var r=this._nodesToTokenIndexes.get(e);if(!r)return!1;var a=this._tokens[r[r.length-1]];return a.end===e.end&&this.matchesOriginal(a,t)},t._getTokensIndexesOfNode=function(e){var t;if(null==e.start||null==e.end)return[];var r=this._findTokensOfNode(e,0,this._tokens.length-1),a=r.first,n=r.last,s=a,o=ak(e);"ExportNamedDeclaration"!==e.type&&"ExportDefaultDeclaration"!==e.type||"ClassDeclaration"!==(null==(t=e.declaration)?void 0:t.type)||o.next();for(var d,c=[],l=i(o);!(d=l()).done;){var u=d.value;if(null!=u&&(null!=u.start&&null!=u.end)){for(var p=this._findTokensOfNode(u,s,n),f=p.first,g=s;g<f;g++)c.push(g);s=p.last+1}}for(var m=s;m<=n;m++)c.push(m);return c},t._findTokensOfNode=function(e,t,r){var a=this._tokensCache.get(e);if(a)return a;var n=this._findFirstTokenOfNode(e.start,t,r),s=this._findLastTokenOfNode(e.end,n,r);return this._tokensCache.set(e,{first:n,last:s}),{first:n,last:s}},t._findFirstTokenOfNode=function(e,t,r){for(;t<=r;){var a=r+t>>1;if(e<this._tokens[a].start)r=a-1;else{if(!(e>this._tokens[a].start))return a;t=a+1}}return t},t._findLastTokenOfNode=function(e,t,r){for(;t<=r;){var a=r+t>>1;if(e<this._tokens[a].end)r=a-1;else{if(!(e>this._tokens[a].end))return a;t=a+1}}return r},o(e)}();function ak(e){var t,r,a,n,s,o;return p().w(function(d){for(;;)switch(d.n){case 0:if("TemplateLiteral"!==e.type){d.n=6;break}return d.n=1,e.quasis[0];case 1:t=1;case 2:if(!(t<e.quasis.length)){d.n=5;break}return d.n=3,e.expressions[t-1];case 3:return d.n=4,e.quasis[t];case 4:t++,d.n=2;break;case 5:return d.a(2);case 6:r=tk[e.type],a=i(r);case 7:if((n=a()).done){d.n=12;break}if(s=n.value,o=e[s]){d.n=8;break}return d.a(3,11);case 8:if(!Array.isArray(o)){d.n=10;break}return d.d(g(o),9);case 9:d.n=11;break;case 10:return d.n=11,o;case 11:d.n=7;break;case 12:return d.a(2)}},ZA)}var nk=$t,sk=nr,ok=er,ik=De,dk=Wt,ck=Kt,lk=/e/i,uk=/\.0+$/,pk=/[\n\r\u2028\u2029]/,fk=/[\n\r\u2028\u2029]|\*\//;function gk(e){return"CommentLine"===e.type||pk.test(e.value)}var mk=function(){function e(e,t,r,a){void 0===r&&(r=null),void 0===a&&(a=null),this.tokenContext=HA.normal,this._tokens=null,this._originalCode=null,this._currentNode=null,this._currentTypeId=null,this._indent=0,this._indentRepeat=0,this._insideAux=!1,this._noLineTerminator=!1,this._noLineTerminatorAfterNode=null,this._printAuxAfterOnNextUserNode=!1,this._printedComments=new Set,this._lastCommentLine=0,this._innerCommentsState=0,this._flags=0,this.tokenMap=null,this._boundGetRawIdentifier=null,this._printSemicolonBeforeNextNode=-1,this._printSemicolonBeforeNextToken=-1,this.format=e,this._tokens=r,this._originalCode=a,this._indentRepeat=e.indent.style.length,this._inputMap=(null==t?void 0:t._inputMap)||null,this._buf=new AT(t,e.indent.style[0]);var n=e.preserveFormat,s=e.compact,o=e.concise,i=e.retainLines,d=e.retainFunctionParens;n&&(this._flags|=1),s&&(this._flags|=2),o&&(this._flags|=4),i&&(this._flags|=8),d&&(this._flags|=16),(e.auxiliaryCommentBefore||e.auxiliaryCommentAfter)&&(this._flags|=32)}var t=e.prototype;return t.enterDelimited=function(){var e=this._noLineTerminatorAfterNode;return null!==e&&(this._noLineTerminatorAfterNode=null),e},t.generate=function(e){return this.format.preserveFormat&&(this.tokenMap=new rk(e,this._tokens,this._originalCode),this._boundGetRawIdentifier=sA.bind(this)),this.print(e),this._maybeAddAuxComment(),this._buf.get()},t.indent=function(e){void 0===e&&(e=this._flags),7&e||(this._indent+=this._indentRepeat)},t.dedent=function(e){void 0===e&&(e=this._flags),7&e||(this._indent-=this._indentRepeat)},t.semicolon=function(e){void 0===e&&(e=!1);var t=this._flags;if(32&t&&this._maybeAddAuxComment(),1&t){var r=this._currentNode;if(null!=r.start&&null!=r.end){if(!this.tokenMap.endMatches(r,";"))return void(this._printSemicolonBeforeNextNode=this._buf.getCurrentLine());var a=this.tokenMap.getIndexes(this._currentNode);this._catchUpTo(this._tokens[a[a.length-1]].loc.start)}}e?this._appendChar(59):this._queue(59),this._noLineTerminator=!1},t.rightBrace=function(e){this.format.minified&&this._buf.removeLastSemicolon(),this.sourceWithOffset("end",e.loc,-1),this.tokenChar(125)},t.rightParens=function(e){this.sourceWithOffset("end",e.loc,-1),this.tokenChar(41)},t.space=function(e){if(void 0===e&&(e=!1),!(3&this._flags))if(e)this._space();else{var t=this.getLastChar(!0);0!==t&&32!==t&&10!==t&&this._space()}},t.word=function(e,t){void 0===t&&(t=!1),this.tokenContext&=HA.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(e);var r=this._flags;32&r&&this._maybeAddAuxComment(),1&r&&this._catchUpToCurrentToken(e);var a=this.getLastChar();(-2===a||-3===a||47===a&&47===e.charCodeAt(0))&&this._space(),this._append(e,!1),this.setLastChar(-3),this._noLineTerminator=t},t.number=function(e,t){this.word(e),!Number.isInteger(t)||function(e){if(e.length>2&&48===e.charCodeAt(0)){var t=e.charCodeAt(1);return 98===t||111===t||120===t}return!1}(e)||lk.test(e)||uk.test(e)||46===e.charCodeAt(e.length-1)||this.setLastChar(-2)},t.token=function(e,t,r,a){void 0===t&&(t=!1),void 0===r&&(r=0),void 0===a&&(a=!1),this.tokenContext&=HA.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(e,r);var n=this._flags;if(32&n&&this._maybeAddAuxComment(),1&n&&this._catchUpToCurrentToken(e,r),a){var s=e.charCodeAt(0);((45===s&&"--"===e||61===s)&&33===this.getLastChar()||43===s&&43===this.getLastChar()||45===s&&45===this.getLastChar()||46===s&&-2===this.getLastChar())&&this._space()}this._append(e,t),this._noLineTerminator=!1},t.tokenChar=function(e,t){void 0===t&&(t=0),this.tokenContext&=HA.forInOrInitHeadAccumulatePassThroughMask,this._maybePrintInnerComments(e,t);var r=this._flags;32&r&&this._maybeAddAuxComment(),1&r&&this._catchUpToCurrentToken(e,t),(43===e&&43===this.getLastChar()||45===e&&45===this.getLastChar()||46===e&&-2===this.getLastChar())&&this._space(),this._appendChar(e),this._noLineTerminator=!1},t.newline=function(e,t){if(void 0===e&&(e=1),void 0===t&&(t=this._flags),!(e<=0||10&t))if(4&t)this.space();else{e>2&&(e=2),e-=this._buf.getNewlineCount();for(var r=0;r<e;r++)this._newline()}},t.endsWith=function(e){return this.getLastChar(!0)===e},t.getLastChar=function(e){return this._buf.getLastChar(e)},t.setLastChar=function(e){this._buf._last=e},t.exactSource=function(e,t){e?(this._catchUp("start",e),this._buf.exactSource(e,t)):t()},t.source=function(e,t){t&&(this._catchUp(e,t),this._buf.source(e,t))},t.sourceWithOffset=function(e,t,r){t&&!this.format.preserveFormat&&(this._catchUp(e,t),this._buf.sourceWithOffset(e,t,r))},t.sourceIdentifierName=function(e,t){if(this._buf._canMarkIdName){var r=this._buf._sourcePosition;r.identifierNamePos=t,r.identifierName=e}},t._space=function(){this._queue(32)},t._newline=function(){32===this._buf._queuedChar&&(this._buf._queuedChar=0),this._appendChar(10,!0)},t._catchUpToCurrentToken=function(e,t){void 0===t&&(t=0);var r=this.tokenMap.findMatching(this._currentNode,e,t);r&&this._catchUpTo(r.loc.start),-1!==this._printSemicolonBeforeNextToken&&this._printSemicolonBeforeNextToken===this._buf.getCurrentLine()&&this._appendChar(59,!0),this._printSemicolonBeforeNextToken=-1,this._printSemicolonBeforeNextNode=-1},t._append=function(e,t){this._maybeIndent(),this._buf.append(e,t)},t._appendChar=function(e,t){t||this._maybeIndent(),this._buf.appendChar(e)},t._queue=function(e){this._buf.queue(e),this.setLastChar(-1)},t._maybeIndent=function(){var e=this._shouldIndent();e>0&&this._buf._appendChar(-1,e,!1)},t._shouldIndent=function(){return this.endsWith(10)?this._indent:0},t.catchUp=function(e){if(this.format.retainLines)for(var t=e-this._buf.getCurrentLine(),r=0;r<t;r++)this._newline()},t._catchUp=function(e,t){var r=this._flags;if(1&r){var a=null==t?void 0:t[e];null!=a&&this._catchUpTo(a)}else 8&r&&null!=t&&t[e]&&this.catchUp(t[e].line)},t._catchUpTo=function(e){var t=e.line,r=e.column,a=e.index,n=t-this._buf.getCurrentLine();if(!(n>0&&this._noLineTerminator)){for(var s=0;s<n;s++)this._newline();var o=n>0?r:r-this._buf.getCurrentColumn();if(o>0){var i=this._originalCode?this._originalCode.slice(a-o,a).replace(/(?:[\0-\x08\n\r-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g," "):" ".repeat(o);this._append(i,!1),this.setLastChar(32)}}},t.printTerminatorless=function(e){this._noLineTerminator=!0,this.print(e)},t.print=function(e,t,r,a){var n,s;if(void 0===t&&(t=!1),void 0===r&&(r=!1),e){this._innerCommentsState=0;var o=e.type,i=e.loc,d=e.extra,c=this._flags,l=!1;e._compact&&(this._flags|=4,l=!0);var u=BA.get(o);if(void 0===u)throw new ReferenceError("unknown node of type "+JSON.stringify(o)+" with constructor "+JSON.stringify(e.constructor.name));var p,f=y(u,3),g=f[0],m=f[1],h=f[2],b=this._currentNode,v=this._currentTypeId;this._currentNode=e,this._currentTypeId=m,1&c&&(this._printSemicolonBeforeNextToken=this._printSemicolonBeforeNextNode),32&c&&(p=this._insideAux,this._insideAux=null==i,this._maybeAddAuxComment(this._insideAux&&!p));var x=0;r&&((x=this.tokenContext)&HA.forInOrInitHeadAccumulate?this.tokenContext=0:x=0);var R=null!=d&&d.parenthesized,j=R&&1&c||R&&16&c&&71===m||b&&($A(e,b,v)||null!=h&&h(e,b,v,this.tokenContext,1&c?this._boundGetRawIdentifier:void 0));if(!j&&R&&null!=(n=e.leadingComments)&&n.length&&"CommentBlock"===e.leadingComments[0].type)switch(v){case 65:case 243:case 6:case 143:break;case 17:case 130:case 112:if(b.callee!==e)break;default:j=!0}var w,E,S=!1;if(!j&&this._noLineTerminator&&(null!=(s=e.leadingComments)&&s.some(gk)||8&c&&i&&i.start.line>this._buf.getCurrentLine())&&(j=!0,S=!0),!j)if(t||(t=!!b&&this._noLineTerminatorAfterNode===b&&function(e,t){for(var r=VA[e.type],a=r.length-1;a>=0;a--){var n=e[r[a]];if(n===t)return!0;if(Array.isArray(n)){for(var s=n.length-1;s>=0&&null===n[s];)s--;return s>=0&&n[s]===t}if(n)return!1}return!1}(b,e)),t)null!=(E=e.trailingComments)&&E.some(gk)?nk(e)&&(j=!0):(w=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=e);j&&(this.tokenChar(40),S&&this.indent(),this._innerCommentsState=0,r||(x=this.tokenContext),x&HA.forInOrInitHeadAccumulate&&(this.tokenContext=0),w=this._noLineTerminatorAfterNode,this._noLineTerminatorAfterNode=null),this._printLeadingComments(e,b),this.exactSource(139===m||66===m?null:i,g.bind(this,e,b)),j?(this._printTrailingComments(e,b),S&&(this.dedent(),this.newline()),this.tokenChar(41),this._noLineTerminator=t):t&&!this._noLineTerminator?(this._noLineTerminator=!0,this._printTrailingComments(e,b)):this._printTrailingComments(e,b,a),x&&(this.tokenContext=x),this._currentNode=b,this._currentTypeId=v,l&&(this._flags=c),32&c&&(this._insideAux=p),null!=w&&(this._noLineTerminatorAfterNode=w),this._innerCommentsState=0}},t._maybeAddAuxComment=function(e){e&&this._printAuxBeforeComment(),this._insideAux||this._printAuxAfterComment()},t._printAuxBeforeComment=function(){if(!this._printAuxAfterOnNextUserNode){this._printAuxAfterOnNextUserNode=!0;var e=this.format.auxiliaryCommentBefore;e&&this._printComment({type:"CommentBlock",value:e},0)}},t._printAuxAfterComment=function(){if(this._printAuxAfterOnNextUserNode){this._printAuxAfterOnNextUserNode=!1;var e=this.format.auxiliaryCommentAfter;e&&this._printComment({type:"CommentBlock",value:e},0)}},t.getPossibleRaw=function(e){var t=e.extra;if(null!=(null==t?void 0:t.raw)&&null!=t.rawValue&&e.value===t.rawValue)return t.raw},t.printJoin=function(e,t,r,a,n,s,o){if(null!=e&&e.length){var i=this._flags;if(null==r&&8&i){var d,c=null==(d=e[0].loc)?void 0:d.start.line;null!=c&&c!==this._buf.getCurrentLine()&&(r=!0)}r&&this.indent(i);for(var l=e.length,u=0;u<l;u++){var p=e[u];if(p&&(t&&0===u&&this._buf.hasContent()&&this.newline(1,i),this.print(p,!1,s,o||0),null!=a&&(u<l-1?a.call(this,u,!1):n&&a.call(this,u,!0)),t))if(u+1===l)this.newline(1,i);else{var f=this._lastCommentLine;if(f>0){var g,m=((null==(g=e[u+1].loc)?void 0:g.start.line)||0)-f;if(m>=0){this.newline(m||1,i);continue}}this.newline(1,i)}}r&&this.dedent(i)}},t.printAndIndentOnComments=function(e){var t=e.leadingComments&&e.leadingComments.length>0;t&&this.indent(),this.print(e),t&&this.dedent()},t.printBlock=function(e){"EmptyStatement"!==e.type&&this.space(),this.print(e)},t._printTrailingComments=function(e,t,r){var a=e.innerComments,n=e.trailingComments;null!=a&&a.length&&this._printComments(2,a,e,t,r),null!=n&&n.length?this._printComments(2,n,e,t,r):this._lastCommentLine=0},t._printLeadingComments=function(e,t){var r=e.leadingComments;null!=r&&r.length&&this._printComments(0,r,e,t)},t._maybePrintInnerComments=function(e,t){var r,a=this._innerCommentsState;switch(3&a){case 0:return void(this._innerCommentsState=5);case 1:this.printInnerComments((4&a)>0,null==(r=this.tokenMap)?void 0:r.findMatching(this._currentNode,e,t))}},t.printInnerComments=function(e,t){void 0===e&&(e=!0);var r=this._currentNode,a=r.innerComments;if(null!=a&&a.length){var n=this.endsWith(32);switch(e&&this.indent(),this._printComments(1,a,r,void 0,void 0,t)){case 2:this._innerCommentsState=2;case 1:n&&this.space()}e&&this.dedent()}else this._innerCommentsState=2},t.noIndentInnerCommentsHere=function(){this._innerCommentsState&=-5},t.printSequence=function(e,t,r,a){this.printJoin(e,!0,null!=t&&t,void 0,void 0,r,a)},t.printList=function(e,t,r,a,n,s){this.printJoin(e,r,a,null!=n?n:yk,t,s)},t.shouldPrintTrailingComma=function(e){var t=this;if(!this.tokenMap)return null;var r=this.tokenMap.findLastIndex(this._currentNode,function(r){return t.tokenMap.matchesOriginal(r,"number"==typeof e?String.fromCharCode(e):e)});return r<=0?null:this.tokenMap.matchesOriginal(this._tokens[r-1],",")},t._shouldPrintComment=function(e,t){if(e.ignore)return 0;if(this._printedComments.has(e))return 0;if(this._noLineTerminator&&fk.test(e.value))return 2;if(t&&this.tokenMap){var r=this.tokenMap.find(this._currentNode,function(t){return t.value===e.value});if(r&&r.start>t.start)return 2}return this._printedComments.add(e),this.format.shouldPrintComment(e.value)?1:0},t._printComment=function(e,t){var r,a=this._noLineTerminator,n="CommentBlock"===e.type,s=n&&1!==t&&!a;switch(s&&this._buf.hasContent()&&2!==t&&this.newline(1),this.getLastChar(!0)){case 47:this._space();case 91:case 123:case 40:break;default:this.space()}if(n){if(r="/*"+e.value+"*/",this.format.indent.adjustMultilineComment){var o,i=null==(o=e.loc)?void 0:o.start.column;if(i){var d=new RegExp("\\n\\s{1,"+i+"}","g");r=r.replace(d,"\n")}if(4&this._flags)r=r.replace(/\n(?!$)/g,"\n");else{var c=this.format.retainLines?0:this._buf.getCurrentColumn();(this._shouldIndent()||this.format.retainLines)&&(c+=this._indent),r=r.replace(/\n(?!$)/g,"\n"+" ".repeat(c))}}}else r=a?"/*"+e.value+"*/":"//"+e.value;this.source("start",e.loc),this._append(r,n),n||a||this._newline(),s&&3!==t&&this.newline(1)},t._printComments=function(e,t,r,a,n,s){void 0===n&&(n=0);for(var o=r.loc,i=t.length,d=!!o,c=d?o.start.line:0,l=d?o.end.line:0,u=0,p=0,f=this._noLineTerminator,g=this._flags,m=0;m<i;m++){var y=t[m],h=this._shouldPrintComment(y,s);if(2===h)return 0===m?0:1;if(d&&y.loc&&1===h){var b=y.loc.start.line,v=y.loc.end.line;if(0===e){var x=0;if(0===m?!this._buf.hasContent()||"CommentLine"!==y.type&&b===v||(x=p=1):x=b-u,u=v,x>0&&!f&&this.newline(x,g),this._printComment(y,1),m+1===i){var R=Math.max(c-u,p);R>0&&!f&&this.newline(R,g),u=c}}else if(1===e){var j=b-(0===m?c:u);if(u=v,j>0&&!f&&this.newline(j,g),this._printComment(y,1),m+1===i){var w=Math.min(1,l-u);w>0&&!f&&this.newline(w,g),u=l}}else{var E=b-(0===m?l-n:u);u=v,E>0&&!f&&this.newline(E,g),this._printComment(y,1)}}else{if(d=!1,1!==h)continue;if(1===i){var S=y.loc?y.loc.start.line===y.loc.end.line:!pk.test(y.value),T=S&&!ok(r)&&!ik(a)&&!dk(a)&&!ck(r);0===e?this._printComment(y,T&&"ObjectExpression"!==r.type||S&&sk(a)&&a.body===r?1:0):T&&2===e?this._printComment(y,1):this._printComment(y,0)}else 1!==e||"ObjectExpression"===r.type&&r.properties.length>1||"ClassBody"===r.type||"TSInterfaceBody"===r.type?this._printComment(y,0):this._printComment(y,0===m?2:m===i-1?3:0)}}return 2===e&&d&&u&&(this._lastCommentLine=u),2},o(e)}();function yk(e,t){this.tokenChar(44,e),t||this.space()}function hk(e,t,r){var a;if(t.experimental_preserveFormat){if("string"!=typeof e)throw new Error("`experimental_preserveFormat` requires the original `code` to be passed to @babel/generator as a string");if(!t.retainLines)throw new Error("`experimental_preserveFormat` requires `retainLines` to be set to `true`");if(t.compact&&"auto"!==t.compact)throw new Error("`experimental_preserveFormat` is not compatible with the `compact` option");if(t.minified)throw new Error("`experimental_preserveFormat` is not compatible with the `minified` option");if(t.jsescOption)throw new Error("`experimental_preserveFormat` is not compatible with the `jsescOption` option");if(!Array.isArray(r.tokens))throw new Error("`experimental_preserveFormat` requires the AST to have attached the token of the input code. Make sure to enable the `tokens: true` parser option.")}var n={auxiliaryCommentBefore:t.auxiliaryCommentBefore,auxiliaryCommentAfter:t.auxiliaryCommentAfter,shouldPrintComment:t.shouldPrintComment,preserveFormat:t.experimental_preserveFormat,retainLines:t.retainLines,retainFunctionParens:t.retainFunctionParens,comments:null==t.comments||t.comments,compact:t.compact,minified:t.minified,concise:t.concise,indent:{adjustMultilineComment:!0,style:" "},jsescOption:Object.assign({quotes:"double",wrap:!0,minimal:!1},t.jsescOption),topicToken:t.topicToken};n.decoratorsBeforeExport=t.decoratorsBeforeExport,n.jsescOption.json=t.jsonCompatibleStrings,n.recordAndTupleSyntaxType=null!=(a=t.recordAndTupleSyntaxType)?a:"hash",n.importAttributesKeyword=t.importAttributesKeyword,n.minified?(n.compact=!0,n.shouldPrintComment=n.shouldPrintComment||function(){return n.comments}):n.shouldPrintComment=n.shouldPrintComment||function(e){return n.comments||e.includes("@license")||e.includes("@preserve")},"auto"===n.compact&&(n.compact="string"==typeof e&&e.length>5e5,n.compact&&console.error("[BABEL] Note: The code generator has deoptimised the styling of "+t.filename+" as it exceeds the max of 500KB.")),(n.compact||n.preserveFormat)&&(n.indent.adjustMultilineComment=!1);var s=n.auxiliaryCommentBefore,o=n.auxiliaryCommentAfter,i=n.shouldPrintComment;return s&&!i(s)&&(n.auxiliaryCommentBefore=void 0),o&&!i(o)&&(n.auxiliaryCommentAfter=void 0),n}function bk(e,t,r){void 0===t&&(t={});var a=hk(r,t,e),n=t.sourceMaps?new ST(t,r):null;return new mk(a,n,e.tokens,"string"==typeof r?r:null).generate(e)}e.CodeGenerator=function(){function e(e,t,r){void 0===t&&(t={}),this._ast=void 0,this._format=void 0,this._map=void 0,this._ast=e,this._format=hk(r,t,e),this._map=t.sourceMaps?new ST(t,r):null}return e.prototype.generate=function(){return new mk(this._format,this._map).generate(this._ast)},o(e)}();var vk=Object.freeze({__proto__:null,default:bk,generate:bk}),xk=ja;var Rk=$g,jk=em,wk=$g,Ek=br,Sk=Rr;function Tk(e){return e.every(function(e){return Ek(e)})?Rk?Rk(e):wk(e):e.every(function(e){return Sk(e)})&&jk?jk(e):void 0}var Pk=la,Ak=Xg,kk=hi,Ck=Ui;function _k(e,t,r){var a=e.constantViolations.slice();return a.unshift(e.path),a.filter(function(e){var a=(e=e.resolve())._guessExecutionStatusRelativeTo(t);return r&&"unknown"===a&&r.push(e),"before"===a})}function Ik(e,t){var r,a,n,s=t.node.operator,o=t.get("right").resolve(),i=t.get("left").resolve();if(i.isIdentifier({name:e})?r=o:o.isIdentifier({name:e})&&(r=i),r)return"==="===s?r.getTypeAnnotation():Pk.includes(s)?kk():void 0;if(("==="===s||"=="===s)&&(i.isUnaryExpression({operator:"typeof"})?(a=i,n=o):o.isUnaryExpression({operator:"typeof"})&&(a=o,n=i),a&&a.get("argument").isIdentifier({name:e})&&(n=n.resolve()).isLiteral())){var d=n.node.value;if("string"==typeof d)return Ak(d)}}function Dk(e,t,r){var a=function(e,t,r){for(var a;a=t.parentPath;){if(a.isIfStatement()||a.isConditionalExpression()){if("test"===t.key)return;return a}if(a.isFunction()&&(null==r||a.parentPath.scope.getBinding(r)!==e))return;t=a}}(e,t,r);if(a){for(var n=[a.get("test")],s=[],o=0;o<n.length;o++){var i=n[o];if(i.isLogicalExpression())"&&"===i.node.operator&&(n.push(i.get("left")),n.push(i.get("right")));else if(i.isBinaryExpression()){var d=Ik(r,i);d&&s.push(d)}}return s.length?{typeAnnotation:Tk(s),ifStatement:a}:Dk(e,a,r)}}var Ok=fa,Nk=ha,Bk=ga,Mk=ba,Fk=va,Lk=qo,Uk=Go,qk=Wo,Gk=Sr,Wk=ii,Vk=Ps,Hk=Ho,zk=hi,Kk=Pi,Xk=Ci,Jk=Fi,Yk=Ui,$k=ie;function Qk(e){return e.typeAnnotation}function Zk(e){return e.typeAnnotation}function eC(){return Wk(Vk("Array"))}function tC(){return eC()}function rC(){return Wk(Vk("Function"))}Qk.validParent=!0,Zk.validParent=!0,tC.validParent=!0;var aC=Gk("Array.from"),nC=Gk("Object.keys"),sC=Gk("Object.values"),oC=Gk("Object.entries");function iC(e){if((e=e.resolve()).isFunction()){var t=e.node;if(t.async)return t.generator?Wk(Vk("AsyncIterator")):Wk(Vk("Promise"));if(t.generator)return Wk(Vk("Iterator"));if(e.node.returnType)return e.node.returnType}}var dC=Object.freeze({__proto__:null,ArrayExpression:eC,ArrowFunctionExpression:rC,AssignmentExpression:function(){return this.get("right").getTypeAnnotation()},BinaryExpression:function(e){var t=e.operator;if(Bk.includes(t))return zk();if(Ok.includes(t))return qk();if("+"===t){var r=this.get("right"),a=this.get("left");return a.isBaseType("number")&&r.isBaseType("number")?zk():a.isBaseType("string")||r.isBaseType("string")?Kk():Jk([Kk(),zk()])}},BooleanLiteral:function(){return qk()},CallExpression:function(){var e=this.node.callee;return nC(e)?Uk(Kk()):aC(e)||sC(e)||$k(e,{name:"Array"})?Uk(Lk()):oC(e)?Uk(Xk([Kk(),Lk()])):iC(this.get("callee"))},ClassDeclaration:rC,ClassExpression:rC,ConditionalExpression:function(){return Tk([this.get("consequent").getTypeAnnotation(),this.get("alternate").getTypeAnnotation()])},FunctionDeclaration:rC,FunctionExpression:rC,Identifier:function(e){if(this.isReferenced()){var t=this.scope.getBinding(e.name);return t?t.identifier.typeAnnotation?t.identifier.typeAnnotation:function(e,t,r){var a=[],n=[],s=_k(e,t,n),o=Dk(e,t,r);if(o){var d=_k(e,o.ifStatement);s=s.filter(function(e){return!d.includes(e)}),a.push(o.typeAnnotation)}if(s.length){var c;(c=s).push.apply(c,n);for(var l,u=i(s);!(l=u()).done;){var p=l.value;a.push(p.getTypeAnnotation())}}if(!a.length)return;return Tk(a)}(t,this,e.name):"undefined"===e.name?Ck():"NaN"===e.name||"Infinity"===e.name?kk():void e.name}},LogicalExpression:function(){return Tk([this.get("left").getTypeAnnotation(),this.get("right").getTypeAnnotation()])},NewExpression:function(e){if("Identifier"===e.callee.type)return Wk(e.callee)},NullLiteral:function(){return Hk()},NumericLiteral:function(){return zk()},ObjectExpression:function(){return Wk(Vk("Object"))},ParenthesizedExpression:function(){return this.get("expression").getTypeAnnotation()},RegExpLiteral:function(){return Wk(Vk("RegExp"))},RestElement:tC,SequenceExpression:function(){return this.get("expressions").pop().getTypeAnnotation()},StringLiteral:function(){return Kk()},TSAsExpression:Zk,TSNonNullExpression:function(){return this.get("expression").getTypeAnnotation()},TaggedTemplateExpression:function(){return iC(this.get("tag"))},TemplateLiteral:function(){return Kk()},TypeCastExpression:Qk,UnaryExpression:function(e){var t=e.operator;return"void"===t?Yk():Mk.includes(t)?zk():Fk.includes(t)?Kk():Nk.includes(t)?qk():void 0},UpdateExpression:function(e){var t=e.operator;if("++"===t||"--"===t)return zk()},VariableDeclarator:function(){if(this.get("id").isIdentifier())return this.get("init").getTypeAnnotation()}}),cC=qo,lC=ct,uC=lt,pC=ut,fC=mt,gC=vr,mC=ft,yC=ie,hC=gt,bC=yt,vC=ht,xC=qt,RC=Yt,jC=Ut,wC=bt,EC=vt,SC=Rt,TC=jt,PC=Pi,AC=Ui;var kC=new WeakSet;function CC(){var e=this.node;if(e){if(e.typeAnnotation)return e.typeAnnotation;if(!kC.has(e)){kC.add(e);try{var t,r=dC[e.type];if(r)return r.call(this,e);if(null!=(t=r=dC[this.parentPath.type])&&t.validParent)return this.parentPath.getTypeAnnotation()}finally{kC.delete(e)}}}else if("init"===this.key&&this.parentPath.isVariableDeclarator()){var a=this.parentPath.parentPath,n=a.parentPath;return"left"===a.key&&n.isForInStatement()?PC():"left"===a.key&&n.isForOfStatement()?cC():AC()}}function _C(e,t,r){if("string"===e)return vC(t);if("number"===e)return bC(t);if("boolean"===e)return pC(t);if("any"===e)return lC(t);if("mixed"===e)return hC(t);if("empty"===e)return fC(t);if("void"===e)return TC(t);if(r)return!1;throw new Error("Unknown base type "+e)}var IC=[function(e,t){if("test"===e.key&&(t.isWhile()||t.isSwitchCase())||"declaration"===e.key&&t.isExportDeclaration()||"body"===e.key&&t.isLabeledStatement()||"declarations"===e.listKey&&t.isVariableDeclaration()&&1===t.node.declarations.length||"expression"===e.key&&t.isExpressionStatement())return t.remove(),!0},function(e,t){if(t.isSequenceExpression()&&1===t.node.expressions.length)return t.replaceWith(t.node.expressions[0]),!0},function(e,t){if(t.isBinary())return"left"===e.key?t.replaceWith(t.node.right):t.replaceWith(t.node.left),!0},function(e,t){if(t.isIfStatement()&&"consequent"===e.key||"body"===e.key&&(t.isLoop()||t.isArrowFunctionExpression()))return e.replaceWith({type:"BlockStatement",directives:[],body:[]}),!0}];function DC(){var e=this,t=Iy(this.node,!1,!1,!0);Object.keys(t).forEach(function(t){return e.scope.removeBinding(t)})}function OC(){if(this.parentPath)for(var e,t=i(IC);!(e=t()).done;){if((0,e.value)(this,this.parentPath))return!0}}function NC(){Array.isArray(this.container)?(this.container.splice(this.key,1),f_.call(this,this.key,-1)):z_.call(this,null)}function BC(){var e;(this._traverseFlags|=XD|zD,this.parent)&&(null==(e=Aw(this))||e.delete(this.node));this.node=null}function MC(){if(this.removed)throw this.buildCodeFrameError("NodePath has been removed so is read-only.")}var FC=Xy,LC=sm,UC=rd,qC=Zs,GC=eo,WC={ReferencedIdentifier:function(e,t){if(!e.isJSXIdentifier()||!FC.isCompatTag(e.node.name)||e.parentPath.isJSXMemberExpression()){if("this"===e.node.name){var r=e.scope;do{if(r.path.isFunction()&&!r.path.isArrowFunctionExpression())break}while(r=r.parent);r&&t.breakOnScopePaths.push(r.path)}var a=e.scope.getBinding(e.node.name);if(a){for(var n,s=i(a.constantViolations);!(n=s()).done;){if(n.value.scope!==a.path.scope)return t.mutableBinding=!0,void e.stop()}a===t.scope.getBinding(e.node.name)&&(t.bindings[e.node.name]=a)}}}},VC=function(){function e(e,t){this.breakOnScopePaths=void 0,this.bindings=void 0,this.mutableBinding=void 0,this.scopes=void 0,this.scope=void 0,this.path=void 0,this.attachAfter=void 0,this.breakOnScopePaths=[],this.bindings={},this.mutableBinding=!1,this.scopes=[],this.scope=t,this.path=e,this.attachAfter=!1}var t=e.prototype;return t.isCompatibleScope=function(e){for(var t=0,r=Object.keys(this.bindings);t<r.length;t++){var a=r[t],n=this.bindings[a];if(!e.bindingIdentifierEquals(a,n.identifier))return!1}return!0},t.getCompatibleScopes=function(){var e=this.path.scope;do{if(!this.isCompatibleScope(e))break;if(this.scopes.push(e),this.breakOnScopePaths.includes(e.path))break}while(e=e.parent)},t.getAttachmentPath=function(){var e=this._getAttachmentPath();if(e){var t=e.scope;if(t.path===e&&(t=e.scope.parent),t.path.isProgram()||t.path.isFunction())for(var r=0,a=Object.keys(this.bindings);r<a.length;r++){var n=a[r];if(t.hasOwnBinding(n)){var s=this.bindings[n];if("param"!==s.kind&&"params"!==s.path.parentKey)if(this.getAttachmentParentForPath(s.path).key>=e.key){this.attachAfter=!0,e=s.path;for(var o,d=i(s.constantViolations);!(o=d()).done;){var c=o.value;this.getAttachmentParentForPath(c).key>e.key&&(e=c)}}}}return e}},t._getAttachmentPath=function(){var e=this.scopes.pop();if(e)if(e.path.isFunction()){if(!this.hasOwnParamBindings(e))return this.getNextScopeAttachmentParent();if(this.scope===e)return;for(var t=e.path.get("body").get("body"),r=0;r<t.length;r++)if(!t[r].node._blockHoist)return t[r]}else if(e.path.isProgram())return this.getNextScopeAttachmentParent()},t.getNextScopeAttachmentParent=function(){var e=this.scopes.pop();if(e)return this.getAttachmentParentForPath(e.path)},t.getAttachmentParentForPath=function(e){do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())return e}while(e=e.parentPath);return e},t.hasOwnParamBindings=function(e){for(var t=0,r=Object.keys(this.bindings);t<r.length;t++){var a=r[t];if(e.hasOwnBinding(a)){var n=this.bindings[a];if("param"===n.kind&&n.constant)return!0}}return!1},t.run=function(){if(this.path.traverse(WC,this),!this.mutableBinding){this.getCompatibleScopes();var e=this.getAttachmentPath();if(e&&e.getFunctionParent()!==this.path.getFunctionParent()){var t=e.scope.generateUidIdentifier("ref"),r=GC(t,this.path.node),a=y(e[this.attachAfter?"insertAfter":"insertBefore"]([e.isVariableDeclarator()?r:qC("var",[r])]),1)[0],n=this.path.parentPath;return n.isJSXElement()&&this.path.container===n.node.children&&(t=UC(t)),this.path.replaceWith(LC(t)),a.isVariableDeclarator()?a.get("init"):a.get("declarations.0.init")}}},o(e)}(),HC=so,zC=Hg,KC=is,XC=ps,JC=gs,YC=sm,$C=Rs,QC=$,ZC=Z,e_=Fe,t_=$t,r_=ie,a_=we,n_=Je,s_=Xs;function o_(e){MC.call(this);var t=g_.call(this,e),r=this.parentPath,a=this.parent;if(r.isExpressionStatement()||r.isLabeledStatement()||e_(a)||r.isExportDefaultDeclaration()&&this.isDeclaration())return r.insertBefore(t);if(this.isNodeType("Expression")&&!this.isJSXElement()||r.isForStatement()&&"init"===this.key)return this.node&&t.push(this.node),this.replaceExpressionWithStatements(t);if(Array.isArray(this.container))return d_.call(this,t);if(this.isStatementOrBlock()){var n=this.node,s=n&&(!this.isExpressionStatement()||null!=n.expression);return y(this.replaceWith(XC(s?[n]:[])),1)[0].unshiftContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")}function i_(e,t){var r;f_.call(this,e,t.length);var a=[];(r=this.container).splice.apply(r,[e,0].concat(b(t)));for(var n=0;n<t.length;n++){var s,o=e+n,d=this.getSibling(o);a.push(d),null!=(s=this.context)&&s.queue&&SO.call(d,this.context)}for(var c=CO.call(this),l=0,u=a;l<u.length;l++){var p=u[l];hO.call(p),p.debug("Inserted.");for(var f,g=i(c);!(f=g()).done;){f.value.maybeQueue(p,!0)}}return a}function d_(e){return i_.call(this,this.key,e)}function c_(e){return i_.call(this,this.key+1,e)}var l_=function(e){return e[e.length-1]};function u_(e){return a_(e.parent)&&(l_(e.parent.expressions)!==e.node||u_(e.parentPath))}function p_(e){if(MC.call(this),this.isSequenceExpression())return l_(this.get("expressions")).insertAfter(e);var t=g_.call(this,e),r=this.parentPath,a=this.parent;if(r.isExpressionStatement()||r.isLabeledStatement()||e_(a)||r.isExportDefaultDeclaration()&&this.isDeclaration())return r.insertAfter(t.map(function(e){return t_(e)?$C(e):e}));if(this.isNodeType("Expression")&&!this.isJSXElement()&&!r.isJSXElement()||r.isForStatement()&&"init"===this.key){var n=this;if(n.node){var s=n.node,o=this.scope;if(o.path.isPattern())return zC(s),n.replaceWith(JC(HC([],s),[])),n.get("callee.body").insertAfter(t),[n];if(u_(n))t.unshift(s);else if(ZC(s)&&n_(s.callee))t.unshift(s),t.push(s_());else if(function(e,t){if(!QC(e)||!r_(e.left))return!1;var r=t.getBlockParent();return r.hasOwnBinding(e.left.name)&&r.getOwnBinding(e.left.name).constantViolations.length<=1}(s,o))t.unshift(s),t.push(YC(s.left));else if(o.isPure(s,!0))t.push(s);else{r.isMethod({computed:!0,key:s})&&(o=o.parent);var i=o.generateDeclaredUidIdentifier();t.unshift($C(KC("=",YC(i),s))),t.push($C(YC(i)))}}return this.replaceExpressionWithStatements(t)}if(Array.isArray(this.container))return c_.call(this,t);if(this.isStatementOrBlock()){var d=this.node,c=d&&(!this.isExpressionStatement()||null!=d.expression);return y(this.replaceWith(XC(c?[d]:[])),1)[0].pushContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")}function f_(e,t){if(this.parent){var r=Aw(this);if(r)for(var a,n=i(r);!(a=n()).done;){var s=y(a.value,2)[1];"number"==typeof s.key&&s.container===this.container&&s.key>=e&&(s.key+=t)}}}function g_(e){if(!e)return[];Array.isArray(e)||(e=[e]);for(var t=0;t<e.length;t++){var r=e[t],a=void 0;if(r?"object"!=typeof r?a="contains a non-object node":r.type?r instanceof JD&&(a="has a NodePath when it expected a raw object"):a="without a type":a="has falsy node",a){var n=Array.isArray(r)?"array":typeof r;throw new Error("Node list "+a+" with the index of "+t+" and type of "+n)}}return e}function m_(e,t){MC.call(this);var r=g_.call(this,t),a=this.node[e],n=JD.get({parentPath:this,parent:this.node,container:a,listKey:e,key:0}).setContext(this.context);return d_.call(n,r)}function y_(e,t){MC.call(this);var r=g_.call(this,t),a=this.node[e];return JD.get({parentPath:this,parent:this.node,container:a,listKey:e,key:a.length}).setContext(this.context).replaceWithMultiple(r)}e.hoist=function(e){return void 0===e&&(e=this.scope),new VC(this,e).run()};var h_=Object.freeze({__proto__:null,_containerInsert:i_,_containerInsertAfter:c_,_containerInsertBefore:d_,_verifyNodeList:g_,insertAfter:p_,insertBefore:o_,pushContainer:y_,unshiftContainer:m_,updateSiblingKeys:f_}),b_=Im,v_=so,x_=is,R_=ko,j_=ps,w_=tm,E_=gs,S_=sm,T_=ys,P_=Rs,A_=Iy,k_=Ps,C_=fm,__=gm,I_=mm,D_=Q,O_=te,N_=$t,B_=re,M_=de,F_=he,L_=er,U_=Ae,q_=ym,G_=Ws,W_=Vs,V_=es,H_=Ao;function z_(e){var t;if(!this.container)throw new ReferenceError("Container is falsy");this.inList?V_(this.parent,this.key,[e]):V_(this.parent,this.key,e),this.debug("Replace with "+(null==e?void 0:e.type)),null==(t=Aw(this))||t.set(e,this).delete(this.node),this.node=e,this.container[this.key]=e}function K_(e,t){for(var r,a=[],n=!0,s=i(e);!(r=s()).done;){var o=r.value;if(O_(o)||(n=!1),N_(o))a.push(o);else if(B_(o))a.push(o.expression);else if(U_(o)){if("var"!==o.kind)return;for(var d,c=i(o.declarations);!(d=c()).done;){for(var l=d.value,u=A_(l),p=0,f=Object.keys(u);p<f.length;p++){var g=f[p];t.push(S_(u[g]))}l.init&&a.push(x_("=",l.id,l.init))}n=!0}else if(M_(o)){var m=o.consequent?K_([o.consequent],t):w_(),y=o.alternate?K_([o.alternate],t):w_();if(!m||!y)return;a.push(T_(o.test,m,y))}else if(D_(o)){var h=K_(o.body,t);if(!h)return;a.push(h)}else{if(!O_(o))return;0===e.indexOf(o)&&(n=!0)}}return n&&a.push(w_()),1===a.length?a[0]:W_(a)}var X_=["Number","String","Math"],J_=["isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent",null,null],Y_=["random"];function $_(e){return X_.includes(e)}function Q_(e,t){t.confident&&(t.deoptPath=e,t.confident=!1)}var Z_,eI=new Map([["undefined",void 0],["Infinity",1/0],["NaN",NaN]]);function tI(e,t){var r=e.node,a=t.seen;if(a.has(r)){var n=a.get(r);return n.resolved?n.value:void Q_(e,t)}var s={resolved:!1};a.set(r,s);var o=function(e,t){if(!t.confident)return;if(e.isSequenceExpression()){var r=e.get("expressions");return tI(r[r.length-1],t)}if(e.isStringLiteral()||e.isNumericLiteral()||e.isBooleanLiteral())return e.node.value;if(e.isNullLiteral())return null;if(e.isTemplateLiteral())return rI(e,e.node.quasis,t);if(e.isTaggedTemplateExpression()&&e.get("tag").isMemberExpression()){var a=e.get("tag.object"),n=a.node.name,s=e.get("tag.property");if(a.isIdentifier()&&"String"===n&&!e.scope.getBinding(n)&&s.isIdentifier()&&"raw"===s.node.name)return rI(e,e.node.quasi.quasis,t,!0)}if(e.isConditionalExpression()){var o=tI(e.get("test"),t);if(!t.confident)return;return tI(o?e.get("consequent"):e.get("alternate"),t)}if(e.isExpressionWrapper())return tI(e.get("expression"),t);if(e.isMemberExpression()&&!e.parentPath.isCallExpression({callee:e.node})){var d=e.get("property"),c=e.get("object");if(c.isLiteral()){var l=c.node.value,u=typeof l,p=null;if(e.node.computed){if(p=tI(d,t),!t.confident)return}else d.isIdentifier()&&(p=d.node.name);if(!("number"!==u&&"string"!==u||null==p||"number"!=typeof p&&"string"!=typeof p))return l[p]}}if(e.isReferencedIdentifier()){var f=e.scope.getBinding(e.node.name);if(f){if(f.constantViolations.length>0||e.node.start<f.path.node.end)return void Q_(f.path,t);var g=f.path.scope;if("var"===f.kind&&g!==f.scope)for(var m=!g.path.parentPath.isBlockStatement(),y=g.parent;y;y=y.parent){var h;if(y===e.scope){if(m)return void Q_(f.path,t);break}null!=(h=y.path.parentPath)&&h.isBlockStatement()&&(m=!0)}if(f.hasValue)return f.value}var b=e.node.name;if(eI.has(b))return f?void Q_(f.path,t):eI.get(b);if(!f)return void Q_(e,t);var v=f.path;if(!v.isVariableDeclarator())return void Q_(v,t);var x=v.get("init"),R=tI(x,t);return"object"==typeof R&&null!==R&&f.references>1?void Q_(x,t):R}if(e.isUnaryExpression({prefix:!0})){if("void"===e.node.operator)return;var w=e.get("argument");if("typeof"===e.node.operator&&(w.isFunction()||w.isClass()))return"function";var E=tI(w,t);if(!t.confident)return;switch(e.node.operator){case"!":return!E;case"+":return+E;case"-":return-E;case"~":return~E;case"typeof":return typeof E}}if(e.isArrayExpression()){for(var S,T=[],P=i(e.get("elements"));!(S=P()).done;){var A=S.value.evaluate();if(!A.confident)return void Q_(A.deopt,t);T.push(A.value)}return T}if(e.isObjectExpression()){for(var k,C={},_=i(e.get("properties"));!(k=_()).done;){var I=k.value;if(I.isObjectMethod()||I.isSpreadElement())return void Q_(I,t);var D=I.get("key"),O=void 0;if(I.node.computed){if(!(O=D.evaluate()).confident)return void Q_(O.deopt,t);O=O.value}else O=D.isIdentifier()?D.node.name:D.node.value;var N=I.get("value").evaluate();if(!N.confident)return void Q_(N.deopt,t);N=N.value,C[O]=N}return C}if(e.isLogicalExpression()){var B=t.confident,M=tI(e.get("left"),t),F=t.confident;t.confident=B;var L=tI(e.get("right"),t),U=t.confident;switch(e.node.operator){case"||":if(t.confident=F&&(!!M||U),!t.confident)return;return M||L;case"&&":if(t.confident=F&&(!M||U),!t.confident)return;return M&&L;case"??":if(t.confident=F&&(null!=M||U),!t.confident)return;return null!=M?M:L}}if(e.isBinaryExpression()){var q=tI(e.get("left"),t);if(!t.confident)return;var G=tI(e.get("right"),t);if(!t.confident)return;switch(e.node.operator){case"-":return q-G;case"+":return q+G;case"/":return q/G;case"*":return q*G;case"%":return q%G;case"**":return Math.pow(q,G);case"<":return q<G;case">":return q>G;case"<=":return q<=G;case">=":return q>=G;case"==":return q==G;case"!=":return q!=G;case"===":return q===G;case"!==":return q!==G;case"|":return q|G;case"&":return q&G;case"^":return q^G;case"<<":return q<<G;case">>":return q>>G;case">>>":return q>>>G}}if(e.isCallExpression()){var W,V,H=e.get("callee");if(H.isIdentifier()&&!e.scope.getBinding(H.node.name)&&($_(H.node.name)||function(e){return J_.includes(e)}(H.node.name))&&(V=j[H.node.name]),H.isMemberExpression()){var z=H.get("object"),K=H.get("property");if(z.isIdentifier()&&K.isIdentifier()&&$_(z.node.name)&&!function(e){return Y_.includes(e)}(K.node.name)){W=j[z.node.name];var X=K.node.name;hasOwnProperty.call(W,X)&&(V=W[X])}if(z.isLiteral()&&K.isIdentifier()){var J=typeof z.node.value;"string"!==J&&"number"!==J||(V=(W=z.node.value)[K.node.name])}}if(V){var Y=e.get("arguments").map(function(e){return tI(e,t)});if(!t.confident)return;return V.apply(W,Y)}}Q_(e,t)}(e,t);return t.confident&&(s.resolved=!0,s.value=o),o}function rI(e,t,r,a){void 0===a&&(a=!1);for(var n,s="",o=0,d=e.isTemplateLiteral()?e.get("expressions"):e.get("quasi.expressions"),c=i(t);!(n=c()).done;){var l=n.value;if(!r.confident)break;s+=a?l.value.raw:l.value.cooked;var u=d[o++];u&&(s+=String(tI(u,r)))}if(r.confident)return s}var aI=so,nI=is,sI=ds,oI=ps,iI=gs,dI=ys,cI=Rs,lI=Ps,uI=ie,pI=nd,fI=Ns,gI=da,mI=Bs,yI=xo,hI=_s,bI=Ls,vI=Gs,xI=Ws,RI=Vs,jI=wo,wI=Cs,EI=Eo,SI=Xs,TI=by,PI=$s,AI=yy,kI=nr,CI=Ce,_I=Re,II=Ny,DI=sm,OI=Zs,NI=eo,BI=po,MI=fo,FI=Cy;function LI(){var e;if(this.isMemberExpression())e=this.node.property;else{if(!this.isProperty()&&!this.isMethod())throw new ReferenceError("todo");e=this.node.key}return this.node.computed||uI(e)&&(e=wI(e.name)),e}function UI(){var e=this.get("body"),t=e.node;if(Array.isArray(e))throw new Error("Can't convert array path to a block statement");if(!t)throw new Error("Can't convert node without a body");if(e.isBlockStatement())return t;var r,a,n=[],s="body";e.isStatement()?(a="body",r=0,n.push(e.node)):(s+=".body.0",this.isFunction()?(r="argument",n.push(xI(e.node))):(r="expression",n.push(cI(e.node)))),this.node.body=oI(n);var o=this.get(s);return TO.call(e,o,a?o.node[a]:o.node,a,r),this.node}function qI(){if(!this.isArrowFunctionExpression()&&!this.isFunctionExpression()&&!this.isFunctionDeclaration())throw this.buildCodeFrameError("Can only unwrap the environment of a function.");VI(this)}function GI(e){var t,r=void 0===e?{}:e,a=r.allowInsertArrow,n=void 0===a||a,s=r.allowInsertArrowWithRest,o=void 0===s?n:s,i=r.noNewArrows,d=void 0===i?!(null!=(t=arguments[0])&&t.specCompliant):i;if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");var c,l=this;d||(l=null!=(c=l.ensureFunctionName(!1))?c:l);var u=VI(l,d,n,o),p=u.thisBinding,f=u.fnPath;if(f.ensureBlock(),function(e,t){e.node.type=t}(f,"FunctionExpression"),!d){var g=p?null:f.scope.generateUidIdentifier("arrowCheckId");return g&&f.parentPath.scope.push({id:g,init:bI([])}),f.get("body").unshiftContainer("body",cI(iI(this.hub.addHelper("newArrowCheck"),[SI(),lI(g?g.name:p)]))),f.replaceWith(iI(mI(f.node,lI("bind")),[g?lI(g.name):SI()])),f.get("callee.object")}return f}e.arrowFunctionToShadowed=function(){this.isArrowFunctionExpression()&&this.arrowFunctionToExpression()};var WI=hw({CallExpression:function(e,t){var r=t.allSuperCalls;e.get("callee").isSuper()&&r.push(e)}});function VI(e,t,r,a){var n;void 0===t&&(t=!0),void 0===r&&(r=!0),void 0===a&&(a=!0);var s=e.findParent(function(e){return e.isArrowFunctionExpression()?(null!=n||(n=e),!1):e.isFunction()||e.isProgram()||e.isClassProperty({static:!1})||e.isClassPrivateProperty({static:!1})}),o=s.isClassMethod({kind:"constructor"});if(s.isClassProperty()||s.isClassPrivateProperty())if(n)s=n;else{if(!r)throw e.buildCodeFrameError("Unable to transform arrow inside class property");e.replaceWith(iI(aI([],TI(e.node)),[])),s=e.get("callee"),e=s.get("body")}var i,d=function(e){var t=[],r=[],a=[],n=[],s=[];return e.traverse(XI,{thisPaths:t,argumentsPaths:r,newTargetPaths:a,superProps:n,superCalls:s}),{thisPaths:t,argumentsPaths:r,newTargetPaths:a,superProps:n,superCalls:s}}(e),c=d.thisPaths,l=d.argumentsPaths,u=d.newTargetPaths,p=d.superProps,f=d.superCalls;if(o&&f.length>0){if(!r)throw f[0].buildCodeFrameError("When using '@babel/plugin-transform-arrow-functions', it's not possible to compile `super()` in an arrow function without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");if(!a)throw f[0].buildCodeFrameError("When using '@babel/plugin-transform-parameters', it's not possible to compile `super()` in an arrow function with default or rest parameters without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");var g=[];s.traverse(WI,{allSuperCalls:g});var m=function(e){return KI(e,"supercall",function(){var t=e.scope.generateUidIdentifier("args");return aI([vI(t)],iI(EI(),[jI(lI(t.name))]))})}(s);g.forEach(function(e){var t=lI(m);t.loc=e.node.callee.loc,e.get("callee").replaceWith(t)})}if(l.length>0){var y=KI(s,"arguments",function(){var e=function(){return lI("arguments")};return s.scope.path.isProgram()?dI(sI("===",PI("typeof",e()),wI("undefined")),s.scope.buildUndefinedNode(),e()):e()});l.forEach(function(e){var t=lI(y);t.loc=e.node.loc,e.replaceWith(t)})}if(u.length>0){var h=KI(s,"newtarget",function(){return yI(lI("new"),lI("target"))});u.forEach(function(e){var t=lI(h);t.loc=e.node.loc,e.replaceWith(t)})}if(p.length>0){if(!r)throw p[0].buildCodeFrameError("When using '@babel/plugin-transform-arrow-functions', it's not possible to compile `super.prop` in an arrow function without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");var b=p.reduce(function(e,t){return e.concat(function(e){if(e.parentPath.isAssignmentExpression()&&"="!==e.parentPath.node.operator){var t=e.parentPath,r=t.node.operator.slice(0,-1),a=t.node.right,n=function(e){return gI.includes(e)}(r);if(e.node.computed){var s=e.scope.generateDeclaredUidIdentifier("tmp"),o=e.node,i=o.object,d=o.property;t.get("left").replaceWith(mI(i,nI("=",s,d),!0)),t.get("right").replaceWith(m(n?"=":r,mI(i,lI(s.name),!0),a))}else{var c=e.node.object,l=e.node.property;t.get("left").replaceWith(mI(c,l)),t.get("right").replaceWith(m(n?"=":r,mI(c,lI(l.name)),a))}return n?t.replaceWith(fI(r,t.node.left,t.node.right)):t.node.operator="=",[t.get("left"),t.get("right").get("left")]}if(e.parentPath.isUpdateExpression()){var u=e.parentPath,p=e.scope.generateDeclaredUidIdentifier("tmp"),f=e.node.computed?e.scope.generateDeclaredUidIdentifier("prop"):null,g=[nI("=",p,mI(e.node.object,f?nI("=",f,e.node.property):e.node.property,e.node.computed)),nI("=",mI(e.node.object,f?lI(f.name):e.node.property,e.node.computed),sI(e.parentPath.node.operator[0],lI(p.name),hI(1)))];return e.parentPath.node.prefix||g.push(lI(p.name)),u.replaceWith(RI(g)),[u.get("expressions.0.right"),u.get("expressions.1.left")]}return[e];function m(e,t,r){return"="===e?nI("=",t,r):sI(e,t,r)}}(t))},[]);b.forEach(function(e){var t=e.node.computed?"":e.get("property").node.name,r=e.parentPath,a=r.isAssignmentExpression({left:e.node}),n=r.isCallExpression({callee:e.node}),o=r.isTaggedTemplateExpression({tag:e.node}),i=function(e,t,r){var a=t?"set":"get";return KI(e,"superprop_"+a+":"+(r||""),function(){var a,n=[];if(r)a=mI(EI(),lI(r));else{var s=e.scope.generateUidIdentifier("prop");n.unshift(s),a=mI(EI(),lI(s.name),!0)}if(t){var o=e.scope.generateUidIdentifier("value");n.push(o),a=nI("=",a,lI(o.name))}return aI(n,a)})}(s,a,t),d=[];if(e.node.computed&&d.push(e.get("property").node),a){var l=r.node.right;d.push(l)}var u=iI(lI(i),d);n?(r.unshiftContainer("arguments",SI()),e.replaceWith(mI(u,lI("call"))),c.push(r.get("arguments.0"))):a?r.replaceWith(u):o?(e.replaceWith(iI(mI(u,lI("bind"),!1),[SI()])),c.push(e.get("arguments.0"))):e.replaceWith(u)})}return(c.length>0||!t)&&(i=function(e,t){return KI(e,"this",function(r){if(!t||!HI(e))return SI();e.traverse(zI,{supers:new WeakSet,thisBinding:r})})}(s,o),(t||o&&HI(s))&&(c.forEach(function(e){var t=e.isJSX()?pI(i):lI(i);t.loc=e.node.loc,e.replaceWith(t)}),t||(i=null))),{thisBinding:i,fnPath:e}}function HI(e){return e.isClassMethod()&&!!e.parentPath.parentPath.node.superClass}var zI=hw({CallExpression:function(e,t){var r=t.supers,a=t.thisBinding;e.get("callee").isSuper()&&(r.has(e.node)||(r.add(e.node),e.replaceWithMultiple([e.node,nI("=",lI(a),lI("this"))])))}});function KI(e,t,r){var a="binding:"+t,n=e.getData(a);if(!n){var s=e.scope.generateUidIdentifier(t);n=s.name,e.setData(a,n),e.scope.push({id:s,init:r(n)})}return n}var XI=hw({ThisExpression:function(e,t){t.thisPaths.push(e)},JSXIdentifier:function(e,t){var r=t.thisPaths;"this"===e.node.name&&(e.parentPath.isJSXMemberExpression({object:e.node})||e.parentPath.isJSXOpeningElement({name:e.node}))&&r.push(e)},CallExpression:function(e,t){var r=t.superCalls;e.get("callee").isSuper()&&r.push(e)},MemberExpression:function(e,t){var r=t.superProps;e.get("object").isSuper()&&r.push(e)},Identifier:function(e,t){var r=t.argumentsPaths;if(e.isReferencedIdentifier({name:"arguments"})){var a=e.scope;do{if(a.hasOwnBinding("arguments"))return void a.rename("arguments");if(a.path.isFunction()&&!a.path.isArrowFunctionExpression())break}while(a=a.parent);r.push(e)}},MetaProperty:function(e,t){var r=t.newTargetPaths;e.get("meta").isIdentifier({name:"new"})&&e.get("property").isIdentifier({name:"target"})&&r.push(e)}});function JI(){if(!this.isExportDeclaration()||this.isExportAllDeclaration())throw new Error("Only default and named export declarations can be split.");if(this.isExportNamedDeclaration()&&this.get("specifiers").length>0)throw new Error("It doesn't make sense to split exported specifiers.");var e=this.get("declaration");if(this.isExportDefaultDeclaration()){var t=e.isFunctionDeclaration()||e.isClassDeclaration(),r=e.isFunctionExpression()||e.isClassExpression(),a=e.isScope()?e.scope.parent:e.scope,n=e.node.id,s=!1;n?r&&a.hasBinding(n.name)&&(s=!0,n=a.generateUidIdentifier(n.name)):(s=!0,n=a.generateUidIdentifier("default"),(t||r)&&(e.node.id=DI(n)));var o=t?e.node:OI("var",[NI(DI(n),e.node)]),i=BI(null,[MI(DI(n),lI("default"))]);return this.insertAfter(i),this.replaceWith(o),s&&a.registerDeclaration(this),this}if(this.get("specifiers").length>0)throw new Error("It doesn't make sense to split exported specifiers.");var d=e.getOuterBindingIdentifiers(),c=Object.keys(d).map(function(e){return MI(lI(e),lI(e))}),l=BI(null,c);return this.insertAfter(l),this.replaceWith(e.node),this}var YI={"ReferencedIdentifier|BindingIdentifier":function(e,t){e.node.name===t.name&&(t.needsRename=!0,e.stop())},Scope:function(e,t){e.scope.hasOwnBinding(t.name)&&e.skip()}};function $I(e){if(this.node.id)return this;var t=II(this.node,this.parent);if(null==t)return this;var r=t.name;if(!e&&/[\uD800-\uDFFF]/.test(r))return null;if(r.startsWith("get ")||r.startsWith("set "))return null;r=AI(r.replace(/[/ ]/g,"_"));var a=lI(r);FI(a,t.originalNode);var n={needsRename:!1,name:r},s=this.scope,o=s.getOwnBinding(r);if(o?"param"===o.kind&&(n.needsRename=!0):(s.parent.hasBinding(r)||s.hasGlobal(r))&&this.traverse(YI,n),!n.needsRename)return this.node.id=a,s.getProgramParent().references[a.name]=!0,this;if(s.hasBinding(a.name)&&!s.hasGlobal(a.name))return s.rename(a.name),this.node.id=a,s.getProgramParent().references[a.name]=!0,this;if(!kI(this.node))return null;for(var i=s.generateUidIdentifier(a.name),d=[],c=0,l=function(e){var t=e.params.findIndex(function(e){return CI(e)||_I(e)});return-1===t?e.params.length:t}(this.node);c<l;c++)d.push(s.generateUidIdentifier("x"));var u=pj.expression.ast(Z_||(Z_=h(["\n (function (",") {\n function ","(",") {\n return ",".apply(this, arguments);\n }\n\n ",".toString = function () {\n return ",".toString();\n }\n\n return ",";\n })(",")\n "])),i,a,d,DI(i),DI(a),DI(i),DI(a),TI(this.node));return this.replaceWith(u)[0].get("arguments.0")}var QI=Object.freeze({__proto__:null,arrowFunctionToExpression:GI,ensureBlock:UI,ensureFunctionName:$I,splitExportDeclaration:JI,toComputedKey:LI,unwrapFunctionEnvironment:qI}),ZI=oa,eD=ja,tD=Q,rD=$t,aD=ie,nD=dr,sD=le,oD=Pr,iD=Er;function dD(e,t){return iD(this.node,e,t)}function cD(){return this.scope.isStatic(this.node)}function lD(e){return oD(this.type,e)}function uD(){return("init"===this.key||"left"===this.key)&&this.parentPath.isFor()}function pD(e){return!("body"!==this.key||!this.parentPath.isArrowFunctionExpression())&&(this.isExpression()?tD(e):!!this.isBlockStatement()&&rD(e))}function fD(e){var t=this,r=!0;do{var a=t,n=a.type,s=a.container;if(!r&&(t.isFunction()||"StaticBlock"===n))return!!e;if(r=!1,Array.isArray(s)&&t.key!==s.length-1)return!1}while((t=t.parentPath)&&!t.isProgram()&&!t.isDoExpression());return!0}function gD(){return!this.parentPath.isLabeledStatement()&&!tD(this.container)&&ZI.includes(this.key)}function mD(e,t){if(!this.isReferencedIdentifier()){if(this.isJSXMemberExpression()&&this.node.property.name===t||(this.isMemberExpression()||this.isOptionalMemberExpression())&&(this.node.computed?sD(this.node.property,{value:t}):this.node.property.name===t)){var r=this.get("object");return r.isReferencedIdentifier()&&r.referencesImport(e,"*")}return!1}var a=this.scope.getBinding(this.node.name);if("module"!==(null==a?void 0:a.kind))return!1;var n=a.path,s=n.parentPath;return!!s.isImportDeclaration()&&(s.node.source.value===e&&(!t||(!(!n.isImportDefaultSpecifier()||"default"!==t)||(!(!n.isImportNamespaceSpecifier()||"*"!==t)||!(!n.isImportSpecifier()||!aD(n.node.imported,{name:t}))))))}function yD(){var e=this.node;if(e.end){var t=this.hub.getCode();if(t)return t.slice(e.start,e.end)}return""}function hD(e){return"after"!==this._guessExecutionStatusRelativeTo(e)}function bD(e){return e.isProgram()?e:(e.parentPath.scope.getFunctionParent()||e.parentPath.scope.getProgramParent()).path}function vD(e,t){switch(e){case"LogicalExpression":case"AssignmentPattern":return"right"===t;case"ConditionalExpression":case"IfStatement":return"consequent"===t||"alternate"===t;case"WhileStatement":case"DoWhileStatement":case"ForInStatement":case"ForOfStatement":return"body"===t;case"ForStatement":return"body"===t||"update"===t;case"SwitchStatement":return"cases"===t;case"TryStatement":return"handler"===t;case"OptionalMemberExpression":return"property"===t;case"OptionalCallExpression":return"arguments"===t;default:return!1}}function xD(e,t){for(var r=0;r<t;r++){var a=e[r];if(vD(a.parent.type,a.parentKey))return!0}return!1}e.has=function(e){var t,r=null==(t=this.node)?void 0:t[e];return r&&Array.isArray(r)?!!r.length:!!r},e.is=e.has,e.isnt=function(e){return!this.has(e)},e.equals=function(e,t){return this.node[e]===t};var RD=Symbol();function jD(e){return wD(this,e,new Map)}function wD(e,t,r){var a={this:bD(e),target:bD(t)};if(a.target.node!==a.this.node)return function(e,t,r){var a,n=r.get(e.node);if(n){if(a=n.get(t.node))return a===RD?"unknown":a}else r.set(e.node,n=new Map);n.set(t.node,RD);var s=function(e,t,r){if(!t.isFunctionDeclaration())return"before"===wD(e,t,r)?"before":"unknown";if(t.parentPath.isExportDeclaration())return"unknown";var a=t.scope.getBinding(t.node.id.name);if(!a.references)return"before";for(var n,s,o=i(a.referencePaths);!(s=o()).done;){var d=s.value;if(!!!d.find(function(e){return e.node===t.node})){if("callee"!==d.key||!d.parentPath.isCallExpression())return"unknown";var c=wD(e,d,r);if(n&&n!==c)return"unknown";n=c}}return n}(e,t,r);return n.set(t.node,s),s}(e,a.target,r);var n,s={target:t.getAncestry(),this:e.getAncestry()};if(s.target.includes(e))return"after";if(s.this.includes(t))return"before";for(var o={target:0,this:0};!n&&o.this<s.this.length;){var d=s.this[o.this];o.target=s.target.indexOf(d),o.target>=0?n=d:o.this++}if(!n)throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(xD(s.this,o.this-1)||xD(s.target,o.target-1))return"unknown";var c={this:s.this[o.this-1],target:s.target[o.target-1]};if(c.target.listKey&&c.this.listKey&&c.target.container===c.this.container)return c.target.key>c.this.key?"before":"after";var l=eD[n.type],u=l.indexOf(c.this.parentKey);return l.indexOf(c.target.parentKey)>u?"before":"after"}function ED(e,t){return SD.call(this,e,t)||this}function SD(e,t){var r;if(null==(r=t)||!r.includes(this))if((t=t||[]).push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(e,t)}else if(this.isReferencedIdentifier()){var a=this.scope.getBinding(this.node.name);if(!a)return;if(!a.constant)return;if("module"===a.kind)return;if(a.path!==this){var n=a.path.resolve(e,t);if(this.find(function(e){return e.node===n.node}))return;return n}}else{if(this.isTypeCastExpression())return this.get("expression").resolve(e,t);if(e&&this.isMemberExpression()){var s=this.toComputedKey();if(!nD(s))return;var o=s.value,i=this.get("object").resolve(e,t);if(i.isObjectExpression())for(var d=0,c=i.get("properties");d<c.length;d++){var l=c[d];if(l.isProperty()){var u=l.get("key"),p=l.isnt("computed")&&u.isIdentifier({name:o});if(p=p||u.isLiteral({value:o}))return l.get("value").resolve(e,t)}}else if(i.isArrayExpression()&&!isNaN(+o)){var f=i.get("elements")[o];if(f)return f.resolve(e,t)}}}}function TD(){if(this.isIdentifier()){var e=this.scope.getBinding(this.node.name);return!!e&&e.constant}if(this.isLiteral())return!this.isRegExpLiteral()&&(!this.isTemplateLiteral()||this.get("expressions").every(function(e){return e.isConstantExpression()}));if(this.isUnaryExpression())return"void"===this.node.operator&&this.get("argument").isConstantExpression();if(this.isBinaryExpression()){var t=this.node.operator;return"in"!==t&&"instanceof"!==t&&this.get("left").isConstantExpression()&&this.get("right").isConstantExpression()}return this.isMemberExpression()?!this.node.computed&&this.get("object").isIdentifier({name:"Symbol"})&&!this.scope.hasBinding("Symbol",{noGlobals:!0}):!!this.isCallExpression()&&(1===this.node.arguments.length&&this.get("callee").matchesPattern("Symbol.for")&&!this.scope.hasBinding("Symbol",{noGlobals:!0})&&this.get("arguments")[0].isStringLiteral())}function PD(){var e=(this.isProgram()?this:this.parentPath).find(function(e){if(e.isProgram({sourceType:"module"}))return!0;if(e.isClass())return!0;if(e.isArrowFunctionExpression()&&!e.get("body").isBlockStatement())return!1;var t;if(e.isFunction())t=e.node.body;else{if(!e.isProgram())return!1;t=e.node}for(var r,a=i(t.directives);!(r=a()).done;){if("use strict"===r.value.value.value)return!0}return!1});return!!e}var AD=Object.freeze({__proto__:null,_guessExecutionStatusRelativeTo:jD,_resolve:SD,canHaveVariableDeclarationOrExpression:uD,canSwapBetweenExpressionAndStatement:pD,getSource:yD,isCompletionRecord:fD,isConstantExpression:TD,isInStrictMode:PD,isNodeType:lD,isStatementOrBlock:gD,isStatic:cD,matchesPattern:dD,referencesImport:mD,resolve:ED,willIMaybeExecuteBefore:hD}),kD=_y,CD=Iy,_D=Dy,ID=_s,DD=$s;function OD(e,t,r){return e&&t.push.apply(t,b(FD(e,r))),t}function ND(e){e.forEach(function(e){e.type=1})}function BD(e,t){e.forEach(function(e){e.path.isBreakStatement({label:null})&&(t?e.path.replaceWith(DD("void",ID(0))):e.path.remove())})}function MD(e,t){var r=[];if(t.canHaveBreak)for(var a=[],n=0;n<e.length;n++){var s=e[n],o=Object.assign({},t,{inCaseClause:!1});s.isBlockStatement()&&(t.inCaseClause||t.shouldPopulateBreak)?o.shouldPopulateBreak=!0:o.shouldPopulateBreak=!1;var i=FD(s,o);if(i.length>0&&i.every(function(e){return 1===e.type})){a.length>0&&i.every(function(e){return e.path.isBreakStatement({label:null})})?(ND(a),r.push.apply(r,b(a)),a.some(function(e){return e.path.isDeclaration()})&&(r.push.apply(r,i),t.shouldPreserveBreak||BD(i,!0)),t.shouldPreserveBreak||BD(i,!1)):(r.push.apply(r,i),t.shouldPopulateBreak||t.shouldPreserveBreak||BD(i,!0));break}if(n===e.length-1)r.push.apply(r,i);else{a=[];for(var d=0;d<i.length;d++){var c=i[d];1===c.type&&r.push(c),0===c.type&&a.push(c)}}}else if(e.length)for(var l=e.length-1;l>=0;l--){var u=FD(e[l],t);if(u.length>1||1===u.length&&!u[0].path.isVariableDeclaration()&&!u[0].path.isEmptyStatement()){r.push.apply(r,u);break}}return r}function FD(e,t){var r=[];if(e.isIfStatement())r=OD(e.get("consequent"),r,t),r=OD(e.get("alternate"),r,t);else{if(e.isDoExpression()||e.isFor()||e.isWhile()||e.isLabeledStatement())return OD(e.get("body"),r,t);if(e.isProgram()||e.isBlockStatement())return MD(e.get("body"),t);if(e.isFunction())return FD(e.get("body"),t);if(e.isTryStatement())r=OD(e.get("block"),r,t),r=OD(e.get("handler"),r,t);else{if(e.isCatchClause())return OD(e.get("body"),r,t);if(e.isSwitchStatement())return function(e,t,r){for(var a=[],n=0;n<e.length;n++){for(var s=[],o=[],i=0,d=FD(e[n],r);i<d.length;i++){var c=d[i];0===c.type&&s.push(c),1===c.type&&o.push(c)}s.length&&(a=s),t.push.apply(t,o)}return t.push.apply(t,b(a)),t}(e.get("cases"),r,t);if(e.isSwitchCase())return MD(e.get("consequent"),{canHaveBreak:!0,shouldPopulateBreak:!1,inCaseClause:!0,shouldPreserveBreak:t.shouldPreserveBreak});e.isBreakStatement()?r.push(function(e){return{type:1,path:e}}(e)):r.push(function(e){return{type:0,path:e}}(e))}}return r}function LD(e,t){var r=this,a=this.node,n=a[e];return Array.isArray(n)?n.map(function(s,o){return JD.get({listKey:e,parentPath:r,parent:a,container:n,key:o}).setContext(t)}):JD.get({parentPath:this,parent:a,container:a,key:e}).setContext(t)}function UD(e,t){for(var r,a=this,n=i(e);!(r=n()).done;){var s=r.value;a="."===s?a.parentPath:Array.isArray(a)?a[s]:a.get(s,t)}return a}var qD=lm,GD=cm;function WD(e,t){if(null==t||!t.length)return e;var r=new Set(t);return e.filter(function(e){return!r.has(e)})}var VD=es,HD=_j("babel"),zD=1,KD=2,XD=4,JD=function(){function e(e,t){this.contexts=[],this.state=null,this._traverseFlags=0,this.skipKeys=null,this.parentPath=null,this.container=null,this.listKey=null,this.key=null,this.node=null,this.type=null,this._store=null,this.parent=t,this.hub=e,this.data=null,this.context=null,this.scope=null}e.get=function(t){var r=t.hub,a=t.parentPath,n=t.parent,s=t.container,o=t.listKey,i=t.key;if(!r&&a&&(r=a.hub),!n)throw new Error("To get a node path the parent needs to exist");var d=s[i],c=kw(n),l=c.get(d);return l||(l=new e(r,n),d&&c.set(d,l)),TO.call(l,a,s,o,i),l};var t=e.prototype;return t.getScope=function(e){return this.isScope()?new kE(this):e},t.setData=function(e,t){return null==this.data&&(this.data=Object.create(null)),this.data[e]=t},t.getData=function(e,t){null==this.data&&(this.data=Object.create(null));var r=this.data[e];return void 0===r&&void 0!==t&&(r=this.data[e]=t),r},t.hasNode=function(){return null!=this.node},t.buildCodeFrameError=function(e,t){return void 0===t&&(t=SyntaxError),this.hub.buildError(this.node,e,t)},t.traverse=function(e,t){OO(this.node,e,this.scope,t,this)},t.set=function(e,t){VD(this.node,e,t),this.node[e]=t},t.getPathLocation=function(){var e=[],t=this;do{var r=t.key;t.inList&&(r=t.listKey+"["+r+"]"),e.unshift(r)}while(t=t.parentPath);return e.join(".")},t.debug=function(e){HD.enabled&&HD(this.getPathLocation()+" "+this.type+": "+e)},t.toString=function(){return bk(this.node).code},o(e,[{key:"removed",get:function(){return(1&this._traverseFlags)>0},set:function(e){e?this._traverseFlags|=1:this._traverseFlags&=-2}},{key:"shouldStop",get:function(){return(2&this._traverseFlags)>0},set:function(e){e?this._traverseFlags|=2:this._traverseFlags&=-3}},{key:"shouldSkip",get:function(){return(4&this._traverseFlags)>0},set:function(e){e?this._traverseFlags|=4:this._traverseFlags&=-5}},{key:"inList",get:function(){return!!this.listKey},set:function(e){e||(this.listKey=null)}},{key:"parentKey",get:function(){return this.listKey||this.key}}])}(),YD={findParent:function(e){for(var t=this;t=t.parentPath;)if(e(t))return t;return null},find:function(e){var t=this;do{if(e(t))return t}while(t=t.parentPath);return null},getFunctionParent:function(){return this.findParent(function(e){return e.isFunction()})},getStatementParent:function(){var e=this;do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())break;e=e.parentPath}while(e);if(e&&(e.isProgram()||e.isFile()))throw new Error("File/Program node, we can't possibly find a statement parent to this");return e},getEarliestCommonAncestorFrom:function(e){return this.getDeepestCommonAncestorFrom(e,function(e,t,r){for(var a,n,s=xk[e.type],o=i(r);!(n=o()).done;){var d=n.value[t+1];if(a)if(d.listKey&&a.listKey===d.listKey&&d.key<a.key)a=d;else s.indexOf(a.parentKey)>s.indexOf(d.parentKey)&&(a=d);else a=d}return a})},getDeepestCommonAncestorFrom:function(e,t){var r=this;if(!e.length)return this;if(1===e.length)return e[0];var a,n,s=1/0,o=e.map(function(e){var t=[];do{t.unshift(e)}while((e=e.parentPath)&&e!==r);return t.length<s&&(s=t.length),t}),d=o[0];e:for(var c=0;c<s;c++){for(var l,u=d[c],p=i(o);!(l=p()).done;){if(l.value[c]!==u)break e}a=c,n=u}if(n)return t?t(n,a,o):n;throw new Error("Couldn't find intersection")},getAncestry:function(){var e=this,t=[];do{t.push(e)}while(e=e.parentPath);return t},isAncestor:function(e){return e.isDescendant(this)},isDescendant:function(e){return!!this.findParent(function(t){return t===e})},inType:function(){for(var e=this,t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];for(;e;){if(r.includes(e.node.type))return!0;e=e.parentPath}return!1},getTypeAnnotation:function(){var e=this.getData("typeAnnotation");return null!=e||(e=CC.call(this)||cC(),(EC(e)||RC(e))&&(e=e.typeAnnotation),this.setData("typeAnnotation",e)),e},isBaseType:function(e,t){return _C(e,this.getTypeAnnotation(),t)},couldBeBaseType:function(e){var t=this.getTypeAnnotation();if(lC(t))return!0;if(SC(t)){for(var r,a=i(t.types);!(r=a()).done;){var n=r.value;if(lC(n)||_C(e,n,!0))return!0}return!1}return _C(e,t,!0)},baseTypeStrictlyMatches:function(e){var t=this.getTypeAnnotation(),r=e.getTypeAnnotation();return!(lC(t)||!gC(t))&&r.type===t.type},isGenericType:function(e){var t=this.getTypeAnnotation();return!("Array"!==e||!(xC(t)||uC(t)||wC(t)))||(mC(t)&&yC(t.id,{name:e})||jC(t)&&yC(t.typeName,{name:e}))},replaceWithMultiple:function(e){var t;vO.call(this);var r=g_.call(this,e);C_(r[0],this.node),__(r[r.length-1],this.node),null==(t=Aw(this))||t.delete(this.node),this.node=this.container[this.key]=null;var a=this.insertAfter(e);return this.node?this.requeue():this.remove(),a},replaceWithSourceString:function(e){var t;vO.call(this);try{t=aR(e="("+e+")")}catch(t){var r=t.loc;throw r&&(t.message+=" - make sure this is an expression.\n"+_R(e,{start:{line:r.line,column:r.column+1}}),t.code="BABEL_REPLACE_SOURCE_ERROR"),t}var a=t.program.body[0].expression;return OO.removeProperties(a),this.replaceWith(a)},replaceWith:function(e){if(vO.call(this),this.removed)throw new Error("You can't replace this node, we've already removed it");var t=e instanceof JD?e.node:e;if(!t)throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===t)return[this];if(this.isProgram()&&!F_(t))throw new Error("You can only replace a Program root node with another Program node");if(Array.isArray(t))throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if("string"==typeof t)throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");var r="";if(this.isNodeType("Statement")&&N_(t)&&(this.canHaveVariableDeclarationOrExpression()||this.canSwapBetweenExpressionAndStatement(t)||this.parentPath.isExportDefaultDeclaration()||(t=P_(t),r="expression")),this.isNodeType("Expression")&&L_(t)&&!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(t))return this.replaceExpressionWithStatements([t]);var a=this.node;return a&&(I_(t,a),q_(a)),z_.call(this,t),this.type=t.type,hO.call(this),this.requeue(),[r?this.get(r):this]},replaceExpressionWithStatements:function(e){var t=this;vO.call(this);var r=[],a=K_(e,r);if(a){for(var n,s=i(r);!(n=s()).done;){var o=n.value;this.scope.push({id:o})}return this.replaceWith(a)[0].get("expressions")}var d=this.getFunctionParent(),c=null==d?void 0:d.node.async,l=null==d?void 0:d.node.generator,u=v_([],j_(e));this.replaceWith(E_(u,[]));var p=this.get("callee");p.get("body").scope.hoistVariables(function(e){return t.scope.push({id:e})});for(var f,g=i(p.getCompletionRecords());!(f=g()).done;){var m=f.value;if(m.isExpressionStatement()){var y=m.findParent(function(e){return e.isLoop()});if(y){var h=y.getData("expressionReplacementReturnUid");h?h=k_(h.name):(h=p.scope.generateDeclaredUidIdentifier("ret"),p.get("body").pushContainer("body",G_(S_(h))),y.setData("expressionReplacementReturnUid",h)),m.get("expression").replaceWith(x_("=",S_(h),m.node.expression))}else m.replaceWith(G_(m.node.expression))}}p.arrowFunctionToExpression();var b=p,v=c&&OO.hasType(b.node.body,"AwaitExpression",b_),x=l&&OO.hasType(b.node.body,"YieldExpression",b_);return v&&(b.set("async",!0),x||this.replaceWith(R_(this.node))),x&&(b.set("generator",!0),this.replaceWith(H_(this.node,!0))),b.get("body.body")},replaceInline:function(e){if(vO.call(this),Array.isArray(e)){if(Array.isArray(this.container)){e=g_.call(this,e);var t=c_.call(this,e);return this.remove(),t}return this.replaceWithMultiple(e)}return this.replaceWith(e)},evaluateTruthy:function(){var e=this.evaluate();if(e.confident)return!!e.value},evaluate:function(){var e={confident:!0,deoptPath:null,seen:new Map},t=tI(this,e);return e.confident||(t=void 0),{confident:e.confident,deopt:e.deoptPath,value:t}},toComputedKey:LI,ensureBlock:UI,unwrapFunctionEnvironment:qI,arrowFunctionToExpression:GI,splitExportDeclaration:JI,ensureFunctionName:$I,matchesPattern:dD,isStatic:cD,isNodeType:lD,canHaveVariableDeclarationOrExpression:uD,canSwapBetweenExpressionAndStatement:pD,isCompletionRecord:fD,isStatementOrBlock:gD,referencesImport:mD,getSource:yD,willIMaybeExecuteBefore:hD,_guessExecutionStatusRelativeTo:jD,resolve:ED,isConstantExpression:TD,isInStrictMode:PD,isDenylisted:lO,visit:pO,skip:fO,skipKey:gO,stop:mO,setContext:bO,requeue:AO,requeueComputedKeyAndDecorators:kO,remove:function(){var e;MC.call(this),vO.call(this),OC.call(this)||(null!=(e=this.opts)&&e.noScope||DC.call(this),this.shareCommentsWithSiblings(),NC.call(this)),BC.call(this)},insertBefore:o_,insertAfter:p_,unshiftContainer:m_,pushContainer:y_,getOpposite:function(){return"left"===this.key?this.getSibling("right"):"right"===this.key?this.getSibling("left"):null},getCompletionRecords:function(e){return void 0===e&&(e=!1),FD(this,{canHaveBreak:!1,shouldPopulateBreak:!1,inCaseClause:!1,shouldPreserveBreak:e}).map(function(e){return e.path})},getSibling:function(e){return JD.get({parentPath:this.parentPath,parent:this.parent,container:this.container,listKey:this.listKey,key:e}).setContext(this.context)},getPrevSibling:function(){return this.getSibling(this.key-1)},getNextSibling:function(){return this.getSibling(this.key+1)},getAllNextSiblings:function(){for(var e=this.key,t=this.getSibling(++e),r=[];t.node;)r.push(t),t=this.getSibling(++e);return r},getAllPrevSiblings:function(){for(var e=this.key,t=this.getSibling(--e),r=[];t.node;)r.push(t),t=this.getSibling(--e);return r},get:function(e,t){void 0===t&&(t=!0),!0===t&&(t=this.context);var r=e.split(".");return 1===r.length?LD.call(this,e,t):UD.call(this,r,t)},getAssignmentIdentifiers:function(){return kD(this.node)},getBindingIdentifiers:function(e){return CD(this.node,e)},getOuterBindingIdentifiers:function(e){return _D(this.node,e)},getBindingIdentifierPaths:function(e,t){void 0===e&&(e=!1),void 0===t&&(t=!1);for(var r=[this],a=Object.create(null);r.length;){var n=r.shift();if(n&&n.node){var s=CD.keys[n.node.type];if(n.isIdentifier())e?(a[n.node.name]=a[n.node.name]||[]).push(n):a[n.node.name]=n;else if(n.isExportDeclaration()){var o=n.get("declaration");o.isDeclaration()&&r.push(o)}else{if(t){if(n.isFunctionDeclaration()){r.push(n.get("id"));continue}if(n.isFunctionExpression())continue}if(s)for(var i=0;i<s.length;i++){var d=s[i],c=n.get(d);Array.isArray(c)?r.push.apply(r,b(c)):c.node&&r.push(c)}}}}return a},getOuterBindingIdentifierPaths:function(e){return void 0===e&&(e=!1),this.getBindingIdentifierPaths(e,!0)},shareCommentsWithSiblings:function(){if("string"!=typeof this.key){var e=this.node;if(e){var t=e.trailingComments,r=e.leadingComments;if(t||r){var a=this.getSibling(this.key-1),n=this.getSibling(this.key+1),s=Boolean(a.node),o=Boolean(n.node);s&&(r&&a.addComments("trailing",WD(r,a.node.trailingComments)),t&&!o&&a.addComments("trailing",t)),o&&(t&&n.addComments("leading",WD(t,n.node.leadingComments)),r&&!s&&n.addComments("leading",r))}}}},addComment:function(e,t,r){qD(this.node,e,t,r)},addComments:function(e,t){GD(this.node,e,t)}};Object.assign(JD.prototype,YD),JD.prototype.arrowFunctionToShadowed=QI[String("arrowFunctionToShadowed")],Object.assign(JD.prototype,{has:AD[String("has")],is:AD[String("is")],isnt:AD[String("isnt")],equals:AD[String("equals")],hoist:h_[String("hoist")],updateSiblingKeys:f_,call:dO,isBlacklisted:t[String("isBlacklisted")],setScope:hO,resync:vO,popContext:EO,pushContext:SO,setup:TO,setKey:PO}),JD.prototype._guessExecutionStatusRelativeToDifferentFunctions=jD,JD.prototype._guessExecutionStatusRelativeToDifferentFunctions=jD,Object.assign(JD.prototype,{_getTypeAnnotation:CC,_replaceWith:z_,_resolve:SD,_call:cO,_resyncParent:xO,_resyncKey:RO,_resyncList:jO,_resyncRemoved:wO,_getQueueContexts:CO,_removeFromScope:DC,_callRemovalHooks:OC,_remove:NC,_markRemoved:BC,_assertUnremoved:MC,_containerInsert:i_,_containerInsertBefore:d_,_containerInsertAfter:c_,_verifyNodeList:g_,_getKey:LD,_getPattern:UD});for(var $D,QD=function(){var e=$D.value,t="is"+e,r=Jy[t];JD.prototype[t]=function(e){return r(this.node,e)},JD.prototype["assert"+e]=function(t){if(!r(this.node,t))throw new TypeError("Expected node path of type "+e)}},ZD=i(Zn);!($D=ZD()).done;)QD();Object.assign(JD.prototype,Zj);for(var eO=0,tO=Object.keys(Pj);eO<tO.length;eO++){var rO=tO[eO];rO.startsWith("_")||(Zn.includes(rO)||Zn.push(rO))}var aO=function(){function e(){}var t=e.prototype;return t.getCode=function(){},t.getScope=function(){},t.addHelper=function(){throw new Error("Helpers are not supported by the default hub.")},t.buildError=function(e,t,r){return void 0===r&&(r=TypeError),new r(t)},o(e)}(),nO=ja,sO=function(){function e(e,t,r,a){this.queue=null,this.priorityQueue=null,this.parentPath=a,this.scope=e,this.state=r,this.opts=t}var t=e.prototype;return t.shouldVisit=function(e){var t=this.opts;if(t.enter||t.exit)return!0;if(t[e.type])return!0;var r=nO[e.type];if(null==r||!r.length)return!1;for(var a,n=i(r);!(a=n()).done;){if(e[a.value])return!0}return!1},t.create=function(e,t,r,a){var n=this.parentPath,s=null==n?"Program"===e.type||"File"===e.type?new aO:void 0:n.hub;return JD.get({parentPath:n,parent:e,container:t,key:r,listKey:a,hub:s})},t.maybeQueue=function(e,t){this.queue&&(t?this.queue.push(e):this.priorityQueue.push(e))},t.visitMultiple=function(e,t,r){if(0===e.length)return!1;for(var a=[],n=0;n<e.length;n++){var s=e[n];s&&this.shouldVisit(s)&&a.push(this.create(t,e,n,r))}return this.visitQueue(a)},t.visitSingle=function(e,t){return!!this.shouldVisit(e[t])&&this.visitQueue([this.create(e,e,t)])},t.visitQueue=function(e){this.queue=e,this.priorityQueue=[];for(var t=new WeakSet,r=!1,a=0;a<e.length;){var n=e[a];if(a++,vO.call(n),0!==n.contexts.length&&n.contexts[n.contexts.length-1]===this||SO.call(n,this),null!==n.key){var s=n.node;if(!t.has(s)){if(s&&t.add(s),n.visit()){r=!0;break}if(this.priorityQueue.length&&(r=this.visitQueue(this.priorityQueue),this.priorityQueue=[],this.queue=e,r))break}}}for(var o=0;o<a;o++)EO.call(e[o]);return this.queue=null,r},t.visit=function(e,t){var r=e[t];return!!r&&(Array.isArray(r)?this.visitMultiple(r,e,t):this.visitSingle(e,t))},o(e)}(),oO=ja;function iO(e,t,r,a,n,s,o){var d=oO[e.type];if(!d)return!1;var c=new sO(r,t,a,n);if(o)return(null==s||!s[n.parentKey])&&c.visitQueue([n]);for(var l,u=i(d);!(l=u()).done;){var p=l.value;if((null==s||!s[p])&&c.visit(e,p))return!0}return!1}function dO(e){var t,r=this.opts;return this.debug(e),!(!this.node||!cO.call(this,r[e]))||!!this.node&&cO.call(this,null==(t=r[this.node.type])?void 0:t[e])}function cO(e){if(!e)return!1;for(var t,r=i(e);!(t=r()).done;){var a=t.value;if(a){var n=this.node;if(!n)return!0;var s=a.call(this.state,this,this.state);if(s&&"object"==typeof s&&"function"==typeof s.then)throw new Error("You appear to be using a plugin with an async traversal visitor, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.");if(s)throw new Error("Unexpected return value from visitor method "+a);if(this.node!==n)return!0;if(this._traverseFlags>0)return!0}}return!1}function lO(){var e,t=null!=(e=this.opts.denylist)?e:this.opts.blacklist;return null==t?void 0:t.includes(this.node.type)}function uO(e,t){e.context!==t&&(e.context=t,e.state=t.state,e.opts=t.opts)}function pO(){var e,t;if(!this.node)return!1;if(this.isDenylisted())return!1;if(null!=(e=(t=this.opts).shouldSkip)&&e.call(t,this))return!1;var r=this.context;return this.shouldSkip||dO.call(this,"enter")?(this.debug("Skip..."),this.shouldStop):(uO(this,r),this.debug("Recursing into..."),this.shouldStop=iO(this.node,this.opts,this.scope,this.state,this,this.skipKeys),uO(this,r),dO.call(this,"exit"),this.shouldStop)}function fO(){this.shouldSkip=!0}function gO(e){null==this.skipKeys&&(this.skipKeys={}),this.skipKeys[e]=!0}function mO(){this._traverseFlags|=XD|KD}function yO(){var e,t,r=this.parentPath;for((("key"===this.key||"decorators"===this.listKey)&&r.isMethod()||"discriminant"===this.key&&r.isSwitchStatement())&&(r=r.parentPath);r&&!t;)t=r.scope,r=r.parentPath;this.scope=this.getScope(t),null==(e=this.scope)||e.init()}function hO(){var e,t;if(null==(e=this.opts)||!e.noScope){var r,a=this.parentPath;for((("key"===this.key||"decorators"===this.listKey)&&a.isMethod()||"discriminant"===this.key&&a.isSwitchStatement())&&(a=a.parentPath);a&&!r;){var n;if(null!=(n=a.opts)&&n.noScope)return;r=a.scope,a=a.parentPath}this.scope=this.getScope(r),null==(t=this.scope)||t.init()}}function bO(e){return null!=this.skipKeys&&(this.skipKeys={}),this._traverseFlags=0,e&&(this.context=e,this.state=e.state,this.opts=e.opts),hO.call(this),this}function vO(){this.removed||(xO.call(this),jO.call(this),RO.call(this))}function xO(){this.parentPath&&(this.parent=this.parentPath.node)}function RO(){if(this.container&&this.node!==this.container[this.key]){if(Array.isArray(this.container)){for(var e=0;e<this.container.length;e++)if(this.container[e]===this.node)return void PO.call(this,e)}else for(var t=0,r=Object.keys(this.container);t<r.length;t++){var a=r[t];if(this.container[a]===this.node)return void PO.call(this,a)}this.key=null}}function jO(){if(this.parent&&this.inList){var e=this.parent[this.listKey];this.container!==e&&(this.container=e||null)}}function wO(){null!=this.key&&this.container&&this.container[this.key]===this.node||BC.call(this)}function EO(){this.contexts.pop(),this.contexts.length>0?this.setContext(this.contexts[this.contexts.length-1]):this.setContext(void 0)}function SO(e){this.contexts.push(e),this.setContext(e)}function TO(e,t,r,a){this.listKey=r,this.container=t,this.parentPath=e||this.parentPath,PO.call(this,a)}function PO(e){var t;this.key=e,this.node=this.container[this.key],this.type=null==(t=this.node)?void 0:t.type}function AO(e){if(void 0===e&&(e=this),!e.removed)for(var t,r=i(this.contexts);!(t=r()).done;){t.value.maybeQueue(e)}}function kO(){var e=this.context,t=this.node;if(!yr(t)&&t.computed&&e.maybeQueue(this.get("key")),t.decorators)for(var r,a=i(this.get("decorators"));!(r=a()).done;){var n=r.value;e.maybeQueue(n)}}function CO(){for(var e=this,t=this.contexts;!t.length&&(e=e.parentPath);)t=e.contexts;return t}e.isBlacklisted=lO;var _O=ja,IO=Ey,DO=Ry;function OO(e,t,r,a,n,s){if(void 0===t&&(t={}),e){if(!t.noScope&&!r&&"Program"!==e.type&&"File"!==e.type)throw new Error("You must pass a scope and parentPath unless traversing a Program/File. Instead of that you tried to traverse a "+e.type+" node without passing scope and parentPath.");if(!n&&s)throw new Error("visitSelf can only be used when providing a NodePath.");_O[e.type]&&(iw(t),iO(e,t,r,a,n,void 0,s))}}OO.visitors=bw,OO.verify=dw,OO.explode=iw,OO.cheap=function(e,t){DO(e,t)},OO.node=function(e,t,r,a,n,s){iO(e,t,r,a,n,s)},OO.clearNode=function(e,t){IO(e,t)},OO.removeProperties=function(e,t){return DO(e,OO.clearNode,t),e},OO.hasType=function(e,t,r){return(null==r||!r.includes(e.type))&&(e.type===t||DO(e,function(e){return null!=r&&r.includes(e.type)?DO.skip:e.type===t?DO.stop:void 0}))},OO.cache=Cw;var NO,BO=Object.freeze({__proto__:null,Hub:aO,NodePath:JD,Scope:kE,default:OO,visitors:bw}),MO={exports:{}};function FO(){return NO||(NO=1,function(e,t){var r;t=e.exports=h,r="object"==typeof z&&z.env&&z.env.NODE_DEBUG&&/\bsemver\b/i.test(z.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var a=256,n=Number.MAX_SAFE_INTEGER||9007199254740991,s=a-6,o=t.re=[],i=t.safeRe=[],d=t.src=[],c=t.tokens={},l=0;function u(e){c[e]=l++}var p="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",a],[p,s]];function g(e){for(var t=0;t<f.length;t++){var r=f[t][0],a=f[t][1];e=e.split(r+"*").join(r+"{0,"+a+"}").split(r+"+").join(r+"{1,"+a+"}")}return e}u("NUMERICIDENTIFIER"),d[c.NUMERICIDENTIFIER]="0|[1-9]\\d*",u("NUMERICIDENTIFIERLOOSE"),d[c.NUMERICIDENTIFIERLOOSE]="\\d+",u("NONNUMERICIDENTIFIER"),d[c.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+p+"*",u("MAINVERSION"),d[c.MAINVERSION]="("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")",u("MAINVERSIONLOOSE"),d[c.MAINVERSIONLOOSE]="("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")",u("PRERELEASEIDENTIFIER"),d[c.PRERELEASEIDENTIFIER]="(?:"+d[c.NUMERICIDENTIFIER]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASEIDENTIFIERLOOSE"),d[c.PRERELEASEIDENTIFIERLOOSE]="(?:"+d[c.NUMERICIDENTIFIERLOOSE]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASE"),d[c.PRERELEASE]="(?:-("+d[c.PRERELEASEIDENTIFIER]+"(?:\\."+d[c.PRERELEASEIDENTIFIER]+")*))",u("PRERELEASELOOSE"),d[c.PRERELEASELOOSE]="(?:-?("+d[c.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+d[c.PRERELEASEIDENTIFIERLOOSE]+")*))",u("BUILDIDENTIFIER"),d[c.BUILDIDENTIFIER]=p+"+",u("BUILD"),d[c.BUILD]="(?:\\+("+d[c.BUILDIDENTIFIER]+"(?:\\."+d[c.BUILDIDENTIFIER]+")*))",u("FULL"),u("FULLPLAIN"),d[c.FULLPLAIN]="v?"+d[c.MAINVERSION]+d[c.PRERELEASE]+"?"+d[c.BUILD]+"?",d[c.FULL]="^"+d[c.FULLPLAIN]+"$",u("LOOSEPLAIN"),d[c.LOOSEPLAIN]="[v=\\s]*"+d[c.MAINVERSIONLOOSE]+d[c.PRERELEASELOOSE]+"?"+d[c.BUILD]+"?",u("LOOSE"),d[c.LOOSE]="^"+d[c.LOOSEPLAIN]+"$",u("GTLT"),d[c.GTLT]="((?:<|>)?=?)",u("XRANGEIDENTIFIERLOOSE"),d[c.XRANGEIDENTIFIERLOOSE]=d[c.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",u("XRANGEIDENTIFIER"),d[c.XRANGEIDENTIFIER]=d[c.NUMERICIDENTIFIER]+"|x|X|\\*",u("XRANGEPLAIN"),d[c.XRANGEPLAIN]="[v=\\s]*("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:"+d[c.PRERELEASE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGEPLAINLOOSE"),d[c.XRANGEPLAINLOOSE]="[v=\\s]*("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:"+d[c.PRERELEASELOOSE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGE"),d[c.XRANGE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAIN]+"$",u("XRANGELOOSE"),d[c.XRANGELOOSE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAINLOOSE]+"$",u("COERCE"),d[c.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",u("COERCERTL"),o[c.COERCERTL]=new RegExp(d[c.COERCE],"g"),i[c.COERCERTL]=new RegExp(g(d[c.COERCE]),"g"),u("LONETILDE"),d[c.LONETILDE]="(?:~>?)",u("TILDETRIM"),d[c.TILDETRIM]="(\\s*)"+d[c.LONETILDE]+"\\s+",o[c.TILDETRIM]=new RegExp(d[c.TILDETRIM],"g"),i[c.TILDETRIM]=new RegExp(g(d[c.TILDETRIM]),"g");u("TILDE"),d[c.TILDE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAIN]+"$",u("TILDELOOSE"),d[c.TILDELOOSE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAINLOOSE]+"$",u("LONECARET"),d[c.LONECARET]="(?:\\^)",u("CARETTRIM"),d[c.CARETTRIM]="(\\s*)"+d[c.LONECARET]+"\\s+",o[c.CARETTRIM]=new RegExp(d[c.CARETTRIM],"g"),i[c.CARETTRIM]=new RegExp(g(d[c.CARETTRIM]),"g");u("CARET"),d[c.CARET]="^"+d[c.LONECARET]+d[c.XRANGEPLAIN]+"$",u("CARETLOOSE"),d[c.CARETLOOSE]="^"+d[c.LONECARET]+d[c.XRANGEPLAINLOOSE]+"$",u("COMPARATORLOOSE"),d[c.COMPARATORLOOSE]="^"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+")$|^$",u("COMPARATOR"),d[c.COMPARATOR]="^"+d[c.GTLT]+"\\s*("+d[c.FULLPLAIN]+")$|^$",u("COMPARATORTRIM"),d[c.COMPARATORTRIM]="(\\s*)"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+"|"+d[c.XRANGEPLAIN]+")",o[c.COMPARATORTRIM]=new RegExp(d[c.COMPARATORTRIM],"g"),i[c.COMPARATORTRIM]=new RegExp(g(d[c.COMPARATORTRIM]),"g");u("HYPHENRANGE"),d[c.HYPHENRANGE]="^\\s*("+d[c.XRANGEPLAIN]+")\\s+-\\s+("+d[c.XRANGEPLAIN]+")\\s*$",u("HYPHENRANGELOOSE"),d[c.HYPHENRANGELOOSE]="^\\s*("+d[c.XRANGEPLAINLOOSE]+")\\s+-\\s+("+d[c.XRANGEPLAINLOOSE]+")\\s*$",u("STAR"),d[c.STAR]="(<|>)?=?\\s*\\*";for(var m=0;m<l;m++)r(m,d[m]),o[m]||(o[m]=new RegExp(d[m]),i[m]=new RegExp(g(d[m])));function y(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h)return e;if("string"!=typeof e)return null;if(e.length>a)return null;if(!(t.loose?i[c.LOOSE]:i[c.FULL]).test(e))return null;try{return new h(e,t)}catch(e){return null}}function h(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>a)throw new TypeError("version is longer than "+a+" characters");if(!(this instanceof h))return new h(e,t);r("SemVer",e,t),this.options=t,this.loose=!!t.loose;var s=e.trim().match(t.loose?i[c.LOOSE]:i[c.FULL]);if(!s)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<n)return t}return e}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}t.parse=y,t.valid=function(e,t){var r=y(e,t);return r?r.version:null},t.clean=function(e,t){var r=y(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null},t.SemVer=h,h.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},h.prototype.toString=function(){return this.version},h.prototype.compare=function(e){return r("SemVer.compare",this.version,this.options,e),e instanceof h||(e=new h(e,this.options)),this.compareMain(e)||this.comparePre(e)},h.prototype.compareMain=function(e){return e instanceof h||(e=new h(e,this.options)),v(this.major,e.major)||v(this.minor,e.minor)||v(this.patch,e.patch)},h.prototype.comparePre=function(e){if(e instanceof h||(e=new h(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var a=this.prerelease[t],n=e.prerelease[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.compareBuild=function(e){e instanceof h||(e=new h(e,this.options));var t=0;do{var a=this.build[t],n=e.build[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var r=this.prerelease.length;--r>=0;)"number"==typeof this.prerelease[r]&&(this.prerelease[r]++,r=-2);-1===r&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,r,a){"string"==typeof r&&(a=r,r=void 0);try{return new h(e,r).inc(t,a).version}catch(e){return null}},t.diff=function(e,t){if(w(e,t))return null;var r=y(e),a=y(t),n="";if(r.prerelease.length||a.prerelease.length){n="pre";var s="prerelease"}for(var o in r)if(("major"===o||"minor"===o||"patch"===o)&&r[o]!==a[o])return n+o;return s},t.compareIdentifiers=v;var b=/^[0-9]+$/;function v(e,t){var r=b.test(e),a=b.test(t);return r&&a&&(e=+e,t=+t),e===t?0:r&&!a?-1:a&&!r?1:e<t?-1:1}function x(e,t,r){return new h(e,r).compare(new h(t,r))}function R(e,t,r){return x(e,t,r)>0}function j(e,t,r){return x(e,t,r)<0}function w(e,t,r){return 0===x(e,t,r)}function E(e,t,r){return 0!==x(e,t,r)}function S(e,t,r){return x(e,t,r)>=0}function T(e,t,r){return x(e,t,r)<=0}function P(e,t,r,a){switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e===r;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return w(e,r,a);case"!=":return E(e,r,a);case">":return R(e,r,a);case">=":return S(e,r,a);case"<":return j(e,r,a);case"<=":return T(e,r,a);default:throw new TypeError("Invalid operator: "+t)}}function A(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof A){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof A))return new A(e,t);e=e.trim().split(/\s+/).join(" "),r("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===k?this.value="":this.value=this.operator+this.semver.version,r("comp",this)}t.rcompareIdentifiers=function(e,t){return v(t,e)},t.major=function(e,t){return new h(e,t).major},t.minor=function(e,t){return new h(e,t).minor},t.patch=function(e,t){return new h(e,t).patch},t.compare=x,t.compareLoose=function(e,t){return x(e,t,!0)},t.compareBuild=function(e,t,r){var a=new h(e,r),n=new h(t,r);return a.compare(n)||a.compareBuild(n)},t.rcompare=function(e,t,r){return x(t,e,r)},t.sort=function(e,r){return e.sort(function(e,a){return t.compareBuild(e,a,r)})},t.rsort=function(e,r){return e.sort(function(e,a){return t.compareBuild(a,e,r)})},t.gt=R,t.lt=j,t.eq=w,t.neq=E,t.gte=S,t.lte=T,t.cmp=P,t.Comparator=A;var k={};function C(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof C)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new C(e.raw,t);if(e instanceof A)return new C(e.value,t);if(!(this instanceof C))return new C(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}function _(e,t){for(var r=!0,a=e.slice(),n=a.pop();r&&a.length;)r=a.every(function(e){return n.intersects(e,t)}),n=a.pop();return r}function I(e){return!e||"x"===e.toLowerCase()||"*"===e}function D(e,t,r,a,n,s,o,i,d,c,l,u,p){return((t=I(r)?"":I(a)?">="+r+".0.0":I(n)?">="+r+"."+a+".0":">="+t)+" "+(i=I(d)?"":I(c)?"<"+(+d+1)+".0.0":I(l)?"<"+d+"."+(+c+1)+".0":u?"<="+d+"."+c+"."+l+"-"+u:"<="+i)).trim()}function O(e,t,a){for(var n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!a.includePrerelease){for(n=0;n<e.length;n++)if(r(e[n].semver),e[n].semver!==k&&e[n].semver.prerelease.length>0){var s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}function N(e,t,r){try{t=new C(t,r)}catch(e){return!1}return t.test(e)}function B(e,t,r,a){var n,s,o,i,d;switch(e=new h(e,a),t=new C(t,a),r){case">":n=R,s=T,o=j,i=">",d=">=";break;case"<":n=j,s=S,o=R,i="<",d="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(N(e,t,a))return!1;for(var c=0;c<t.set.length;++c){var l=t.set[c],u=null,p=null;if(l.forEach(function(e){e.semver===k&&(e=new A(">=0.0.0")),u=u||e,p=p||e,n(e.semver,u.semver,a)?u=e:o(e.semver,p.semver,a)&&(p=e)}),u.operator===i||u.operator===d)return!1;if((!p.operator||p.operator===i)&&s(e,p.semver))return!1;if(p.operator===d&&o(e,p.semver))return!1}return!0}A.prototype.parse=function(e){var t=this.options.loose?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],r=e.match(t);if(!r)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new h(r[2],this.options.loose):this.semver=k},A.prototype.toString=function(){return this.value},A.prototype.test=function(e){if(r("Comparator.test",e,this.options.loose),this.semver===k||e===k)return!0;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}return P(e,this.operator,this.semver,this.options)},A.prototype.intersects=function(e,t){if(!(e instanceof A))throw new TypeError("a Comparator is required");var r;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(r=new C(e.value,t),N(this.value,r,t));if(""===e.operator)return""===e.value||(r=new C(this.value,t),N(e.semver,r,t));var a=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),n=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,o=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),i=P(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),d=P(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return a||n||s&&o||i||d},t.Range=C,C.prototype.format=function(){return this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim(),this.range},C.prototype.toString=function(){return this.range},C.prototype.parseRange=function(e){var t=this.options.loose,a=t?i[c.HYPHENRANGELOOSE]:i[c.HYPHENRANGE];e=e.replace(a,D),r("hyphen replace",e),e=e.replace(i[c.COMPARATORTRIM],"$1$2$3"),r("comparator trim",e,i[c.COMPARATORTRIM]),e=(e=(e=e.replace(i[c.TILDETRIM],"$1~")).replace(i[c.CARETTRIM],"$1^")).split(/\s+/).join(" ");var n=t?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],s=e.split(" ").map(function(e){return function(e,t){return r("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){r("caret",e,t);var a=t.loose?i[c.CARETLOOSE]:i[c.CARET];return e.replace(a,function(t,a,n,s,o){var i;return r("caret",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i="0"===a?">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":">="+a+"."+n+".0 <"+(+a+1)+".0.0":o?(r("replaceCaret pr",o),i="0"===a?"0"===n?">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+"-"+o+" <"+(+a+1)+".0.0"):(r("no pr"),i="0"===a?"0"===n?">="+a+"."+n+"."+s+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+" <"+(+a+1)+".0.0"),r("caret return",i),i})}(e,t)}).join(" ")}(e,t),r("caret",e),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){var a=t.loose?i[c.TILDELOOSE]:i[c.TILDE];return e.replace(a,function(t,a,n,s,o){var i;return r("tilde",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i=">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":o?(r("replaceTilde pr",o),i=">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0"):i=">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0",r("tilde return",i),i})}(e,t)}).join(" ")}(e,t),r("tildes",e),e=function(e,t){return r("replaceXRanges",e,t),e.split(/\s+/).map(function(e){return function(e,t){e=e.trim();var a=t.loose?i[c.XRANGELOOSE]:i[c.XRANGE];return e.replace(a,function(a,n,s,o,i,d){r("xRange",e,a,n,s,o,i,d);var c=I(s),l=c||I(o),u=l||I(i),p=u;return"="===n&&p&&(n=""),d=t.includePrerelease?"-0":"",c?a=">"===n||"<"===n?"<0.0.0-0":"*":n&&p?(l&&(o=0),i=0,">"===n?(n=">=",l?(s=+s+1,o=0,i=0):(o=+o+1,i=0)):"<="===n&&(n="<",l?s=+s+1:o=+o+1),a=n+s+"."+o+"."+i+d):l?a=">="+s+".0.0"+d+" <"+(+s+1)+".0.0"+d:u&&(a=">="+s+"."+o+".0"+d+" <"+s+"."+(+o+1)+".0"+d),r("xRange return",a),a})}(e,t)}).join(" ")}(e,t),r("xrange",e),e=function(e,t){return r("replaceStars",e,t),e.trim().replace(i[c.STAR],"")}(e,t),r("stars",e),e}(e,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(s=s.filter(function(e){return!!e.match(n)})),s=s.map(function(e){return new A(e,this.options)},this)},C.prototype.intersects=function(e,t){if(!(e instanceof C))throw new TypeError("a Range is required");return this.set.some(function(r){return _(r,t)&&e.set.some(function(e){return _(e,t)&&r.every(function(r){return e.every(function(e){return r.intersects(e,t)})})})})},t.toComparators=function(e,t){return new C(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})},C.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}for(var t=0;t<this.set.length;t++)if(O(this.set[t],e,this.options))return!0;return!1},t.satisfies=N,t.maxSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&-1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minVersion=function(e,t){e=new C(e,t);var r=new h("0.0.0");if(e.test(r))return r;if(r=new h("0.0.0-0"),e.test(r))return r;r=null;for(var a=0;a<e.set.length;++a){e.set[a].forEach(function(e){var t=new h(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":r&&!R(r,t)||(r=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}})}if(r&&e.test(r))return r;return null},t.validRange=function(e,t){try{return new C(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,r){return B(e,t,"<",r)},t.gtr=function(e,t,r){return B(e,t,">",r)},t.outside=B,t.prerelease=function(e,t){var r=y(e,t);return r&&r.prerelease.length?r.prerelease:null},t.intersects=function(e,t,r){return e=new C(e,r),t=new C(t,r),e.intersects(t)},t.coerce=function(e,t){if(e instanceof h)return e;"number"==typeof e&&(e=String(e));if("string"!=typeof e)return null;var r=null;if((t=t||{}).rtl){for(var a;(a=i[c.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&a.index+a[0].length===r.index+r[0].length||(r=a),i[c.COERCERTL].lastIndex=a.index+a[1].length+a[2].length;i[c.COERCERTL].lastIndex=-1}else r=e.match(i[c.COERCE]);if(null===r)return null;return y(r[2]+"."+(r[3]||"0")+"."+(r[4]||"0"),t)}}(MO,MO.exports)),MO.exports}var LO,UO=(void z.env.BABEL_8_BREAKING,FO()),qO={};function GO(e,t){var r={seen:[],stylize:VO};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),XO(t)?r.showHidden=t:t&&function(e,t){if(!t||!ZO(t))return e;var r=Object.keys(t),a=r.length;for(;a--;)e[r[a]]=t[r[a]]}(r,t),$O(r.showHidden)&&(r.showHidden=!1),$O(r.depth)&&(r.depth=2),$O(r.colors)&&(r.colors=!1),$O(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=WO),HO(r,e,r.depth)}function WO(e,t){var r=GO.styles[t];return r?"\x1b["+GO.colors[r][0]+"m"+e+"\x1b["+GO.colors[r][1]+"m":e}function VO(e,t){return e}function HO(e,t,r){if(e.customInspect&&t&&rN(t.inspect)&&t.inspect!==GO&&(!t.constructor||t.constructor.prototype!==t)){var a=t.inspect(r,e);return YO(a)||(a=HO(e,a,r)),a}var n=function(e,t){if($O(t))return e.stylize("undefined","undefined");if(YO(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(a=t,"number"==typeof a)return e.stylize(""+t,"number");var a;if(XO(t))return e.stylize(""+t,"boolean");if(JO(t))return e.stylize("null","null")}(e,t);if(n)return n;var s=Object.keys(t),o=function(e){var t={};return e.forEach(function(e,r){t[e]=!0}),t}(s);if(e.showHidden&&(s=Object.getOwnPropertyNames(t)),tN(t)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return zO(t);if(0===s.length){if(rN(t)){var i=t.name?": "+t.name:"";return e.stylize("[Function"+i+"]","special")}if(QO(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(eN(t))return e.stylize(Date.prototype.toString.call(t),"date");if(tN(t))return zO(t)}var d,c,l="",u=!1,p=["{","}"];(d=t,Array.isArray(d)&&(u=!0,p=["[","]"]),rN(t))&&(l=" [Function"+(t.name?": "+t.name:"")+"]");return QO(t)&&(l=" "+RegExp.prototype.toString.call(t)),eN(t)&&(l=" "+Date.prototype.toUTCString.call(t)),tN(t)&&(l=" "+zO(t)),0!==s.length||u&&0!=t.length?r<0?QO(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),c=u?function(e,t,r,a,n){for(var s=[],o=0,i=t.length;o<i;++o)sN(t,String(o))?s.push(KO(e,t,r,a,String(o),!0)):s.push("");return n.forEach(function(n){n.match(/^\d+$/)||s.push(KO(e,t,r,a,n,!0))}),s}(e,t,r,o,s):s.map(function(a){return KO(e,t,r,o,a,u)}),e.seen.pop(),function(e,t,r){var a=e.reduce(function(e,t){return t.indexOf("\n"),e+t.replace(/\u001b\[\d\d?m/g,"").length+1},0);if(a>60)return r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1];return r[0]+t+" "+e.join(", ")+" "+r[1]}(c,l,p)):p[0]+l+p[1]}function zO(e){return"["+Error.prototype.toString.call(e)+"]"}function KO(e,t,r,a,n,s){var o,i,d;if((d=Object.getOwnPropertyDescriptor(t,n)||{value:t[n]}).get?i=d.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):d.set&&(i=e.stylize("[Setter]","special")),sN(a,n)||(o="["+n+"]"),i||(e.seen.indexOf(d.value)<0?(i=JO(r)?HO(e,d.value,null):HO(e,d.value,r-1)).indexOf("\n")>-1&&(i=s?i.split("\n").map(function(e){return" "+e}).join("\n").substr(2):"\n"+i.split("\n").map(function(e){return" "+e}).join("\n")):i=e.stylize("[Circular]","special")),$O(o)){if(s&&n.match(/^\d+$/))return i;(o=JSON.stringify(""+n)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+i}function XO(e){return"boolean"==typeof e}function JO(e){return null===e}function YO(e){return"string"==typeof e}function $O(e){return void 0===e}function QO(e){return ZO(e)&&"[object RegExp]"===nN(e)}function ZO(e){return"object"==typeof e&&null!==e}function eN(e){return ZO(e)&&"[object Date]"===nN(e)}function tN(e){return ZO(e)&&("[object Error]"===nN(e)||e instanceof Error)}function rN(e){return"function"==typeof e}function aN(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e}function nN(e){return Object.prototype.toString.call(e)}function sN(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function oN(e,t){if(e===t)return 0;for(var r=e.length,a=t.length,n=0,s=Math.min(r,a);n<s;++n)if(e[n]!==t[n]){r=e[n],a=t[n];break}return r<a?-1:a<r?1:0}LO="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e},GO.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},GO.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};var iN,dN=Object.prototype.hasOwnProperty,cN=Object.keys||function(e){var t=[];for(var r in e)dN.call(e,r)&&t.push(r);return t},lN=Array.prototype.slice;function uN(){return void 0!==iN?iN:iN="foo"===function(){}.name}function pN(e){return Object.prototype.toString.call(e)}function fN(e){return!PS(e)&&("function"==typeof j.ArrayBuffer&&("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(e):!!e&&(e instanceof DataView||!!(e.buffer&&e.buffer instanceof ArrayBuffer))))}function gN(e,t){e||xN(e,!0,t,"==",RN)}var mN=/\s*function\s+([^\(\s]*)\s*/;function yN(e){if(rN(e)){if(uN())return e.name;var t=e.toString().match(mN);return t&&t[1]}}function hN(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return bN(vN(e.actual),128)+" "+e.operator+" "+bN(vN(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||xN;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var r=new Error;if(r.stack){var a=r.stack,n=yN(t),s=a.indexOf("\n"+n);if(s>=0){var o=a.indexOf("\n",s+1);a=a.substring(o+1)}this.stack=a}}}function bN(e,t){return"string"==typeof e?e.length<t?e:e.slice(0,t):e}function vN(e){if(uN()||!rN(e))return GO(e);var t=yN(e);return"[Function"+(t?": "+t:"")+"]"}function xN(e,t,r,a,n){throw new hN({message:r,actual:e,expected:t,operator:a,stackStartFunction:n})}function RN(e,t){e||xN(e,!0,t,"==",RN)}function jN(e,t,r,a){if(e===t)return!0;if(PS(e)&&PS(t))return 0===oN(e,t);if(eN(e)&&eN(t))return e.getTime()===t.getTime();if(QO(e)&&QO(t))return e.source===t.source&&e.global===t.global&&e.multiline===t.multiline&&e.lastIndex===t.lastIndex&&e.ignoreCase===t.ignoreCase;if(null!==e&&"object"==typeof e||null!==t&&"object"==typeof t){if(fN(e)&&fN(t)&&pN(e)===pN(t)&&!(e instanceof Float32Array||e instanceof Float64Array))return 0===oN(new Uint8Array(e.buffer),new Uint8Array(t.buffer));if(PS(e)!==PS(t))return!1;var n=(a=a||{actual:[],expected:[]}).actual.indexOf(e);return-1!==n&&n===a.expected.indexOf(t)||(a.actual.push(e),a.expected.push(t),function(e,t,r,a){if(null==e||null==t)return!1;if(aN(e)||aN(t))return e===t;if(r&&Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;var n=wN(e),s=wN(t);if(n&&!s||!n&&s)return!1;if(n)return jN(e=lN.call(e),t=lN.call(t),r);var o,i,d=cN(e),c=cN(t);if(d.length!==c.length)return!1;for(d.sort(),c.sort(),i=d.length-1;i>=0;i--)if(d[i]!==c[i])return!1;for(i=d.length-1;i>=0;i--)if(!jN(e[o=d[i]],t[o],r,a))return!1;return!0}(e,t,r,a))}return r?e===t:e==t}function wN(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function EN(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function SN(e,t,r,a){var n;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(a=r,r=null),n=function(e){var t;try{e()}catch(e){t=e}return t}(t),a=(r&&r.name?" ("+r.name+").":".")+(a?" "+a:"."),e&&!n&&xN(n,r,"Missing expected exception"+a);var s="string"==typeof a,o=!e&&n&&!r;if((!e&&tN(n)&&s&&EN(n,r)||o)&&xN(n,r,"Got unwanted exception"+a),e&&n&&r&&!EN(n,r)||!e&&n)throw n}gN.AssertionError=hN,LO(hN,Error),gN.fail=xN,gN.ok=RN,gN.equal=function e(t,r,a){t!=r&&xN(t,r,a,"==",e)},gN.notEqual=function e(t,r,a){t==r&&xN(t,r,a,"!=",e)},gN.deepEqual=function e(t,r,a){jN(t,r,!1)||xN(t,r,a,"deepEqual",e)},gN.deepStrictEqual=function e(t,r,a){jN(t,r,!0)||xN(t,r,a,"deepStrictEqual",e)},gN.notDeepEqual=function e(t,r,a){jN(t,r,!1)&&xN(t,r,a,"notDeepEqual",e)},gN.notDeepStrictEqual=function e(t,r,a){jN(t,r,!0)&&xN(t,r,a,"notDeepStrictEqual",e)},gN.strictEqual=function e(t,r,a){t!==r&&xN(t,r,a,"===",e)},gN.notStrictEqual=function e(t,r,a){t===r&&xN(t,r,a,"!==",e)},gN.throws=function(e,t,r){SN(!0,e,t,r)},gN.doesNotThrow=function(e,t,r){SN(!1,e,t,r)},gN.ifError=function(e){if(e)throw e};var TN=gs,PN=sm,AN=Rs,kN=Ps,CN=mo,_N=yo,IN=ho,DN=bo,ON=Bs,NN=Cs,BN=Zs,MN=eo,FN=function(){function e(e,t,r){this._statements=[],this._resultName=null,this._importedSource=void 0,this._scope=t,this._hub=r,this._importedSource=e}var t=e.prototype;return t.done=function(){return{statements:this._statements,resultName:this._resultName}},t.import=function(){return this._statements.push(CN([],NN(this._importedSource))),this},t.require=function(){return this._statements.push(AN(TN(kN("require"),[NN(this._importedSource)]))),this},t.namespace=function(e){void 0===e&&(e="namespace");var t=this._scope.generateUidIdentifier(e),r=this._statements[this._statements.length-1];return gN("ImportDeclaration"===r.type),gN(0===r.specifiers.length),r.specifiers=[IN(t)],this._resultName=PN(t),this},t.default=function(e){var t=this._scope.generateUidIdentifier(e),r=this._statements[this._statements.length-1];return gN("ImportDeclaration"===r.type),gN(0===r.specifiers.length),r.specifiers=[_N(t)],this._resultName=PN(t),this},t.named=function(e,t){if("default"===t)return this.default(e);var r=this._scope.generateUidIdentifier(e),a=this._statements[this._statements.length-1];return gN("ImportDeclaration"===a.type),gN(0===a.specifiers.length),a.specifiers=[DN(r,kN(t))],this._resultName=PN(r),this},t.var=function(e){var t=this._scope.generateUidIdentifier(e),r=this._statements[this._statements.length-1];return"ExpressionStatement"!==r.type&&(gN(this._resultName),r=AN(this._resultName),this._statements.push(r)),this._statements[this._statements.length-1]=BN("var",[MN(t,r.expression)]),this._resultName=PN(t),this},t.defaultInterop=function(){return this._interop(this._hub.addHelper("interopRequireDefault"))},t.wildcardInterop=function(){return this._interop(this._hub.addHelper("interopRequireWildcard"))},t._interop=function(e){var t=this._statements[this._statements.length-1];return"ExpressionStatement"===t.type?t.expression=TN(e,[t.expression]):"VariableDeclaration"===t.type?(gN(1===t.declarations.length),t.declarations[0].init=TN(e,[t.declarations[0].init])):gN.fail("Unexpected type."),this},t.prop=function(e){var t=this._statements[this._statements.length-1];return"ExpressionStatement"===t.type?t.expression=ON(t.expression,kN(e)):"VariableDeclaration"===t.type?(gN(1===t.declarations.length),t.declarations[0].init=ON(t.declarations[0].init,kN(e))):gN.fail("Unexpected type:"+t.type),this},t.read=function(e){this._resultName=ON(this._resultName,kN(e))},o(e)}();function LN(e){return"module"===e.node.sourceType}var UN=Ps,qN=bo,GN=_s,WN=Vs,VN=qe,HN=function(){function e(e,t,r){this._defaultOpts={importedSource:null,importedType:"commonjs",importedInterop:"babel",importingInterop:"babel",ensureLiveReference:!1,ensureNoContext:!1,importPosition:"before"};var a=e.find(function(e){return e.isProgram()});this._programPath=a,this._programScope=a.scope,this._hub=a.hub,this._defaultOpts=this._applyDefaults(t,r,!0)}var t=e.prototype;return t.addDefault=function(e,t){return this.addNamed("default",e,t)},t.addNamed=function(e,t,r){return gN("string"==typeof e),this._generateImport(this._applyDefaults(t,r),e)},t.addNamespace=function(e,t){return this._generateImport(this._applyDefaults(e,t),null)},t.addSideEffect=function(e,t){return this._generateImport(this._applyDefaults(e,t),void 0)},t._applyDefaults=function(e,t,r){var a;return void 0===r&&(r=!1),"string"==typeof e?a=Object.assign({},this._defaultOpts,{importedSource:e},t):(gN(!t,"Unexpected secondary arguments."),a=Object.assign({},this._defaultOpts,e)),!r&&t&&(void 0!==t.nameHint&&(a.nameHint=t.nameHint),void 0!==t.blockHoist&&(a.blockHoist=t.blockHoist)),a},t._generateImport=function(e,t){var r="default"===t,a=!!t&&!r,n=null===t,s=e.importedSource,o=e.importedType,i=e.importedInterop,d=e.importingInterop,c=e.ensureLiveReference,l=e.ensureNoContext,u=e.nameHint,p=e.importPosition,f=e.blockHoist,g=u||t,m=LN(this._programPath),y=m&&"node"===d,h=m&&"babel"===d;if("after"===p&&!m)throw new Error('"importPosition": "after" is only supported in modules');var b=new FN(s,this._programScope,this._hub);if("es6"===o){if(!y&&!h)throw new Error("Cannot import an ES6 module from CommonJS");b.import(),n?b.namespace(u||s):(r||a)&&b.named(g,t)}else{if("commonjs"!==o)throw new Error('Unexpected interopType "'+o+'"');if("babel"===i)if(y){g="default"!==g?g:s;var v=s+"$es6Default";b.import(),n?b.default(v).var(g||s).wildcardInterop():r?c?b.default(v).var(g||s).defaultInterop().read("default"):b.default(v).var(g).defaultInterop().prop(t):a&&b.default(v).read(t)}else h?(b.import(),n?b.namespace(g||s):(r||a)&&b.named(g,t)):(b.require(),n?b.var(g||s).wildcardInterop():(r||a)&&c?r?(g="default"!==g?g:s,b.var(g).read(t),b.defaultInterop()):b.var(s).read(t):r?b.var(g).defaultInterop().prop(t):a&&b.var(g).prop(t));else if("compiled"===i)y?(b.import(),n?b.default(g||s):(r||a)&&b.default(s).read(g)):h?(b.import(),n?b.namespace(g||s):(r||a)&&b.named(g,t)):(b.require(),n?b.var(g||s):(r||a)&&(c?b.var(s).read(g):b.prop(t).var(g)));else{if("uncompiled"!==i)throw new Error('Unknown importedInterop "'+i+'".');if(r&&c)throw new Error("No live reference for commonjs default");y?(b.import(),n?b.default(g||s):r?b.default(g):a&&b.default(s).read(g)):h?(b.import(),n?b.default(g||s):r?b.default(g):a&&b.named(g,t)):(b.require(),n?b.var(g||s):r?b.var(g):a&&(c?b.var(s).read(g):b.var(g).prop(t)))}}var x=b.done(),R=x.statements,j=x.resultName;return this._insertStatements(R,p,f),(r||a)&&l&&"Identifier"!==j.type?WN([GN(0),j]):j},t._insertStatements=function(e,t,r){if(void 0===t&&(t="before"),void 0===r&&(r=3),"after"===t){if(this._insertStatementsAfter(e))return}else if(this._insertStatementsBefore(e,r))return;this._programPath.unshiftContainer("body",e)},t._insertStatementsBefore=function(e,t){if(1===e.length&&VN(e[0])&&zN(e[0])){var r=this._programPath.get("body").find(function(e){return e.isImportDeclaration()&&zN(e.node)});if((null==r?void 0:r.node.source.value)===e[0].source.value&&JN(r.node,e[0]))return!0}e.forEach(function(e){e._blockHoist=t});var a=this._programPath.get("body").find(function(e){var t=e.node._blockHoist;return Number.isFinite(t)&&t<4});return!!a&&(a.insertBefore(e),!0)},t._insertStatementsAfter=function(e){for(var t,r=new Set(e),a=new Map,n=i(e);!(t=n()).done;){var s=t.value;if(VN(s)&&zN(s)){var o=s.source.value;a.has(o)||a.set(o,[]),a.get(o).push(s)}}for(var d,c=null,l=i(this._programPath.get("body"));!(d=l()).done;){var u=d.value;if(u.isImportDeclaration()&&zN(u.node)){c=u;var p=u.node.source.value,f=a.get(p);if(!f)continue;for(var g,m=i(f);!(g=m()).done;){var y=g.value;r.has(y)&&(JN(u.node,y)&&r.delete(y))}}}return 0===r.size||(c&&c.insertAfter(Array.from(r)),!!c)},o(e)}();function zN(e){return"type"!==e.importKind&&"typeof"!==e.importKind}function KN(e){return 1===e.specifiers.length&&"ImportNamespaceSpecifier"===e.specifiers[0].type||2===e.specifiers.length&&"ImportNamespaceSpecifier"===e.specifiers[1].type}function XN(e){return e.specifiers.length>0&&"ImportDefaultSpecifier"===e.specifiers[0].type}function JN(e,t){var r;return e.specifiers.length?!t.specifiers.length||!KN(e)&&!KN(t)&&(XN(t)&&(XN(e)?t.specifiers[0]=qN(t.specifiers[0].local,UN("default")):e.specifiers.unshift(t.specifiers.shift())),(r=e.specifiers).push.apply(r,b(t.specifiers)),!0):(e.specifiers=t.specifiers,!0)}function YN(e,t,r){return new HN(e).addDefault(t,r)}function $N(e,t,r,a){return new HN(e).addNamed(t,r,a)}function QN(e,t,r){return new HN(e).addNamespace(t,r)}var ZN,eB,tB=Object.freeze({__proto__:null,ImportInjector:HN,addDefault:YN,addNamed:$N,addNamespace:QN,addSideEffect:function(e,t,r){return new HN(e).addSideEffect(t,r)},isModule:LN});function rB(e){ZN||(ZN=hw({ThisExpression:function(e){e.replaceWith($s("void",_s(0),!0))}}),ZN.noScope=!0),OO(e.node,ZN)}var aB={Scope:function(e){e.skip()},ClassDeclaration:function(e){var t=this.requeueInParent,r=this.exported,a=this.metadata,n=e.node.id;if(!n)throw new Error("Expected class to have a name");var s=n.name,o=r.get(s)||[];if(o.length>0){var i=Rs(nB(a,o,Ps(s),e.scope));i._blockHoist=e.node._blockHoist,t(e.insertAfter(i)[0])}},VariableDeclaration:function(e){for(var t,r=this.requeueInParent,a=this.exported,n=this.metadata,s="var"===e.node.kind,o=i(e.get("declarations"));!(t=o()).done;){var d=t.value,c=d.node.id,l=d.node.init;if(!ie(c)||!a.has(c.name)||Ie(l)||oe(l)&&!l.id||Oe(l)&&!l.id)for(var u=0,p=Object.keys(d.getOuterBindingIdentifiers());u<p.length;u++){var f=p[u];if(a.has(f)){var g=Rs(nB(n,a.get(f),Ps(f),e.scope));g._blockHoist=e.node._blockHoist,r(e.insertAfter(g)[0])}}else{if(!l){if(s)continue;l=e.scope.buildUndefinedNode()}d.node.init=nB(n,a.get(c.name),l,e.scope),r(d.get("init"))}}}},nB=function(e,t,r,a){for(var n=e.exportName,s=a;null!=s;s=s.parent)s.hasOwnBinding(n)&&s.rename(n);return(t||[]).reduce(function(t,r){var a=e.stringSpecifiers.has(r);return is("=",Bs(Ps(n),a?Cs(r):Ps(r),a),t)},r)},sB=function(e){return pj.expression.ast(eB||(eB=h(["\n (function() {\n throw new Error('\"' + '","' + '\" is read-only.');\n })()\n "])),e)},oB={ReferencedIdentifier:function(e){var t=this.seen,r=this.buildImportReference,a=this.scope,n=this.imported,s=this.requeueInParent;if(!t.has(e.node)){t.add(e.node);var o=e.node.name,i=n.get(o);if(i){if(function(e){do{switch(e.parent.type){case"TSTypeAnnotation":case"TSTypeAliasDeclaration":case"TSTypeReference":case"TypeAnnotation":case"TypeAlias":return!0;case"ExportSpecifier":return"type"===e.parentPath.parent.exportKind;default:if(e.parentPath.isStatement()||e.parentPath.isExpression())return!1}}while(e=e.parentPath)}(e))throw e.buildCodeFrameError('Cannot transform the imported binding "'+o+"\" since it's also used in a type annotation. Please strip type annotations using @babel/preset-typescript or @babel/preset-flow.");var d=e.scope.getBinding(o);if(a.getBinding(o)!==d)return;var c=r(i,e.node);if(c.loc=e.node.loc,(e.parentPath.isCallExpression({callee:e.node})||e.parentPath.isOptionalCallExpression({callee:e.node})||e.parentPath.isTaggedTemplateExpression({tag:e.node}))&&me(c))e.replaceWith(Vs([_s(0),c]));else if(e.isJSXIdentifier()&&me(c)){var l=c.object,u=c.property;e.replaceWith(sd(nd(l.name),nd(u.name)))}else e.replaceWith(c);s(e),e.skip()}}},UpdateExpression:function(e){var t=this.scope,r=this.seen,a=this.imported,n=this.exported,s=this.requeueInParent,o=this.buildImportReference;if(!r.has(e.node)){r.add(e.node);var i=e.get("argument");if(!i.isMemberExpression()){var d=e.node;if(i.isIdentifier()){var c=i.node.name;if(t.getBinding(c)!==e.scope.getBinding(c))return;var l=n.get(c),u=a.get(c);if((null==l?void 0:l.length)>0||u)if(u)e.replaceWith(is(d.operator[0]+"=",o(u,i.node),sB(c)));else if(d.prefix)e.replaceWith(nB(this.metadata,l,sm(d),e.scope));else{var p=t.generateDeclaredUidIdentifier(c);e.replaceWith(Vs([is("=",sm(p),sm(d)),nB(this.metadata,l,Ps(c),e.scope),sm(p)]))}}s(e),e.skip()}}},AssignmentExpression:{exit:function(e){var t=this,r=this.scope,a=this.seen,n=this.imported,s=this.exported,o=this.requeueInParent,i=this.buildImportReference;if(!a.has(e.node)){a.add(e.node);var d=e.get("left");if(!d.isMemberExpression())if(d.isIdentifier()){var c=d.node.name;if(r.getBinding(c)!==e.scope.getBinding(c))return;var l=s.get(c),u=n.get(c);if((null==l?void 0:l.length)>0||u){var p=e.node;u&&(p.left=i(u,d.node),p.right=Vs([p.right,sB(c)]));var f,g=p.operator;f="="===g?p:is("=",p.left,"&&="===g||"||="===g||"??="===g?Ns(g.slice(0,-1),sm(p.left),p.right):ds(g.slice(0,-1),sm(p.left),p.right)),e.replaceWith(nB(this.metadata,l,f,e.scope)),o(e),e.skip()}}else{var m=d.getOuterBindingIdentifiers(),y=Object.keys(m).filter(function(t){return r.getBinding(t)===e.scope.getBinding(t)}),h=y.find(function(e){return n.has(e)});h&&(e.node.right=Vs([e.node.right,sB(h)]));var b=[];if(y.forEach(function(r){var a=s.get(r)||[];a.length>0&&b.push(nB(t.metadata,a,Ps(r),e.scope))}),b.length>0){var v=Vs(b);e.parentPath.isExpressionStatement()&&((v=Rs(v))._blockHoist=e.parentPath.node._blockHoist),o(e.insertAfter(v)[0])}}}}},ForXStatement:function(e){var t=e.scope,r=e.node.left,a=this.exported,n=this.imported,s=this.scope;if(!Ae(r)){for(var o,i=!1,d=e.get("body").scope,c=0,l=Object.keys(Dy(r));c<l.length;c++){var u=l[c];s.getBinding(u)===t.getBinding(u)&&(a.has(u)&&(i=!0,d.hasOwnBinding(u)&&d.rename(u)),n.has(u)&&!o&&(o=u))}if(!i&&!o)return;e.ensureBlock();var p=e.get("body"),f=t.generateUidIdentifierBasedOnNode(r);e.get("left").replaceWith(Zs("let",[eo(sm(f))])),t.registerDeclaration(e.get("left")),i&&p.unshiftContainer("body",Rs(is("=",r,f))),o&&p.unshiftContainer("body",Rs(sB(o)))}}};function iB(e,t){for(var r=0,a=e.length-1;a>=0;a--){var n=e[a];"."===n?e.splice(a,1):".."===n?(e.splice(a,1),r++):r&&(e.splice(a,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}var dB=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,cB=function(e){return dB.exec(e).slice(1)};function lB(){for(var e="",t=!1,r=arguments.length-1;r>=-1&&!t;r--){var a=r>=0?arguments[r]:"/";if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(e=a+"/"+e,t="/"===a.charAt(0))}return(t?"/":"")+(e=iB(vB(e.split("/"),function(e){return!!e}),!t).join("/"))||"."}function uB(e){var t=pB(e),r="/"===EB(e,-1);return(e=iB(vB(e.split("/"),function(e){return!!e}),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e}function pB(e){return"/"===e.charAt(0)}function fB(){return uB(vB(Array.prototype.slice.call(arguments,0),function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))}function gB(e,t){function r(e){for(var t=0;t<e.length&&""===e[t];t++);for(var r=e.length-1;r>=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=lB(e).substr(1),t=lB(t).substr(1);for(var a=r(e.split("/")),n=r(t.split("/")),s=Math.min(a.length,n.length),o=s,i=0;i<s;i++)if(a[i]!==n[i]){o=i;break}var d=[];for(i=o;i<a.length;i++)d.push("..");return(d=d.concat(n.slice(o))).join("/")}function mB(e){var t=cB(e),r=t[0],a=t[1];return r||a?(a&&(a=a.substr(0,a.length-1)),r+a):"."}function yB(e,t){var r=cB(e)[2];return t&&r.substr(-1*t.length)===t&&(r=r.substr(0,r.length-t.length)),r}function hB(e){return cB(e)[3]}var bB={extname:hB,basename:yB,dirname:mB,sep:"/",delimiter:":",relative:gB,join:fB,isAbsolute:pB,normalize:uB,resolve:lB};function vB(e,t){if(e.filter)return e.filter(t);for(var r=[],a=0;a<e.length;a++)t(e[a],a,e)&&r.push(e[a]);return r}var xB,RB,jB,wB,EB="b"==="ab".substr(-1)?function(e,t,r){return e.substr(t,r)}:function(e,t,r){return t<0&&(t=e.length+t),e.substr(t,r)},SB=Object.freeze({__proto__:null,basename:yB,default:bB,delimiter:":",dirname:mB,extname:hB,isAbsolute:pB,join:fB,normalize:uB,relative:gB,resolve:lB,sep:"/"});function TB(e){return e.hasExports}function PB(e){return 0===e.imports.size&&0===e.importsNamespace.size&&0===e.reexports.size&&0===e.reexportNamespace.size&&!e.reexportAll}function AB(e){if("function"!=typeof e&&"none"!==e&&"babel"!==e&&"node"!==e)throw new Error('.importInterop must be one of "none", "babel", "node", or a function returning one of those values (received '+e+").");return e}function kB(e,t,r){return"function"==typeof e?AB(e(t,r)):e}function CB(e,t,r){var a=r.importInterop,n=r.initializeReexports,s=void 0!==n&&n,o=r.getWrapperPayload,d=r.esNamespaceOnly,c=void 0!==d&&d,l=r.filename;t||(t=e.scope.generateUidIdentifier("exports").name);var u=new Set;!function(e){e.get("body").forEach(function(e){e.isExportDefaultDeclaration()&&e.splitExportDeclaration()})}(e);var p=function(e,t,r){var a=t.getWrapperPayload,n=t.initializeReexports,s=function(e,t,r){var a=new Map,n=e.scope,s=e.get("body");s.forEach(function(e){var r;if(e.isImportDeclaration())r="import";else{if(e.isExportDefaultDeclaration()&&(e=e.get("declaration")),e.isExportNamedDeclaration())if(e.node.declaration)e=e.get("declaration");else if(t&&e.node.source&&e.get("source").isStringLiteral())return void e.get("specifiers").forEach(function(e){IB(e),a.set(e.get("local").node.name,"block")});if(e.isFunctionDeclaration())r="hoisted";else if(e.isClassDeclaration())r="block";else if(e.isVariableDeclaration({kind:"var"}))r="var";else{if(!e.isVariableDeclaration())return;r="block"}}Object.keys(e.getOuterBindingIdentifiers()).forEach(function(e){a.set(e,r)})});var o=new Map,i=function(e){var t=e.node.name,r=o.get(t);if(!r){var s,i,d=null!=(s=a.get(t))?s:null==(i=n.getBinding(t))?void 0:i.kind;if(void 0===d)throw e.buildCodeFrameError('Exporting local "'+t+'", which is not declared.');r={names:[],kind:d},o.set(t,r)}return r};return s.forEach(function(e){if(!e.isExportNamedDeclaration()||!t&&e.node.source){if(e.isExportDefaultDeclaration()){var a=e.get("declaration");if(!a.isFunctionDeclaration()&&!a.isClassDeclaration())throw a.buildCodeFrameError("Unexpected default expression export.");i(a.get("id")).names.push("default")}}else if(e.node.declaration){var n=e.get("declaration"),s=n.getOuterBindingIdentifierPaths();Object.keys(s).forEach(function(e){if("__esModule"===e)throw n.buildCodeFrameError('Illegal export "__esModule".');i(s[e]).names.push(e)})}else e.get("specifiers").forEach(function(e){var t=e.get("local"),a=e.get("exported"),n=i(t),s=_B(a,r);if("__esModule"===s)throw a.buildCodeFrameError('Illegal export "__esModule".');n.names.push(s)})}),o}(e,n,r),o=new Map,d=new Map,c=function(t,r){var a=t.value,n=d.get(a);return n?o.get(a).push(r):(n={name:e.scope.generateUidIdentifier(yB(a,hB(a))).name,interop:"none",loc:null,imports:new Map,importsNamespace:new Set,reexports:new Map,reexportNamespace:new Set,reexportAll:null,wrap:null,get lazy(){return"lazy"===this.wrap},referenced:!1},d.set(a,n),o.set(a,[r])),n},l=!1;e.get("body").forEach(function(e){if(e.isImportDeclaration()){var t=c(e.node.source,e.node);t.loc||(t.loc=e.node.loc),e.get("specifiers").forEach(function(e){if(e.isImportDefaultSpecifier()){var a=e.get("local").node.name;t.imports.set(a,"default");var n=s.get(a);n&&(s.delete(a),n.names.forEach(function(e){t.reexports.set(e,"default")}),t.referenced=!0)}else if(e.isImportNamespaceSpecifier()){var o=e.get("local").node.name;t.importsNamespace.add(o);var i=s.get(o);i&&(s.delete(o),i.names.forEach(function(e){t.reexportNamespace.add(e)}),t.referenced=!0)}else if(e.isImportSpecifier()){var d=_B(e.get("imported"),r),c=e.get("local").node.name;t.imports.set(c,d);var l=s.get(c);l&&(s.delete(c),l.names.forEach(function(e){t.reexports.set(e,d)}),t.referenced=!0)}})}else if(e.isExportAllDeclaration()){l=!0;var a=c(e.node.source,e.node);a.loc||(a.loc=e.node.loc),a.reexportAll={loc:e.node.loc},a.referenced=!0}else if(e.isExportNamedDeclaration()&&e.node.source){l=!0;var n=c(e.node.source,e.node);n.loc||(n.loc=e.node.loc),e.get("specifiers").forEach(function(e){IB(e);var t=_B(e.get("local"),r),a=_B(e.get("exported"),r);if(n.reexports.set(a,t),n.referenced=!0,"__esModule"===a)throw e.get("exported").buildCodeFrameError('Illegal export "__esModule".')})}else(e.isExportNamedDeclaration()||e.isExportDefaultDeclaration())&&(l=!0)});for(var u,p=i(d.values());!(u=p()).done;){var f=u.value,g=!1,m=!1;f.importsNamespace.size>0&&(g=!0,m=!0),f.reexportAll&&(m=!0);for(var h,b=i(f.imports.values());!(h=b()).done;){"default"===h.value?g=!0:m=!0}for(var v,x=i(f.reexports.values());!(v=x()).done;){"default"===v.value?g=!0:m=!0}g&&m?f.interop="namespace":g&&(f.interop="default")}if(a)for(var R,j=i(d);!(R=j()).done;){var w=y(R.value,2),E=w[0],S=w[1];S.wrap=a(E,S,o.get(E))}return{hasExports:l,local:s,sources:d}}(e,{initializeReexports:s,getWrapperPayload:o},u),f=p.local,g=p.sources,m=p.hasExports;!function(e){e.get("body").forEach(function(e){if(e.isImportDeclaration())e.remove();else if(e.isExportNamedDeclaration())e.node.declaration?(e.node.declaration._blockHoist=e.node._blockHoist,e.replaceWith(e.node.declaration)):e.remove();else if(e.isExportDefaultDeclaration()){var t=e.get("declaration");if(!t.isFunctionDeclaration()&&!t.isClassDeclaration())throw t.buildCodeFrameError("Unexpected default expression export.");t._blockHoist=e.node._blockHoist,e.replaceWith(t)}else e.isExportAllDeclaration()&&e.remove()})}(e);for(var h,b=i(g);!(h=b()).done;){var v=y(h.value,2),x=v[0],R=v[1],j=R.importsNamespace,w=R.imports;if(j.size>0&&0===w.size){var E=y(j,1)[0];R.name=E}var S=kB(a,x,l);"none"===S?R.interop="none":"node"===S&&"namespace"===R.interop?R.interop="node-namespace":"node"===S&&"default"===R.interop?R.interop="node-default":c&&"namespace"===R.interop&&(R.interop="default")}return{exportName:t,exportNameListName:null,hasExports:m,local:f,source:g,stringSpecifiers:u}}function _B(e,t){if(e.isIdentifier())return e.node.name;if(e.isStringLiteral()){var r=e.node.value;return Lr(r)||t.add(r),r}throw new Error("Expected export specifier to be either Identifier or StringLiteral, got "+e.node.type)}function IB(e){if(!e.isExportSpecifier())throw e.isExportNamespaceSpecifier()?e.buildCodeFrameError("Export namespace should be first transformed by `@babel/plugin-transform-export-namespace-from`."):e.buildCodeFrameError("Unexpected export specifier type")}function DB(e,t){return"lazy"===t?gs(e,[]):null}function OB(e,t,r,a){var n=Z(e)?e.arguments[0]:e.source;if(le(n)||$e(n)&&0===n.quasis.length)return t?pj.expression.ast(xB||(xB=h(["\n Promise.resolve().then(() => ",")\n "])),a(n)):a(n);var s=$e(n)?Ps("specifier"):Po([To({raw:""}),To({raw:""})],[Ps("specifier")]);return t?pj.expression.ast(RB||(RB=h(["\n (specifier =>\n new Promise(r => r(","))\n .then(s => ",")\n )(",")\n "])),s,a(Ps("s")),n):r?pj.expression.ast(jB||(jB=h(["\n (specifier =>\n new Promise(r => r(","))\n )(",")\n "])),a(s),n):pj.expression.ast(wB||(wB=h(["\n (specifier => ",")(",")\n "])),a(s),n)}var NB,BB,MB,FB,LB,UB,qB,GB,WB,VB,HB,zB,KB,XB,JB=YB;function YB(e,t){var r=e.filename,a=e.filenameRelative,n=void 0===a?r:a,s=e.sourceRoot,o=void 0===s?t.moduleRoot:s,i=t.moduleId,d=t.moduleIds,c=void 0===d?!!i:d,l=t.getModuleId,u=t.moduleRoot,p=void 0===u?o:u;if(!c)return null;if(null!=i&&!l)return i;var f=null!=p?p+"/":"";if(n){var g=null!=o?new RegExp("^"+o+"/?"):"";f+=n.replace(g,"").replace(/\.\w*$/,"")}return f=f.replace(/\\/g,"/"),l&&l(f)||f}function $B(e,t){var r=t.exportName,a=t.strict,n=t.allowTopLevelThis,s=t.strictMode,o=t.noInterop,d=t.importInterop,c=void 0===d?o?"none":"babel":d,l=t.lazy,u=t.getWrapperPayload,p=void 0===u?function(e){return function(t,r){if(!1===e)return null;if(PB(r)||r.reexportAll)return null;if(!0===e)return t.includes(".")?null:"lazy";if(Array.isArray(e))return e.includes(t)?"lazy":null;if("function"==typeof e)return e(t)?"lazy":null;throw new Error(".lazy must be a boolean, string array, or function")}}(null!=l&&l):u,f=t.wrapReference,g=void 0===f?DB:f,m=t.esNamespaceOnly,v=t.filename,x=t.constantReexports,R=void 0===x?arguments[1].loose:x,j=t.enumerableModuleMeta,w=void 0===j?arguments[1].loose:j,E=t.noIncompleteNsImportDetection;AB(c),gN(LN(e),"Cannot process module statements in a script"),e.node.sourceType="script";var S=CB(e,r,{importInterop:c,initializeReexports:R,getWrapperPayload:p,esNamespaceOnly:m,filename:v});if(n||rB(e),function(e,t,r){for(var a,n=new Map,s=new Map,o=function(t){e.requeue(t)},d=i(t.source);!(a=d()).done;){for(var c,l=y(a.value,2),u=l[0],p=l[1],f=i(p.imports);!(c=f()).done;){var g=y(c.value,2),m=g[0],h=g[1];n.set(m,[u,h,null])}for(var v,x=i(p.importsNamespace);!(v=x()).done;){var R=v.value;n.set(R,[u,null,R])}}for(var j,w=i(t.local);!(j=w()).done;){var E,S=y(j.value,2),T=S[0],P=S[1],A=s.get(T);A||(A=[],s.set(T,A)),(E=A).push.apply(E,b(P.names))}var k={metadata:t,requeueInParent:o,scope:e.scope,exported:s};e.traverse(aB,k);var C={seen:new WeakSet,metadata:t,requeueInParent:o,scope:e.scope,imported:n,exported:s,buildImportReference:function(e,a){var n,s=y(e,3),o=s[0],i=s[1],d=s[2],c=t.source.get(o);if(c.referenced=!0,d)return c.wrap&&(a=null!=(n=r(a,c.wrap))?n:a),a;var l,u=Ps(c.name);if(c.wrap&&(u=null!=(l=r(u,c.wrap))?l:u),"default"===i&&"node-default"===c.interop)return u;var p=t.stringSpecifiers.has(i);return Bs(u,p?Cs(i):Ps(i),p)}};e.traverse(oB,C)}(e,S,g),!1!==s){var T=e.node.directives.some(function(e){return"use strict"===e.value.value});T||e.unshiftContainer("directives",ls(us("use strict")))}var P=[];TB(S)&&!a&&P.push(function(e,t){void 0===t&&(t=!1);return(t?pj.statement(qB||(qB=h(["\n EXPORTS.__esModule = true;\n "]))):pj.statement(GB||(GB=h(['\n Object.defineProperty(EXPORTS, "__esModule", {\n value: true,\n });\n ']))))({EXPORTS:e.exportName})}(S,w));var A=function(e,t){for(var r,a=Object.create(null),n=i(t.local.values());!(r=n()).done;)for(var s,o=i(r.value.names);!(s=o()).done;){a[s.value]=!0}for(var d,c=!1,l=i(t.source.values());!(d=l()).done;){for(var u,p=d.value,f=i(p.reexports.keys());!(u=f()).done;){a[u.value]=!0}for(var g,m=i(p.reexportNamespace);!(g=m()).done;){a[g.value]=!0}c=c||!!p.reexportAll}if(!c||0===Object.keys(a).length)return null;var y=e.scope.generateUidIdentifier("exportNames");return delete a.default,{name:y.name,statement:Zs("var",[eo(y,ky(a))])}}(e,S);return A&&(S.exportNameListName=A.name,P.push(A.statement)),P.push.apply(P,b(function(e,t,r,a,n){void 0===a&&(a=!1);void 0===n&&(n=!1);for(var s,o=[],d=i(t.local);!(s=d()).done;){var c=y(s.value,2),l=c[0],u=c[1];if("import"===u.kind);else if("hoisted"===u.kind)o.push([u.names[0],nM(t,u.names,Ps(l))]);else if(!n)for(var p,f=i(u.names);!(p=f()).done;){var g=p.value;o.push([g,null])}}for(var m,h=i(t.source.values());!(m=h()).done;){var v=m.value;if(!a)for(var x=rM(t,v,!1,r),R=b(v.reexports.keys()),j=0;j<x.length;j++)o.push([R[j],x[j]]);if(!n)for(var w,E=i(v.reexportNamespace);!(w=E()).done;){var S=w.value;o.push([S,null])}}o.sort(function(e,t){var r=y(e,1)[0],a=y(t,1)[0];return r<a?-1:a<r?1:0});var T=[];if(n)for(var P,A=i(o);!(P=A()).done;){var k=y(P.value,2)[1];T.push(k)}else for(var C=100,_=0;_<o.length;_+=C){for(var I=[],D=0;D<C&&_+D<o.length;D++){var O=y(o[_+D],2),N=O[0],B=O[1];null!==B?(I.length>0&&(T.push(nM(t,I,e.scope.buildUndefinedNode())),I=[]),T.push(B)):I.push(N)}I.length>0&&T.push(nM(t,I,e.scope.buildUndefinedNode()))}return T}(e,S,g,R,E))),{meta:S,headers:P}}function QB(e){e.forEach(function(e){e._blockHoist=3})}function ZB(e,t,r){if("none"===r)return null;if("node-namespace"===r)return gs(e.hub.addHelper("interopRequireWildcard"),[t,Ds(!0)]);if("node-default"===r)return null;var a;if("default"===r)a="interopRequireDefault";else{if("namespace"!==r)throw new Error("Unknown interop: "+r);a="interopRequireWildcard"}return gs(e.hub.addHelper(a),[t])}function eM(e,t,r,a){var n;void 0===r&&(r=!1),void 0===a&&(a=DB);for(var s,o=[],d=Ps(t.name),c=i(t.importsNamespace);!(s=c()).done;){var l=s.value;l!==t.name&&o.push(pj.statement(NB||(NB=h(["var NAME = SOURCE;"])))({NAME:l,SOURCE:sm(d)}))}var u=null!=(n=a(d,t.wrap))?n:d;r&&o.push.apply(o,b(rM(e,t,!0,a)));for(var p,f=i(t.reexportNamespace);!(p=f()).done;){var g=p.value;o.push((ie(u)?pj.statement(MB||(MB=h(["EXPORTS.NAME = NAMESPACE;"]))):pj.statement(BB||(BB=h(['\n Object.defineProperty(EXPORTS, "NAME", {\n enumerable: true,\n get: function() {\n return NAMESPACE;\n }\n });\n ']))))({EXPORTS:e.exportName,NAME:g,NAMESPACE:sm(u)}))}if(t.reexportAll){var m=function(e,t,r){return(r?pj.statement(WB||(WB=h(['\n Object.keys(NAMESPACE).forEach(function(key) {\n if (key === "default" || key === "__esModule") return;\n VERIFY_NAME_LIST;\n if (key in EXPORTS && EXPORTS[key] === NAMESPACE[key]) return;\n\n EXPORTS[key] = NAMESPACE[key];\n });\n ']))):pj.statement(VB||(VB=h(['\n Object.keys(NAMESPACE).forEach(function(key) {\n if (key === "default" || key === "__esModule") return;\n VERIFY_NAME_LIST;\n if (key in EXPORTS && EXPORTS[key] === NAMESPACE[key]) return;\n\n Object.defineProperty(EXPORTS, key, {\n enumerable: true,\n get: function() {\n return NAMESPACE[key];\n },\n });\n });\n ']))))({NAMESPACE:t,EXPORTS:e.exportName,VERIFY_NAME_LIST:e.exportNameListName?pj(HB||(HB=h(["\n if (Object.prototype.hasOwnProperty.call(EXPORTS_LIST, key)) return;\n "])))({EXPORTS_LIST:e.exportNameListName}):null})}(e,sm(u),r);m.loc=t.reexportAll.loc,o.push(m)}return o}YB=function(e,t){var r,a,n,s;return JB(e,{moduleId:null!=(r=t.moduleId)?r:e.moduleId,moduleIds:null!=(a=t.moduleIds)?a:e.moduleIds,getModuleId:null!=(n=t.getModuleId)?n:e.getModuleId,moduleRoot:null!=(s=t.moduleRoot)?s:e.moduleRoot})};var tM={constant:function(e){var t=e.exports,r=e.exportName,a=e.namespaceImport;return pj.statement.ast(FB||(FB=h(["\n ","."," = ",";\n "])),t,r,a)},constantComputed:function(e){var t=e.exports,r=e.exportName,a=e.namespaceImport;return pj.statement.ast(LB||(LB=h(["\n ",'["','"] = ',";\n "])),t,r,a)},spec:function(e){var t=e.exports,r=e.exportName,a=e.namespaceImport;return pj.statement.ast(UB||(UB=h(["\n Object.defineProperty(",', "','", {\n enumerable: true,\n get: function() {\n return ',";\n },\n });\n "])),t,r,a)}};function rM(e,t,r,a){var n,s=Ps(t.name);s=null!=(n=a(s,t.wrap))?n:s;var o=e.stringSpecifiers;return Array.from(t.reexports,function(a){var n=y(a,2),i=n[0],d=n[1],c=sm(s);"default"===d&&"node-default"===t.interop||(c=o.has(d)?Bs(c,Cs(d),!0):Bs(c,Ps(d)));var l={exports:e.exportName,exportName:i,namespaceImport:c};return r||ie(c)?o.has(i)?tM.constantComputed(l):tM.constant(l):tM.spec(l)})}var aM={computed:function(e){var t=e.exports,r=e.name,a=e.value;return pj.expression.ast(zB||(zB=h(["",'["','"] = ',""])),t,r,a)},default:function(e){var t=e.exports,r=e.name,a=e.value;return pj.expression.ast(KB||(KB=h(["","."," = ",""])),t,r,a)},define:function(e){var t=e.exports,r=e.name,a=e.value;return pj.expression.ast(XB||(XB=h(["\n Object.defineProperty(",', "','", {\n enumerable: true,\n value: void 0,\n writable: true\n })["','"] = ',""])),t,r,r,a)}};function nM(e,t,r){var a=e.stringSpecifiers,n=e.exportName;return Rs(t.reduce(function(e,t){var r={exports:n,name:t,value:e};return"__proto__"===t?aM.define(r):a.has(t)?aM.computed(r):aM.default(r)},r))}var sM=cR(Object.freeze({__proto__:null,buildDynamicImport:OB,buildNamespaceInitStatements:eM,ensureStatementsHoisted:QB,getModuleName:YB,hasExports:TB,isModule:LN,isSideEffectImport:PB,rewriteModuleStatementsAndPrepareHeader:$B,rewriteThis:rB,wrapInterop:ZB}));qO.getModuleName=function(){return sM.getModuleName};var oM,iM=sm,dM=cs,cM=Ry,lM=function(){function e(e,t){var r=this,a=t.code,n=t.ast,s=t.inputMap;this._map=new Map,this.opts=void 0,this.declarations={},this.path=void 0,this.ast=void 0,this.scope=void 0,this.metadata={},this.code="",this.inputMap=void 0,this.hub={file:this,getCode:function(){return r.code},getScope:function(){return r.scope},addHelper:this.addHelper.bind(this),buildError:this.buildCodeFrameError.bind(this)},this.opts=e,this.code=a,this.ast=n,this.inputMap=s,this.path=JD.get({hub:this.hub,parentPath:null,parent:this.ast,container:this.ast,key:"program"}).setContext(),this.scope=this.path.scope}var t=e.prototype;return t.set=function(e,t){if("helpersNamespace"===e)throw new Error("Babel 7.0.0-beta.56 has dropped support for the 'helpersNamespace' utility.If you are using @babel/plugin-external-helpers you will need to use a newer version than the one you currently have installed. If you have your own implementation, you'll want to explore using 'helperGenerator' alongside 'file.availableHelper()'.");this._map.set(e,t)},t.get=function(e){return this._map.get(e)},t.has=function(e){return this._map.has(e)},t.availableHelper=function(e,t){if(wj(e))return!1;var r;try{r=jj(e)}catch(e){if("BABEL_HELPER_UNKNOWN"!==e.code)throw e;return!1}return"string"!=typeof t||(UO.valid(t)&&(t="^"+t),!UO.intersects("<"+r,t)&&!UO.intersects(">=8.0.0",t))},t.addHelper=function(e){if(wj(e))throw new Error("Cannot use internal helper "+e);return this._addHelper(e)},t._addHelper=function(e){var t=this,r=this.declarations[e];if(r)return iM(r);var a=this.get("helperGenerator");if(a){var n=a(e);if(n)return n}jj(e);for(var s,o=this.declarations[e]=this.scope.generateUidIdentifier(e),d={},c=i(function(e){return xj(e).getDependencies()}(e));!(s=c()).done;){var l=s.value;d[l]=this._addHelper(l)}var u=Rj(e,function(e){return d[e]},o.name,Object.keys(this.scope.getAllBindings())),p=u.nodes;u.globals.forEach(function(e){t.path.scope.hasBinding(e,!0)&&t.path.scope.rename(e)}),p.forEach(function(e){e._compact=!0});for(var f,g=i(this.path.unshiftContainer("body",p));!(f=g()).done;){var m=f.value;m.isVariableDeclaration()&&this.scope.registerDeclaration(m)}return o},t.buildCodeFrameError=function(e,t,r){void 0===r&&(r=SyntaxError);var a=null==e?void 0:e.loc;if(!a&&e){cM(e,function(e){if(e.loc)return a=e.loc,cM.stop});var n="This is an error on an internal node. Probably an internal error.";a&&(n+=" Location has been estimated."),t+=" ("+n+")"}if(a){var s=this.opts.highlightCode,o=void 0===s||s;t+="\n"+_R(this.code,{start:{line:a.start.line,column:a.start.column+1},end:a.end&&a.start.line===a.end.line?{line:a.end.line,column:a.end.column+1}:void 0},{highlightCode:o})}return new r(t)},o(e,[{key:"shebang",get:function(){var e=this.path.node.interpreter;return e?e.value:""},set:function(e){e?this.path.get("interpreter").replaceWith(dM(e)):this.path.get("interpreter").remove()}}])}();lM.prototype.addImport=function(){throw new Error("This API has been removed. If you're looking for this functionality in Babel 7, you should import the '@babel/helper-module-imports' module and use the functions exposed from that module, such as 'addNamed' or 'addDefault'.")},lM.prototype.addTemplateObject=function(){throw new Error("This function has been moved into the template literal transform itself.")},lM.prototype.getModuleName=function(){return qO.getModuleName()(this.opts,this.opts)};var uM=os,pM=is,fM=ds,gM=ps,mM=gs,yM=sm,hM=ys,bM=po,vM=fo,xM=Rs,RM=Ts,jM=Ps,wM=Bs,EM=Ls,SM=Fs,TM=Cs,PM=$s,AM=Zs,kM=eo,CM=function(e){return pj.statement(oM||(oM=h(['\n (function (root, factory) {\n if (typeof define === "function" && define.amd) {\n define(AMD_ARGUMENTS, factory);\n } else if (typeof exports === "object") {\n factory(COMMON_ARGUMENTS);\n } else {\n factory(BROWSER_ARGUMENTS);\n }\n })(UMD_ROOT, function (FACTORY_PARAMETERS) {\n FACTORY_BODY\n });\n '])))(e)};function _M(e){var t=jM("babelHelpers"),r=[],a=RM(null,[jM("global")],gM(r)),n=SM([xM(mM(a,[hM(fM("===",PM("typeof",jM("global")),TM("undefined")),jM("self"),jM("global"))]))]);return r.push(AM("var",[kM(t,pM("=",wM(jM("global"),t),EM([])))])),NM(r,t,e),n}function IM(e){var t=[],r=NM(t,null,e);return t.unshift(bM(null,Object.keys(r).map(function(e){return vM(yM(r[e]),jM(e))}))),SM(t,[],"module")}function DM(e){var t=jM("babelHelpers"),r=[];return r.push(AM("var",[kM(t,jM("global"))])),NM(r,t,e),SM([CM({FACTORY_PARAMETERS:jM("global"),BROWSER_ARGUMENTS:pM("=",wM(jM("root"),t),EM([])),COMMON_ARGUMENTS:jM("exports"),AMD_ARGUMENTS:uM([TM("exports")]),FACTORY_BODY:r,UMD_ROOT:jM("this")})])}function OM(e){var t=jM("babelHelpers"),r=[];r.push(AM("var",[kM(t,EM([]))]));var a=SM(r);return NM(r,t,e),r.push(xM(t)),a}function NM(e,t,r){var a=function(e){return t?wM(t,jM(e)):jM("_"+e)},n={};return Tj.forEach(function(s){if(!r||r.includes(s)){var o=n[s]=a(s),i=Rj(s,a,t?null:"_"+s,[],t?function(e,t,r){r(function(e){return pM("=",o,e)}),e.body.push(xM(pM("=",o,jM(t))))}:null),d=i.nodes;e.push.apply(e,b(d))}}),n}function BM(e,t){void 0===t&&(t="global");var r={global:_M,module:IM,umd:DM,var:OM}[t];if(!r)throw new Error("Unsupported output type "+t);return bk(r(e)).code}var MM=p().m(GM),FM=p().m(WM),LM=p().m(VM),UM=p().m(HM),qM=p().m(zM);function GM(e){return p().w(function(t){for(;;)if(0===t.n)return t.a(2,{filepath:e,directories:[],pkg:null,isPackage:!1})},MM)}function WM(e,t,r){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,{config:null,ignore:null})},FM)}function VM(e,t,r){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,null)},LM)}function HM(e,t,r,a){return p().w(function(r){for(;;)switch(r.n){case 0:throw new Error("Cannot load "+e+" relative to "+t+" in a browser");case 1:return r.a(2)}},UM)}function zM(e){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,null)},qM)}var KM=[];function XM(e,t){throw new Error("Cannot load plugin "+e+" relative to "+t+" in a browser")}function JM(e,t){throw new Error("Cannot load preset "+e+" relative to "+t+" in a browser")}function YM(e){return void 0===e&&(e="development"),z.env.BABEL_ENV||"production"}var $M=Symbol.for("gensync:v1:start"),QM=Symbol.for("gensync:v1:suspend"),ZM="GENSYNC_EXPECTED_SUSPEND",eF="GENSYNC_OPTIONS_ERROR",tF="GENSYNC_RACE_NONEMPTY",rF="GENSYNC_ERRBACK_NO_CALLBACK",aF=Object.assign(function(e){var t=e;return t="function"!=typeof e?function(e){var t=e.name,r=e.arity,a=e.sync,n=e.async,s=e.errback;if(nF("string","name",t,!0),nF("number","arity",r,!0),nF("function","sync",a),nF("function","async",n,!0),nF("function","errback",s,!0),n&&s)throw sF("Expected one of either opts.async or opts.errback, but got _both_.",eF);if("string"!=typeof t){var o;s&&s.name&&"errback"!==s.name&&(o=s.name),n&&n.name&&"async"!==n.name&&(o=n.name.replace(/Async$/,"")),a&&a.name&&"sync"!==a.name&&(o=a.name.replace(/Sync$/,"")),"string"==typeof o&&(t=o)}"number"!=typeof r&&(r=a.length);return oF({name:t,arity:r,sync:function(e){return a.apply(this,e)},async:function(e,t,r){n?n.apply(this,e).then(t,r):s?s.call.apply(s,[this].concat(b(e),[function(e,a){null==e?t(a):r(e)}])):t(a.apply(this,e))}})}(e):function(e){return uF(e.name,e.length,function(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return e.apply(this,r)})}(e),Object.assign(t,function(e){var t={sync:function(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return iF(e.apply(this,r))},async:function(){for(var t=this,r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];return new Promise(function(r,n){dF(e.apply(t,a),r,n)})},errback:function(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];var n,s=r.pop();if("function"!=typeof s)throw sF("Asynchronous function called without callback",rF);try{n=e.apply(this,r)}catch(e){return void s(e)}dF(n,function(e){return s(void 0,e)},function(e){return s(e)})}};return t}(t))},{all:oF({name:"all",arity:1,sync:function(e){return Array.from(e[0]).map(function(e){return iF(e)})},async:function(e,t,r){var a=Array.from(e[0]);if(0!==a.length){var n=0,s=a.map(function(){});a.forEach(function(e,a){dF(e,function(e){s[a]=e,(n+=1)===s.length&&t(s)},r)})}else Promise.resolve().then(function(){return t([])})}}),race:oF({name:"race",arity:1,sync:function(e){var t=Array.from(e[0]);if(0===t.length)throw sF("Must race at least 1 item",tF);return iF(t[0])},async:function(e,t,r){var a=Array.from(e[0]);if(0===a.length)throw sF("Must race at least 1 item",tF);for(var n=0,s=a;n<s.length;n++){dF(s[n],t,r)}}})});function nF(e,t,r,a){if(!(typeof r===e||a&&void 0===r))throw sF(a?"Expected opts."+t+" to be either a "+e+", or undefined.":"Expected opts."+t+" to be a "+e+".",eF)}function sF(e,t){return Object.assign(new Error(e),{code:t})}function oF(e){var t=e.name,r=e.arity,a=e.sync,n=e.async;return uF(t,r,p().m(function e(){var t,r,s,o,i,d,c=arguments;return p().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,$M;case 1:for(t=e.v,r=c.length,s=new Array(r),o=0;o<r;o++)s[o]=c[o];if(t){e.n=2;break}return i=a.call(this,s),e.a(2,i);case 2:try{n.call(this,s,function(e){d||(d={value:e},t())},function(e){d||(d={err:e},t())})}catch(e){d={err:e},t()}return e.n=3,QM;case 3:if(!d.hasOwnProperty("err")){e.n=4;break}throw d.err;case 4:return e.a(2,d.value)}},e,this)}))}function iF(e){for(var t;!(r=e.next(),t=r.value,r).done;){var r;cF(t,e)}return t}function dF(e,t,r){!function a(){try{for(var n,s,o=function(){cF(n,e);var t=!0,r=!1,s=e.next(function(){t?r=!0:a()});if(t=!1,function(e,t){var r=e.value,a=e.done;if(!a&&r===QM)return;lF(t,sF(a?"Unexpected generator completion. If you get this, it is probably a gensync bug.":"Expected GENSYNC_SUSPEND, got "+JSON.stringify(r)+". If you get this, it is probably a gensync bug.",ZM))}(s,e),!r)return{v:void 0}};!(i=e.next(),n=i.value,i).done;){var i;if(s=o())return s.v}return t(n)}catch(e){return r(e)}}()}function cF(e,t){e!==$M&&lF(t,sF("Got unexpected yielded value in gensync generator: "+JSON.stringify(e)+". Did you perhaps mean to use 'yield*' instead of 'yield'?","GENSYNC_EXPECTED_START"))}function lF(e,t){throw e.throw&&e.throw(t),t}function uF(e,t,r){if("string"==typeof e){var a=Object.getOwnPropertyDescriptor(r,"name");a&&!a.configurable||Object.defineProperty(r,"name",Object.assign(a||{},{configurable:!0,value:e}))}if("number"==typeof t){var n=Object.getOwnPropertyDescriptor(r,"length");n&&!n.configurable||Object.defineProperty(r,"length",Object.assign(n||{},{configurable:!0,value:t}))}return r}var pF=aF(p().m(function e(t){return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(t),1);case 1:return e.a(2,e.v)}},e)})),fF=aF({sync:function(){return!1},errback:function(e){return e(null,!0)}});function gF(e,t){return aF({sync:function(){for(var r=arguments.length,a=new Array(r),n=0;n<r;n++)a[n]=arguments[n];var s=e.apply(this,a);if(RF(s))throw new Error(t);return s},async:function(){for(var t=arguments.length,r=new Array(t),a=0;a<t;a++)r[a]=arguments[a];return Promise.resolve(e.apply(this,r))}})}var mF,yF=aF({sync:function(e){return e("sync")},async:(mF=s(p().m(function e(t){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,t("async"))},e)})),function(e){return mF.apply(this,arguments)})});function hF(e,t){var r=aF(e);return yF(function(e){var a=r[e];return t(a)})}var bF,vF=aF({name:"onFirstPause",arity:2,sync:function(e){return pF.sync(e)},errback:function(e,t,r){var a=!1;pF.errback(e,function(e,t){a=!0,r(e,t)}),a||t()}}),xF=aF({sync:function(e){return e},async:(bF=s(p().m(function e(t){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,t)},e)})),function(e){return bF.apply(this,arguments)})});function RF(e){return!(!e||"object"!=typeof e&&"function"!=typeof e||!e.then||"function"!=typeof e.then)}function jF(e,t){for(var r=0,a=Object.keys(t);r<a.length;r++){var n=a[r];if("parserOpts"!==n&&"generatorOpts"!==n&&"assumptions"!==n||!t[n]){var s=t[n];void 0!==s&&(e[n]=s)}else{var o=t[n];wF(e[n]||(e[n]={}),o)}}}function wF(e,t){for(var r=0,a=Object.keys(t);r<a.length;r++){var n=a[r],s=t[n];void 0!==s&&(e[n]=s)}}function EF(e){return!!e&&"function"==typeof e.next&&"function"==typeof e[Symbol.iterator]}function SF(e){return Object.freeze(e)}function TF(e){for(var t=new Set,r=[e];r.length>0;)for(var a,n=i(r.pop());!(a=n()).done;){var s=a.value;Array.isArray(s)?r.push(s):t.add(s)}return t}var PF=o(function(e,t,r,a){void 0===a&&(a=SF([])),this.key=void 0,this.manipulateOptions=void 0,this.post=void 0,this.pre=void 0,this.visitor=void 0,this.parserOverride=void 0,this.generatorOverride=void 0,this.options=void 0,this.externalDependencies=void 0,this.key=e.name||r,this.manipulateOptions=e.manipulateOptions,this.post=e.post,this.pre=e.pre,this.visitor=e.visitor||{},this.parserOverride=e.parserOverride,this.generatorOverride=e.generatorOverride,this.options=t,this.externalDependencies=a});function AF(e){var t,r,a=!1;return p().m(function n(){var s,o,i,d,c,l;return p().w(function(n){for(;;)switch(n.p=n.n){case 0:if(t){n.n=12;break}if(!r){n.n=2;break}return a=!0,n.d(g(xF(r)),1);case 1:return n.a(2,n.v);case 2:return n.d(g(fF()),3);case 3:if(n.v){n.n=8;break}return n.p=4,n.d(g(e()),5);case 5:i=n.v,t={ok:!0,value:i},n.n=7;break;case 6:n.p=6,d=n.v,t={ok:!1,value:d};case 7:n.n=12;break;case 8:return r=new Promise(function(e,t){s=e,o=t}),n.p=9,n.d(g(e()),10);case 10:c=n.v,t={ok:!0,value:c},r=null,a&&s(t.value),n.n=12;break;case 11:n.p=11,l=n.v,t={ok:!1,value:l},r=null,a&&o(l);case 12:if(!t.ok){n.n=13;break}return n.a(2,t.value);case 13:throw t.value;case 14:return n.a(2)}},n,null,[[9,11],[4,6]])})}var kF=p().m(DF),CF=p().m(LF),_F=p().m(UF),IF=function(e){return aF(e).sync};function DF(){return p().w(function(e){for(;;)if(0===e.n)return e.a(2,!0)},kF)}function OF(e){return FF(WeakMap,e)}function NF(e){return IF(OF(e))}function BF(e){return FF(Map,e)}function MF(e){return IF(BF(e))}function FF(e,t){var r=new e,a=new e,n=new e;return p().m(function e(s,o){var i,d,c,l,u,f,m;return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(fF()),1);case 1:return i=e.v,d=i?a:r,e.d(g(UF(i,d,n,s,o)),2);case 2:if(!(c=e.v).valid){e.n=3;break}return e.a(2,c.value);case 3:if(l=new WF(o),!EF(u=t(s,l))){e.n=5;break}return e.d(g(vF(u,function(){f=qF(l,n,s)})),4);case 4:m=e.v,e.n=6;break;case 5:m=u;case 6:return GF(d,l,s,m),f&&(n.delete(s),f.release(m)),e.a(2,m)}},e)})}function LF(e,t,r){var a,n,s,o,d,c;return p().w(function(l){for(;;)switch(l.n){case 0:if(!(a=e.get(t))){l.n=4;break}n=i(a);case 1:if((s=n()).done){l.n=4;break}return o=s.value,d=o.value,c=o.valid,l.d(g(c(r)),2);case 2:if(!l.v){l.n=3;break}return l.a(2,{valid:!0,value:d});case 3:l.n=1;break;case 4:return l.a(2,{valid:!1,value:null})}},CF)}function UF(e,t,r,a,n){var s,o,i;return p().w(function(d){for(;;)switch(d.n){case 0:return d.d(g(LF(t,a,n)),1);case 1:if(!(s=d.v).valid){d.n=2;break}return d.a(2,s);case 2:if(!e){d.n=5;break}return d.d(g(LF(r,a,n)),3);case 3:if(!(o=d.v).valid){d.n=5;break}return d.d(g(xF(o.value.promise)),4);case 4:return i=d.v,d.a(2,{valid:!0,value:i});case 5:return d.a(2,{valid:!1,value:null})}},_F)}function qF(e,t,r){var a=new HF;return GF(t,e,r,a),a}function GF(e,t,r,a){t.configured()||t.forever();var n=e.get(r);switch(t.deactivate(),t.mode()){case"forever":n=[{value:a,valid:DF}],e.set(r,n);break;case"invalidate":n=[{value:a,valid:t.validator()}],e.set(r,n);break;case"valid":n?n.push({value:a,valid:t.validator()}):(n=[{value:a,valid:t.validator()}],e.set(r,n))}}var WF=function(){function e(e){this._active=!0,this._never=!1,this._forever=!1,this._invalidate=!1,this._configured=!1,this._pairs=[],this._data=void 0,this._data=e}var t=e.prototype;return t.simple=function(){return function(e){function t(t){if("boolean"!=typeof t)return e.using(function(){return VF(t())});t?e.forever():e.never()}return t.forever=function(){return e.forever()},t.never=function(){return e.never()},t.using=function(t){return e.using(function(){return VF(t())})},t.invalidate=function(t){return e.invalidate(function(){return VF(t())})},t}(this)},t.mode=function(){return this._never?"never":this._forever?"forever":this._invalidate?"invalidate":"valid"},t.forever=function(){if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._never)throw new Error("Caching has already been configured with .never()");this._forever=!0,this._configured=!0},t.never=function(){if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._forever)throw new Error("Caching has already been configured with .forever()");this._never=!0,this._configured=!0},t.using=function(e){var t=this;if(!this._active)throw new Error("Cannot change caching after evaluation has completed.");if(this._never||this._forever)throw new Error("Caching has already been configured with .never or .forever()");this._configured=!0;var r=e(this._data),a=gF(e,"You appear to be using an async cache handler, but Babel has been called synchronously");return RF(r)?r.then(function(e){return t._pairs.push([e,a]),e}):(this._pairs.push([r,a]),r)},t.invalidate=function(e){return this._invalidate=!0,this.using(e)},t.validator=function(){var e=this._pairs;return p().m(function t(r){var a,n,s,o,d,c,l;return p().w(function(t){for(;;)switch(t.n){case 0:a=i(e);case 1:if((n=a()).done){t.n=4;break}return s=y(n.value,2),o=s[0],d=s[1],c=o,t.d(g(d(r)),2);case 2:if(l=t.v,c===l){t.n=3;break}return t.a(2,!1);case 3:t.n=1;break;case 4:return t.a(2,!0)}},t)})},t.deactivate=function(){this._active=!1},t.configured=function(){return this._configured},o(e)}();function VF(e){if(RF(e))throw new Error("You appear to be using an async cache handler, which your current version of Babel does not support. We may add support for this in the future, but if you're on the most recent version of @babel/core and still seeing this error, then you'll need to synchronously handle your caching logic.");if(null!=e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e)throw new Error("Cache keys must be either string, boolean, number, null, or undefined.");return e}var HF=function(){function e(){var e=this;this.released=!1,this.promise=void 0,this._resolve=void 0,this.promise=new Promise(function(t){e._resolve=t})}return e.prototype.release=function(e){this.released=!0,this._resolve(e)},o(e)}(),zF={},KF={};KF.browsers={A:"ie",B:"edge",C:"firefox",D:"chrome",E:"safari",F:"opera",G:"ios_saf",H:"op_mini",I:"android",J:"bb",K:"op_mob",L:"and_chr",M:"and_ff",N:"ie_mob",O:"and_uc",P:"samsung",Q:"and_qq",R:"baidu",S:"kaios"};var XF={};XF.browserVersions={0:"117",1:"118",2:"119",3:"120",4:"121",5:"122",6:"123",7:"124",8:"125",9:"20",A:"10",B:"11",C:"12",D:"7",E:"8",F:"9",G:"15",H:"80",I:"144",J:"4",K:"6",L:"13",M:"14",N:"16",O:"17",P:"18",Q:"79",R:"81",S:"83",T:"84",U:"85",V:"86",W:"87",X:"88",Y:"89",Z:"90",a:"91",b:"92",c:"93",d:"94",e:"95",f:"96",g:"97",h:"98",i:"99",j:"100",k:"101",l:"102",m:"103",n:"104",o:"105",p:"106",q:"107",r:"108",s:"109",t:"110",u:"111",v:"112",w:"113",x:"114",y:"115",z:"116",AB:"21",BB:"22",CB:"23",DB:"24",EB:"25",FB:"26",GB:"27",HB:"28",IB:"29",JB:"126",KB:"127",LB:"128",MB:"129",NB:"130",OB:"131",PB:"132",QB:"133",RB:"134",SB:"135",TB:"136",UB:"137",VB:"138",WB:"139",XB:"140",YB:"141",ZB:"142",aB:"143",bB:"5",cB:"19",dB:"30",eB:"31",fB:"32",gB:"33",hB:"34",iB:"35",jB:"36",kB:"37",lB:"38",mB:"39",nB:"40",oB:"41",pB:"42",qB:"43",rB:"44",sB:"45",tB:"46",uB:"47",vB:"48",wB:"49",xB:"50",yB:"51",zB:"52","0B":"53","1B":"54","2B":"55","3B":"56","4B":"57","5B":"58","6B":"60","7B":"62","8B":"63","9B":"64",AC:"65",BC:"66",CC:"67",DC:"68",EC:"69",FC:"70",GC:"71",HC:"72",IC:"73",JC:"74",KC:"75",LC:"76",MC:"77",NC:"78",OC:"147",PC:"11.1",QC:"12.1",RC:"15.5",SC:"16.0",TC:"17.0",UC:"18.0",VC:"3",WC:"59",XC:"61",YC:"82",ZC:"145",aC:"146",bC:"3.2",cC:"10.1",dC:"15.2-15.3",eC:"15.4",fC:"16.1",gC:"16.2",hC:"16.3",iC:"16.4",jC:"16.5",kC:"17.1",lC:"17.2",mC:"17.3",nC:"17.4",oC:"17.5",pC:"18.1",qC:"18.2",rC:"18.3",sC:"18.4",tC:"26.0",uC:"26.1",vC:"26.2",wC:"26.3",xC:"11.5",yC:"4.2-4.3",zC:"5.5","0C":"2","1C":"148","2C":"149","3C":"150","4C":"3.5","5C":"3.6","6C":"3.1","7C":"5.1","8C":"6.1","9C":"7.1",AD:"9.1",BD:"13.1",CD:"14.1",DD:"15.1",ED:"15.6",FD:"16.6",GD:"17.6",HD:"18.5-18.6",ID:"TP",JD:"9.5-9.6",KD:"10.0-10.1",LD:"10.5",MD:"10.6",ND:"11.6",OD:"4.0-4.1",PD:"5.0-5.1",QD:"6.0-6.1",RD:"7.0-7.1",SD:"8.1-8.4",TD:"9.0-9.2",UD:"9.3",VD:"10.0-10.2",WD:"10.3",XD:"11.0-11.2",YD:"11.3-11.4",ZD:"12.0-12.1",aD:"12.2-12.5",bD:"13.0-13.1",cD:"13.2",dD:"13.3",eD:"13.4-13.7",fD:"14.0-14.4",gD:"14.5-14.8",hD:"15.0-15.1",iD:"15.6-15.8",jD:"16.6-16.7",kD:"17.6-17.7",lD:"18.5-18.7",mD:"all",nD:"2.1",oD:"2.2",pD:"2.3",qD:"4.1",rD:"4.4",sD:"4.4.3-4.4.4",tD:"5.0-5.4",uD:"6.2-6.4",vD:"7.2-7.4",wD:"8.2",xD:"9.2",yD:"11.1-11.2",zD:"12.0","0D":"13.0","1D":"14.0","2D":"15.0","3D":"19.0","4D":"14.9","5D":"13.52","6D":"2.5","7D":"3.0-3.1"};var JF=KF.browsers,YF=XF.browserVersions,$F={A:{A:{K:0,D:0,E:.0197585,F:.0592756,A:0,B:.355654,zC:0},B:"ms",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","zC","K","D","E","F","A","B","","",""],E:"IE",F:{zC:962323200,K:998870400,D:1161129600,E:1237420800,F:1300060800,A:1346716800,B:1381968e3}},B:{A:{0:0,1:0,2:0,3:.02264,4:0,5:.009056,6:0,7:0,8:0,C:0,L:0,M:0,G:0,N:0,O:0,P:0,Q:0,H:0,R:0,S:0,T:0,U:0,V:0,W:0,X:0,Y:0,Z:0,a:0,b:.009056,c:0,d:0,e:0,f:0,g:0,h:0,i:0,j:0,k:0,l:0,m:0,n:0,o:0,p:0,q:0,r:0,s:.031696,t:0,u:0,v:0,w:0,x:.004528,y:0,z:0,JB:.004528,KB:.004528,LB:0,MB:0,NB:.004528,OB:.018112,PB:.004528,QB:.009056,RB:.009056,SB:.013584,TB:.009056,UB:.013584,VB:.02264,WB:.018112,XB:.036224,YB:.06792,ZB:1.10936,aB:2.83453,I:0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","C","L","M","G","N","O","P","Q","H","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","JB","KB","LB","MB","NB","OB","PB","QB","RB","SB","TB","UB","VB","WB","XB","YB","ZB","aB","I","","",""],E:"Edge",F:{0:1694649600,1:1697155200,2:1698969600,3:1701993600,4:1706227200,5:1708732800,6:1711152e3,7:1713398400,8:1715990400,C:1438128e3,L:1447286400,M:1470096e3,G:1491868800,N:1508198400,O:1525046400,P:1542067200,Q:1579046400,H:1581033600,R:1586736e3,S:1590019200,T:1594857600,U:1598486400,V:1602201600,W:1605830400,X:161136e4,Y:1614816e3,Z:1618358400,a:1622073600,b:1626912e3,c:1630627200,d:1632441600,e:1634774400,f:1637539200,g:1641427200,h:1643932800,i:1646265600,j:1649635200,k:1651190400,l:1653955200,m:1655942400,n:1659657600,o:1661990400,p:1664755200,q:1666915200,r:1670198400,s:1673481600,t:1675900800,u:1678665600,v:1680825600,w:1683158400,x:1685664e3,y:1689897600,z:1692576e3,JB:1718841600,KB:1721865600,LB:1724371200,MB:1726704e3,NB:1729123200,OB:1731542400,PB:1737417600,QB:1740614400,RB:1741219200,SB:1743984e3,TB:1746316800,UB:1748476800,VB:1750896e3,WB:1754611200,XB:1756944e3,YB:1759363200,ZB:1761868800,aB:1764806400,I:1768780800},D:{C:"ms",L:"ms",M:"ms",G:"ms",N:"ms",O:"ms",P:"ms"}},C:{A:{0:0,1:.117728,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,"0C":0,VC:0,J:0,bB:.027168,K:0,D:0,E:0,F:0,A:0,B:.049808,C:0,L:0,M:0,G:0,N:0,O:0,P:0,cB:0,AB:0,BB:0,CB:0,DB:0,EB:0,FB:0,GB:0,HB:0,IB:0,dB:0,eB:0,fB:0,gB:0,hB:0,iB:0,jB:0,kB:0,lB:0,mB:0,nB:0,oB:0,pB:0,qB:.013584,rB:0,sB:0,tB:0,uB:0,vB:0,wB:0,xB:0,yB:0,zB:.009056,"0B":0,"1B":0,"2B":0,"3B":0,"4B":0,"5B":0,WC:0,"6B":0,XC:0,"7B":0,"8B":0,"9B":0,AC:0,BC:0,CC:0,DC:0,EC:0,FC:0,GC:0,HC:0,IC:0,JC:0,KC:0,LC:0,MC:0,NC:.004528,Q:0,H:0,R:0,YC:0,S:0,T:0,U:0,V:0,W:0,X:0,Y:0,Z:0,a:0,b:0,c:0,d:0,e:0,f:0,g:0,h:0,i:0,j:0,k:0,l:0,m:0,n:0,o:0,p:0,q:0,r:0,s:0,t:0,u:0,v:0,w:0,x:0,y:.144896,z:0,JB:0,KB:0,LB:.009056,MB:0,NB:0,OB:0,PB:0,QB:0,RB:0,SB:.004528,TB:.009056,UB:.004528,VB:.004528,WB:.004528,XB:.095088,YB:.004528,ZB:.009056,aB:.013584,I:.027168,ZC:.529776,aC:.774288,OC:0,"1C":0,"2C":0,"3C":0,"4C":0,"5C":0},B:"moz",C:["0C","VC","4C","5C","J","bB","K","D","E","F","A","B","C","L","M","G","N","O","P","cB","9","AB","BB","CB","DB","EB","FB","GB","HB","IB","dB","eB","fB","gB","hB","iB","jB","kB","lB","mB","nB","oB","pB","qB","rB","sB","tB","uB","vB","wB","xB","yB","zB","0B","1B","2B","3B","4B","5B","WC","6B","XC","7B","8B","9B","AC","BC","CC","DC","EC","FC","GC","HC","IC","JC","KC","LC","MC","NC","Q","H","R","YC","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","JB","KB","LB","MB","NB","OB","PB","QB","RB","SB","TB","UB","VB","WB","XB","YB","ZB","aB","I","ZC","aC","OC","1C","2C","3C"],E:"Firefox",F:{0:1693267200,1:1695686400,2:1698105600,3:1700524800,4:1702944e3,5:1705968e3,6:1708387200,7:1710806400,8:1713225600,9:1361232e3,"0C":1161648e3,VC:1213660800,"4C":124632e4,"5C":1264032e3,J:1300752e3,bB:1308614400,K:1313452800,D:1317081600,E:1317081600,F:1320710400,A:1324339200,B:1327968e3,C:1331596800,L:1335225600,M:1338854400,G:1342483200,N:1346112e3,O:1349740800,P:1353628800,cB:1357603200,AB:1364860800,BB:1368489600,CB:1372118400,DB:1375747200,EB:1379376e3,FB:1386633600,GB:1391472e3,HB:1395100800,IB:1398729600,dB:1402358400,eB:1405987200,fB:1409616e3,gB:1413244800,hB:1417392e3,iB:1421107200,jB:1424736e3,kB:1428278400,lB:1431475200,mB:1435881600,nB:1439251200,oB:144288e4,pB:1446508800,qB:1450137600,rB:1453852800,sB:1457395200,tB:1461628800,uB:1465257600,vB:1470096e3,wB:1474329600,xB:1479168e3,yB:1485216e3,zB:1488844800,"0B":149256e4,"1B":1497312e3,"2B":1502150400,"3B":1506556800,"4B":1510617600,"5B":1516665600,WC:1520985600,"6B":1525824e3,XC:1529971200,"7B":1536105600,"8B":1540252800,"9B":1544486400,AC:154872e4,BC:1552953600,CC:1558396800,DC:1562630400,EC:1567468800,FC:1571788800,GC:1575331200,HC:1578355200,IC:1581379200,JC:1583798400,KC:1586304e3,LC:1588636800,MC:1591056e3,NC:1593475200,Q:1595894400,H:1598313600,R:1600732800,YC:1603152e3,S:1605571200,T:1607990400,U:1611619200,V:1614038400,W:1616457600,X:1618790400,Y:1622505600,Z:1626134400,a:1628553600,b:1630972800,c:1633392e3,d:1635811200,e:1638835200,f:1641859200,g:1644364800,h:1646697600,i:1649116800,j:1651536e3,k:1653955200,l:1656374400,m:1658793600,n:1661212800,o:1663632e3,p:1666051200,q:1668470400,r:1670889600,s:1673913600,t:1676332800,u:1678752e3,v:1681171200,w:1683590400,x:1686009600,y:1688428800,z:1690848e3,JB:1715644800,KB:1718064e3,LB:1720483200,MB:1722902400,NB:1725321600,OB:1727740800,PB:173016e4,QB:1732579200,RB:1736208e3,SB:1738627200,TB:1741046400,UB:1743465600,VB:1745884800,WB:1748304e3,XB:1750723200,YB:1753142400,ZB:1755561600,aB:1757980800,I:17604e5,ZC:1762819200,aC:1765238400,OC:1768262400,"1C":null,"2C":null,"3C":null}},D:{A:{0:.149424,1:.063392,2:.02264,3:.27168,4:.054336,5:.163008,6:.095088,7:.131312,8:.58864,9:0,J:0,bB:0,K:0,D:0,E:0,F:0,A:0,B:0,C:0,L:0,M:0,G:0,N:0,O:0,P:0,cB:0,AB:0,BB:0,CB:0,DB:0,EB:0,FB:0,GB:0,HB:0,IB:0,dB:0,eB:0,fB:0,gB:0,hB:0,iB:0,jB:0,kB:0,lB:0,mB:.009056,nB:.009056,oB:.009056,pB:.009056,qB:.009056,rB:.009056,sB:.009056,tB:.009056,uB:.009056,vB:.013584,wB:.013584,xB:.009056,yB:.009056,zB:.013584,"0B":.009056,"1B":.009056,"2B":.009056,"3B":.009056,"4B":.009056,"5B":.009056,WC:.009056,"6B":.009056,XC:0,"7B":0,"8B":0,"9B":0,AC:0,BC:.018112,CC:0,DC:0,EC:.036224,FC:0,GC:0,HC:0,IC:0,JC:0,KC:0,LC:0,MC:0,NC:.004528,Q:.06792,H:.009056,R:.009056,S:.040752,T:0,U:.009056,V:.009056,W:.027168,X:.004528,Y:0,Z:0,a:.013584,b:.009056,c:.009056,d:0,e:0,f:0,g:.009056,h:.04528,i:.018112,j:0,k:.013584,l:.009056,m:.108672,n:.054336,o:.24904,p:.122256,q:.190176,r:.099616,s:.719952,t:.099616,u:.144896,v:1.63008,w:.009056,x:.1132,y:.031696,z:.149424,JB:.733536,KB:.126784,LB:.076976,MB:.06792,NB:.172064,OB:.366768,PB:.086032,QB:.20376,RB:.144896,SB:.06792,TB:.058864,UB:.081504,VB:.27168,WB:3.59976,XB:.27168,YB:.602224,ZB:6.09922,aB:8.50358,I:.036224,ZC:.009056,aC:0,OC:0},B:"webkit",C:["","","","","","","","","J","bB","K","D","E","F","A","B","C","L","M","G","N","O","P","cB","9","AB","BB","CB","DB","EB","FB","GB","HB","IB","dB","eB","fB","gB","hB","iB","jB","kB","lB","mB","nB","oB","pB","qB","rB","sB","tB","uB","vB","wB","xB","yB","zB","0B","1B","2B","3B","4B","5B","WC","6B","XC","7B","8B","9B","AC","BC","CC","DC","EC","FC","GC","HC","IC","JC","KC","LC","MC","NC","Q","H","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","JB","KB","LB","MB","NB","OB","PB","QB","RB","SB","TB","UB","VB","WB","XB","YB","ZB","aB","I","ZC","aC","OC"],E:"Chrome",F:{0:1694476800,1:1696896e3,2:1698710400,3:1701993600,4:1705968e3,5:1708387200,6:1710806400,7:1713225600,8:1715644800,9:133704e4,J:1264377600,bB:1274745600,K:1283385600,D:1287619200,E:1291248e3,F:1296777600,A:1299542400,B:1303862400,C:1307404800,L:1312243200,M:1316131200,G:1316131200,N:1319500800,O:1323734400,P:1328659200,cB:1332892800,AB:1340668800,BB:1343692800,CB:1348531200,DB:1352246400,EB:1357862400,FB:1361404800,GB:1364428800,HB:1369094400,IB:1374105600,dB:1376956800,eB:1384214400,fB:1389657600,gB:1392940800,hB:1397001600,iB:1400544e3,jB:1405468800,kB:1409011200,lB:141264e4,mB:1416268800,nB:1421798400,oB:1425513600,pB:1429401600,qB:143208e4,rB:1437523200,sB:1441152e3,tB:1444780800,uB:1449014400,vB:1453248e3,wB:1456963200,xB:1460592e3,yB:1464134400,zB:1469059200,"0B":1472601600,"1B":1476230400,"2B":1480550400,"3B":1485302400,"4B":1489017600,"5B":149256e4,WC:1496707200,"6B":1500940800,XC:1504569600,"7B":1508198400,"8B":1512518400,"9B":1516752e3,AC:1520294400,BC:1523923200,CC:1527552e3,DC:1532390400,EC:1536019200,FC:1539648e3,GC:1543968e3,HC:154872e4,IC:1552348800,JC:1555977600,KC:1559606400,LC:1564444800,MC:1568073600,NC:1571702400,Q:1575936e3,H:1580860800,R:1586304e3,S:1589846400,T:1594684800,U:1598313600,V:1601942400,W:1605571200,X:1611014400,Y:1614556800,Z:1618272e3,a:1621987200,b:1626739200,c:1630368e3,d:1632268800,e:1634601600,f:1637020800,g:1641340800,h:1643673600,i:1646092800,j:1648512e3,k:1650931200,l:1653350400,m:1655769600,n:1659398400,o:1661817600,p:1664236800,q:1666656e3,r:166968e4,s:1673308800,t:1675728e3,u:1678147200,v:1680566400,w:1682985600,x:1685404800,y:1689724800,z:1692057600,JB:1718064e3,KB:1721174400,LB:1724112e3,MB:1726531200,NB:1728950400,OB:1731369600,PB:1736812800,QB:1738627200,RB:1741046400,SB:1743465600,TB:1745884800,UB:1748304e3,VB:1750723200,WB:1754352e3,XB:1756771200,YB:1759190400,ZB:1761609600,aB:1764633600,I:1768262400,ZC:null,aC:null,OC:null}},E:{A:{J:0,bB:0,K:0,D:0,E:0,F:0,A:0,B:0,C:0,L:0,M:.009056,G:0,"6C":0,bC:0,"7C":0,"8C":0,"9C":0,AD:0,cC:0,PC:.004528,QC:0,BD:.018112,CD:.02264,DD:0,dC:0,eC:.004528,RC:.009056,ED:.081504,SC:.004528,fC:.009056,gC:.009056,hC:.018112,iC:.009056,jC:.013584,FD:.13584,TC:.004528,kC:.09056,lC:.009056,mC:.013584,nC:.02264,oC:.040752,GD:.149424,UC:.009056,pC:.02264,qC:.013584,rC:.049808,sC:.027168,HD:.104144,tC:.063392,uC:.36224,vC:.09056,wC:0,ID:0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","6C","bC","J","bB","7C","K","8C","D","9C","E","F","AD","A","cC","B","PC","C","QC","L","BD","M","CD","G","DD","dC","eC","RC","ED","SC","fC","gC","hC","iC","jC","FD","TC","kC","lC","mC","nC","oC","GD","UC","pC","qC","rC","sC","HD","tC","uC","vC","wC","ID",""],E:"Safari",F:{"6C":1205798400,bC:1226534400,J:1244419200,bB:1275868800,"7C":131112e4,K:1343174400,"8C":13824e5,D:13824e5,"9C":1410998400,E:1413417600,F:1443657600,AD:1458518400,A:1474329600,cC:1490572800,B:1505779200,PC:1522281600,C:1537142400,QC:1553472e3,L:1568851200,BD:1585008e3,M:1600214400,CD:1619395200,G:1632096e3,DD:1635292800,dC:1639353600,eC:1647216e3,RC:1652745600,ED:1658275200,SC:1662940800,fC:1666569600,gC:1670889600,hC:1674432e3,iC:1679875200,jC:1684368e3,FD:1690156800,TC:1695686400,kC:1698192e3,lC:1702252800,mC:1705881600,nC:1709596800,oC:1715558400,GD:1722211200,UC:1726444800,pC:1730073600,qC:1733875200,rC:1737936e3,sC:1743379200,HD:1747008e3,tC:1757894400,uC:1762128e3,vC:1762041600,wC:null,ID:null}},F:{A:{0:0,1:0,2:0,3:0,4:0,5:.004528,6:.009056,7:.561472,8:.217344,9:0,F:0,B:0,C:0,G:0,N:0,O:0,P:0,cB:0,AB:0,BB:0,CB:0,DB:0,EB:0,FB:0,GB:0,HB:0,IB:0,dB:0,eB:0,fB:0,gB:0,hB:0,iB:0,jB:0,kB:0,lB:0,mB:0,nB:0,oB:0,pB:0,qB:0,rB:0,sB:0,tB:0,uB:0,vB:0,wB:0,xB:0,yB:0,zB:0,"0B":0,"1B":0,"2B":0,"3B":0,"4B":0,"5B":0,"6B":0,"7B":0,"8B":0,"9B":0,AC:0,BC:0,CC:0,DC:0,EC:0,FC:0,GC:0,HC:0,IC:0,JC:0,KC:0,LC:0,MC:0,NC:0,Q:0,H:0,R:0,YC:0,S:0,T:0,U:0,V:0,W:0,X:0,Y:0,Z:0,a:0,b:.009056,c:.081504,d:0,e:.027168,f:0,g:0,h:0,i:0,j:0,k:0,l:0,m:0,n:0,o:0,p:0,q:0,r:0,s:0,t:0,u:0,v:0,w:0,x:0,y:0,z:0,JD:0,KD:0,LD:0,MD:0,PC:0,xC:0,ND:0,QC:0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","F","JD","KD","LD","MD","B","PC","xC","ND","C","QC","G","N","O","P","cB","9","AB","BB","CB","DB","EB","FB","GB","HB","IB","dB","eB","fB","gB","hB","iB","jB","kB","lB","mB","nB","oB","pB","qB","rB","sB","tB","uB","vB","wB","xB","yB","zB","0B","1B","2B","3B","4B","5B","6B","7B","8B","9B","AC","BC","CC","DC","EC","FC","GC","HC","IC","JC","KC","LC","MC","NC","Q","H","R","YC","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","","",""],E:"Opera",F:{0:1739404800,1:1744675200,2:1747094400,3:1751414400,4:1756339200,5:1757548800,6:1761609600,7:1762992e3,8:1764806400,9:1393891200,F:1150761600,JD:1223424e3,KD:1251763200,LD:1267488e3,MD:1277942400,B:1292457600,PC:1302566400,xC:1309219200,ND:1323129600,C:1323129600,QC:1352073600,G:1372723200,N:1377561600,O:1381104e3,P:1386288e3,cB:1390867200,AB:1399334400,BB:1401753600,CB:1405987200,DB:1409616e3,EB:1413331200,FB:1417132800,GB:1422316800,HB:1425945600,IB:1430179200,dB:1433808e3,eB:1438646400,fB:1442448e3,gB:1445904e3,hB:1449100800,iB:1454371200,jB:1457308800,kB:146232e4,lB:1465344e3,mB:1470096e3,nB:1474329600,oB:1477267200,pB:1481587200,qB:1486425600,rB:1490054400,sB:1494374400,tB:1498003200,uB:1502236800,vB:1506470400,wB:1510099200,xB:1515024e3,yB:1517961600,zB:1521676800,"0B":1525910400,"1B":1530144e3,"2B":1534982400,"3B":1537833600,"4B":1543363200,"5B":1548201600,"6B":1554768e3,"7B":1561593600,"8B":1566259200,"9B":1570406400,AC:1573689600,BC:1578441600,CC:1583971200,DC:1587513600,EC:1592956800,FC:1595894400,GC:1600128e3,HC:1603238400,IC:161352e4,JC:1612224e3,KC:1616544e3,LC:1619568e3,MC:1623715200,NC:1627948800,Q:1631577600,H:1633392e3,R:1635984e3,YC:1638403200,S:1642550400,T:1644969600,U:1647993600,V:1650412800,W:1652745600,X:1654646400,Y:1657152e3,Z:1660780800,a:1663113600,b:1668816e3,c:1668643200,d:1671062400,e:1675209600,f:1677024e3,g:1679529600,h:1681948800,i:1684195200,j:1687219200,k:1690329600,l:1692748800,m:1696204800,n:169992e4,o:169992e4,p:1702944e3,q:1707264e3,r:1710115200,s:1711497600,t:1716336e3,u:1719273600,v:1721088e3,w:1724284800,x:1727222400,y:1732665600,z:1736294400},D:{F:"o",B:"o",C:"o",JD:"o",KD:"o",LD:"o",MD:"o",PC:"o",xC:"o",ND:"o",QC:"o"}},G:{A:{E:0,bC:0,OD:0,yC:.00244598,PD:0,QD:.00489197,RD:.00366898,SD:0,TD:0,UD:.00978394,VD:.00122299,WD:.0171219,XD:.210355,YD:.00611496,ZD:.00489197,aD:.0550346,bD:.00122299,cD:.00856094,dD:.00244598,eD:.00856094,fD:.0171219,gD:.0183449,hD:.0195679,dC:.0146759,eC:.0158989,RC:.0171219,iD:.265389,SC:.0305748,fC:.0587036,gC:.0305748,hC:.0550346,iC:.0134529,jC:.0232368,jD:.344884,TC:.0195679,kC:.0317978,lC:.0232368,mC:.0354668,nC:.0599266,oC:.117407,kD:.271504,UC:.0611496,pC:.127191,qC:.0672646,rC:.218916,sC:.112515,lD:8.07909,tC:.157766,uC:1.31227,vC:.24949,wC:.0110069},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","bC","OD","yC","PD","QD","RD","E","SD","TD","UD","VD","WD","XD","YD","ZD","aD","bD","cD","dD","eD","fD","gD","hD","dC","eC","RC","iD","SC","fC","gC","hC","iC","jC","jD","TC","kC","lC","mC","nC","oC","kD","UC","pC","qC","rC","sC","lD","tC","uC","vC","wC","",""],E:"Safari on iOS",F:{bC:1270252800,OD:1283904e3,yC:1299628800,PD:1331078400,QD:1359331200,RD:1394409600,E:1410912e3,SD:1413763200,TD:1442361600,UD:1458518400,VD:1473724800,WD:1490572800,XD:1505779200,YD:1522281600,ZD:1537142400,aD:1553472e3,bD:1568851200,cD:1572220800,dD:1580169600,eD:1585008e3,fD:1600214400,gD:1619395200,hD:1632096e3,dC:1639353600,eC:1647216e3,RC:1652659200,iD:1658275200,SC:1662940800,fC:1666569600,gC:1670889600,hC:1674432e3,iC:1679875200,jC:1684368e3,jD:1690156800,TC:1694995200,kC:1698192e3,lC:1702252800,mC:1705881600,nC:1709596800,oC:1715558400,kD:1722211200,UC:1726444800,pC:1730073600,qC:1733875200,rC:1737936e3,sC:1743379200,lD:1747008e3,tC:1757894400,uC:1762128e3,vC:1765497600,wC:null}},H:{A:{mD:.04},B:"o",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","mD","","",""],E:"Opera Mini",F:{mD:1426464e3}},I:{A:{VC:0,J:0,I:.551788,nD:0,oD:0,pD:0,qD:0,yC:110534e-9,rD:0,sD:442138e-9},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","nD","oD","pD","VC","J","qD","yC","rD","sD","I","","",""],E:"Android Browser",F:{nD:1256515200,oD:1274313600,pD:1291593600,VC:1298332800,J:1318896e3,qD:1341792e3,yC:1374624e3,rD:1386547200,sD:1401667200,I:1768348800}},J:{A:{D:0,A:0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","D","A","","",""],E:"Blackberry Browser",F:{D:1325376e3,A:1359504e3}},K:{A:{A:0,B:0,C:0,H:.830048,PC:0,xC:0,QC:0},B:"o",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A","B","PC","xC","C","QC","H","","",""],E:"Opera Mobile",F:{A:1287100800,B:1300752e3,PC:1314835200,xC:1318291200,C:1330300800,QC:1349740800,H:1709769600},D:{H:"webkit"}},L:{A:{I:44.1214},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","I","","",""],E:"Chrome for Android",F:{I:1768348800}},M:{A:{OC:.306432},B:"moz",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","OC","","",""],E:"Firefox for Android",F:{OC:1768262400}},N:{A:{A:0,B:0},B:"ms",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","A","B","","",""],E:"IE Mobile",F:{A:1340150400,B:1353456e3}},O:{A:{RC:.497952},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","RC","","",""],E:"UC Browser for Android",F:{RC:1710115200},D:{RC:"webkit"}},P:{A:{9:0,J:0,AB:.0107912,BB:.0107912,CB:.0215823,DB:.0215823,EB:.0215823,FB:.0431646,GB:.0431646,HB:.129494,IB:1.62946,tD:0,uD:0,vD:0,wD:0,xD:0,cC:0,yD:0,zD:0,"0D":0,"1D":0,"2D":0,SC:0,TC:0,UC:0,"3D":0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","J","tD","uD","vD","wD","xD","cC","yD","zD","0D","1D","2D","SC","TC","UC","3D","9","AB","BB","CB","DB","EB","FB","GB","HB","IB","","",""],E:"Samsung Internet",F:{9:1677369600,J:1461024e3,tD:1481846400,uD:1509408e3,vD:1528329600,wD:1546128e3,xD:1554163200,cC:1567900800,yD:1582588800,zD:1593475200,"0D":1605657600,"1D":1618531200,"2D":1629072e3,SC:1640736e3,TC:1651708800,UC:1659657600,"3D":1667260800,AB:1684454400,BB:1689292800,CB:1697587200,DB:1711497600,EB:1715126400,FB:1717718400,GB:1725667200,HB:1746057600,IB:1761264e3}},Q:{A:{"4D":.153216},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","4D","","",""],E:"QQ Browser",F:{"4D":1710288e3}},R:{A:{"5D":0},B:"webkit",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","5D","","",""],E:"Baidu Browser",F:{"5D":1710201600}},S:{A:{"6D":.016416,"7D":0},B:"moz",C:["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","6D","7D","","",""],E:"KaiOS Browser",F:{"6D":1527811200,"7D":1631664e3}}};function QF(e){return Object.keys(e).reduce(function(t,r){return t[YF[r]]=e[r],t},{})}zF.agents=Object.keys($F).reduce(function(e,t){var r=$F[t];return e[JF[t]]=Object.keys(r).reduce(function(e,t){return"A"===t?e.usage_global=QF(r[t]):"C"===t?e.versions=r[t].reduce(function(e,t){return""===t?e.push(null):e.push(YF[t]),e},[]):"D"===t?e.prefix_exceptions=QF(r[t]):"E"===t?e.browser=r[t]:"F"===t?e.release_date=Object.keys(r[t]).reduce(function(e,a){return e[YF[a]]=r[t][a],e},{}):e.prefix=r[t],e},{}),e},{});var ZF={"v0.8":{start:"2012-06-25",end:"2014-07-31"},"v0.10":{start:"2013-03-11",end:"2016-10-31"},"v0.12":{start:"2015-02-06",end:"2016-12-31"},v4:{start:"2015-09-08",lts:"2015-10-12",maintenance:"2017-04-01",end:"2018-04-30",codename:"Argon"},v5:{start:"2015-10-29",maintenance:"2016-04-30",end:"2016-06-30"},v6:{start:"2016-04-26",lts:"2016-10-18",maintenance:"2018-04-30",end:"2019-04-30",codename:"Boron"},v7:{start:"2016-10-25",maintenance:"2017-04-30",end:"2017-06-30"},v8:{start:"2017-05-30",lts:"2017-10-31",maintenance:"2019-01-01",end:"2019-12-31",codename:"Carbon"},v9:{start:"2017-10-01",maintenance:"2018-04-01",end:"2018-06-30"},v10:{start:"2018-04-24",lts:"2018-10-30",maintenance:"2020-05-19",end:"2021-04-30",codename:"Dubnium"},v11:{start:"2018-10-23",maintenance:"2019-04-22",end:"2019-06-01"},v12:{start:"2019-04-23",lts:"2019-10-21",maintenance:"2020-11-30",end:"2022-04-30",codename:"Erbium"},v13:{start:"2019-10-22",maintenance:"2020-04-01",end:"2020-06-01"},v14:{start:"2020-04-21",lts:"2020-10-27",maintenance:"2021-10-19",end:"2023-04-30",codename:"Fermium"},v15:{start:"2020-10-20",maintenance:"2021-04-01",end:"2021-06-01"},v16:{start:"2021-04-20",lts:"2021-10-26",maintenance:"2022-10-18",end:"2023-09-11",codename:"Gallium"},v17:{start:"2021-10-19",maintenance:"2022-04-01",end:"2022-06-01"},v18:{start:"2022-04-19",lts:"2022-10-25",maintenance:"2023-10-18",end:"2025-04-30",codename:"Hydrogen"},v19:{start:"2022-10-18",maintenance:"2023-04-01",end:"2023-06-01"},v20:{start:"2023-04-18",lts:"2023-10-24",maintenance:"2024-10-22",end:"2026-04-30",codename:"Iron"},v21:{start:"2023-10-17",maintenance:"2024-04-01",end:"2024-06-01"},v22:{start:"2024-04-24",lts:"2024-10-29",maintenance:"2025-10-21",end:"2027-04-30",codename:"Jod"},v23:{start:"2024-10-16",maintenance:"2025-04-01",end:"2025-06-01"},v24:{start:"2025-04-22",lts:"2025-10-28",maintenance:"2026-10-20",end:"2028-04-30",codename:""}},eL=cR(SB);function tL(e){this.name="BrowserslistError",this.message=e,this.browserslist=!0,Error.captureStackTrace&&Error.captureStackTrace(this,tL)}tL.prototype=Error.prototype;var rL=tL,aL=rL;function nL(){}var sL={loadQueries:function(){throw new aL("Sharable configs are not supported in client-side build of Browserslist")},getStat:function(e){return e.stats},loadConfig:function(e){if(e.config)throw new aL("Browserslist config are not supported in client-side build")},loadCountry:function(){throw new aL("Country statistics are not supported in client-side build of Browserslist")},loadFeature:function(){throw new aL("Supports queries are not available in client-side build of Browserslist")},currentNode:function(e,t){return e(["maintained node versions"],t)[0]},parseConfig:nL,readConfig:nL,findConfig:nL,findConfigFile:nL,clearCaches:nL,oldDataWarning:nL,env:{}},oL=/^\s+and\s+(.*)/i,iL=/^(?:,\s*|\s+or\s+)(.*)/i;function dL(e){return Array.isArray(e)?e.reduce(function(e,t){return e.concat(dL(t))},[]):[e]}function cL(e,t){var r={query:t};for(var a in 0===t.indexOf("not ")&&(r.not=!0,t=t.slice(4)),e){var n=e[a],s=t.match(n.regexp);if(s){r.type=a;for(var o=0;o<n.matches.length;o++)r[n.matches[o]]=s[o+1];return r}}return r.type="unknown",r}function lL(e,t,r){var a;return function(e,t){for(var r=e.length,a=1;a<=r;a++)if(t(e.substr(-a,a),a,r))return e.slice(0,-a);return""}(t,function(t,n,s){return oL.test(t)?((a=cL(e,t.match(oL)[1])).compose="and",r.unshift(a),!0):iL.test(t)?((a=cL(e,t.match(iL)[1])).compose="or",r.unshift(a),!0):n===s&&((a=cL(e,t.trim())).compose="or",r.unshift(a),!0)})}var uL=[{name:"nodejs",version:"0.2.0",date:"2011-08-26",lts:!1,security:!1,v8:"2.3.8.0"},{name:"nodejs",version:"0.3.0",date:"2011-08-26",lts:!1,security:!1,v8:"2.5.1.0"},{name:"nodejs",version:"0.4.0",date:"2011-08-26",lts:!1,security:!1,v8:"3.1.2.0"},{name:"nodejs",version:"0.5.0",date:"2011-08-26",lts:!1,security:!1,v8:"3.1.8.25"},{name:"nodejs",version:"0.6.0",date:"2011-11-04",lts:!1,security:!1,v8:"3.6.6.6"},{name:"nodejs",version:"0.7.0",date:"2012-01-17",lts:!1,security:!1,v8:"3.8.6.0"},{name:"nodejs",version:"0.8.0",date:"2012-06-22",lts:!1,security:!1,v8:"3.11.10.10"},{name:"nodejs",version:"0.9.0",date:"2012-07-20",lts:!1,security:!1,v8:"3.11.10.15"},{name:"nodejs",version:"0.10.0",date:"2013-03-11",lts:!1,security:!1,v8:"3.14.5.8"},{name:"nodejs",version:"0.11.0",date:"2013-03-28",lts:!1,security:!1,v8:"3.17.13.0"},{name:"nodejs",version:"0.12.0",date:"2015-02-06",lts:!1,security:!1,v8:"3.28.73.0"},{name:"nodejs",version:"4.0.0",date:"2015-09-08",lts:!1,security:!1,v8:"4.5.103.30"},{name:"nodejs",version:"4.1.0",date:"2015-09-17",lts:!1,security:!1,v8:"4.5.103.33"},{name:"nodejs",version:"4.2.0",date:"2015-10-12",lts:"Argon",security:!1,v8:"4.5.103.35"},{name:"nodejs",version:"4.3.0",date:"2016-02-09",lts:"Argon",security:!1,v8:"4.5.103.35"},{name:"nodejs",version:"4.4.0",date:"2016-03-08",lts:"Argon",security:!1,v8:"4.5.103.35"},{name:"nodejs",version:"4.5.0",date:"2016-08-16",lts:"Argon",security:!1,v8:"4.5.103.37"},{name:"nodejs",version:"4.6.0",date:"2016-09-27",lts:"Argon",security:!0,v8:"4.5.103.37"},{name:"nodejs",version:"4.7.0",date:"2016-12-06",lts:"Argon",security:!1,v8:"4.5.103.43"},{name:"nodejs",version:"4.8.0",date:"2017-02-21",lts:"Argon",security:!1,v8:"4.5.103.45"},{name:"nodejs",version:"4.9.0",date:"2018-03-28",lts:"Argon",security:!0,v8:"4.5.103.53"},{name:"nodejs",version:"5.0.0",date:"2015-10-29",lts:!1,security:!1,v8:"4.6.85.28"},{name:"nodejs",version:"5.1.0",date:"2015-11-17",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.2.0",date:"2015-12-09",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.3.0",date:"2015-12-15",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.4.0",date:"2016-01-06",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.5.0",date:"2016-01-21",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.6.0",date:"2016-02-09",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.7.0",date:"2016-02-23",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.8.0",date:"2016-03-09",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.9.0",date:"2016-03-16",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.10.0",date:"2016-04-01",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.11.0",date:"2016-04-21",lts:!1,security:!1,v8:"4.6.85.31"},{name:"nodejs",version:"5.12.0",date:"2016-06-23",lts:!1,security:!1,v8:"4.6.85.32"},{name:"nodejs",version:"6.0.0",date:"2016-04-26",lts:!1,security:!1,v8:"5.0.71.35"},{name:"nodejs",version:"6.1.0",date:"2016-05-05",lts:!1,security:!1,v8:"5.0.71.35"},{name:"nodejs",version:"6.2.0",date:"2016-05-17",lts:!1,security:!1,v8:"5.0.71.47"},{name:"nodejs",version:"6.3.0",date:"2016-07-06",lts:!1,security:!1,v8:"5.0.71.52"},{name:"nodejs",version:"6.4.0",date:"2016-08-12",lts:!1,security:!1,v8:"5.0.71.60"},{name:"nodejs",version:"6.5.0",date:"2016-08-26",lts:!1,security:!1,v8:"5.1.281.81"},{name:"nodejs",version:"6.6.0",date:"2016-09-14",lts:!1,security:!1,v8:"5.1.281.83"},{name:"nodejs",version:"6.7.0",date:"2016-09-27",lts:!1,security:!0,v8:"5.1.281.83"},{name:"nodejs",version:"6.8.0",date:"2016-10-12",lts:!1,security:!1,v8:"5.1.281.84"},{name:"nodejs",version:"6.9.0",date:"2016-10-18",lts:"Boron",security:!1,v8:"5.1.281.84"},{name:"nodejs",version:"6.10.0",date:"2017-02-21",lts:"Boron",security:!1,v8:"5.1.281.93"},{name:"nodejs",version:"6.11.0",date:"2017-06-06",lts:"Boron",security:!1,v8:"5.1.281.102"},{name:"nodejs",version:"6.12.0",date:"2017-11-06",lts:"Boron",security:!1,v8:"5.1.281.108"},{name:"nodejs",version:"6.13.0",date:"2018-02-10",lts:"Boron",security:!1,v8:"5.1.281.111"},{name:"nodejs",version:"6.14.0",date:"2018-03-28",lts:"Boron",security:!0,v8:"5.1.281.111"},{name:"nodejs",version:"6.15.0",date:"2018-11-27",lts:"Boron",security:!0,v8:"5.1.281.111"},{name:"nodejs",version:"6.16.0",date:"2018-12-26",lts:"Boron",security:!1,v8:"5.1.281.111"},{name:"nodejs",version:"6.17.0",date:"2019-02-28",lts:"Boron",security:!0,v8:"5.1.281.111"},{name:"nodejs",version:"7.0.0",date:"2016-10-25",lts:!1,security:!1,v8:"5.4.500.36"},{name:"nodejs",version:"7.1.0",date:"2016-11-08",lts:!1,security:!1,v8:"5.4.500.36"},{name:"nodejs",version:"7.2.0",date:"2016-11-22",lts:!1,security:!1,v8:"5.4.500.43"},{name:"nodejs",version:"7.3.0",date:"2016-12-20",lts:!1,security:!1,v8:"5.4.500.45"},{name:"nodejs",version:"7.4.0",date:"2017-01-04",lts:!1,security:!1,v8:"5.4.500.45"},{name:"nodejs",version:"7.5.0",date:"2017-01-31",lts:!1,security:!1,v8:"5.4.500.48"},{name:"nodejs",version:"7.6.0",date:"2017-02-21",lts:!1,security:!1,v8:"5.5.372.40"},{name:"nodejs",version:"7.7.0",date:"2017-02-28",lts:!1,security:!1,v8:"5.5.372.41"},{name:"nodejs",version:"7.8.0",date:"2017-03-29",lts:!1,security:!1,v8:"5.5.372.43"},{name:"nodejs",version:"7.9.0",date:"2017-04-11",lts:!1,security:!1,v8:"5.5.372.43"},{name:"nodejs",version:"7.10.0",date:"2017-05-02",lts:!1,security:!1,v8:"5.5.372.43"},{name:"nodejs",version:"8.0.0",date:"2017-05-30",lts:!1,security:!1,v8:"5.8.283.41"},{name:"nodejs",version:"8.1.0",date:"2017-06-08",lts:!1,security:!1,v8:"5.8.283.41"},{name:"nodejs",version:"8.2.0",date:"2017-07-19",lts:!1,security:!1,v8:"5.8.283.41"},{name:"nodejs",version:"8.3.0",date:"2017-08-08",lts:!1,security:!1,v8:"6.0.286.52"},{name:"nodejs",version:"8.4.0",date:"2017-08-15",lts:!1,security:!1,v8:"6.0.286.52"},{name:"nodejs",version:"8.5.0",date:"2017-09-12",lts:!1,security:!1,v8:"6.0.287.53"},{name:"nodejs",version:"8.6.0",date:"2017-09-26",lts:!1,security:!1,v8:"6.0.287.53"},{name:"nodejs",version:"8.7.0",date:"2017-10-11",lts:!1,security:!1,v8:"6.1.534.42"},{name:"nodejs",version:"8.8.0",date:"2017-10-24",lts:!1,security:!1,v8:"6.1.534.42"},{name:"nodejs",version:"8.9.0",date:"2017-10-31",lts:"Carbon",security:!1,v8:"6.1.534.46"},{name:"nodejs",version:"8.10.0",date:"2018-03-06",lts:"Carbon",security:!1,v8:"6.2.414.50"},{name:"nodejs",version:"8.11.0",date:"2018-03-28",lts:"Carbon",security:!0,v8:"6.2.414.50"},{name:"nodejs",version:"8.12.0",date:"2018-09-10",lts:"Carbon",security:!1,v8:"6.2.414.66"},{name:"nodejs",version:"8.13.0",date:"2018-11-20",lts:"Carbon",security:!1,v8:"6.2.414.72"},{name:"nodejs",version:"8.14.0",date:"2018-11-27",lts:"Carbon",security:!0,v8:"6.2.414.72"},{name:"nodejs",version:"8.15.0",date:"2018-12-26",lts:"Carbon",security:!1,v8:"6.2.414.75"},{name:"nodejs",version:"8.16.0",date:"2019-04-16",lts:"Carbon",security:!1,v8:"6.2.414.77"},{name:"nodejs",version:"8.17.0",date:"2019-12-17",lts:"Carbon",security:!0,v8:"6.2.414.78"},{name:"nodejs",version:"9.0.0",date:"2017-10-31",lts:!1,security:!1,v8:"6.2.414.32"},{name:"nodejs",version:"9.1.0",date:"2017-11-07",lts:!1,security:!1,v8:"6.2.414.32"},{name:"nodejs",version:"9.2.0",date:"2017-11-14",lts:!1,security:!1,v8:"6.2.414.44"},{name:"nodejs",version:"9.3.0",date:"2017-12-12",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.4.0",date:"2018-01-10",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.5.0",date:"2018-01-31",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.6.0",date:"2018-02-21",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.7.0",date:"2018-03-01",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.8.0",date:"2018-03-07",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.9.0",date:"2018-03-21",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"9.10.0",date:"2018-03-28",lts:!1,security:!0,v8:"6.2.414.46"},{name:"nodejs",version:"9.11.0",date:"2018-04-04",lts:!1,security:!1,v8:"6.2.414.46"},{name:"nodejs",version:"10.0.0",date:"2018-04-24",lts:!1,security:!1,v8:"6.6.346.24"},{name:"nodejs",version:"10.1.0",date:"2018-05-08",lts:!1,security:!1,v8:"6.6.346.27"},{name:"nodejs",version:"10.2.0",date:"2018-05-23",lts:!1,security:!1,v8:"6.6.346.32"},{name:"nodejs",version:"10.3.0",date:"2018-05-29",lts:!1,security:!1,v8:"6.6.346.32"},{name:"nodejs",version:"10.4.0",date:"2018-06-06",lts:!1,security:!1,v8:"6.7.288.43"},{name:"nodejs",version:"10.5.0",date:"2018-06-20",lts:!1,security:!1,v8:"6.7.288.46"},{name:"nodejs",version:"10.6.0",date:"2018-07-04",lts:!1,security:!1,v8:"6.7.288.46"},{name:"nodejs",version:"10.7.0",date:"2018-07-18",lts:!1,security:!1,v8:"6.7.288.49"},{name:"nodejs",version:"10.8.0",date:"2018-08-01",lts:!1,security:!1,v8:"6.7.288.49"},{name:"nodejs",version:"10.9.0",date:"2018-08-15",lts:!1,security:!1,v8:"6.8.275.24"},{name:"nodejs",version:"10.10.0",date:"2018-09-06",lts:!1,security:!1,v8:"6.8.275.30"},{name:"nodejs",version:"10.11.0",date:"2018-09-19",lts:!1,security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.12.0",date:"2018-10-10",lts:!1,security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.13.0",date:"2018-10-30",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.14.0",date:"2018-11-27",lts:"Dubnium",security:!0,v8:"6.8.275.32"},{name:"nodejs",version:"10.15.0",date:"2018-12-26",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.16.0",date:"2019-05-28",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.17.0",date:"2019-10-22",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.18.0",date:"2019-12-17",lts:"Dubnium",security:!0,v8:"6.8.275.32"},{name:"nodejs",version:"10.19.0",date:"2020-02-05",lts:"Dubnium",security:!0,v8:"6.8.275.32"},{name:"nodejs",version:"10.20.0",date:"2020-03-26",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.21.0",date:"2020-06-02",lts:"Dubnium",security:!0,v8:"6.8.275.32"},{name:"nodejs",version:"10.22.0",date:"2020-07-21",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.23.0",date:"2020-10-27",lts:"Dubnium",security:!1,v8:"6.8.275.32"},{name:"nodejs",version:"10.24.0",date:"2021-02-23",lts:"Dubnium",security:!0,v8:"6.8.275.32"},{name:"nodejs",version:"11.0.0",date:"2018-10-23",lts:!1,security:!1,v8:"7.0.276.28"},{name:"nodejs",version:"11.1.0",date:"2018-10-30",lts:!1,security:!1,v8:"7.0.276.32"},{name:"nodejs",version:"11.2.0",date:"2018-11-15",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.3.0",date:"2018-11-27",lts:!1,security:!0,v8:"7.0.276.38"},{name:"nodejs",version:"11.4.0",date:"2018-12-07",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.5.0",date:"2018-12-18",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.6.0",date:"2018-12-26",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.7.0",date:"2019-01-17",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.8.0",date:"2019-01-24",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.9.0",date:"2019-01-30",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.10.0",date:"2019-02-14",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.11.0",date:"2019-03-05",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.12.0",date:"2019-03-14",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.13.0",date:"2019-03-28",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.14.0",date:"2019-04-10",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"11.15.0",date:"2019-04-30",lts:!1,security:!1,v8:"7.0.276.38"},{name:"nodejs",version:"12.0.0",date:"2019-04-23",lts:!1,security:!1,v8:"7.4.288.21"},{name:"nodejs",version:"12.1.0",date:"2019-04-29",lts:!1,security:!1,v8:"7.4.288.21"},{name:"nodejs",version:"12.2.0",date:"2019-05-07",lts:!1,security:!1,v8:"7.4.288.21"},{name:"nodejs",version:"12.3.0",date:"2019-05-21",lts:!1,security:!1,v8:"7.4.288.27"},{name:"nodejs",version:"12.4.0",date:"2019-06-04",lts:!1,security:!1,v8:"7.4.288.27"},{name:"nodejs",version:"12.5.0",date:"2019-06-26",lts:!1,security:!1,v8:"7.5.288.22"},{name:"nodejs",version:"12.6.0",date:"2019-07-03",lts:!1,security:!1,v8:"7.5.288.22"},{name:"nodejs",version:"12.7.0",date:"2019-07-23",lts:!1,security:!1,v8:"7.5.288.22"},{name:"nodejs",version:"12.8.0",date:"2019-08-06",lts:!1,security:!1,v8:"7.5.288.22"},{name:"nodejs",version:"12.9.0",date:"2019-08-20",lts:!1,security:!1,v8:"7.6.303.29"},{name:"nodejs",version:"12.10.0",date:"2019-09-04",lts:!1,security:!1,v8:"7.6.303.29"},{name:"nodejs",version:"12.11.0",date:"2019-09-25",lts:!1,security:!1,v8:"7.7.299.11"},{name:"nodejs",version:"12.12.0",date:"2019-10-11",lts:!1,security:!1,v8:"7.7.299.13"},{name:"nodejs",version:"12.13.0",date:"2019-10-21",lts:"Erbium",security:!1,v8:"7.7.299.13"},{name:"nodejs",version:"12.14.0",date:"2019-12-17",lts:"Erbium",security:!0,v8:"7.7.299.13"},{name:"nodejs",version:"12.15.0",date:"2020-02-05",lts:"Erbium",security:!0,v8:"7.7.299.13"},{name:"nodejs",version:"12.16.0",date:"2020-02-11",lts:"Erbium",security:!1,v8:"7.8.279.23"},{name:"nodejs",version:"12.17.0",date:"2020-05-26",lts:"Erbium",security:!1,v8:"7.8.279.23"},{name:"nodejs",version:"12.18.0",date:"2020-06-02",lts:"Erbium",security:!0,v8:"7.8.279.23"},{name:"nodejs",version:"12.19.0",date:"2020-10-06",lts:"Erbium",security:!1,v8:"7.8.279.23"},{name:"nodejs",version:"12.20.0",date:"2020-11-24",lts:"Erbium",security:!1,v8:"7.8.279.23"},{name:"nodejs",version:"12.21.0",date:"2021-02-23",lts:"Erbium",security:!0,v8:"7.8.279.23"},{name:"nodejs",version:"12.22.0",date:"2021-03-30",lts:"Erbium",security:!1,v8:"7.8.279.23"},{name:"nodejs",version:"13.0.0",date:"2019-10-22",lts:!1,security:!1,v8:"7.8.279.17"},{name:"nodejs",version:"13.1.0",date:"2019-11-05",lts:!1,security:!1,v8:"7.8.279.17"},{name:"nodejs",version:"13.2.0",date:"2019-11-21",lts:!1,security:!1,v8:"7.9.317.23"},{name:"nodejs",version:"13.3.0",date:"2019-12-03",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.4.0",date:"2019-12-17",lts:!1,security:!0,v8:"7.9.317.25"},{name:"nodejs",version:"13.5.0",date:"2019-12-18",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.6.0",date:"2020-01-07",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.7.0",date:"2020-01-21",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.8.0",date:"2020-02-05",lts:!1,security:!0,v8:"7.9.317.25"},{name:"nodejs",version:"13.9.0",date:"2020-02-18",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.10.0",date:"2020-03-04",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.11.0",date:"2020-03-12",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.12.0",date:"2020-03-26",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.13.0",date:"2020-04-14",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"13.14.0",date:"2020-04-29",lts:!1,security:!1,v8:"7.9.317.25"},{name:"nodejs",version:"14.0.0",date:"2020-04-21",lts:!1,security:!1,v8:"8.1.307.30"},{name:"nodejs",version:"14.1.0",date:"2020-04-29",lts:!1,security:!1,v8:"8.1.307.31"},{name:"nodejs",version:"14.2.0",date:"2020-05-05",lts:!1,security:!1,v8:"8.1.307.31"},{name:"nodejs",version:"14.3.0",date:"2020-05-19",lts:!1,security:!1,v8:"8.1.307.31"},{name:"nodejs",version:"14.4.0",date:"2020-06-02",lts:!1,security:!0,v8:"8.1.307.31"},{name:"nodejs",version:"14.5.0",date:"2020-06-30",lts:!1,security:!1,v8:"8.3.110.9"},{name:"nodejs",version:"14.6.0",date:"2020-07-20",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.7.0",date:"2020-07-29",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.8.0",date:"2020-08-11",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.9.0",date:"2020-08-27",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.10.0",date:"2020-09-08",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.11.0",date:"2020-09-15",lts:!1,security:!0,v8:"8.4.371.19"},{name:"nodejs",version:"14.12.0",date:"2020-09-22",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.13.0",date:"2020-09-29",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.14.0",date:"2020-10-15",lts:!1,security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.15.0",date:"2020-10-27",lts:"Fermium",security:!1,v8:"8.4.371.19"},{name:"nodejs",version:"14.16.0",date:"2021-02-23",lts:"Fermium",security:!0,v8:"8.4.371.19"},{name:"nodejs",version:"14.17.0",date:"2021-05-11",lts:"Fermium",security:!1,v8:"8.4.371.23"},{name:"nodejs",version:"14.18.0",date:"2021-09-28",lts:"Fermium",security:!1,v8:"8.4.371.23"},{name:"nodejs",version:"14.19.0",date:"2022-02-01",lts:"Fermium",security:!1,v8:"8.4.371.23"},{name:"nodejs",version:"14.20.0",date:"2022-07-07",lts:"Fermium",security:!0,v8:"8.4.371.23"},{name:"nodejs",version:"14.21.0",date:"2022-11-01",lts:"Fermium",security:!1,v8:"8.4.371.23"},{name:"nodejs",version:"15.0.0",date:"2020-10-20",lts:!1,security:!1,v8:"8.6.395.16"},{name:"nodejs",version:"15.1.0",date:"2020-11-04",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.2.0",date:"2020-11-10",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.3.0",date:"2020-11-24",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.4.0",date:"2020-12-09",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.5.0",date:"2020-12-22",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.6.0",date:"2021-01-14",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.7.0",date:"2021-01-25",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.8.0",date:"2021-02-02",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.9.0",date:"2021-02-18",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.10.0",date:"2021-02-23",lts:!1,security:!0,v8:"8.6.395.17"},{name:"nodejs",version:"15.11.0",date:"2021-03-03",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.12.0",date:"2021-03-17",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.13.0",date:"2021-03-31",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"15.14.0",date:"2021-04-06",lts:!1,security:!1,v8:"8.6.395.17"},{name:"nodejs",version:"16.0.0",date:"2021-04-20",lts:!1,security:!1,v8:"9.0.257.17"},{name:"nodejs",version:"16.1.0",date:"2021-05-04",lts:!1,security:!1,v8:"9.0.257.24"},{name:"nodejs",version:"16.2.0",date:"2021-05-19",lts:!1,security:!1,v8:"9.0.257.25"},{name:"nodejs",version:"16.3.0",date:"2021-06-03",lts:!1,security:!1,v8:"9.0.257.25"},{name:"nodejs",version:"16.4.0",date:"2021-06-23",lts:!1,security:!1,v8:"9.1.269.36"},{name:"nodejs",version:"16.5.0",date:"2021-07-14",lts:!1,security:!1,v8:"9.1.269.38"},{name:"nodejs",version:"16.6.0",date:"2021-07-29",lts:!1,security:!0,v8:"9.2.230.21"},{name:"nodejs",version:"16.7.0",date:"2021-08-18",lts:!1,security:!1,v8:"9.2.230.21"},{name:"nodejs",version:"16.8.0",date:"2021-08-25",lts:!1,security:!1,v8:"9.2.230.21"},{name:"nodejs",version:"16.9.0",date:"2021-09-07",lts:!1,security:!1,v8:"9.3.345.16"},{name:"nodejs",version:"16.10.0",date:"2021-09-22",lts:!1,security:!1,v8:"9.3.345.19"},{name:"nodejs",version:"16.11.0",date:"2021-10-08",lts:!1,security:!1,v8:"9.4.146.19"},{name:"nodejs",version:"16.12.0",date:"2021-10-20",lts:!1,security:!1,v8:"9.4.146.19"},{name:"nodejs",version:"16.13.0",date:"2021-10-26",lts:"Gallium",security:!1,v8:"9.4.146.19"},{name:"nodejs",version:"16.14.0",date:"2022-02-08",lts:"Gallium",security:!1,v8:"9.4.146.24"},{name:"nodejs",version:"16.15.0",date:"2022-04-26",lts:"Gallium",security:!1,v8:"9.4.146.24"},{name:"nodejs",version:"16.16.0",date:"2022-07-07",lts:"Gallium",security:!0,v8:"9.4.146.24"},{name:"nodejs",version:"16.17.0",date:"2022-08-16",lts:"Gallium",security:!1,v8:"9.4.146.26"},{name:"nodejs",version:"16.18.0",date:"2022-10-12",lts:"Gallium",security:!1,v8:"9.4.146.26"},{name:"nodejs",version:"16.19.0",date:"2022-12-13",lts:"Gallium",security:!1,v8:"9.4.146.26"},{name:"nodejs",version:"16.20.0",date:"2023-03-28",lts:"Gallium",security:!1,v8:"9.4.146.26"},{name:"nodejs",version:"17.0.0",date:"2021-10-19",lts:!1,security:!1,v8:"9.5.172.21"},{name:"nodejs",version:"17.1.0",date:"2021-11-09",lts:!1,security:!1,v8:"9.5.172.25"},{name:"nodejs",version:"17.2.0",date:"2021-11-30",lts:!1,security:!1,v8:"9.6.180.14"},{name:"nodejs",version:"17.3.0",date:"2021-12-17",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.4.0",date:"2022-01-18",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.5.0",date:"2022-02-10",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.6.0",date:"2022-02-22",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.7.0",date:"2022-03-09",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.8.0",date:"2022-03-22",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"17.9.0",date:"2022-04-07",lts:!1,security:!1,v8:"9.6.180.15"},{name:"nodejs",version:"18.0.0",date:"2022-04-18",lts:!1,security:!1,v8:"10.1.124.8"},{name:"nodejs",version:"18.1.0",date:"2022-05-03",lts:!1,security:!1,v8:"10.1.124.8"},{name:"nodejs",version:"18.2.0",date:"2022-05-17",lts:!1,security:!1,v8:"10.1.124.8"},{name:"nodejs",version:"18.3.0",date:"2022-06-02",lts:!1,security:!1,v8:"10.2.154.4"},{name:"nodejs",version:"18.4.0",date:"2022-06-16",lts:!1,security:!1,v8:"10.2.154.4"},{name:"nodejs",version:"18.5.0",date:"2022-07-06",lts:!1,security:!0,v8:"10.2.154.4"},{name:"nodejs",version:"18.6.0",date:"2022-07-13",lts:!1,security:!1,v8:"10.2.154.13"},{name:"nodejs",version:"18.7.0",date:"2022-07-26",lts:!1,security:!1,v8:"10.2.154.13"},{name:"nodejs",version:"18.8.0",date:"2022-08-24",lts:!1,security:!1,v8:"10.2.154.13"},{name:"nodejs",version:"18.9.0",date:"2022-09-07",lts:!1,security:!1,v8:"10.2.154.15"},{name:"nodejs",version:"18.10.0",date:"2022-09-28",lts:!1,security:!1,v8:"10.2.154.15"},{name:"nodejs",version:"18.11.0",date:"2022-10-13",lts:!1,security:!1,v8:"10.2.154.15"},{name:"nodejs",version:"18.12.0",date:"2022-10-25",lts:"Hydrogen",security:!1,v8:"10.2.154.15"},{name:"nodejs",version:"18.13.0",date:"2023-01-05",lts:"Hydrogen",security:!1,v8:"10.2.154.23"},{name:"nodejs",version:"18.14.0",date:"2023-02-01",lts:"Hydrogen",security:!1,v8:"10.2.154.23"},{name:"nodejs",version:"18.15.0",date:"2023-03-05",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"18.16.0",date:"2023-04-12",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"18.17.0",date:"2023-07-18",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"18.18.0",date:"2023-09-18",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"18.19.0",date:"2023-11-29",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"18.20.0",date:"2024-03-26",lts:"Hydrogen",security:!1,v8:"10.2.154.26"},{name:"nodejs",version:"19.0.0",date:"2022-10-17",lts:!1,security:!1,v8:"10.7.193.13"},{name:"nodejs",version:"19.1.0",date:"2022-11-14",lts:!1,security:!1,v8:"10.7.193.20"},{name:"nodejs",version:"19.2.0",date:"2022-11-29",lts:!1,security:!1,v8:"10.8.168.20"},{name:"nodejs",version:"19.3.0",date:"2022-12-14",lts:!1,security:!1,v8:"10.8.168.21"},{name:"nodejs",version:"19.4.0",date:"2023-01-05",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"19.5.0",date:"2023-01-24",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"19.6.0",date:"2023-02-01",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"19.7.0",date:"2023-02-21",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"19.8.0",date:"2023-03-14",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"19.9.0",date:"2023-04-10",lts:!1,security:!1,v8:"10.8.168.25"},{name:"nodejs",version:"20.0.0",date:"2023-04-17",lts:!1,security:!1,v8:"11.3.244.4"},{name:"nodejs",version:"20.1.0",date:"2023-05-03",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.2.0",date:"2023-05-16",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.3.0",date:"2023-06-08",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.4.0",date:"2023-07-04",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.5.0",date:"2023-07-19",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.6.0",date:"2023-08-23",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.7.0",date:"2023-09-18",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.8.0",date:"2023-09-28",lts:!1,security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.9.0",date:"2023-10-24",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.10.0",date:"2023-11-22",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.11.0",date:"2024-01-09",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.12.0",date:"2024-03-26",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.13.0",date:"2024-05-07",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.14.0",date:"2024-05-28",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.15.0",date:"2024-06-20",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.16.0",date:"2024-07-24",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.17.0",date:"2024-08-21",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"20.18.0",date:"2024-10-03",lts:"Iron",security:!1,v8:"11.3.244.8"},{name:"nodejs",version:"21.0.0",date:"2023-10-17",lts:!1,security:!1,v8:"11.8.172.13"},{name:"nodejs",version:"21.1.0",date:"2023-10-24",lts:!1,security:!1,v8:"11.8.172.15"},{name:"nodejs",version:"21.2.0",date:"2023-11-14",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"21.3.0",date:"2023-11-30",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"21.4.0",date:"2023-12-05",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"21.5.0",date:"2023-12-19",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"21.6.0",date:"2024-01-14",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"21.7.0",date:"2024-03-06",lts:!1,security:!1,v8:"11.8.172.17"},{name:"nodejs",version:"22.0.0",date:"2024-04-24",lts:!1,security:!1,v8:"12.4.254.14"},{name:"nodejs",version:"22.1.0",date:"2024-05-02",lts:!1,security:!1,v8:"12.4.254.14"},{name:"nodejs",version:"22.2.0",date:"2024-05-15",lts:!1,security:!1,v8:"12.4.254.14"},{name:"nodejs",version:"22.3.0",date:"2024-06-11",lts:!1,security:!1,v8:"12.4.254.20"},{name:"nodejs",version:"22.4.0",date:"2024-07-02",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.5.0",date:"2024-07-17",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.6.0",date:"2024-08-06",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.7.0",date:"2024-08-21",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.8.0",date:"2024-09-03",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.9.0",date:"2024-09-17",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.10.0",date:"2024-10-16",lts:!1,security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.11.0",date:"2024-10-29",lts:"Jod",security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"22.12.0",date:"2024-12-02",lts:"Jod",security:!1,v8:"12.4.254.21"},{name:"nodejs",version:"23.0.0",date:"2024-10-16",lts:!1,security:!1,v8:"12.9.202.26"},{name:"nodejs",version:"23.1.0",date:"2024-10-24",lts:!1,security:!1,v8:"12.9.202.28"},{name:"nodejs",version:"23.2.0",date:"2024-11-11",lts:!1,security:!1,v8:"12.9.202.28"},{name:"nodejs",version:"23.3.0",date:"2024-11-20",lts:!1,security:!1,v8:"12.9.202.28"}],pL=zF.agents,fL={"0.20":"39",.21:"41",.22:"41",.23:"41",.24:"41",.25:"42",.26:"42",.27:"43",.28:"43",.29:"43","0.30":"44",.31:"45",.32:"45",.33:"45",.34:"45",.35:"45",.36:"47",.37:"49","1.0":"49",1.1:"50",1.2:"51",1.3:"52",1.4:"53",1.5:"54",1.6:"56",1.7:"58",1.8:"59","2.0":"61",2.1:"61","3.0":"66",3.1:"66","4.0":"69",4.1:"69",4.2:"69","5.0":"73","6.0":"76",6.1:"76","7.0":"78",7.1:"78",7.2:"78",7.3:"78","8.0":"80",8.1:"80",8.2:"80",8.3:"80",8.4:"80",8.5:"80","9.0":"83",9.1:"83",9.2:"83",9.3:"83",9.4:"83","10.0":"85",10.1:"85",10.2:"85",10.3:"85",10.4:"85","11.0":"87",11.1:"87",11.2:"87",11.3:"87",11.4:"87",11.5:"87","12.0":"89",12.1:"89",12.2:"89","13.0":"91",13.1:"91",13.2:"91",13.3:"91",13.4:"91",13.5:"91",13.6:"91","14.0":"93",14.1:"93",14.2:"93","15.0":"94",15.1:"94",15.2:"94",15.3:"94",15.4:"94",15.5:"94","16.0":"96",16.1:"96",16.2:"96","17.0":"98",17.1:"98",17.2:"98",17.3:"98",17.4:"98","18.0":"100",18.1:"100",18.2:"100",18.3:"100","19.0":"102",19.1:"102","20.0":"104",20.1:"104",20.2:"104",20.3:"104","21.0":"106",21.1:"106",21.2:"106",21.3:"106",21.4:"106","22.0":"108",22.1:"108",22.2:"108",22.3:"108","23.0":"110",23.1:"110",23.2:"110",23.3:"110","24.0":"112",24.1:"112",24.2:"112",24.3:"112",24.4:"112",24.5:"112",24.6:"112",24.7:"112",24.8:"112","25.0":"114",25.1:"114",25.2:"114",25.3:"114",25.4:"114",25.5:"114",25.6:"114",25.7:"114",25.8:"114",25.9:"114","26.0":"116",26.1:"116",26.2:"116",26.3:"116",26.4:"116",26.5:"116",26.6:"116","27.0":"118",27.1:"118",27.2:"118",27.3:"118","28.0":"120",28.1:"120",28.2:"120",28.3:"120","29.0":"122",29.1:"122",29.2:"122",29.3:"122",29.4:"122","30.0":"124",30.1:"124",30.2:"124",30.3:"124",30.4:"124",30.5:"124","31.0":"126",31.1:"126",31.2:"126",31.3:"126",31.4:"126",31.5:"126",31.6:"126",31.7:"126","32.0":"128",32.1:"128",32.2:"128",32.3:"128","33.0":"130",33.1:"130",33.2:"130",33.3:"130",33.4:"130","34.0":"132",34.1:"132",34.2:"132",34.3:"132",34.4:"132",34.5:"132","35.0":"134",35.1:"134",35.2:"134",35.3:"134",35.4:"134",35.5:"134",35.6:"134",35.7:"134","36.0":"136",36.1:"136",36.2:"136",36.3:"136",36.4:"136",36.5:"136",36.6:"136",36.7:"136",36.8:"136",36.9:"136","37.0":"138",37.1:"138",37.2:"138",37.3:"138",37.4:"138",37.5:"138",37.6:"138",37.7:"138",37.8:"138",37.9:"138","37.10":"138","38.0":"140",38.1:"140",38.2:"140",38.3:"140",38.4:"140",38.5:"140",38.6:"140",38.7:"140","39.0":"142",39.1:"142",39.2:"142",39.3:"142","40.0":"144","41.0":"146"},gL=ZF,mL=eL,yL=rL,hL=sL,bL=function(e,t){return Array.isArray(t)||(t=[t]),dL(t.map(function(t){var r=[];do{t=lL(e,t,r)}while(t);return r}))};function vL(e,t){return 0===(e+".").indexOf(t+".")}function xL(e){return e.filter(function(e){return"string"==typeof e})}function RL(e){var t=e;return 3===e.split(".").length&&(t=e.split(".").slice(0,-1).join(".")),t}function jL(e){return function(t){return e+" "+t}}function wL(e){return parseInt(e.split(".")[0])}function EL(e,t){if(0===e.length)return[];var r=SL(e.map(wL)),a=r[r.length-t];if(!a)return e;for(var n=[],s=e.length-1;s>=0&&!(a>wL(e[s]));s--)n.unshift(e[s]);return n}function SL(e){for(var t=[],r=0;r<e.length;r++)-1===t.indexOf(e[r])&&t.push(e[r]);return t}function TL(e,t,r){for(var a in r)e[t+" "+a]=r[a]}function PL(e,t){return t=parseFloat(t),">"===e?function(e){return r(e)>t}:">="===e?function(e){return r(e)>=t}:"<"===e?function(e){return parseFloat(e)<t}:function(e){return parseFloat(e)<=t};function r(e){return parseFloat(e.split("-")[1]||e)}}function AL(e){return parseInt(e)}function kL(e,t){return e<t?-1:e>t?1:0}function CL(e,t){return kL(parseInt(e[0]),parseInt(t[0]))||kL(parseInt(e[1]||"0"),parseInt(t[1]||"0"))||kL(parseInt(e[2]||"0"),parseInt(t[2]||"0"))}function _L(e,t){return void 0===(t=t.split(".").map(AL))[1]&&(t[1]="x"),"<="===e?function(e){return IL(e=e.split(".").map(AL),t)<=0}:function(e){return IL(e=e.split(".").map(AL),t)>=0}}function IL(e,t){return e[0]!==t[0]?e[0]<t[0]?-1:1:"x"===t[1]?0:e[1]!==t[1]?e[1]<t[1]?-1:1:0}function DL(e,t){var r=function(e,t){return-1!==e.versions.indexOf(t)?t:!!KL.versionAliases[e.name][t]&&KL.versionAliases[e.name][t]}(e,t);return r||1===e.versions.length&&e.versions[0]}function OL(e,t){return e/=1e3,Object.keys(pL).reduce(function(r,a){var n=BL(a,t);if(!n)return r;var s=Object.keys(n.releaseDate).filter(function(t){var r=n.releaseDate[t];return null!==r&&r>=e});return r.concat(s.map(jL(n.name)))},[])}function NL(e){return{name:e.name,versions:e.versions,released:e.released,releaseDate:e.releaseDate}}function BL(e,t){if(e=e.toLowerCase(),e=KL.aliases[e]||e,t.mobileToDesktop&&KL.desktopNames[e]){var r=KL.data[KL.desktopNames[e]];if("android"===e)return n=NL(KL.data[e]),s=r,n.released=ML(n.released,s.released),n.versions=ML(n.versions,s.versions),n.releaseDate=function(e){var t={};for(var r in e)t[r]=e[r];return t}(n.releaseDate),n.released.forEach(function(e){void 0===n.releaseDate[e]&&(n.releaseDate[e]=s.releaseDate[e])}),n;var a=NL(r);return a.name=e,a}var n,s;return KL.data[e]}function ML(e,t){var r=t.indexOf("37");return e.filter(function(e){return/^(?:[2-4]\.|[34]$)/.test(e)}).concat(t.slice(r))}function FL(e,t){var r=BL(e,t);if(!r)throw new yL("Unknown browser "+e);return r}function LL(e,t,r,a){var n=1;switch(t){case"android":if(a.mobileToDesktop)return e;var s=KL.data.chrome.released;n=s.length-s.indexOf("37");break;case"op_mob":n=wL(KL.data.op_mob.released.slice(-1)[0])-14+1;break;default:return e}return r<=n?e.slice(-1):e.slice(n-1-r)}function UL(e,t){return"string"==typeof e&&(e.indexOf("y")>=0||t&&e.indexOf("a")>=0)}function qL(e,t){return XL(e).reduce(function(e,r,a){if(r.not&&0===a)throw new yL("Write any browsers query (for instance, `defaults`) before `"+r.query+"`");var n=ZL[r.type].select.call(KL,t,r).map(function(e){var r=e.split(" ");return"0"===r[1]?r[0]+" "+BL(r[0],t).versions[0]:e});if("and"===r.compose)return r.not?e.filter(function(e){return-1===n.indexOf(e)}):e.filter(function(e){return-1!==n.indexOf(e)});if(r.not){var s={};return n.forEach(function(e){s[e]=!0}),e.filter(function(e){return!s[e]})}return e.concat(n)},[])}function GL(e){return void 0===e&&(e={}),void 0===e.path&&(e.path=mL.resolve?mL.resolve("."):"."),e}function WL(e,t){if(null==e){var r=KL.loadConfig(t);e=r||KL.defaults}return e}function VL(e){if("string"!=typeof e&&!Array.isArray(e))throw new yL("Browser queries must be an array or string. Got "+typeof e+".")}var HL={},zL={};function KL(e,t){VL(e=WL(e,t=GL(t)));var r=XL(e).some(function(e){return ZL[e.type].needsPath}),a={ignoreUnknownVersions:t.ignoreUnknownVersions,dangerousExtend:t.dangerousExtend,mobileToDesktop:t.mobileToDesktop,env:t.env};r&&(a.path=t.path),hL.oldDataWarning(KL.data);var n=hL.getStat(t,KL.data);if(n)for(var s in a.customUsage={},n)TL(a.customUsage,s,n[s]);var o=JSON.stringify([e,a]);if(HL[o])return HL[o];var i=SL(qL(e,a)).sort(function(e,t){if(e=e.split(" "),t=t.split(" "),e[0]===t[0]){var r=e[1].split("-")[0];return CL(t[1].split("-")[0].split("."),r.split("."))}return kL(e[0],t[0])});return hL.env.BROWSERSLIST_DISABLE_CACHE||(HL[o]=i),i}function XL(e){var t=JSON.stringify(e);if(t in zL)return zL[t];var r=bL(ZL,e);return hL.env.BROWSERSLIST_DISABLE_CACHE||(zL[t]=r),r}function JL(e,t){var r=hL.loadStat(e,t,KL.data);if(r)for(var a in e.customUsage={},r)TL(e.customUsage,a,r[a]);if(!e.customUsage)throw new yL("Custom usage statistics was not provided");return e.customUsage}function YL(e,t){var r=KL.nodeVersions.filter(function(e){return vL(e,t.version)});if(0===r.length){if(e.ignoreUnknownVersions)return[];throw new yL("Unknown version "+t.version+" of Node.js")}return["node "+r[r.length-1]]}function $L(e,t){var r=parseInt(t.year),a=parseInt(t.month||"01")-1,n=parseInt(t.day||"01");return OL(Date.UTC(r,a,n,0,0,0),e)}function QL(e,t){var r=parseFloat(t.coverage),a=KL.usage.global;if(t.place)if(t.place.match(/^my\s+stats$/i)){if(!e.customUsage)throw new yL("Custom usage statistics was not provided");a=e.customUsage}else{var n;n=2===t.place.length?t.place.toUpperCase():t.place.toLowerCase(),hL.loadCountry(KL.usage,n,KL.data),a=KL.usage[n]}else t.config&&(a=JL(e,t.config));for(var s,o=Object.keys(a).sort(function(e,t){return a[t]-a[e]}),i=0,d=[],c=0;c<o.length&&(s=o[c],0!==a[s])&&(i+=a[s],d.push(s),!(i>=r));c++);return d}KL.parse=function(e,t){return VL(e=WL(e,t=GL(t))),XL(e)},KL.cache={},KL.data={},KL.usage={global:{},custom:null},KL.defaults=["> 0.5%","last 2 versions","Firefox ESR","not dead"],KL.aliases={fx:"firefox",ff:"firefox",ios:"ios_saf",explorer:"ie",blackberry:"bb",explorermobile:"ie_mob",operamini:"op_mini",operamobile:"op_mob",chromeandroid:"and_chr",firefoxandroid:"and_ff",ucandroid:"and_uc",qqandroid:"and_qq"},KL.desktopNames={and_chr:"chrome",and_ff:"firefox",ie_mob:"ie",android:"chrome"},KL.versionAliases={},KL.clearCaches=hL.clearCaches,KL.parseConfig=hL.parseConfig,KL.readConfig=hL.readConfig,KL.findConfigFile=hL.findConfigFile,KL.findConfig=hL.findConfig,KL.loadConfig=hL.loadConfig,KL.coverage=function(e,t){var r;if(void 0===t)r=KL.usage.global;else if("my stats"===t){var a={};a.path=mL.resolve?mL.resolve("."):".";var n=hL.getStat(a);if(!n)throw new yL("Custom usage statistics was not provided");for(var s in r={},n)TL(r,s,n[s])}else if("string"==typeof t)t=t.length>2?t.toLowerCase():t.toUpperCase(),hL.loadCountry(KL.usage,t,KL.data),r=KL.usage[t];else for(var o in"dataByBrowser"in t&&(t=t.dataByBrowser),r={},t)for(var i in t[o])r[o+" "+i]=t[o][i];return e.reduce(function(e,t){var a=r[t];return void 0===a&&(a=r[t.replace(/ \S+$/," 0")]),e+(a||0)},0)};var ZL={last_major_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+major\s+versions?$/i,select:function(e,t){return Object.keys(pL).reduce(function(r,a){var n=BL(a,e);if(!n)return r;var s=EL(n.released,t.versions);return s=LL(s=s.map(jL(n.name)),n.name,t.versions,e),r.concat(s)},[])}},last_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+versions?$/i,select:function(e,t){return Object.keys(pL).reduce(function(r,a){var n=BL(a,e);if(!n)return r;var s=n.released.slice(-t.versions);return s=LL(s=s.map(jL(n.name)),n.name,t.versions,e),r.concat(s)},[])}},last_electron_major_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+electron\s+major\s+versions?$/i,select:function(e,t){return EL(Object.keys(fL),t.versions).map(function(e){return"chrome "+fL[e]})}},last_node_major_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+node\s+major\s+versions?$/i,select:function(e,t){return EL(KL.nodeVersions,t.versions).map(function(e){return"node "+e})}},last_browser_major_versions:{matches:["versions","browser"],regexp:/^last\s+(\d+)\s+(\w+)\s+major\s+versions?$/i,select:function(e,t){var r=FL(t.browser,e),a=EL(r.released,t.versions).map(jL(r.name));return a=LL(a,r.name,t.versions,e)}},last_electron_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+electron\s+versions?$/i,select:function(e,t){return Object.keys(fL).slice(-t.versions).map(function(e){return"chrome "+fL[e]})}},last_node_versions:{matches:["versions"],regexp:/^last\s+(\d+)\s+node\s+versions?$/i,select:function(e,t){return KL.nodeVersions.slice(-t.versions).map(function(e){return"node "+e})}},last_browser_versions:{matches:["versions","browser"],regexp:/^last\s+(\d+)\s+(\w+)\s+versions?$/i,select:function(e,t){var r=FL(t.browser,e),a=r.released.slice(-t.versions).map(jL(r.name));return a=LL(a,r.name,t.versions,e)}},unreleased_versions:{matches:[],regexp:/^unreleased\s+versions$/i,select:function(e){return Object.keys(pL).reduce(function(t,r){var a=BL(r,e);if(!a)return t;var n=a.versions.filter(function(e){return-1===a.released.indexOf(e)});return n=n.map(jL(a.name)),t.concat(n)},[])}},unreleased_electron_versions:{matches:[],regexp:/^unreleased\s+electron\s+versions?$/i,select:function(){return[]}},unreleased_browser_versions:{matches:["browser"],regexp:/^unreleased\s+(\w+)\s+versions?$/i,select:function(e,t){var r=FL(t.browser,e);return r.versions.filter(function(e){return-1===r.released.indexOf(e)}).map(jL(r.name))}},last_years:{matches:["years"],regexp:/^last\s+(\d*.?\d+)\s+years?$/i,select:function(e,t){return OL(Date.now()-31558432982.4*t.years,e)}},since_y:{matches:["year"],regexp:/^since (\d+)$/i,select:$L},since_y_m:{matches:["year","month"],regexp:/^since (\d+)-(\d+)$/i,select:$L},since_y_m_d:{matches:["year","month","day"],regexp:/^since (\d+)-(\d+)-(\d+)$/i,select:$L},popularity:{matches:["sign","popularity"],regexp:/^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%$/,select:function(e,t){var r=parseFloat(t.popularity),a=KL.usage.global;return Object.keys(a).reduce(function(e,n){return">"===t.sign?a[n]>r&&e.push(n):"<"===t.sign?a[n]<r&&e.push(n):"<="===t.sign?a[n]<=r&&e.push(n):a[n]>=r&&e.push(n),e},[])}},popularity_in_my_stats:{matches:["sign","popularity"],regexp:/^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+my\s+stats$/,select:function(e,t){var r=parseFloat(t.popularity);if(!e.customUsage)throw new yL("Custom usage statistics was not provided");var a=e.customUsage;return Object.keys(a).reduce(function(e,n){var s=a[n];return null==s||(">"===t.sign?s>r&&e.push(n):"<"===t.sign?s<r&&e.push(n):"<="===t.sign?s<=r&&e.push(n):s>=r&&e.push(n)),e},[])}},popularity_in_config_stats:{matches:["sign","popularity","config"],regexp:/^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+(\S+)\s+stats$/,select:function(e,t){var r=parseFloat(t.popularity),a=JL(e,t.config);return Object.keys(a).reduce(function(e,n){var s=a[n];return null==s||(">"===t.sign?s>r&&e.push(n):"<"===t.sign?s<r&&e.push(n):"<="===t.sign?s<=r&&e.push(n):s>=r&&e.push(n)),e},[])}},popularity_in_place:{matches:["sign","popularity","place"],regexp:/^(>=?|<=?)\s*(\d+|\d+\.\d+|\.\d+)%\s+in\s+((alt-)?\w\w)$/,select:function(e,t){var r=parseFloat(t.popularity),a=t.place;a=2===a.length?a.toUpperCase():a.toLowerCase(),hL.loadCountry(KL.usage,a,KL.data);var n=KL.usage[a];return Object.keys(n).reduce(function(e,a){var s=n[a];return null==s||(">"===t.sign?s>r&&e.push(a):"<"===t.sign?s<r&&e.push(a):"<="===t.sign?s<=r&&e.push(a):s>=r&&e.push(a)),e},[])}},cover:{matches:["coverage"],regexp:/^cover\s+(\d+|\d+\.\d+|\.\d+)%$/i,select:QL},cover_in:{matches:["coverage","place"],regexp:/^cover\s+(\d+|\d+\.\d+|\.\d+)%\s+in\s+(my\s+stats|(alt-)?\w\w)$/i,select:QL},cover_config:{matches:["coverage","config"],regexp:/^cover\s+(\d+|\d+\.\d+|\.\d+)%\s+in\s+(\S+)\s+stats$/i,select:QL},supports:{matches:["supportType","feature"],regexp:/^(?:(fully|partially)\s+)?supports\s+([\w-]+)$/,select:function(e,t){hL.loadFeature(KL.cache,t.feature);var r="fully"!==t.supportType,a=KL.cache[t.feature],n=[];for(var s in a){for(var o=BL(s,e),i=o.released.length-1;i>=0&&!(o.released[i]in a[s]);)i--;var d=e.mobileToDesktop&&s in KL.desktopNames&&UL(a[s][o.released[i]],r);o.versions.forEach(function(e){var t=a[s][e];void 0===t&&d&&(t=a[KL.desktopNames[s]][e]),UL(t,r)&&n.push(s+" "+e)})}return n}},electron_range:{matches:["from","to"],regexp:/^electron\s+([\d.]+)\s*-\s*([\d.]+)$/i,select:function(e,t){var r=RL(t.from),a=RL(t.to),n=parseFloat(t.from),s=parseFloat(t.to);if(!fL[r])throw new yL("Unknown version "+n+" of electron");if(!fL[a])throw new yL("Unknown version "+s+" of electron");return Object.keys(fL).filter(function(e){var t=parseFloat(e);return t>=n&&t<=s}).map(function(e){return"chrome "+fL[e]})}},node_range:{matches:["from","to"],regexp:/^node\s+([\d.]+)\s*-\s*([\d.]+)$/i,select:function(e,t){return KL.nodeVersions.filter(_L(">=",t.from)).filter(_L("<=",t.to)).map(function(e){return"node "+e})}},browser_range:{matches:["browser","from","to"],regexp:/^(\w+)\s+([\d.]+)\s*-\s*([\d.]+)$/i,select:function(e,t){var r=FL(t.browser,e),a=parseFloat(DL(r,t.from)||t.from),n=parseFloat(DL(r,t.to)||t.to);return r.released.filter(function(e){var t=parseFloat(e);return t>=a&&t<=n}).map(jL(r.name))}},electron_ray:{matches:["sign","version"],regexp:/^electron\s*(>=?|<=?)\s*([\d.]+)$/i,select:function(e,t){var r=RL(t.version);return Object.keys(fL).filter(PL(t.sign,r)).map(function(e){return"chrome "+fL[e]})}},node_ray:{matches:["sign","version"],regexp:/^node\s*(>=?|<=?)\s*([\d.]+)$/i,select:function(e,t){return KL.nodeVersions.filter(function(e,t){return(t=t.split(".").map(AL))[1]=t[1]||0,t[2]=t[2]||0,">"===e?function(e){return CL(e=e.split(".").map(AL),t)>0}:">="===e?function(e){return CL(e=e.split(".").map(AL),t)>=0}:"<"===e?function(e){return e=e.split(".").map(AL),CL(t,e)>0}:function(e){return e=e.split(".").map(AL),CL(t,e)>=0}}(t.sign,t.version)).map(function(e){return"node "+e})}},browser_ray:{matches:["browser","sign","version"],regexp:/^(\w+)\s*(>=?|<=?)\s*([\d.]+)$/,select:function(e,t){var r=t.version,a=FL(t.browser,e),n=KL.versionAliases[a.name][r];return n&&(r=n),a.released.filter(PL(t.sign,r)).map(function(e){return a.name+" "+e})}},firefox_esr:{matches:[],regexp:/^(firefox|ff|fx)\s+esr$/i,select:function(){return["firefox 128","firefox 140"]}},opera_mini_all:{matches:[],regexp:/(operamini|op_mini)\s+all/i,select:function(){return["op_mini all"]}},electron_version:{matches:["version"],regexp:/^electron\s+([\d.]+)$/i,select:function(e,t){var r=RL(t.version),a=fL[r];if(!a)throw new yL("Unknown version "+t.version+" of electron");return["chrome "+a]}},node_major_version:{matches:["version"],regexp:/^node\s+(\d+)$/i,select:YL},node_minor_version:{matches:["version"],regexp:/^node\s+(\d+\.\d+)$/i,select:YL},node_patch_version:{matches:["version"],regexp:/^node\s+(\d+\.\d+\.\d+)$/i,select:YL},current_node:{matches:[],regexp:/^current\s+node$/i,select:function(e){return[hL.currentNode(qL,e)]}},maintained_node:{matches:[],regexp:/^maintained\s+node\s+versions$/i,select:function(e){var t=Date.now(),r=Object.keys(gL).filter(function(e){return t<Date.parse(gL[e].end)&&t>Date.parse(gL[e].start)&&function(e){var t=e.slice(1);return KL.nodeVersions.some(function(e){return vL(e,t)})}(e)}).map(function(e){return"node "+e.slice(1)});return qL(r,e)}},phantomjs_1_9:{matches:[],regexp:/^phantomjs\s+1.9$/i,select:function(){return["safari 5"]}},phantomjs_2_1:{matches:[],regexp:/^phantomjs\s+2.1$/i,select:function(){return["safari 6"]}},browser_version:{matches:["browser","version"],regexp:/^(\w+)\s+(tp|[\d.]+)$/i,select:function(e,t){var r=t.version;/^tp$/i.test(r)&&(r="TP");var a=FL(t.browser,e),n=DL(a,r);if(n)r=n;else{if(!(n=DL(a,n=-1===r.indexOf(".")?r+".0":r.replace(/\.0$/,"")))){if(e.ignoreUnknownVersions)return[];throw new yL("Unknown version "+r+" of "+t.browser)}r=n}return[a.name+" "+r]}},browserslist_config:{matches:[],regexp:/^browserslist config$/i,needsPath:!0,select:function(e){return KL(void 0,e)}},extends:{matches:["config"],regexp:/^extends (.+)$/i,needsPath:!0,select:function(e,t){return qL(hL.loadQueries(e,t.config),e)}},defaults:{matches:[],regexp:/^defaults$/i,select:function(e){return qL(KL.defaults,e)}},dead:{matches:[],regexp:/^dead$/i,select:function(e){return qL(["Baidu >= 0","ie <= 11","ie_mob <= 11","bb <= 10","op_mob <= 12.1","samsung 4"],e)}},unknown:{matches:[],regexp:/^(\w+)$/i,select:function(e,t){throw BL(t.query,e)?new yL("Specify versions in Browserslist query for browser "+t.query):(r=t.query,new yL("Unknown browser query `"+r+"`. Maybe you are using old Browserslist or made typo in query."));var r}}};!function(){for(var e in pL){var t=pL[e];KL.data[e]={name:e,versions:xL(pL[e].versions),released:xL(pL[e].versions.slice(0,-3)),releaseDate:pL[e].release_date},TL(KL.usage.global,e,t.usage_global),KL.versionAliases[e]={};for(var r=0;r<t.versions.length;r++){var a=t.versions[r];if(a&&-1!==a.indexOf("-"))for(var n=a.split("-"),s=0;s<n.length;s++)KL.versionAliases[e][n[s]]=a}}KL.nodeVersions=uL.map(function(e){return e.version})}();var eU=KL,tU=Math.min;function rU(e,t){var r=t.map(function(t){return function(e,t){var r,a,n=[],s=[],o=e.length,i=t.length;if(!o)return i;if(!i)return o;for(a=0;a<=i;a++)n[a]=a;for(r=1;r<=o;r++){for(s=[r],a=1;a<=i;a++)s[a]=e[r-1]===t[a-1]?n[a-1]:tU(n[a-1],n[a],s[a-1])+1;n=s}return s[i]}(t,e)});return t[r.indexOf(tU.apply(void 0,b(r)))]}var aU,nU,sU,oU,iU,dU,cU=function(){function e(e){this.descriptor=e}var t=e.prototype;return t.validateTopLevelOptions=function(e,t){for(var r=Object.keys(t),a=0,n=Object.keys(e);a<n.length;a++){var s=n[a];if(!r.includes(s))throw new Error(this.formatMessage("'"+s+"' is not a valid top-level option.\n- Did you mean '"+rU(s,r)+"'?"))}},t.validateBooleanOption=function(e,t,r){return void 0===t?r:(this.invariant("boolean"==typeof t,"'"+e+"' option must be a boolean."),t)},t.validateStringOption=function(e,t,r){return void 0===t?r:(this.invariant("string"==typeof t,"'"+e+"' option must be a string."),t)},t.invariant=function(e,t){if(!e)throw new Error(this.formatMessage(t))},t.formatMessage=function(e){return this.descriptor+": "+e},o(e)}(),lU=Object.freeze({__proto__:null,OptionValidator:cU,findSuggestion:rU});function uU(){if(oU)return sU;function e(t){var r=this;if(r instanceof e||(r=new e),r.tail=null,r.head=null,r.length=0,t&&"function"==typeof t.forEach)t.forEach(function(e){r.push(e)});else if(arguments.length>0)for(var a=0,n=arguments.length;a<n;a++)r.push(arguments[a]);return r}function t(e,t,r){var a=t===e.head?new n(r,null,t,e):new n(r,t,t.next,e);return null===a.next&&(e.tail=a),null===a.prev&&(e.head=a),e.length++,a}function r(e,t){e.tail=new n(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function a(e,t){e.head=new n(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function n(e,t,r,a){if(!(this instanceof n))return new n(e,t,r,a);this.list=a,this.value=e,t?(t.next=this,this.prev=t):this.prev=null,r?(r.prev=this,this.next=r):this.next=null}oU=1,sU=e,e.Node=n,e.create=e,e.prototype.removeNode=function(e){if(e.list!==this)throw new Error("removing node which does not belong to this list");var t=e.next,r=e.prev;return t&&(t.prev=r),r&&(r.next=t),e===this.head&&(this.head=t),e===this.tail&&(this.tail=r),e.list.length--,e.next=null,e.prev=null,e.list=null,t},e.prototype.unshiftNode=function(e){if(e!==this.head){e.list&&e.list.removeNode(e);var t=this.head;e.list=this,e.next=t,t&&(t.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}},e.prototype.pushNode=function(e){if(e!==this.tail){e.list&&e.list.removeNode(e);var t=this.tail;e.list=this,e.prev=t,t&&(t.next=e),this.tail=e,this.head||(this.head=e),this.length++}},e.prototype.push=function(){for(var e=0,t=arguments.length;e<t;e++)r(this,arguments[e]);return this.length},e.prototype.unshift=function(){for(var e=0,t=arguments.length;e<t;e++)a(this,arguments[e]);return this.length},e.prototype.pop=function(){if(this.tail){var e=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}},e.prototype.shift=function(){if(this.head){var e=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}},e.prototype.forEach=function(e,t){t=t||this;for(var r=this.head,a=0;null!==r;a++)e.call(t,r.value,a,this),r=r.next},e.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,a=this.length-1;null!==r;a--)e.call(t,r.value,a,this),r=r.prev},e.prototype.get=function(e){for(var t=0,r=this.head;null!==r&&t<e;t++)r=r.next;if(t===e&&null!==r)return r.value},e.prototype.getReverse=function(e){for(var t=0,r=this.tail;null!==r&&t<e;t++)r=r.prev;if(t===e&&null!==r)return r.value},e.prototype.map=function(t,r){r=r||this;for(var a=new e,n=this.head;null!==n;)a.push(t.call(r,n.value,this)),n=n.next;return a},e.prototype.mapReverse=function(t,r){r=r||this;for(var a=new e,n=this.tail;null!==n;)a.push(t.call(r,n.value,this)),n=n.prev;return a},e.prototype.reduce=function(e,t){var r,a=this.head;if(arguments.length>1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");a=this.head.next,r=this.head.value}for(var n=0;null!==a;n++)r=e(r,a.value,n),a=a.next;return r},e.prototype.reduceReverse=function(e,t){var r,a=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");a=this.tail.prev,r=this.tail.value}for(var n=this.length-1;null!==a;n--)r=e(r,a.value,n),a=a.prev;return r},e.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},e.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},e.prototype.slice=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var a=new e;if(r<t||r<0)return a;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=0,s=this.head;null!==s&&n<t;n++)s=s.next;for(;null!==s&&n<r;n++,s=s.next)a.push(s.value);return a},e.prototype.sliceReverse=function(t,r){(r=r||this.length)<0&&(r+=this.length),(t=t||0)<0&&(t+=this.length);var a=new e;if(r<t||r<0)return a;t<0&&(t=0),r>this.length&&(r=this.length);for(var n=this.length,s=this.tail;null!==s&&n>r;n--)s=s.prev;for(;null!==s&&n>t;n--,s=s.prev)a.push(s.value);return a},e.prototype.splice=function(e,r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var a=0,n=this.head;null!==n&&a<e;a++)n=n.next;var s=[];for(a=0;n&&a<r;a++)s.push(n.value),n=this.removeNode(n);null===n&&(n=this.tail),n!==this.head&&n!==this.tail&&(n=n.prev);for(a=2;a<arguments.length;a++)n=t(this,n,arguments[a]);return s},e.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;null!==r;r=r.prev){var a=r.prev;r.prev=r.next,r.next=a}return this.head=t,this.tail=e,this};try{(nU?aU:(nU=1,aU=function(e){e.prototype[Symbol.iterator]=p().m(function e(){var t;return p().w(function(e){for(;;)switch(e.n){case 0:t=this.head;case 1:if(!t){e.n=3;break}return e.n=2,t.value;case 2:t=t.next,e.n=1;break;case 3:return e.a(2)}},e,this)})}))(e)}catch(e){}return sU}function pU(){if(dU)return iU;dU=1;var e=uU(),t=Symbol("max"),r=Symbol("length"),a=Symbol("lengthCalculator"),n=Symbol("allowStale"),s=Symbol("maxAge"),i=Symbol("dispose"),d=Symbol("noDisposeOnSet"),c=Symbol("lruList"),l=Symbol("cache"),u=Symbol("updateAgeOnGet"),p=function(){return 1},f=function(){function f(e){if("number"==typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!=typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[t]=e.max||1/0;var r=e.length||p;if(this[a]="function"!=typeof r?p:r,this[n]=e.stale||!1,e.maxAge&&"number"!=typeof e.maxAge)throw new TypeError("maxAge must be a number");this[s]=e.maxAge||0,this[i]=e.dispose,this[d]=e.noDisposeOnSet||!1,this[u]=e.updateAgeOnGet||!1,this.reset()}var x=f.prototype;return x.rforEach=function(e,t){t=t||this;for(var r=this[c].tail;null!==r;){var a=r.prev;v(this,e,r,t),r=a}},x.forEach=function(e,t){t=t||this;for(var r=this[c].head;null!==r;){var a=r.next;v(this,e,r,t),r=a}},x.keys=function(){return this[c].toArray().map(function(e){return e.key})},x.values=function(){return this[c].toArray().map(function(e){return e.value})},x.reset=function(){var t=this;this[i]&&this[c]&&this[c].length&&this[c].forEach(function(e){return t[i](e.key,e.value)}),this[l]=new Map,this[c]=new e,this[r]=0},x.dump=function(){var e=this;return this[c].map(function(t){return!m(e,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}}).toArray().filter(function(e){return e})},x.dumpLru=function(){return this[c]},x.set=function(e,n,o){if((o=o||this[s])&&"number"!=typeof o)throw new TypeError("maxAge must be a number");var u=o?Date.now():0,p=this[a](n,e);if(this[l].has(e)){if(p>this[t])return h(this,this[l].get(e)),!1;var f=this[l].get(e).value;return this[i]&&(this[d]||this[i](e,f.value)),f.now=u,f.maxAge=o,f.value=n,this[r]+=p-f.length,f.length=p,this.get(e),y(this),!0}var g=new b(e,n,p,u,o);return g.length>this[t]?(this[i]&&this[i](e,n),!1):(this[r]+=g.length,this[c].unshift(g),this[l].set(e,this[c].head),y(this),!0)},x.has=function(e){if(!this[l].has(e))return!1;var t=this[l].get(e).value;return!m(this,t)},x.get=function(e){return g(this,e,!0)},x.peek=function(e){return g(this,e,!1)},x.pop=function(){var e=this[c].tail;return e?(h(this,e),e.value):null},x.del=function(e){h(this,this[l].get(e))},x.load=function(e){this.reset();for(var t=Date.now(),r=e.length-1;r>=0;r--){var a=e[r],n=a.e||0;if(0===n)this.set(a.k,a.v);else{var s=n-t;s>0&&this.set(a.k,a.v,s)}}},x.prune=function(){var e=this;this[l].forEach(function(t,r){return g(e,r,!1)})},o(f,[{key:"max",get:function(){return this[t]},set:function(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[t]=e||1/0,y(this)}},{key:"allowStale",get:function(){return this[n]},set:function(e){this[n]=!!e}},{key:"maxAge",get:function(){return this[s]},set:function(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[s]=e,y(this)}},{key:"lengthCalculator",get:function(){return this[a]},set:function(e){var t=this;"function"!=typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[r]=0,this[c].forEach(function(e){e.length=t[a](e.value,e.key),t[r]+=e.length})),y(this)}},{key:"length",get:function(){return this[r]}},{key:"itemCount",get:function(){return this[c].length}}])}(),g=function(e,t,r){var a=e[l].get(t);if(a){var s=a.value;if(m(e,s)){if(h(e,a),!e[n])return}else r&&(e[u]&&(a.value.now=Date.now()),e[c].unshiftNode(a));return s.value}},m=function(e,t){if(!t||!t.maxAge&&!e[s])return!1;var r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[s]&&r>e[s]},y=function(e){if(e[r]>e[t])for(var a=e[c].tail;e[r]>e[t]&&null!==a;){var n=a.prev;h(e,a),a=n}},h=function(e,t){if(t){var a=t.value;e[i]&&e[i](a.key,a.value),e[r]-=a.length,e[l].delete(a.key),e[c].removeNode(t)}},b=o(function(e,t,r,a,n){this.key=e,this.value=t,this.length=r,this.now=a,this.maxAge=n||0}),v=function(e,t,r,a){var s=r.value;m(e,s)&&(h(e,r),e[n]||(s=void 0)),s&&t.call(a,s.value,s.key,e)};return iU=f}var fU=(void z.env.BABEL_8_BREAKING,pU());var gU=(void z.env.BABEL_8_BREAKING,FO()),mU={safari:"tp"},yU={and_chr:"chrome",and_ff:"firefox",android:"android",chrome:"chrome",edge:"edge",firefox:"firefox",ie:"ie",ie_mob:"ie",ios_saf:"ios",node:"node",deno:"deno",op_mob:"opera_mobile",opera:"opera",safari:"safari",samsung:"samsung"},hU=/^(?:\d+|\d(?:\d?[^\d\n\r\u2028\u2029]\d+|\d{2,}(?:[^\d\n\r\u2028\u2029]\d+)?))$/,bU=new cU("@babel/helper-compilation-targets");function vU(e,t){return e&&gU.lt(e,t)?e:t}function xU(e){if("string"==typeof e&&gU.valid(e))return e;bU.invariant("number"==typeof e||"string"==typeof e&&hU.test(e),"'"+e+"' is not a valid version"),e=e.toString();for(var t=0,r=0;(t=e.indexOf(".",t+1))>0;)r++;return e+".0".repeat(2-r)}function RU(e,t){var r=mU[t];return!!r&&r===e.toString().toLowerCase()}function jU(e,t,r){var a=mU[r];return e===a?t:t===a?e:vU(e,t)}function wU(e,t,r){return jU(e,t,r)===e?t:e}function EU(e,t){var r=e[t];return r||"android"!==t?r:e.chrome}var SU={node:"node",deno:"deno",chrome:"chrome",opera:"opera",edge:"edge",firefox:"firefox",safari:"safari",ie:"ie",ios:"ios",android:"android",electron:"electron",samsung:"samsung",rhino:"rhino",opera_mobile:"opera_mobile"};function TU(e){if("string"!=typeof e)return e;var t=gU.parse(e),r=t.major,a=t.minor,n=t.patch,s=[r];return(a||n)&&s.push(a),n&&s.push(n),s.join(".")}function PU(e){return Object.keys(e).reduce(function(t,r){var a=e[r];return"string"==typeof a&&mU[r]!==a&&(a=TU(a)),t[r]=a,t},{})}function AU(e,t,r){var a=r[e]||{};return Object.keys(t).reduce(function(e,r){var n=EU(a,r),s=t[r];if(n){var o=RU(n,r);RU(s,r)||!o&&!gU.lt(s.toString(),xU(n))||(e[r]=TU(s))}else e[r]=TU(s);return e},{})}var kU={"transform-explicit-resource-management":{chrome:"134",edge:"134",firefox:"141",node:"24",electron:"35.0"},"transform-duplicate-named-capturing-groups-regex":{chrome:"126",opera:"112",edge:"126",firefox:"129",safari:"17.4",node:"23",ios:"17.4",electron:"31.0"},"transform-regexp-modifiers":{chrome:"125",opera:"111",edge:"125",firefox:"132",node:"23",samsung:"27",electron:"31.0"},"transform-unicode-sets-regex":{chrome:"112",opera:"98",edge:"112",firefox:"116",safari:"17",node:"20",deno:"1.32",ios:"17",samsung:"23",opera_mobile:"75",electron:"24.0"},"bugfix/transform-v8-static-class-fields-redefine-readonly":{chrome:"98",opera:"84",edge:"98",firefox:"75",safari:"15",node:"12",deno:"1.18",ios:"15",samsung:"11",opera_mobile:"52",electron:"17.0"},"bugfix/transform-firefox-class-in-computed-class-key":{chrome:"74",opera:"62",edge:"79",firefox:"126",safari:"16",node:"12",deno:"1",ios:"16",samsung:"11",opera_mobile:"53",electron:"6.0"},"bugfix/transform-safari-class-field-initializer-scope":{chrome:"74",opera:"62",edge:"79",firefox:"69",safari:"16",node:"12",deno:"1",ios:"16",samsung:"11",opera_mobile:"53",electron:"6.0"},"transform-class-static-block":{chrome:"94",opera:"80",edge:"94",firefox:"93",safari:"16.4",node:"16.11",deno:"1.14",ios:"16.4",samsung:"17",opera_mobile:"66",electron:"15.0"},"proposal-class-static-block":{chrome:"94",opera:"80",edge:"94",firefox:"93",safari:"16.4",node:"16.11",deno:"1.14",ios:"16.4",samsung:"17",opera_mobile:"66",electron:"15.0"},"transform-private-property-in-object":{chrome:"91",opera:"77",edge:"91",firefox:"90",safari:"15",node:"16.9",deno:"1.9",ios:"15",samsung:"16",opera_mobile:"64",electron:"13.0"},"proposal-private-property-in-object":{chrome:"91",opera:"77",edge:"91",firefox:"90",safari:"15",node:"16.9",deno:"1.9",ios:"15",samsung:"16",opera_mobile:"64",electron:"13.0"},"transform-class-properties":{chrome:"74",opera:"62",edge:"79",firefox:"90",safari:"14.1",node:"12",deno:"1",ios:"14.5",samsung:"11",opera_mobile:"53",electron:"6.0"},"proposal-class-properties":{chrome:"74",opera:"62",edge:"79",firefox:"90",safari:"14.1",node:"12",deno:"1",ios:"14.5",samsung:"11",opera_mobile:"53",electron:"6.0"},"transform-private-methods":{chrome:"84",opera:"70",edge:"84",firefox:"90",safari:"15",node:"14.6",deno:"1",ios:"15",samsung:"14",opera_mobile:"60",electron:"10.0"},"proposal-private-methods":{chrome:"84",opera:"70",edge:"84",firefox:"90",safari:"15",node:"14.6",deno:"1",ios:"15",samsung:"14",opera_mobile:"60",electron:"10.0"},"transform-numeric-separator":{chrome:"75",opera:"62",edge:"79",firefox:"70",safari:"13",node:"12.5",deno:"1",ios:"13",samsung:"11",rhino:"1.7.14",opera_mobile:"54",electron:"6.0"},"proposal-numeric-separator":{chrome:"75",opera:"62",edge:"79",firefox:"70",safari:"13",node:"12.5",deno:"1",ios:"13",samsung:"11",rhino:"1.7.14",opera_mobile:"54",electron:"6.0"},"transform-logical-assignment-operators":{chrome:"85",opera:"71",edge:"85",firefox:"79",safari:"14",node:"15",deno:"1.2",ios:"14",samsung:"14",opera_mobile:"60",electron:"10.0"},"proposal-logical-assignment-operators":{chrome:"85",opera:"71",edge:"85",firefox:"79",safari:"14",node:"15",deno:"1.2",ios:"14",samsung:"14",opera_mobile:"60",electron:"10.0"},"transform-nullish-coalescing-operator":{chrome:"80",opera:"67",edge:"80",firefox:"72",safari:"13.1",node:"14",deno:"1",ios:"13.4",samsung:"13",rhino:"1.8",opera_mobile:"57",electron:"8.0"},"proposal-nullish-coalescing-operator":{chrome:"80",opera:"67",edge:"80",firefox:"72",safari:"13.1",node:"14",deno:"1",ios:"13.4",samsung:"13",rhino:"1.8",opera_mobile:"57",electron:"8.0"},"transform-optional-chaining":{chrome:"91",opera:"77",edge:"91",firefox:"74",safari:"13.1",node:"16.9",deno:"1.9",ios:"13.4",samsung:"16",opera_mobile:"64",electron:"13.0"},"proposal-optional-chaining":{chrome:"91",opera:"77",edge:"91",firefox:"74",safari:"13.1",node:"16.9",deno:"1.9",ios:"13.4",samsung:"16",opera_mobile:"64",electron:"13.0"},"transform-json-strings":{chrome:"66",opera:"53",edge:"79",firefox:"62",safari:"12",node:"10",deno:"1",ios:"12",samsung:"9",rhino:"1.7.14",opera_mobile:"47",electron:"3.0"},"proposal-json-strings":{chrome:"66",opera:"53",edge:"79",firefox:"62",safari:"12",node:"10",deno:"1",ios:"12",samsung:"9",rhino:"1.7.14",opera_mobile:"47",electron:"3.0"},"transform-optional-catch-binding":{chrome:"66",opera:"53",edge:"79",firefox:"58",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"9",opera_mobile:"47",electron:"3.0"},"proposal-optional-catch-binding":{chrome:"66",opera:"53",edge:"79",firefox:"58",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"9",opera_mobile:"47",electron:"3.0"},"transform-parameters":{chrome:"49",opera:"36",edge:"18",firefox:"52",safari:"16.3",node:"6",deno:"1",ios:"16.3",samsung:"5",opera_mobile:"36",electron:"0.37"},"transform-async-generator-functions":{chrome:"63",opera:"50",edge:"79",firefox:"57",safari:"12",node:"10",deno:"1",ios:"12",samsung:"8",opera_mobile:"46",electron:"3.0"},"proposal-async-generator-functions":{chrome:"63",opera:"50",edge:"79",firefox:"57",safari:"12",node:"10",deno:"1",ios:"12",samsung:"8",opera_mobile:"46",electron:"3.0"},"transform-object-rest-spread":{chrome:"60",opera:"47",edge:"79",firefox:"55",safari:"11.1",node:"8.3",deno:"1",ios:"11.3",samsung:"8",opera_mobile:"44",electron:"2.0"},"proposal-object-rest-spread":{chrome:"60",opera:"47",edge:"79",firefox:"55",safari:"11.1",node:"8.3",deno:"1",ios:"11.3",samsung:"8",opera_mobile:"44",electron:"2.0"},"transform-dotall-regex":{chrome:"62",opera:"49",edge:"79",firefox:"78",safari:"11.1",node:"8.10",deno:"1",ios:"11.3",samsung:"8",rhino:"1.7.15",opera_mobile:"46",electron:"3.0"},"transform-unicode-property-regex":{chrome:"64",opera:"51",edge:"79",firefox:"78",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"9",opera_mobile:"47",electron:"3.0"},"proposal-unicode-property-regex":{chrome:"64",opera:"51",edge:"79",firefox:"78",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"9",opera_mobile:"47",electron:"3.0"},"transform-named-capturing-groups-regex":{chrome:"64",opera:"51",edge:"79",firefox:"78",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"9",opera_mobile:"47",electron:"3.0"},"transform-async-to-generator":{chrome:"55",opera:"42",edge:"15",firefox:"52",safari:"11",node:"7.6",deno:"1",ios:"11",samsung:"6",opera_mobile:"42",electron:"1.6"},"transform-exponentiation-operator":{chrome:"52",opera:"39",edge:"14",firefox:"52",safari:"10.1",node:"7",deno:"1",ios:"10.3",samsung:"6",rhino:"1.7.14",opera_mobile:"41",electron:"1.3"},"transform-template-literals":{chrome:"41",opera:"28",edge:"13",firefox:"34",safari:"13",node:"4",deno:"1",ios:"13",samsung:"3.4",opera_mobile:"28",electron:"0.21"},"transform-literals":{chrome:"44",opera:"31",edge:"12",firefox:"53",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.15",opera_mobile:"32",electron:"0.30"},"transform-function-name":{chrome:"51",opera:"38",edge:"79",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"transform-arrow-functions":{chrome:"47",opera:"34",edge:"13",firefox:"43",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.7.13",opera_mobile:"34",electron:"0.36"},"transform-block-scoped-functions":{chrome:"41",opera:"28",edge:"12",firefox:"46",safari:"10",node:"4",deno:"1",ie:"11",ios:"10",samsung:"3.4",opera_mobile:"28",electron:"0.21"},"transform-classes":{chrome:"46",opera:"33",edge:"13",firefox:"45",safari:"10",node:"5",deno:"1",ios:"10",samsung:"5",opera_mobile:"33",electron:"0.36"},"transform-object-super":{chrome:"46",opera:"33",edge:"13",firefox:"45",safari:"10",node:"5",deno:"1",ios:"10",samsung:"5",opera_mobile:"33",electron:"0.36"},"transform-shorthand-properties":{chrome:"43",opera:"30",edge:"12",firefox:"33",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.14",opera_mobile:"30",electron:"0.27"},"transform-duplicate-keys":{chrome:"42",opera:"29",edge:"12",firefox:"34",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",opera_mobile:"29",electron:"0.25"},"transform-computed-properties":{chrome:"44",opera:"31",edge:"12",firefox:"34",safari:"7.1",node:"4",deno:"1",ios:"8",samsung:"4",rhino:"1.8",opera_mobile:"32",electron:"0.30"},"transform-for-of":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"transform-sticky-regex":{chrome:"49",opera:"36",edge:"13",firefox:"3",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.7.15",opera_mobile:"36",electron:"0.37"},"transform-unicode-escapes":{chrome:"44",opera:"31",edge:"12",firefox:"53",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.15",opera_mobile:"32",electron:"0.30"},"transform-unicode-regex":{chrome:"50",opera:"37",edge:"13",firefox:"46",safari:"12",node:"6",deno:"1",ios:"12",samsung:"5",opera_mobile:"37",electron:"1.1"},"transform-spread":{chrome:"46",opera:"33",edge:"13",firefox:"45",safari:"10",node:"5",deno:"1",ios:"10",samsung:"5",opera_mobile:"33",electron:"0.36"},"transform-destructuring":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"transform-block-scoping":{chrome:"50",opera:"37",edge:"14",firefox:"53",safari:"11",node:"6",deno:"1",ios:"11",samsung:"5",opera_mobile:"37",electron:"1.1"},"transform-typeof-symbol":{chrome:"48",opera:"35",edge:"12",firefox:"36",safari:"9",node:"6",deno:"1",ios:"9",samsung:"5",rhino:"1.8",opera_mobile:"35",electron:"0.37"},"transform-new-target":{chrome:"46",opera:"33",edge:"14",firefox:"41",safari:"10",node:"5",deno:"1",ios:"10",samsung:"5",opera_mobile:"33",electron:"0.36"},"transform-regenerator":{chrome:"50",opera:"37",edge:"13",firefox:"53",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"37",electron:"1.1"},"transform-member-expression-literals":{chrome:"7",opera:"12",edge:"12",firefox:"2",safari:"5.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"transform-property-literals":{chrome:"7",opera:"12",edge:"12",firefox:"2",safari:"5.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"transform-reserved-words":{chrome:"13",opera:"10.50",edge:"12",firefox:"2",safari:"3.1",node:"0.6",deno:"1",ie:"9",android:"4.4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"transform-export-namespace-from":{chrome:"72",deno:"1.0",edge:"79",firefox:"80",node:"13.2.0",opera:"60",opera_mobile:"51",safari:"14.1",ios:"14.5",samsung:"11.0",android:"72",electron:"5.0"},"proposal-export-namespace-from":{chrome:"72",deno:"1.0",edge:"79",firefox:"80",node:"13.2.0",opera:"60",opera_mobile:"51",safari:"14.1",ios:"14.5",samsung:"11.0",android:"72",electron:"5.0"}};function CU(e,t,r){var a,n,s,o=void 0===r?{}:r,i=o.compatData,d=void 0===i?kU:i,c=o.includes,l=o.excludes;return(null==l||!l.has(e))&&(!(null==c||!c.has(e))||(a=t,n=d[e],!(0!==(s=Object.keys(a)).length&&0===s.filter(function(e){var t=EU(n,e);if(!t)return!0;var r=a[e];if(RU(r,e))return!1;if(RU(t,e))return!0;if(!gU.valid(r.toString()))throw new Error('Invalid version passed for target "'+e+'": "'+r+'". Versions must be in semver format (major.minor.patch)');return gU.gt(xU(t),r.toString())}).length)))}function _U(e,t,r,a,n,s,o){var i=new Set,d={compatData:e,includes:t,excludes:r};for(var c in e)if(CU(c,a,d))i.add(c);else if(o){var l=o.get(c);l&&i.add(l)}return null==n||n.forEach(function(e){return!r.has(e)&&i.add(e)}),null==s||s.forEach(function(e){return!t.has(e)&&i.delete(e)}),i}var IU={chrome:"61",and_chr:"61",edge:"16",firefox:"60",and_ff:"60",node:"13.2.0",opera:"48",op_mob:"45",safari:"10.1",ios:"10.3",samsung:"8.2",android:"61",electron:"2.0",ios_saf:"10.3"},DU=new cU("@babel/helper-compilation-targets");function OU(e){return"string"==typeof e||Array.isArray(e)&&e.every(function(e){return"string"==typeof e})}function NU(e,t){try{return xU(t)}catch(r){throw new Error(DU.formatMessage("'"+t+"' is not a valid value for 'targets."+e+"'."))}}function BU(e){return["node",!0===e||"current"===e?z.versions.node.split("-")[0]:NU("node",e)]}function MU(e,t){return[e,RU(t,e)?t.toLowerCase():NU(e,t)]}function FU(e,t){return function(e){return e.reduce(function(e,t){var r=y(t.split(" "),2),a=r[0],n=r[1],s=yU[a];if(!s)return e;try{var o=n.split("-")[0].toLowerCase(),i=RU(o,s);if(!e[s])return e[s]=i?o:xU(o),e;var d=e[s],c=RU(d,s);if(c&&i)e[s]=jU(d,o,s);else if(c)e[s]=xU(o);else if(!c&&!i){var l=xU(o);e[s]=vU(d,l)}}catch(e){}return e},{})}(eU(e,{mobileToDesktop:!0,env:t}))}var LU=new fU({max:64});function UU(e,t){var r,a;void 0===e&&(e={}),void 0===t&&(t={});var n=e,s=n.browsers,o=n.esmodules,i=t,d=i.configPath,c=void 0===d?".":d,l=i.onBrowserslistConfigFound;!function(e){DU.invariant(void 0===e||OU(e),"'"+String(e)+"' is not a valid browserslist query")}(s);var u=function(e){var t=Object.assign({},e);return delete t.esmodules,delete t.browsers,t}(e),p=function(e){for(var t=Object.keys(SU),r=0,a=Object.keys(e);r<a.length;r++){var n=a[r];if(!(n in SU))throw new Error(DU.formatMessage("'"+n+"' is not a valid target\n- Did you mean '"+rU(n,t)+"'?"))}return e}(u),f=!!s||Object.keys(p).length>0,g=!t.ignoreBrowserslistConfig&&!f;if(!s&&g){if(!(s=z.env.BROWSERSLIST)){var m=t.configFile||z.env.BROWSERSLIST_CONFIG||eU.findConfigFile(c);null!=m&&(null==l||l(m),s=eU.loadConfig({config:m,env:t.browserslistEnv}))}null==s&&(s=[])}if(!o||"intersect"===o&&null!=(r=s)&&r.length||(s=Object.keys(IU).map(function(e){return e+" >= "+IU[e]}).join(", "),o=!1),null!=(a=s)&&a.length){var h=function(e,t){var r="string"==typeof e?e:e.join()+t,a=LU.get(r);return a||(a=FU(e,t),LU.set(r,a)),Object.assign({},a)}(s,t.browserslistEnv);if("intersect"===o)for(var b=0,v=Object.keys(h);b<v.length;b++){var x=v[b];if("deno"!==x&&"ie"!==x){var R=IU["opera_mobile"===x?"op_mob":x];if(R){var j=h[x];h[x]=wU(j,xU(R),x)}else delete h[x]}else delete h[x]}p=Object.assign(h,p)}for(var w,E={},S=[],T=0,P=Object.keys(p).sort();T<P.length;T++){var A=P[T],k=p[A];"number"==typeof k&&k%1!=0&&S.push({target:A,value:k});var C=y("node"===A?BU(k):MU(A,k),2),_=C[0],I=C[1];I&&(E[_]=I)}return(w=S).length&&(console.warn("Warning, the following targets are using a decimal version:\n"),w.forEach(function(e){var t=e.target,r=e.value;return console.warn(" "+t+": "+r)}),console.warn("\nWe recommend using a string for minor/patch versions to avoid numbers like 6.10\ngetting parsed as 6.1, which can lead to unexpected behavior.\n")),E}var qU=Object.freeze({__proto__:null,TargetNames:SU,default:UU,filterItems:_U,getInclusionReasons:AU,isBrowsersQueryValid:OU,isRequired:CU,prettifyTargets:PU,unreleasedLabels:mU});function GU(e,t){var r,a=e.targets;return"string"==typeof a||Array.isArray(a)?r={browsers:a}:a&&(r="esmodules"in a?Object.assign({},a,{esmodules:"intersect"}):a),UU(r,{ignoreBrowserslistConfig:!0,browserslistEnv:e.browserslistEnv})}var WU=p().m(KU),VU=p().m(aq),HU=p().m(nq),zU=p().m(sq);function KU(e){return p().w(function(t){for(;;)if(0===t.n)return t.a(2,e)},WU)}function XU(e,t){return"string"==typeof e.browserslistConfigFile&&(e.browserslistConfigFile=void e.browserslistConfigFile),e}function JU(e,t,r){var a=t.plugins,n=t.presets,s=t.passPerPreset;return{options:XU(t),plugins:a?function(){return eq(a,e)(r)}:function(){return KU([])},presets:n?function(){return QU(n,e)(r)(!!s)}:function(){return KU([])}}}function YU(e,t,r){return{options:XU(t),plugins:AF(function(){return nq(t.plugins||[],e,r)}),presets:AF(function(){return aq(t.presets||[],e,r,!!t.passPerPreset)})}}var $U=new WeakMap,QU=NF(function(e,t){var r=t.using(function(e){return e});return MF(function(t){return BF(p().m(function a(n){var s;return p().w(function(a){for(;;)switch(a.n){case 0:return a.d(g(aq(e,r,t,n)),1);case 1:return s=a.v,a.a(2,s.map(function(e){return rq($U,e)}))}},a)}))})}),ZU=new WeakMap,eq=NF(function(e,t){var r=t.using(function(e){return e});return BF(p().m(function t(a){var n;return p().w(function(t){for(;;)switch(t.n){case 0:return t.d(g(nq(e,r,a)),1);case 1:return n=t.v,t.a(2,n.map(function(e){return rq(ZU,e)}))}},t)}))}),tq={};function rq(e,t){var r=t.value,a=t.options,n=void 0===a?tq:a;if(!1===n)return t;var s=e.get(r);s||(s=new WeakMap,e.set(r,s));var o=s.get(n);if(o||(o=[],s.set(n,o)),!o.includes(t)){var i=o.filter(function(e){return function(e,t){var r,a,n,s;return e.name===t.name&&e.value===t.value&&e.options===t.options&&e.dirname===t.dirname&&e.alias===t.alias&&e.ownPass===t.ownPass&&(null==(r=e.file)?void 0:r.request)===(null==(a=t.file)?void 0:a.request)&&(null==(n=e.file)?void 0:n.resolved)===(null==(s=t.file)?void 0:s.resolved)}(e,t)});if(i.length>0)return i[0];o.push(t)}return t}function aq(e,t,r,a){return p().w(function(n){for(;;)switch(n.n){case 0:return n.d(g(sq("preset",e,t,r,a)),1);case 1:return n.a(2,n.v)}},VU)}function nq(e,t,r){return p().w(function(a){for(;;)switch(a.n){case 0:return a.d(g(sq("plugin",e,t,r)),1);case 1:return a.a(2,a.v)}},HU)}function sq(e,t,r,a,n){var s;return p().w(function(o){for(;;)switch(o.n){case 0:return o.d(g(aF.all(t.map(function(t,s){return oq(t,r,{type:e,alias:a+"$"+s,ownPass:!!n})}))),1);case 1:return iq(s=o.v),o.a(2,s)}},zU)}function oq(e,t,r){var a=r.type,n=r.alias,s=r.ownPass;return p().m(function r(){var o,i,d,c,l,u,f,m,h,b,v;return p().w(function(r){for(;;)switch(r.n){case 0:if(!(o=lq(e))){r.n=1;break}return r.a(2,o);case 1:if(c=e,Array.isArray(c)&&(3===c.length?(l=y(c,3),c=l[0],d=l[1],i=l[2]):(u=y(c,2),c=u[0],d=u[1])),f=void 0,m=null,"string"!=typeof c){r.n=4;break}if("string"==typeof a){r.n=2;break}throw new Error("To resolve a string-based item, the type of item must be given");case 2:return h="plugin"===a?XM:JM,b=c,r.d(g(h(c,t)),3);case 3:v=r.v,m=v.filepath,c=v.value,f={request:b,resolved:m};case 4:if(c){r.n=5;break}throw new Error("Unexpected falsy value: "+String(c));case 5:if("object"!=typeof c||!c.__esModule){r.n=7;break}if(!c.default){r.n=6;break}c=c.default,r.n=7;break;case 6:throw new Error("Must export a default export when using ES6 modules.");case 7:if("object"==typeof c||"function"==typeof c){r.n=8;break}throw new Error("Unsupported format: "+typeof c+". Expected an object or a function.");case 8:if(null===m||"object"!=typeof c||!c){r.n=9;break}throw new Error("Plugin/Preset files are not allowed to export objects, only functions. In "+m);case 9:return r.a(2,{name:i,alias:m||n,value:c,options:d,dirname:t,ownPass:s,file:f})}},r)})()}function iq(e){for(var t,r=new Map,a=function(){var a=t.value;if("function"!=typeof a.value)return 1;var n=r.get(a.value);if(n||(n=new Set,r.set(a.value,n)),n.has(a.name)){var s=e.filter(function(e){return e.value===a.value});throw new Error(["Duplicate plugin/preset detected.","If you'd like to use two separate instances of a plugin,","they need separate names, e.g.",""," plugins: ["," ['some-plugin', {}],"," ['some-plugin', {}, 'some unique name'],"," ]","","Duplicates detected are:",""+JSON.stringify(s,null,2)].join("\n"))}n.add(a.name)},n=i(e);!(t=n()).done;)a()}function dq(e){return new uq(e)}var cq=Symbol.for("@babel/core@7 - ConfigItem");function lq(e){if(null!=e&&e[cq])return e._descriptor}var uq=o(function(e){this._descriptor=void 0,this[cq]=!0,this.value=void 0,this.options=void 0,this.dirname=void 0,this.name=void 0,this.file=void 0,this._descriptor=e,Object.defineProperty(this,"_descriptor",{enumerable:!1}),Object.defineProperty(this,cq,{enumerable:!1}),this.value=this._descriptor.value,this.options=this._descriptor.options,this.dirname=this._descriptor.dirname,this.name=this._descriptor.name,this.file=this._descriptor.file?{request:this._descriptor.file.request,resolved:this._descriptor.file.resolved}:void 0,Object.freeze(this)});Object.freeze(uq.prototype);var pq,fq={auxiliaryComment:{message:"Use `auxiliaryCommentBefore` or `auxiliaryCommentAfter`"},blacklist:{message:"Put the specific transforms you want in the `plugins` option"},breakConfig:{message:"This is not a necessary option in Babel 6"},experimental:{message:"Put the specific transforms you want in the `plugins` option"},externalHelpers:{message:"Use the `external-helpers` plugin instead. Check out http://babeljs.io/docs/plugins/external-helpers/"},extra:{message:""},jsxPragma:{message:"use the `pragma` option in the `react-jsx` plugin. Check out http://babeljs.io/docs/plugins/transform-react-jsx/"},loose:{message:"Specify the `loose` option for the relevant plugin you are using or use a preset that sets the option."},metadataUsedHelpers:{message:"Not required anymore as this is enabled by default"},modules:{message:"Use the corresponding module transform plugin in the `plugins` option. Check out http://babeljs.io/docs/plugins/#modules"},nonStandard:{message:"Use the `react-jsx` and `flow-strip-types` plugins to support JSX and Flow. Also check out the react preset http://babeljs.io/docs/plugins/preset-react/"},optional:{message:"Put the specific transforms you want in the `plugins` option"},sourceMapName:{message:"The `sourceMapName` option has been removed because it makes more sense for the tooling that calls Babel to assign `map.file` themselves."},stage:{message:"Check out the corresponding stage-x presets http://babeljs.io/docs/plugins/#presets"},whitelist:{message:"Put the specific transforms you want in the `plugins` option"},resolveModuleSource:{version:6,message:"Use `babel-plugin-module-resolver@3`'s 'resolvePath' options"},metadata:{version:6,message:"Generated plugin metadata is always included in the output result"},sourceMapTarget:{version:6,message:"The `sourceMapTarget` option has been removed because it makes more sense for the tooling that calls Babel to assign `map.file` themselves."}};function gq(e){switch(e.type){case"root":return"";case"env":return gq(e.parent)+'.env["'+e.name+'"]';case"overrides":return gq(e.parent)+".overrides["+e.index+"]";case"option":return gq(e.parent)+"."+e.name;case"access":return gq(e.parent)+"["+JSON.stringify(e.name)+"]";default:throw new Error("Assertion failure: Unknown type "+e.type)}}function mq(e,t){return{type:"access",name:t,parent:e}}function yq(e,t){if(void 0!==t&&"boolean"!=typeof t&&"inline"!==t&&"both"!==t)throw new Error(gq(e)+' must be a boolean, "inline", "both", or undefined');return t}function hq(e,t){if(void 0!==t&&"string"!=typeof t)throw new Error(gq(e)+" must be a string, or undefined");return t}function bq(e,t){if(void 0!==t&&"function"!=typeof t)throw new Error(gq(e)+" must be a function, or undefined");return t}function vq(e,t){if(void 0!==t&&"boolean"!=typeof t)throw new Error(gq(e)+" must be a boolean, or undefined");return t}function xq(e,t){if(void 0!==t&&("object"!=typeof t||Array.isArray(t)||!t))throw new Error(gq(e)+" must be an object, or undefined");return t}function Rq(e,t){if(null!=t&&!Array.isArray(t))throw new Error(gq(e)+" must be an array, or undefined");return t}function jq(e,t){var r=Rq(e,t);return null==r||r.forEach(function(t,r){return function(e,t){if("string"!=typeof t&&"function"!=typeof t&&!(t instanceof RegExp))throw new Error(gq(e)+" must be an array of string/Function/RegExp values, or undefined");return t}(mq(e,r),t)}),r}function wq(e,t){if(void 0===t)return t;if(Array.isArray(t))t.forEach(function(t,r){if(!Eq(t))throw new Error(gq(mq(e,r))+" must be a string/Function/RegExp.")});else if(!Eq(t))throw new Error(gq(e)+" must be a string/Function/RegExp, or an array of those");return t}function Eq(e){return"string"==typeof e||"function"==typeof e||e instanceof RegExp}function Sq(e,t){if(void 0!==t&&"boolean"!=typeof t&&"string"!=typeof t)throw new Error(gq(e)+" must be a undefined, a boolean, a string, got "+JSON.stringify(t));return t}function Tq(e,t){var r=Rq(e,t);return r&&r.forEach(function(t,r){return function(e,t){if(Array.isArray(t)){if(0===t.length)throw new Error(gq(e)+" must include an object");if(t.length>3)throw new Error(gq(e)+" may only be a two-tuple or three-tuple");if(Pq(mq(e,0),t[0]),t.length>1){var r=t[1];if(void 0!==r&&!1!==r&&("object"!=typeof r||Array.isArray(r)||null===r))throw new Error(gq(mq(e,1))+" must be an object, false, or undefined")}if(3===t.length){var a=t[2];if(void 0!==a&&"string"!=typeof a)throw new Error(gq(mq(e,2))+" must be a string, or undefined")}}else Pq(e,t);return t}(mq(e,r),t)}),r}function Pq(e,t){if(("object"!=typeof t||!t)&&"string"!=typeof t&&"function"!=typeof t)throw new Error(gq(e)+" must be a string, object, function");return t}function Aq(e,t){if(void 0!==t&&!OU(t))throw new Error(gq(e)+" must be undefined, a string or an array of strings")}function kq(e,t){if(("number"!=typeof t||Math.round(t)!==t)&&"string"!=typeof t)throw new Error(gq(e)+" must be a string or an integer number")}var Cq=Function.call.bind(Error.prototype.toString),_q=!!Error.captureStackTrace&&!0===(null==(pq=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"))?void 0:pq.writable),Iq="startHiding - secret - don't use this - v1",Dq="stopHiding - secret - don't use this - v1",Oq=new WeakSet,Nq=new WeakMap;function Bq(e,t){if(_q){var r=Nq.get(e);return r||Nq.set(e,r=[]),r.push(function(e){return Object.create({isNative:function(){return!1},isConstructor:function(){return!1},isToplevel:function(){return!0},getFileName:function(){return e},getLineNumber:function(){},getColumnNumber:function(){},getFunctionName:function(){},getMethodName:function(){},getTypeName:function(){},toString:function(){return e}})}(t)),e}}function Mq(e){return _q?Object.defineProperty(function(){return Fq(),e.apply(void 0,arguments)},"name",{value:Dq}):e}function Fq(){Fq=function(){};var e=Error.prepareStackTrace,t=void 0===e?Lq:e;Error.stackTraceLimit&&(Error.stackTraceLimit=Math.max(Error.stackTraceLimit,50)),Error.prepareStackTrace=function(e,r){for(var a=[],n=Oq.has(e)?"hiding":"unknown",s=0;s<r.length;s++){var o=r[s].getFunctionName();if(o===Iq)n="hiding";else if(o===Dq){var i;if("hiding"===n){if(n="showing",Nq.has(e))(i=a).unshift.apply(i,b(Nq.get(e)))}else if("unknown"===n){a=r;break}}else"hiding"!==n&&a.push(r[s])}return t(e,a)}}function Lq(e,t){return 0===t.length?Cq(e):Cq(e)+"\n at "+t.join("\n at ")}var Uq=function(e){function t(t,r){var a;return function(e){if(_q)Oq.add(e)}(a=e.call(this,t)||this),r&&Bq(a,r),a}return c(t,e),o(t)}(R(Error)),qq={cwd:hq,root:hq,rootMode:function(e,t){if(void 0!==t&&"root"!==t&&"upward"!==t&&"upward-optional"!==t)throw new Error(gq(e)+' must be a "root", "upward", "upward-optional" or undefined');return t},configFile:Sq,caller:function(e,t){var r=xq(e,t);if(r){if("string"!=typeof r.name)throw new Error(gq(e)+' set but does not contain "name" property string');for(var a=0,n=Object.keys(r);a<n.length;a++){var s=n[a],o=mq(e,s),i=r[s];if(null!=i&&"boolean"!=typeof i&&"string"!=typeof i&&"number"!=typeof i)throw new Error(gq(o)+" must be null, undefined, a boolean, a string, or a number.")}}return t},filename:hq,filenameRelative:hq,code:vq,ast:vq,cloneInputAst:vq,envName:hq},Gq={babelrc:vq,babelrcRoots:function(e,t){if(void 0===t||"boolean"==typeof t)return t;if(Array.isArray(t))t.forEach(function(t,r){if(!Eq(t))throw new Error(gq(mq(e,r))+" must be a string/Function/RegExp.")});else if(!Eq(t))throw new Error(gq(e)+" must be a undefined, a boolean, a string/Function/RegExp or an array of those, got "+JSON.stringify(t));return t}},Wq={extends:hq,ignore:jq,only:jq,targets:function(e,t){if(OU(t))return t;if("object"!=typeof t||!t||Array.isArray(t))throw new Error(gq(e)+" must be a string, an array of strings or an object");var r=mq(e,"browsers"),a=mq(e,"esmodules");Aq(r,t.browsers),vq(a,t.esmodules);for(var n=0,s=Object.keys(t);n<s.length;n++){var o=s[n],i=t[o],d=mq(e,o);if("esmodules"===o)vq(d,i);else if("browsers"===o)Aq(d,i);else{if(!hasOwnProperty.call(SU,o)){var c=Object.keys(SU).join(", ");throw new Error(gq(d)+" is not a valid target. Supported targets are "+c)}kq(d,i)}}return t},browserslistConfigFile:Sq,browserslistEnv:hq},Vq={inputSourceMap:function(e,t){if(void 0!==t&&"boolean"!=typeof t&&("object"!=typeof t||!t))throw new Error(gq(e)+" must be a boolean, object, or undefined");return t},presets:Tq,plugins:Tq,passPerPreset:vq,assumptions:function(e,t){if(void 0!==t){if("object"!=typeof t||null===t)throw new Error(gq(e)+" must be an object or undefined.");var r=e;do{r=r.parent}while("root"!==r.type);for(var a="preset"===r.source,n=0,s=Object.keys(t);n<s.length;n++){var o=s[n],i=mq(e,o);if(!Hq.has(o))throw new Error(gq(i)+" is not a supported assumption.");if("boolean"!=typeof t[o])throw new Error(gq(i)+" must be a boolean.");if(a&&!1===t[o])throw new Error(gq(i)+" cannot be set to 'false' inside presets.")}return t}},env:function(e,t){if("env"===e.parent.type)throw new Error(gq(e)+" is not allowed inside of another .env block");var r=e.parent,a=xq(e,t);if(a)for(var n=0,s=Object.keys(a);n<s.length;n++){var o=s[n],i=xq(mq(e,o),a[o]);if(i)Xq({type:"env",name:o,parent:r},i)}return a},overrides:function(e,t){if("env"===e.parent.type)throw new Error(gq(e)+" is not allowed inside an .env block");if("overrides"===e.parent.type)throw new Error(gq(e)+" is not allowed inside an .overrides block");var r=e.parent,a=Rq(e,t);if(a)for(var n,s=i(a.entries());!(n=s()).done;){var o=y(n.value,2),d=o[0],c=o[1],l=mq(e,d),u=xq(l,c);if(!u)throw new Error(gq(l)+" must be an object");Xq({type:"overrides",index:d,parent:r},u)}return a},test:wq,include:wq,exclude:wq,retainLines:vq,comments:vq,shouldPrintComment:bq,compact:function(e,t){if(void 0!==t&&"boolean"!=typeof t&&"auto"!==t)throw new Error(gq(e)+' must be a boolean, "auto", or undefined');return t},minified:vq,auxiliaryCommentBefore:hq,auxiliaryCommentAfter:hq,sourceType:function(e,t){if(void 0!==t&&"module"!==t&&"commonjs"!==t&&"script"!==t&&"unambiguous"!==t)throw new Error(gq(e)+' must be "module", "commonjs", "script", "unambiguous", or undefined');return t},wrapPluginVisitorMethod:bq,highlightCode:vq,sourceMaps:yq,sourceMap:yq,sourceFileName:hq,sourceRoot:hq,parserOpts:xq,generatorOpts:xq};Object.assign(Vq,{getModuleId:bq,moduleRoot:hq,moduleIds:vq,moduleId:hq});var Hq=new Set(["arrayLikeIsIterable","constantReexports","constantSuper","enumerableModuleMeta","ignoreFunctionLength","ignoreToPrimitiveHint","iterableIsArray","mutableTemplateObject","noClassCalls","noDocumentAll","noIncompleteNsImportDetection","noNewArrows","noUninitializedPrivateFieldAccess","objectRestNoSymbols","privateFieldsAsSymbols","privateFieldsAsProperties","pureGetters","setClassMethods","setComputedProperties","setPublicClassFields","setSpreadProperties","skipForOfIteratorClosing","superIsCallableConstructor"]);function zq(e){return"root"===e.type?e.source:zq(e.parent)}function Kq(e,t,r){try{return Xq({type:"root",source:e},t)}catch(e){var a=new Uq(e.message,r);throw e.code&&(a.code=e.code),a}}function Xq(e,t){var r=zq(e);return function(e){if(hasOwnProperty.call(e,"sourceMap")&&hasOwnProperty.call(e,"sourceMaps"))throw new Error(".sourceMap is an alias for .sourceMaps, cannot use both")}(t),Object.keys(t).forEach(function(a){var n={type:"option",name:a,parent:e};if("preset"===r&&Wq[a])throw new Error(gq(n)+" is not allowed in preset options");if("arguments"!==r&&qq[a])throw new Error(gq(n)+" is only allowed in root programmatic options");if("arguments"!==r&&"configfile"!==r&&Gq[a]){if("babelrcfile"===r||"extendsfile"===r)throw new Error(gq(n)+' is not allowed in .babelrc or "extends"ed files, only in root programmatic options, or babel.config.js/config file options');throw new Error(gq(n)+" is only allowed in root programmatic options, or babel.config.js/config file options")}(Vq[a]||Wq[a]||Gq[a]||qq[a]||Jq)(n,t[a])}),t}function Jq(e){var t=e.name;if(fq[t]){var r=fq[t],a=r.message,n=r.version;throw new Error("Using removed Babel "+(void 0===n?5:n)+" option: "+gq(e)+" - "+a)}var s=new Error("Unknown option: "+gq(e)+". Check out https://babeljs.io/docs/en/babel-core/#options for more information about options.");throw s.code="BABEL_UNKNOWN_OPTION",s}function Yq(e,t,r,a){if(0!==t){var n=e[t-1],s=e[t];n.file&&void 0===n.options&&"object"==typeof s.value&&(a.message+='\n- Maybe you meant to use\n"'+r+'s": [\n ["'+n.file.request+'", '+JSON.stringify(s.value,void 0,2)+"]\n]\nTo be a valid "+r+", its name and options should be wrapped in a pair of brackets")}}var $q="\\"+bB.sep,Qq="(?:"+$q+"|$)",Zq="[^"+$q+"]+",eG="(?:"+Zq+$q+")",tG="(?:"+Zq+Qq+")",rG=eG+"*?",aG=eG+"*?"+tG+"?";function nG(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&")}function sG(e,t){var r=bB.resolve(t,e).split(bB.sep);return new RegExp(["^"].concat(b(r.map(function(e,t){var a=t===r.length-1;return"**"===e?a?aG:rG:"*"===e?a?tG:eG:e.startsWith("*.")?Zq+nG(e.slice(1))+(a?Qq:$q):nG(e)+(a?Qq:$q)}))).join(""))}var oG=0,iG=1,dG={title:function(e,t,r){var a="";return e===oG?(a="programmatic options",t&&(a+=" from "+t)):a="config "+r,a},loc:function(e,t){var r="";return null!=e&&(r+=".overrides["+e+"]"),null!=t&&(r+='.env["'+t+'"]'),r},optionsAndDescriptors:p().m(function e(t){var r,a,n,s,o;return p().w(function(e){for(;;)switch(e.n){case 0:return delete(r=Object.assign({},t.options)).overrides,delete r.env,s=b,e.d(g(t.plugins()),1);case 1:return(a=s(e.v)).length&&(r.plugins=a.map(function(e){return cG(e)})),o=b,e.d(g(t.presets()),2);case 2:return(n=o(e.v)).length&&(r.presets=b(n).map(function(e){return cG(e)})),e.a(2,JSON.stringify(r,void 0,2))}},e)})};function cG(e){var t,r=null==(t=e.file)?void 0:t.request;return null==r&&("object"==typeof e.value?r=e.value:"function"==typeof e.value&&(r="[Function: "+e.value.toString().slice(0,50)+" ... ]")),null==r&&(r="[Unknown]"),void 0===e.options?r:null==e.name?[r,e.options]:[r,e.options,e.name]}var lG=function(){function e(){this._stack=[]}var t=e.prototype;return t.configure=function(e,t,r){var a=this,n=r.callerName,s=r.filepath;return e?function(e,r,o){a._stack.push({type:t,callerName:n,filepath:s,content:e,index:r,envName:o})}:function(){}},e.format=p().m(function e(t){var r,a,n;return p().w(function(e){for(;;)switch(e.n){case 0:return r=dG.title(t.type,t.callerName,t.filepath),(a=dG.loc(t.index,t.envName))&&(r+=" "+a),e.d(g(dG.optionsAndDescriptors(t.content)),1);case 1:return n=e.v,e.a(2,r+"\n"+n)}},e)}),t.output=p().m(function t(){var r;return p().w(function(t){for(;;)switch(t.n){case 0:if(0!==this._stack.length){t.n=1;break}return t.a(2,"");case 1:return t.d(g(aF.all(this._stack.map(function(t){return e.format(t)}))),2);case 2:return r=t.v,t.a(2,r.join("\n\n"))}},t,this)}),o(e)}(),uG=p().m(yG),pG=p().m(jG),fG=p().m(kG),gG=p().m(LG),mG=_j("babel:config:config-chain");function yG(e,t){var r;return p().w(function(a){for(;;)switch(a.n){case 0:return a.d(g(hG(e,t)),1);case 1:if(r=a.v){a.n=2;break}return a.a(2,null);case 2:return a.a(2,{plugins:VG(r.plugins),presets:VG(r.presets),options:r.options.map(function(e){return WG(e)}),files:new Set})}},uG)}var hG=FG({root:function(e){return bG(e)},env:function(e,t){return vG(e)(t)},overrides:function(e,t){return xG(e)(t)},overridesEnv:function(e,t,r){return RG(e)(t)(r)},createLogger:function(){return function(){}}}),bG=NF(function(e){return OG(e,e.alias,YU)}),vG=NF(function(e){return MF(function(t){return NG(e,e.alias,YU,t)})}),xG=NF(function(e){return MF(function(t){return BG(e,e.alias,YU,t)})}),RG=NF(function(e){return MF(function(t){return MF(function(r){return MG(e,e.alias,YU,t,r)})})});function jG(e,t){var r,a,n,s,o,i,d,c,l,u,f,m,y,h,b,v,x,R,j,w,E,S,T;return p().w(function(p){for(;;)switch(p.n){case 0:return n=new lG,p.d(g(PG({options:e,dirname:t.cwd},t,void 0,n)),1);case 1:if(s=p.v){p.n=2;break}return p.a(2,null);case 2:return p.d(g(n.output()),3);case 3:if(o=p.v,"string"!=typeof e.configFile){p.n=5;break}return p.d(g(HM(e.configFile,t.cwd,t.envName,t.caller)),4);case 4:i=p.v,p.n=7;break;case 5:if(!1===e.configFile){p.n=7;break}return p.d(g(VM(t.root,t.envName,t.caller)),6);case 6:i=p.v;case 7:if(d=e.babelrc,c=e.babelrcRoots,l=t.cwd,u=GG(),f=new lG,!i){p.n=11;break}return m=EG(i),p.d(g(kG(m,t,void 0,f)),8);case 8:if(y=p.v){p.n=9;break}return p.a(2,null);case 9:return p.d(g(f.output()),10);case 10:r=p.v,void 0===d&&(d=m.options.babelrc),void 0===c&&(l=m.dirname,c=m.options.babelrcRoots),UG(u,y);case 11:if(v=!1,x=GG(),!0!==d&&void 0!==d||"string"!=typeof t.filename){p.n=18;break}return p.d(g(GM(t.filename)),12);case 12:if(!(R=p.v)||!wG(t,R,c,l)){p.n=18;break}return p.d(g(WM(0,t.envName,t.caller)),13);case 13:if(j=p.v,h=j.ignore,b=j.config,h&&x.files.add(h.filepath),h&&XG(t,h.ignore,null,h.dirname)&&(v=!0),!b||v){p.n=17;break}return w=SG(b),E=new lG,p.d(g(kG(w,t,void 0,E)),14);case 14:if(S=p.v){p.n=15;break}v=!0,p.n=17;break;case 15:return p.d(g(E.output()),16);case 16:a=p.v,UG(x,S);case 17:b&&v&&x.files.add(b.filepath);case 18:return t.showConfig&&console.log('Babel configs on "'+t.filename+'" (ascending priority):\n'+[r,a,o].filter(function(e){return!!e}).join("\n\n")+"\n-----End Babel configs-----"),T=UG(UG(UG(GG(),u),x),s),p.a(2,{plugins:v?[]:VG(T.plugins),presets:v?[]:VG(T.presets),options:v?[]:T.options.map(function(e){return WG(e)}),fileHandling:v?"ignored":"transpile",ignore:h||void 0,babelrc:b||void 0,config:i||void 0,files:T.files})}},pG)}function wG(e,t,r,a){if("boolean"==typeof r)return r;var n=e.root;if(void 0===r)return t.directories.includes(n);var s=r;return Array.isArray(s)||(s=[s]),1===(s=s.map(function(e){return"string"==typeof e?bB.resolve(a,e):e})).length&&s[0]===n?t.directories.includes(n):s.some(function(r){return"string"==typeof r&&(r=sG(r,a)),t.directories.some(function(t){return YG(r,a,t,e)})})}var EG=NF(function(e){return{filepath:e.filepath,dirname:e.dirname,options:Kq("configfile",e.options,e.filepath)}}),SG=NF(function(e){return{filepath:e.filepath,dirname:e.dirname,options:Kq("babelrcfile",e.options,e.filepath)}}),TG=NF(function(e){return{filepath:e.filepath,dirname:e.dirname,options:Kq("extendsfile",e.options,e.filepath)}}),PG=FG({root:function(e){return OG(e,"base",JU)},env:function(e,t){return NG(e,"base",JU,t)},overrides:function(e,t){return BG(e,"base",JU,t)},overridesEnv:function(e,t,r){return MG(e,"base",JU,t,r)},createLogger:function(e,t,r){return function(e,t,r){var a;if(!r)return function(){};return r.configure(t.showConfig,oG,{callerName:null==(a=t.caller)?void 0:a.name})}(0,t,r)}}),AG=FG({root:function(e){return CG(e)},env:function(e,t){return _G(e)(t)},overrides:function(e,t){return IG(e)(t)},overridesEnv:function(e,t,r){return DG(e)(t)(r)},createLogger:function(e,t,r){return function(e,t,r){if(!r)return function(){};return r.configure(t.showConfig,iG,{filepath:e})}(e.filepath,t,r)}});function kG(e,t,r,a){var n;return p().w(function(s){for(;;)switch(s.n){case 0:return s.d(g(AG(e,t,r,a)),1);case 1:return null==(n=s.v)||n.files.add(e.filepath),s.a(2,n)}},fG)}var CG=NF(function(e){return OG(e,e.filepath,YU)}),_G=NF(function(e){return MF(function(t){return NG(e,e.filepath,YU,t)})}),IG=NF(function(e){return MF(function(t){return BG(e,e.filepath,YU,t)})}),DG=NF(function(e){return MF(function(t){return MF(function(r){return MG(e,e.filepath,YU,t,r)})})});function OG(e,t,r){return r(e.dirname,e.options,t)}function NG(e,t,r,a){var n,s=e.dirname,o=null==(n=e.options.env)?void 0:n[a];return o?r(s,o,t+'.env["'+a+'"]'):null}function BG(e,t,r,a){var n,s=e.dirname,o=null==(n=e.options.overrides)?void 0:n[a];if(!o)throw new Error("Assertion failure - missing override");return r(s,o,t+".overrides["+a+"]")}function MG(e,t,r,a,n){var s,o,i=e.dirname,d=null==(s=e.options.overrides)?void 0:s[a];if(!d)throw new Error("Assertion failure - missing override");var c=null==(o=d.env)?void 0:o[n];return c?r(i,c,t+".overrides["+a+'].env["'+n+'"]'):null}function FG(e){var t=e.root,r=e.env,a=e.overrides,n=e.overridesEnv,s=e.createLogger;return function(e,o,i,d){return void 0===i&&(i=new Set),p().m(function c(){var l,u,f,m,y,h,b,v,x,R,j,w;return p().w(function(c){for(;;)switch(c.n){case 0:if(l=e.dirname,u=[],HG(f=t(e),l,o,e.filepath)&&(u.push({config:f,envName:void 0,index:void 0}),(m=r(e,o.envName))&&HG(m,l,o,e.filepath)&&u.push({config:m,envName:o.envName,index:void 0}),(f.options.overrides||[]).forEach(function(t,r){var s=a(e,r);if(HG(s,l,o,e.filepath)){u.push({config:s,index:r,envName:void 0});var i=n(e,r,o.envName);i&&HG(i,l,o,e.filepath)&&u.push({config:i,index:r,envName:o.envName})}})),!u.some(function(e){var t=e.config.options,r=t.ignore,a=t.only;return XG(o,r,a,l)})){c.n=1;break}return c.a(2,null);case 1:y=GG(),h=s(e,o,d),b=0,v=u;case 2:if(!(b<v.length)){c.n=6;break}return x=v[b],R=x.config,j=x.index,w=x.envName,c.d(g(LG(y,R.options,l,o,i,d)),3);case 3:if(c.v){c.n=4;break}return c.a(2,null);case 4:return h(R,j,w),c.d(g(qG(y,R)),5);case 5:b++,c.n=2;break;case 6:return c.a(2,y)}},c)})()}}function LG(e,t,r,a,n,s){var o,i;return p().w(function(d){for(;;)switch(d.n){case 0:if(void 0!==t.extends){d.n=1;break}return d.a(2,!0);case 1:return d.d(g(HM(t.extends,r,a.envName,a.caller)),2);case 2:if(o=d.v,!n.has(o)){d.n=3;break}throw new Error("Configuration cycle detected loading "+o.filepath+".\nFile already loaded following the config chain:\n"+Array.from(n,function(e){return" - "+e.filepath}).join("\n"));case 3:return n.add(o),d.d(g(kG(TG(o),a,n,s)),4);case 4:if(i=d.v,n.delete(o),i){d.n=5;break}return d.a(2,!1);case 5:return UG(e,i),d.a(2,!0)}},gG)}function UG(e,t){var r,a,n;(r=e.options).push.apply(r,b(t.options)),(a=e.plugins).push.apply(a,b(t.plugins)),(n=e.presets).push.apply(n,b(t.presets));for(var s,o=i(t.files);!(s=o()).done;){var d=s.value;e.files.add(d)}return e}function qG(e,t){var r=t.options,a=t.plugins,n=t.presets;return p().m(function t(s,o){var i,d,c,l,u,f;return p().w(function(t){for(;;)switch(t.n){case 0:return e.options.push(r),i=(s=e.plugins).push,d=s,c=b,t.d(g(a()),1);case 1:return i.apply.call(i,d,c(t.v)),l=(o=e.presets).push,u=o,f=b,t.d(g(n()),2);case 2:return l.apply.call(l,u,f(t.v)),t.a(2,e)}},t)})()}function GG(){return{options:[],presets:[],plugins:[],files:new Set}}function WG(e){var t=Object.assign({},e);return delete t.extends,delete t.env,delete t.overrides,delete t.plugins,delete t.presets,delete t.passPerPreset,delete t.ignore,delete t.only,delete t.test,delete t.include,delete t.exclude,hasOwnProperty.call(t,"sourceMap")&&(t.sourceMaps=t.sourceMap,delete t.sourceMap),t}function VG(e){for(var t,r=new Map,a=[],n=i(e);!(t=n()).done;){var s=t.value;if("function"==typeof s.value){var o=s.value,d=r.get(o);d||(d=new Map,r.set(o,d));var c=d.get(s.name);c?c.value=s:(c={value:s},a.push(c),s.ownPass||d.set(s.name,c))}else a.push({value:s})}return a.reduce(function(e,t){return e.push(t.value),e},[])}function HG(e,t,r,a){var n=e.options;return(void 0===n.test||zG(r,n.test,t,a))&&(void 0===n.include||zG(r,n.include,t,a))&&(void 0===n.exclude||!zG(r,n.exclude,t,a))}function zG(e,t,r,a){return JG(e,Array.isArray(t)?t:[t],r,a)}function KG(e,t){return t instanceof RegExp?String(t):t}function XG(e,t,r,a){if(t&&JG(e,t,a)){var n,s='No config is applied to "'+(null!=(n=e.filename)?n:"(unknown)")+'" because it matches one of `ignore: '+JSON.stringify(t,KG)+'` from "'+a+'"';return mG(s),e.showConfig&&console.log(s),!0}if(r&&!JG(e,r,a)){var o,i='No config is applied to "'+(null!=(o=e.filename)?o:"(unknown)")+'" because it fails to match one of `only: '+JSON.stringify(r,KG)+'` from "'+a+'"';return mG(i),e.showConfig&&console.log(i),!0}return!1}function JG(e,t,r,a){return t.some(function(t){return YG(t,r,e.filename,e,a)})}function YG(e,t,r,a,n){if("function"==typeof e)return!!(s=e,_q?Object.defineProperty(function(){return s.apply(void 0,arguments)},"name",{value:Iq}):s)(r,{dirname:t,envName:a.envName,caller:a.caller});var s;if("string"!=typeof r)throw new Uq("Configuration contains string/RegExp pattern, but no filename was passed to Babel",n);return"string"==typeof e&&(e=sG(e,t)),e.test(r)}var $G={name:hq,manipulateOptions:bq,pre:bq,post:bq,inherits:bq,visitor:function(e,t){var r=xq(e,t);if(r&&(Object.keys(r).forEach(function(e){"_exploded"!==e&&"_verified"!==e&&function(e,t){if(t&&"object"==typeof t)Object.keys(t).forEach(function(t){if("enter"!==t&&"exit"!==t)throw new Error('.visitor["'+e+'"] may only have .enter and/or .exit handlers.')});else if("function"!=typeof t)throw new Error('.visitor["'+e+'"] must be a function')}(e,r[e])}),r.enter||r.exit))throw new Error(gq(e)+' cannot contain catch-all "enter" or "exit" handlers. Please target individual nodes.');return r},parserOverride:bq,generatorOverride:bq};function QG(e){var t={type:"root",source:"plugin"};return Object.keys(e).forEach(function(r){var a=$G[r];if(!a){var n=new Error("."+r+" is not a valid Plugin property");throw n.code="BABEL_UNKNOWN_PLUGIN_PROPERTY",n}a({type:"option",name:r,parent:t},e[r])}),e}function ZG(e,t){return Object.assign({},function(e){return{version:FV,cache:e.simple(),env:function(t){return e.using(function(e){return void 0===t?e.envName:"function"==typeof t?VF(t(e.envName)):(Array.isArray(t)?t:[t]).some(function(t){if("string"!=typeof t)throw new Error("Unexpected non-string value");return t===e.envName})})},async:function(){return!1},caller:function(t){return e.using(function(e){return VF(t(e.caller))})},assertVersion:eW}}(e),{targets:function(){return JSON.parse(e.using(function(e){return JSON.stringify(e.targets)}))},addExternalDependency:function(e){t.push(e)}})}function eW(e){if("number"==typeof e){if(!Number.isInteger(e))throw new Error("Expected string or integer value.");e="^"+e+".0.0-0"}if("string"!=typeof e)throw new Error("Expected string or integer value.");if("*"!==e&&!UO.satisfies(FV,e)){var t='Requires Babel "'+e+'", but was loaded with "'+FV+'". If you are sure you have a compatible version of @babel/core, it is likely that something in your build process is loading the wrong version. Inspect the stack trace of this error to look for the first entry that doesn\'t mention "@babel/core" or "babel-core" to see what is calling Babel.',r=Error.stackTraceLimit;"number"==typeof r&&r<25&&(Error.stackTraceLimit=25);var a=new Error(t);throw"number"==typeof r&&(Error.stackTraceLimit=r),Object.assign(a,{code:"BABEL_VERSION_UNSUPPORTED",version:FV,range:e})}}var tW=["showIgnoredFiles"],rW=p().m(sW),aW=p().m(oW);function nW(e,t){switch(t){case"root":return e;case"upward-optional":return e;case"upward":throw Object.assign(new Error('Babel was run with rootMode:"upward" but a root could not be found when searching upward from "'+e+'".\nOne of the following config files must be in the directory tree: "'+KM.join(", ")+'".'),{code:"BABEL_ROOT_NOT_FOUND",dirname:e});default:throw new Error("Assertion failure - unknown rootMode value.")}}function sW(e){var t,r,a,n,s,o,i,d,c,l,u,f,m,y,h,b,v,x,R,j;return p().w(function(p){for(;;)switch(p.n){case 0:if(null==e||"object"==typeof e&&!Array.isArray(e)){p.n=1;break}throw new Error("Babel options must be an object, null, or undefined");case 1:return t=e?Kq("arguments",e):{},r=t.envName,a=void 0===r?YM():r,n=t.cwd,s=void 0===n?".":n,o=t.root,i=void 0===o?".":o,d=t.rootMode,c=void 0===d?"root":d,l=t.caller,u=t.cloneInputAst,f=void 0===u||u,m=bB.resolve(s),y=nW(bB.resolve(m,i),c),h="string"==typeof t.filename?bB.resolve(s,t.filename):void 0,p.d(g(zM()),2);case 2:return b=p.v,v={filename:h,cwd:m,root:y,envName:a,caller:l,showConfig:b===h},p.d(g(jG(t,v)),3);case 3:if(x=p.v){p.n=4;break}return p.a(2,null);case 4:return R={assumptions:{}},x.options.forEach(function(e){jF(R,e)}),j=Object.assign({},R,{targets:GU(R),cloneInputAst:f,babelrc:!1,configFile:!1,browserslistConfigFile:!1,passPerPreset:!1,envName:v.envName,cwd:v.cwd,root:v.root,rootMode:"root",filename:"string"==typeof v.filename?v.filename:void 0,plugins:x.plugins.map(function(e){return dq(e)}),presets:x.presets.map(function(e){return dq(e)})}),p.a(2,{options:j,context:v,fileHandling:x.fileHandling,ignore:x.ignore,babelrc:x.babelrc,config:x.config,files:x.files})}},rW)}function oW(e){var t,r,a,n,s,o,i,d,c;return p().w(function(l){for(;;)switch(l.n){case 0:return t=!1,"object"!=typeof e||null===e||Array.isArray(e)||(t=(r=e).showIgnoredFiles,e=u(r,tW)),l.d(g(sW(e)),1);case 1:if(a=l.v){l.n=2;break}return l.a(2,null);case 2:if(n=a.options,s=a.babelrc,o=a.ignore,i=a.config,d=a.fileHandling,c=a.files,"ignored"!==d||t){l.n=3;break}return l.a(2,null);case 3:return(n.plugins||[]).forEach(function(e){if(e.value instanceof PF)throw new Error("Passing cached plugin instances is not supported in babel.loadPartialConfig()")}),l.a(2,new iW(n,s?s.filepath:void 0,o?o.filepath:void 0,i?i.filepath:void 0,d,c))}},aW)}var iW=function(){function e(e,t,r,a,n,s){this.options=void 0,this.babelrc=void 0,this.babelignore=void 0,this.config=void 0,this.fileHandling=void 0,this.files=void 0,this.options=e,this.babelignore=r,this.babelrc=t,this.config=a,this.fileHandling=n,this.files=s,Object.freeze(this)}return e.prototype.hasFilesystemConfig=function(){return void 0!==this.babelrc||void 0!==this.config},o(e)}();Object.freeze(iW.prototype);var dW=p().m(yW),cW=p().m(RW),lW=aF(p().m(function e(t){var r,a,n,s,o,d,c,l,u,f,m,y,h,v,x,R;return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(sW(t)),1);case 1:if(a=e.v){e.n=2;break}return e.a(2,null);case 2:if(n=a.options,s=a.context,"ignored"!==a.fileHandling){e.n=3;break}return e.a(2,null);case 3:if(o={},d=n.plugins,c=n.presets,d&&c){e.n=4;break}throw new Error("Assertion failure - plugins and presets exist");case 4:return l=Object.assign({},s,{targets:n.targets}),u=function(e){var t=lq(e);if(!t)throw new Error("Assertion failure - must be config item");return t},f=c.map(u),m=d.map(u),y=[[]],h=[],v=[],e.d(g(uW(s,p().m(function e(t,r){var a,n,s,d,c,u,f,m,h,x;return p().w(function(p){for(;;)switch(p.p=p.n){case 0:a=[],n=0;case 1:if(!(n<t.length)){p.n=7;break}if(!1===(s=t[n]).options){p.n=6;break}return p.p=2,p.d(g(RW(s,l)),3);case 3:d=p.v,p.n=5;break;case 4:throw p.p=4,"BABEL_UNKNOWN_OPTION"===(x=p.v).code&&Yq(t,n,"preset",x),x;case 5:v.push(d.externalDependencies),s.ownPass?a.push({preset:d.chain,pass:[]}):a.unshift({preset:d.chain,pass:r});case 6:n++,p.n=1;break;case 7:if(!(a.length>0)){p.n=13;break}y.splice.apply(y,[1,0].concat(b(a.map(function(e){return e.pass}).filter(function(e){return e!==r})))),c=i(a);case 8:if((u=c()).done){p.n=13;break}if(f=u.value,m=f.preset,h=f.pass,m){p.n=9;break}return p.a(2,!0);case 9:return h.push.apply(h,b(m.plugins)),p.d(g(e(m.presets,h)),10);case 10:if(!p.v){p.n=11;break}return p.a(2,!0);case 11:m.options.forEach(function(e){jF(o,e)});case 12:p.n=8;break;case 13:return p.a(2)}},e,null,[[2,4]])}))(f,y[0])),5);case 5:if(!e.v){e.n=6;break}return e.a(2,null);case 6:return jF(x=o,n),R=Object.assign({},l,{assumptions:null!=(r=x.assumptions)?r:{}}),e.d(g(uW(s,p().m(function e(){var t,r,a,n,s,o,i,d,c;return p().w(function(e){for(;;)switch(e.p=e.n){case 0:(t=y[0]).unshift.apply(t,b(m)),r=0,a=y;case 1:if(!(r<a.length)){e.n=9;break}n=a[r],s=[],h.push(s),o=0;case 2:if(!(o<n.length)){e.n=8;break}if(!1===(i=n[o]).options){e.n=7;break}return e.p=3,e.d(g(yW(i,R)),4);case 4:d=e.v,e.n=6;break;case 5:throw e.p=5,"BABEL_UNKNOWN_PLUGIN_PROPERTY"===(c=e.v).code&&Yq(n,o,"plugin",c),c;case 6:s.push(d),v.push(d.externalDependencies);case 7:o++,e.n=2;break;case 8:r++,e.n=1;break;case 9:return e.a(2)}},e,null,[[3,5]])}))()),7);case 7:return x.plugins=h[0],x.presets=h.slice(1).filter(function(e){return e.length>0}).map(function(e){return{plugins:e}}),x.passPerPreset=x.presets.length>0,e.a(2,{options:x,passes:h,externalDependencies:SF(v)})}},e)}));function uW(e,t){return p().m(function r(a,n){var s,o;return p().w(function(r){for(;;)switch(r.p=r.n){case 0:return r.p=0,r.d(g(t(a,n)),1);case 1:return r.a(2,r.v);case 2:throw r.p=2,(o=r.v).message.startsWith("[BABEL]")||(o.message="[BABEL] "+(null!=(s=e.filename)?s:"unknown file")+": "+o.message),o;case 3:return r.a(2)}},r,null,[[0,2]])})}var pW=function(e){return OF(function(t,a){var n=t.value,s=t.options,o=t.dirname,i=t.alias;return p().m(function t(){var d,c,l,u,f,m;return p().w(function(t){for(;;)switch(t.p=t.n){case 0:if(!1!==s){t.n=1;break}throw new Error("Assertion failure");case 1:if(s=s||{},d=[],c=n,"function"!=typeof n){t.n=5;break}return l=gF(n,"You appear to be using an async plugin/preset, but Babel has been called synchronously"),u=Object.assign({},r,e(a,d)),t.p=2,t.d(g(l(u,s,o)),3);case 3:c=t.v,t.n=5;break;case 4:throw t.p=4,m=t.v,i&&(m.message+=" (While processing: "+JSON.stringify(i)+")"),m;case 5:if(c&&"object"==typeof c){t.n=6;break}throw new Error("Plugin/Preset did not return an object.");case 6:if(!RF(c)){t.n=8;break}return t.d(g([]),7);case 7:throw new Error('You appear to be using a promise as a plugin, which your current version of Babel does not support. If you\'re using a published plugin, you may need to upgrade your @babel/core version. As an alternative, you can prefix the promise with "await". (While processing: '+JSON.stringify(i)+")");case 8:if(!(d.length>0)||a.configured()&&"forever"!==a.mode()){t.n=9;break}throw f="A plugin/preset has external untracked dependencies ("+d[0]+"), but the cache ",a.configured()?f+=" has been configured to never be invalidated. ":f+="has not been configured to be invalidated when the external dependencies change. ",f+="Plugins/presets should configure their cache to be invalidated when the external dependencies change, for example using `api.cache.invalidate(() => statSync(filepath).mtimeMs)` or `api.cache.never()`\n(While processing: "+JSON.stringify(i)+")",new Error(f);case 9:return t.a(2,{value:c,options:s,dirname:o,alias:i,externalDependencies:SF(d)})}},t,null,[[2,4]])})()})},fW=pW(function(e,t){return Object.assign({},ZG(e,t),{assumption:function(t){return e.using(function(e){return e.assumptions[t]})}})}),gW=pW(ZG),mW=OF(function(e,t){var r=e.value,a=e.options,n=e.dirname,s=e.alias,o=e.externalDependencies;return p().m(function e(){var i,d,c,l;return p().w(function(e){for(;;)switch(e.n){case 0:if(i=QG(r),(d=Object.assign({},i)).visitor&&(d.visitor=OO.explode(Object.assign({},d.visitor))),!d.inherits){e.n=2;break}return c={name:void 0,alias:s+"$inherits",value:d.inherits,options:a,dirname:n},e.d(g(hF(yW,function(e){return t.invalidate(function(t){return e(c,t)})})),1);case 1:l=e.v,d.pre=jW(l.pre,d.pre),d.post=jW(l.post,d.post),d.manipulateOptions=jW(l.manipulateOptions,d.manipulateOptions),d.visitor=OO.visitors.merge([l.visitor||{},d.visitor||{}]),l.externalDependencies.length>0&&(o=0===o.length?l.externalDependencies:SF([o,l.externalDependencies]));case 2:return e.a(2,new PF(d,a,s,o))}},e)})()});function yW(e,t){var r;return p().w(function(a){for(;;)switch(a.n){case 0:if(!(e.value instanceof PF)){a.n=2;break}if(!e.options){a.n=1;break}throw new Error("Passed options to an existing Plugin instance will not work.");case 1:return a.a(2,e.value);case 2:return r=mW,a.d(g(fW(e,t)),3);case 3:return a.d(g(r(a.v,t)),4);case 4:return a.a(2,a.v)}},dW)}var hW=function(e){return e&&"function"!=typeof e},bW=function(e,t){if(hW(e.test)||hW(e.include)||hW(e.exclude)){var r=t.name?'"'+t.name+'"':"/* your preset */";throw new Uq(["Preset "+r+" requires a filename to be set when babel is called directly,","```","babel.transformSync(code, { filename: 'file.ts', presets: ["+r+"] });","```","See https://babeljs.io/docs/en/options#filename for more information."].join("\n"))}},vW=function(e,t,r){if(!t.filename){var a,n=e.options;bW(n,r),null==(a=n.overrides)||a.forEach(function(e){return bW(e,r)})}},xW=NF(function(e){var t=e.value,r=e.dirname,a=e.alias,n=e.externalDependencies;return{options:Kq("preset",t),alias:a,dirname:r,externalDependencies:n}});function RW(e,t){var r,a,n,s;return p().w(function(o){for(;;)switch(o.n){case 0:return a=xW,o.d(g(gW(e,t)),1);case 1:return r=a(o.v),vW(r,t,e),o.d(g(yG(r,t)),2);case 2:return n=o.v,s=r.externalDependencies,o.a(2,{chain:n,externalDependencies:s})}},cW)}function jW(e,t){return e?t?function(){for(var r=this,a=arguments.length,n=new Array(a),s=0;s<a;s++)n[s]=arguments[s];var o=e.apply(this,n);return o&&"function"==typeof o.then?o.then(function(){return t.apply(r,n)}):t.apply(this,n)}:e:t}var wW=p().m(AW),EW=aF(oW);function SW(){return Mq(EW.async).apply(void 0,arguments)}function TW(){return Mq(EW.sync).apply(void 0,arguments)}function PW(e,t){if(void 0!==t)Mq(EW.errback)(e,t);else{if("function"!=typeof e)return TW(e);Mq(EW.errback)(void 0,e)}}function AW(e){var t,r;return p().w(function(a){for(;;)switch(a.n){case 0:return a.d(g(lW(e)),1);case 1:return r=a.v,a.a(2,null!=(t=null==r?void 0:r.options)?t:null)}},wW)}var kW=aF(AW);function CW(){return Mq(kW.async).apply(void 0,arguments)}function _W(){return Mq(kW.sync).apply(void 0,arguments)}function IW(e,t){if(void 0!==t)Mq(kW.errback)(e,t);else{if("function"!=typeof e)return _W(e);Mq(kW.errback)(void 0,e)}}var DW=aF(function(e,t){var r=void 0===t?{}:t,a=r.dirname,n=void 0===a?".":a,s=r.type;return p().m(function t(){var r;return p().w(function(t){for(;;)switch(t.n){case 0:return t.d(g(oq(e,bB.resolve(n),{type:s,alias:"programmatic item"})),1);case 1:return r=t.v,t.a(2,dq(r))}},t)})()});function OW(){return Mq(DW.async).apply(void 0,arguments)}function NW(){return Mq(DW.sync).apply(void 0,arguments)}function BW(e,t,r){if(void 0!==r)Mq(DW.errback)(e,t,r);else{if("function"!=typeof t)return NW(e,t);Mq(DW.errback)(e,void 0,r)}}var MW,FW=function(){function e(e,t,r,a){this._map=new Map,this.key=void 0,this.file=void 0,this.opts=void 0,this.cwd=void 0,this.filename=void 0,this.isAsync=void 0,this.key=t,this.file=e,this.opts=r||{},this.cwd=e.opts.cwd,this.filename=e.opts.filename,this.isAsync=a}var t=e.prototype;return t.set=function(e,t){this._map.set(e,t)},t.get=function(e){return this._map.get(e)},t.availableHelper=function(e,t){return this.file.availableHelper(e,t)},t.addHelper=function(e){return this.file.addHelper(e)},t.buildCodeFrameError=function(e,t,r){return this.file.buildCodeFrameError(e,t,r)},o(e)}();FW.prototype.getModuleName=function(){return this.file.getModuleName()},FW.prototype.addImport=function(){this.file.addImport()};var LW={name:"internal.blockHoist",visitor:{Block:{exit:function(e){var t=e.node;t.body=UW(t.body)}},SwitchCase:{exit:function(e){var t=e.node;t.consequent=UW(t.consequent)}}}};function UW(e){for(var t=Math.pow(2,30)-1,r=!1,a=0;a<e.length;a++){var n=GW(e[a]);if(n>t){r=!0;break}t=n}return r?function(e){for(var t=Object.create(null),r=0;r<e.length;r++){var a=e[r],n=GW(a);(t[n]||(t[n]=[])).push(a)}for(var s,o=Object.keys(t).map(function(e){return+e}).sort(function(e,t){return t-e}),d=0,c=i(o);!(s=c()).done;)for(var l,u=i(t[s.value]);!(l=u()).done;){var p=l.value;e[d++]=p}return e}(e.slice()):e}function qW(){return MW||(MW=new PF(Object.assign({},LW,{visitor:OO.explode(LW.visitor)}),{})),MW}function GW(e){var t=null==e?void 0:e._blockHoist;return null==t?1:!0===t?2:t}function WW(e){for(var t,r=e.options,a=r.filename,n=r.cwd,s=r.filenameRelative,o=void 0===s?"string"==typeof a?bB.relative(n,a):"unknown":s,d=r.sourceType,c=void 0===d?"module":d,l=r.inputSourceMap,u=r.sourceMaps,p=void 0===u?!!l:u,f=r.sourceRoot,g=void 0===f?e.options.moduleRoot:f,m=r.sourceFileName,y=void 0===m?bB.basename(o):m,h=r.comments,b=void 0===h||h,v=r.compact,x=void 0===v?"auto":v,R=e.options,j=Object.assign({},R,{parserOpts:Object.assign({sourceType:".mjs"===bB.extname(o)?"module":c,sourceFileName:a,plugins:[]},R.parserOpts),generatorOpts:Object.assign({filename:a,auxiliaryCommentBefore:R.auxiliaryCommentBefore,auxiliaryCommentAfter:R.auxiliaryCommentAfter,retainLines:R.retainLines,comments:b,shouldPrintComment:R.shouldPrintComment,compact:x,minified:R.minified,sourceMaps:!!p,sourceRoot:g,sourceFileName:y},R.generatorOpts)}),w=i(e.passes);!(t=w()).done;)for(var E,S=i(t.value);!(E=S()).done;){var T=E.value;T.manipulateOptions&&T.manipulateOptions(j,j.parserOpts)}return j}var VW={},HW={};!function(e){var t;function r(e,r){(r=r||{}).hasComment&&(e=function(e){return e.split(",").pop()}(e)),"base64"===r.encoding?e=t(e):"uri"===r.encoding&&(e=decodeURIComponent(e)),(r.isJSON||r.encoding)&&(e=JSON.parse(e)),this.sourcemap=e}function a(e){return new r(e,{isJSON:!0})}Object.defineProperty(e,"commentRegex",{get:function(){return/^\s*?\/[\/\*][@#]\s+?sourceMappingURL=data:(((?:application|text)\/json)(?:;charset=([^;,]+?)?)?)?(?:;(base64))?,(.*?)$/gm}}),Object.defineProperty(e,"mapFileCommentRegex",{get:function(){return/(?:\/\/[@#][ \t]+?sourceMappingURL=([^\s'"`]+?)[ \t]*?$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^*]+?)[ \t]*?(?:\*\/){1}[ \t]*?$)/gm}}),t=void 0!==VE?"function"==typeof VE.from?function(e){return VE.from(e,"base64").toString()}:function(e){if("number"==typeof value)throw new TypeError("The value to decode must not be of type number.");return new VE(e,"base64").toString()}:function(e){return decodeURIComponent(escape(atob(e)))},r.prototype.toJSON=function(e){return JSON.stringify(this.sourcemap,null,e)},void 0!==VE?"function"==typeof VE.from?r.prototype.toBase64=function(){var e=this.toJSON();return VE.from(e,"utf8").toString("base64")}:r.prototype.toBase64=function(){var e=this.toJSON();if("number"==typeof e)throw new TypeError("The json to encode must not be of type number.");return new VE(e,"utf8").toString("base64")}:r.prototype.toBase64=function(){var e=this.toJSON();return btoa(unescape(encodeURIComponent(e)))},r.prototype.toURI=function(){var e=this.toJSON();return encodeURIComponent(e)},r.prototype.toComment=function(e){var t,r,a;return null!=e&&"uri"===e.encoding?(t="",r=this.toURI()):(t=";base64",r=this.toBase64()),a="sourceMappingURL=data:application/json;charset=utf-8"+t+","+r,null!=e&&e.multiline?"/*# "+a+" */":"//# "+a},r.prototype.toObject=function(){return JSON.parse(this.toJSON())},r.prototype.addProperty=function(e,t){if(this.sourcemap.hasOwnProperty(e))throw new Error('property "'+e+'" already exists on the sourcemap, use set property instead');return this.setProperty(e,t)},r.prototype.setProperty=function(e,t){return this.sourcemap[e]=t,this},r.prototype.getProperty=function(e){return this.sourcemap[e]},e.fromObject=function(e){return new r(e)},e.fromJSON=function(e){return new r(e,{isJSON:!0})},e.fromURI=function(e){return new r(e,{encoding:"uri"})},e.fromBase64=function(e){return new r(e,{encoding:"base64"})},e.fromComment=function(t){var a;return new r(t=t.replace(/^\/\*/g,"//").replace(/\*\/$/g,""),{encoding:(a=e.commentRegex.exec(t))&&a[4]||"uri",hasComment:!0})},e.fromMapFileComment=function(t,r){if("string"==typeof r)throw new Error("String directory paths are no longer supported with `fromMapFileComment`\nPlease review the Upgrading documentation at https://github.com/thlorenz/convert-source-map#upgrading");var n=function(t,r){var a=e.mapFileCommentRegex.exec(t),n=a[1]||a[2];try{return null!=(t=r(n))&&"function"==typeof t.catch?t.catch(s):t}catch(e){s(e)}function s(e){throw new Error("An error occurred while trying to read the map file at "+n+"\n"+e.stack)}}(t,r);return null!=n&&"function"==typeof n.then?n.then(a):a(n)},e.fromSource=function(t){var r=t.match(e.commentRegex);return r?e.fromComment(r.pop()):null},e.fromMapFileSource=function(t,r){if("string"==typeof r)throw new Error("String directory paths are no longer supported with `fromMapFileSource`\nPlease review the Upgrading documentation at https://github.com/thlorenz/convert-source-map#upgrading");var a=t.match(e.mapFileCommentRegex);return a?e.fromMapFileComment(a.pop(),r):null},e.removeComments=function(t){return t.replace(e.commentRegex,"")},e.removeMapFileComments=function(t){return t.replace(e.mapFileCommentRegex,"")},e.generateMapFileComment=function(e,t){var r="sourceMappingURL="+e;return t&&t.multiline?"/*# "+r+" */":"//# "+r}}(HW);var zW={asyncDoExpressions:{syntax:{name:"@babel/plugin-syntax-async-do-expressions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-do-expressions"}},decimal:{syntax:{name:"@babel/plugin-syntax-decimal",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decimal"}},decorators:{syntax:{name:"@babel/plugin-syntax-decorators",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-decorators"},transform:{name:"@babel/plugin-proposal-decorators",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-decorators"}},doExpressions:{syntax:{name:"@babel/plugin-syntax-do-expressions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-do-expressions"},transform:{name:"@babel/plugin-proposal-do-expressions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-do-expressions"}},exportDefaultFrom:{syntax:{name:"@babel/plugin-syntax-export-default-from",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-default-from"},transform:{name:"@babel/plugin-proposal-export-default-from",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-export-default-from"}},flow:{syntax:{name:"@babel/plugin-syntax-flow",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-flow"},transform:{name:"@babel/preset-flow",url:"https://github.com/babel/babel/tree/main/packages/babel-preset-flow"}},functionBind:{syntax:{name:"@babel/plugin-syntax-function-bind",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-bind"},transform:{name:"@babel/plugin-proposal-function-bind",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-bind"}},functionSent:{syntax:{name:"@babel/plugin-syntax-function-sent",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-function-sent"},transform:{name:"@babel/plugin-proposal-function-sent",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-function-sent"}},jsx:{syntax:{name:"@babel/plugin-syntax-jsx",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-jsx"},transform:{name:"@babel/preset-react",url:"https://github.com/babel/babel/tree/main/packages/babel-preset-react"}},pipelineOperator:{syntax:{name:"@babel/plugin-syntax-pipeline-operator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-pipeline-operator"},transform:{name:"@babel/plugin-proposal-pipeline-operator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-pipeline-operator"}},recordAndTuple:{syntax:{name:"@babel/plugin-syntax-record-and-tuple",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-record-and-tuple"}},throwExpressions:{syntax:{name:"@babel/plugin-syntax-throw-expressions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-throw-expressions"},transform:{name:"@babel/plugin-proposal-throw-expressions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-proposal-throw-expressions"}},typescript:{syntax:{name:"@babel/plugin-syntax-typescript",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-typescript"},transform:{name:"@babel/preset-typescript",url:"https://github.com/babel/babel/tree/main/packages/babel-preset-typescript"}}};Object.assign(zW,{asyncGenerators:{syntax:{name:"@babel/plugin-syntax-async-generators",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-async-generators"},transform:{name:"@babel/plugin-transform-async-generator-functions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-async-generator-functions"}},classProperties:{syntax:{name:"@babel/plugin-syntax-class-properties",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties"},transform:{name:"@babel/plugin-transform-class-properties",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties"}},classPrivateProperties:{syntax:{name:"@babel/plugin-syntax-class-properties",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties"},transform:{name:"@babel/plugin-transform-class-properties",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-class-properties"}},classPrivateMethods:{syntax:{name:"@babel/plugin-syntax-class-properties",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-class-properties"},transform:{name:"@babel/plugin-transform-private-methods",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-methods"}},classStaticBlock:{syntax:{name:"@babel/plugin-syntax-class-static-block",url:"https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-syntax-class-static-block"},transform:{name:"@babel/plugin-transform-class-static-block",url:"https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-class-static-block"}},dynamicImport:{syntax:{name:"@babel/plugin-syntax-dynamic-import",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-dynamic-import"}},exportNamespaceFrom:{syntax:{name:"@babel/plugin-syntax-export-namespace-from",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-export-namespace-from"},transform:{name:"@babel/plugin-transform-export-namespace-from",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-export-namespace-from"}},importAssertions:{syntax:{name:"@babel/plugin-syntax-import-assertions",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-assertions"}},importAttributes:{syntax:{name:"@babel/plugin-syntax-import-attributes",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-attributes"}},importMeta:{syntax:{name:"@babel/plugin-syntax-import-meta",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-import-meta"}},logicalAssignment:{syntax:{name:"@babel/plugin-syntax-logical-assignment-operators",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-logical-assignment-operators"},transform:{name:"@babel/plugin-transform-logical-assignment-operators",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-logical-assignment-operators"}},moduleStringNames:{syntax:{name:"@babel/plugin-syntax-module-string-names",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-module-string-names"}},numericSeparator:{syntax:{name:"@babel/plugin-syntax-numeric-separator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-numeric-separator"},transform:{name:"@babel/plugin-transform-numeric-separator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-numeric-separator"}},nullishCoalescingOperator:{syntax:{name:"@babel/plugin-syntax-nullish-coalescing-operator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-nullish-coalescing-operator"},transform:{name:"@babel/plugin-transform-nullish-coalescing-operator",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-nullish-coalescing-opearator"}},objectRestSpread:{syntax:{name:"@babel/plugin-syntax-object-rest-spread",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-object-rest-spread"},transform:{name:"@babel/plugin-transform-object-rest-spread",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-object-rest-spread"}},optionalCatchBinding:{syntax:{name:"@babel/plugin-syntax-optional-catch-binding",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-catch-binding"},transform:{name:"@babel/plugin-transform-optional-catch-binding",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-catch-binding"}},optionalChaining:{syntax:{name:"@babel/plugin-syntax-optional-chaining",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-optional-chaining"},transform:{name:"@babel/plugin-transform-optional-chaining",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-optional-chaining"}},privateIn:{syntax:{name:"@babel/plugin-syntax-private-property-in-object",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-syntax-private-property-in-object"},transform:{name:"@babel/plugin-transform-private-property-in-object",url:"https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-private-property-in-object"}},regexpUnicodeSets:{syntax:{name:"@babel/plugin-syntax-unicode-sets-regex",url:"https://github.com/babel/babel/blob/main/packages/babel-plugin-syntax-unicode-sets-regex/README.md"},transform:{name:"@babel/plugin-transform-unicode-sets-regex",url:"https://github.com/babel/babel/blob/main/packages/babel-plugin-proposalunicode-sets-regex/README.md"}}});var KW=function(e){return e.name+" ("+e.url+")"};function XW(e,t,r,a){var n="Support for the experimental syntax '"+e+"' isn't currently enabled ("+t.line+":"+(t.column+1)+"):\n\n"+r,s=zW[e];if(s){var o=s.syntax,i=s.transform;if(o){var d=KW(o);if(i)n+="\n\nAdd "+KW(i)+" to the '"+(i.name.startsWith("@babel/plugin")?"plugins":"presets")+"' section of your Babel config to enable transformation.\nIf you want to leave it as-is, add "+d+" to the 'plugins' section to enable parsing.";else n+="\n\nAdd "+d+" to the 'plugins' section of your Babel config to enable parsing."}}return n+="\n\nIf you already added the plugin for this syntax to your config, it's possible that your config isn't being loaded.\nYou can re-run Babel with the BABEL_SHOW_CONFIG_FOR environment variable to show the loaded configuration:\n\tnpx cross-env BABEL_SHOW_CONFIG_FOR="+("unknown"===a?"<name of the input file>":a)+" <your build command>\nSee https://babeljs.io/docs/configuration#print-effective-configs for more info.\n"}function JW(e,t,r){var a=t.parserOpts,n=t.highlightCode,s=void 0===n||n,o=t.filename,d=void 0===o?"unknown":o;return p().m(function t(){var n,o,c,l,u,f,m,y,h,b,v,x,R,j,w;return p().w(function(t){for(;;)switch(t.p=t.n){case 0:for(t.p=0,n=[],o=i(e);!(c=o()).done;)for(l=c.value,u=i(l);!(f=u()).done;)m=f.value,(y=m.parserOverride)&&void 0!==(h=y(r,a,aR))&&n.push(h);if(0!==n.length){t.n=1;break}return t.a(2,aR(r,a));case 1:if(1!==n.length){t.n=4;break}return t.d(g([]),2);case 2:if("function"!=typeof n[0].then){t.n=3;break}throw new Error("You appear to be using an async parser plugin, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.");case 3:return t.a(2,n[0]);case 4:throw new Error("More than one plugin attempted to override parsing.");case 5:throw t.p=5,"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED"===(w=t.v).code&&(w.message+="\nConsider renaming the file to '.mjs', or setting sourceType:module or sourceType:unambiguous in your Babel config for this file."),b=null==a?void 0:a.startLine,null!=(v=null==a?void 0:a.startColumn)&&(r=" ".repeat(v)+r),x=w.loc,R=w.missingPlugin,x&&(j=_R(r,{start:{line:x.line,column:x.column+1}},{highlightCode:s,startLine:b}),w.message=R?d+": "+XW(R[0],x,j,d):d+": "+w.message+"\n\n"+j,w.code="BABEL_PARSE_ERROR"),w;case 6:return t.a(2)}},t,null,[[0,5]])})()}function YW(e,t,r){if(null!==e){if(t.has(e))return t.get(e);var a;if(Array.isArray(e)){a=new Array(e.length),t.set(e,a);for(var n=0;n<e.length;n++)a[n]="object"!=typeof e[n]?e[n]:YW(e[n],t)}else{a={},t.set(e,a);for(var s=Object.keys(e),o=0;o<s.length;o++){var i=s[o];a[i]="object"!=typeof e[i]?e[i]:YW(e[i],t)}}return a}return e}function $W(e){if("object"!=typeof e)return e;try{return YW(e,new Map)}catch(t){return structuredClone(e)}}var QW=p().m(nV),ZW=js,eV=Ry,tV=_j("babel:transform:file"),rV=/^[@#]\s+sourceMappingURL=data:(?:application|text)\/json;(?:charset[:=]\S+?;)?base64,.*$/,aV=/^[@#][ \t]+sourceMappingURL=([^\s'"`]+)[ \t]*$/;function nV(e,t,r,a){var n,s,o,i,d;return p().w(function(c){for(;;)switch(c.n){case 0:if(r=""+(r||""),!a){c.n=3;break}if("Program"!==a.type){c.n=1;break}a=ZW(a,[],[]),c.n=2;break;case 1:if("File"===a.type){c.n=2;break}throw new Error("AST root must be a Program or File node");case 2:t.cloneInputAst&&(a=$W(a)),c.n=5;break;case 3:return c.d(g(JW(e,t,r)),4);case 4:a=c.v;case 5:if(n=null,!1!==t.inputSourceMap){if("object"==typeof t.inputSourceMap&&(n=HW.fromObject(t.inputSourceMap)),!n&&(s=oV(rV,a)))try{n=HW.fromComment("//"+s)}catch(e){tV("discarding unknown inline input sourcemap")}if(!n)if(o=oV(aV,a),"string"==typeof t.filename&&o)try{i=aV.exec(o),d=VW.readFileSync(bB.resolve(bB.dirname(t.filename),i[1]),"utf8"),n=HW.fromJSON(d)}catch(e){tV("discarding unknown file input sourcemap",e)}else o&&tV("discarding un-loadable file input sourcemap")}return c.a(2,new lM(t,{code:r,ast:a,inputMap:n}))}},QW)}function sV(e,t,r){return t&&(t=t.filter(function(t){var a=t.value;return!e.test(a)||(r=a,!1)})),[t,r]}function oV(e,t){var r=null;return eV(t,function(t){var a=y(sV(e,t.leadingComments,r),2);t.leadingComments=a[0],r=a[1];var n=y(sV(e,t.innerComments,r),2);t.innerComments=n[0],r=n[1];var s=y(sV(e,t.trailingComments,r),2);t.trailingComments=s[0],r=s[1]}),r}var iV=cV("",-1,-1,"",null,!1),dV=[];function cV(e,t,r,a,n,s){return{source:e,line:t,column:r,name:a,content:n,ignore:s}}function lV(e,t,r,a,n){return{map:e,sources:t,source:r,content:a,ignore:n}}function uV(e,t){return lV(e,t,"",null,!1)}function pV(e,t,r,a){if(!e.map)return cV(e.source,t,r,a,e.content,e.ignore);var n=function(e,t,r){var a=lT(e);if(t>=a.length)return null;var n=a[t],s=fT(n,e._decodedMemo,t,r,1);return-1===s?null:n[s]}(e.map,t,r);return null==n?null:1===n.length?iV:pV(e.sources[n[1]],n[2],n[3],5===n.length?e.map.names[n[4]]:a)}function fV(e,t){for(var r=function(e){return Array.isArray(e)?e:[e]}(e).map(function(e){return new cT(e,"")}),a=r.pop(),n=0;n<r.length;n++)if(r[n].sources.length>1)throw new Error("Transformation map "+n+" must have exactly one source file.\nDid you specify these with the most recent transformation maps first?");for(var s=gV(a,t,"",0),o=r.length-1;o>=0;o--)s=uV(r[o],[s]);return s}function gV(e,t,r,a){var n=e.resolvedSources,s=e.sourcesContent,o=e.ignoreList,i=a+1,d=n.map(function(e,a){var n={importer:r,depth:i,source:e||"",content:void 0,ignore:void 0},d=t(n.source,n),c=n.source,l=n.content,u=n.ignore;return d?gV(new cT(d,c),t,c,i):function(e,t,r){return lV(null,dV,e,t,r)}(c,void 0!==l?l:s?s[a]:null,void 0!==u?u:!!o&&o.includes(a))});return uV(e,d)}var mV=function(){function e(e,t){var r=t.decodedMappings?RT(e):jT(e);this.version=r.version,this.file=r.file,this.mappings=r.mappings,this.names=r.names,this.ignoreList=r.ignoreList,this.sourceRoot=r.sourceRoot,this.sources=r.sources,t.excludeContent||(this.sourcesContent=r.sourcesContent)}return e.prototype.toString=function(){return JSON.stringify(this)},o(e)}();function yV(e,t,r){var a={excludeContent:!!r,decodedMappings:!1},n=fV(e,t);return new mV(function(e){for(var t=new yT({file:e.map.file}),r=e.sources,a=e.map,n=a.names,s=lT(a),o=0;o<s.length;o++)for(var i=s[o],d=0;d<i.length;d++){var c=i[d],l=c[0],u=iV;if(1===c.length||null!=(u=pV(r[c[1]],c[2],c[3],5===c.length?n[c[4]]:""))){var p=u,f=p.column,g=p.line,m=p.name,y=p.content,h=p.source,b=p.ignore;hT(t,o,l,h,g,f,m),h&&null!=y&&vT(t,h,y),b&&xT(t,h)}}return t}(n),a)}function hV(e){return Object.assign({},e,{sourceRoot:null})}function bV(e,t){var r=t.opts,a=t.ast,n=t.code,s=t.inputMap,o=r.generatorOpts;o.inputSourceMap=null==s?void 0:s.toObject();for(var d,c,l=[],u=i(e);!(d=u()).done;)for(var p,f=i(d.value);!(p=f()).done;){var g=p.value.generatorOverride;if(g){var m=g(a,o,n,bk);void 0!==m&&l.push(m)}}if(0===l.length)c=bk(a,o,n);else{if(1!==l.length)throw new Error("More than one plugin attempted to override codegen.");if("function"==typeof(c=l[0]).then)throw new Error("You appear to be using an async codegen plugin, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.")}var y=c,h=y.code,b=y.decodedMap,v=void 0===b?c.map:b;return c.__mergedMap?v=Object.assign({},c.map):v&&(v=s?function(e,t,r){var a=r.replace(/\\/g,"/"),n=!1,s=yV(hV(t),function(t,r){return t!==a||n?null:(n=!0,r.source="",hV(e))});return"string"==typeof e.sourceRoot&&(s.sourceRoot=e.sourceRoot),Object.assign({},s)}(s.toObject(),v,o.sourceFileName):c.map),"inline"!==r.sourceMaps&&"both"!==r.sourceMaps||(h+="\n"+HW.fromObject(v).toComment()),"inline"===r.sourceMaps&&(v=null),{outputCode:h,outputMap:v}}var vV=p().m(RV),xV=p().m(jV);function RV(e,t,r){var a,n,s,o,i,d,c,l,u;return p().w(function(p){for(;;)switch(p.p=p.n){case 0:return p.d(g(nV(e.passes,WW(e),t,r)),1);case 1:return a=p.v,n=a.opts,p.p=2,p.d(g(jV(a,e.passes)),3);case 3:p.n=5;break;case 4:throw p.p=4,(l=p.v).message=(null!=(s=n.filename)?s:"unknown file")+": "+l.message,l.code||(l.code="BABEL_TRANSFORM_ERROR"),l;case 5:p.p=5,!1!==n.code&&(d=bV(e.passes,a),o=d.outputCode,i=d.outputMap),p.n=7;break;case 6:throw p.p=6,(u=p.v).message=(null!=(c=n.filename)?c:"unknown file")+": "+u.message,u.code||(u.code="BABEL_GENERATE_ERROR"),u;case 7:return p.a(2,{metadata:a.metadata,options:n,ast:!0===n.ast?a.ast:null,code:void 0===o?null:o,map:void 0===i?null:i,sourceType:a.ast.program.sourceType,externalDependencies:TF(e.externalDependencies)})}},vV,null,[[5,6],[2,4]])}function jV(e,t){var r,a,n,s,o,d,c,l,u,f,m,h,b,v,x,R,j,w,E,S,T,P,A,k;return p().w(function(p){for(;;)switch(p.n){case 0:return p.d(g(fF()),1);case 1:r=p.v,a=i(t);case 2:if((n=a()).done){p.n=9;break}for(s=n.value,o=[],d=[],c=[],l=i(s.concat([qW()]));!(u=l()).done;)f=u.value,m=new FW(e,f.key,f.options,r),o.push([f,m]),d.push(m),c.push(f.visitor);h=0,b=o;case 3:if(!(h<b.length)){p.n=5;break}if(v=y(b[h],2),x=v[0],R=v[1],!x.pre){p.n=4;break}return j=gF(x.pre,"You appear to be using an async plugin/preset, but Babel has been called synchronously"),p.d(g(j.call(R,e)),4);case 4:h++,p.n=3;break;case 5:w=OO.visitors.merge(c,d,e.opts.wrapPluginVisitorMethod),OO(e.ast,w,e.scope),E=0,S=o;case 6:if(!(E<S.length)){p.n=8;break}if(T=y(S[E],2),P=T[0],A=T[1],!P.post){p.n=7;break}return k=gF(P.post,"You appear to be using an async plugin/preset, but Babel has been called synchronously"),p.d(g(k.call(A,e)),7);case 7:E++,p.n=6;break;case 8:p.n=2;break;case 9:return p.a(2)}},xV)}var wV=aF(p().m(function e(t,r){var a;return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(lW(r)),1);case 1:if(null!==(a=e.v)){e.n=2;break}return e.a(2,null);case 2:return e.d(g(RV(a,t)),3);case 3:return e.a(2,e.v)}},e)})),EV=function(e,t,r){var a,n;if("function"==typeof t?(n=t,a=void 0):(a=t,n=r),void 0===n)return Mq(wV.sync)(e,a);Mq(wV.errback)(e,a,n)};function SV(){return Mq(wV.sync).apply(void 0,arguments)}function TV(){return Mq(wV.async).apply(void 0,arguments)}var PV=function(e,t,r){"function"==typeof t&&(r=t),r(new Error("Transforming files is not supported in browsers"),null)};function AV(){throw new Error("Transforming files is not supported in browsers")}function kV(){return Promise.reject(new Error("Transforming files is not supported in browsers"))}var CV=aF(p().m(function e(t,r,a){var n;return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(lW(a)),1);case 1:if(null!==(n=e.v)){e.n=2;break}return e.a(2,null);case 2:if(t){e.n=3;break}throw new Error("No AST given");case 3:return e.d(g(RV(n,r,t)),4);case 4:return e.a(2,e.v)}},e)})),_V=function(e,t,r,a){var n,s;if("function"==typeof r?(s=r,n=void 0):(n=r,s=a),void 0===s)return Mq(CV.sync)(e,t,n);Mq(CV.errback)(e,t,n,s)};function IV(){return Mq(CV.sync).apply(void 0,arguments)}function DV(){return Mq(CV.async).apply(void 0,arguments)}var OV=aF(p().m(function e(t,r){var a;return p().w(function(e){for(;;)switch(e.n){case 0:return e.d(g(lW(r)),1);case 1:if(null!==(a=e.v)){e.n=2;break}return e.a(2,null);case 2:return e.d(g(JW(a.passes,WW(a),t)),3);case 3:return e.a(2,e.v)}},e)})),NV=function(e,t,r){if("function"==typeof t&&(r=t,t=void 0),void 0===r)return Mq(OV.sync)(e,t);Mq(OV.errback)(e,t,r)};function BV(){return Mq(OV.sync).apply(void 0,arguments)}function MV(){return Mq(OV.async).apply(void 0,arguments)}var FV="7.29.0",LV=function(e,t){return null.filepath},UV=function(e,t){return null.filepath},qV=Object.freeze([".js",".jsx",".es6",".es",".mjs",".cjs"]);function GV(){var e;return(e=function(){return{}}).default=e}function WV(e){return e}e.OptionManager=function(){function e(){}return e.prototype.init=function(e){return _W(e)},o(e)}(),e.Plugin=function(e){throw new Error("The ("+e+") Babel 5 plugin is being run with an unsupported Babel version.")};var VV=function(e,t){e.assertVersion("*");var r=t.helperVersion,a=void 0===r?"7.0.0-beta.0":r,n=t.whitelist,s=void 0!==n&&n;if(!1!==s&&(!Array.isArray(s)||s.some(function(e){return"string"!=typeof e})))throw new Error(".whitelist must be undefined, false, or an array of strings");var o=s?new Set(s):null;return{name:"external-helpers",pre:function(e){e.set("helperGenerator",function(t){if((!e.availableHelper||e.availableHelper(t,a))&&(!o||o.has(t)))return Bs(Ps("babelHelpers"),Ps(t))})}}},HV={},zV=cR(Object.freeze({__proto__:null,declare:WV,declarePreset:WV}));Object.defineProperty(HV,"__esModule",{value:!0}),HV.default=void 0;var KV=zV;HV.default=(0,KV.declare)(function(e){return e.assertVersion(7),{name:"syntax-decimal",manipulateOptions:function(e,t){t.plugins.push("decimal")}}});var XV=function(e,t){e.assertVersion("*");var r=t.version,a=t.legacy;if(void 0!==a){if("boolean"!=typeof a)throw new Error(".legacy must be a boolean.");if(void 0!==r)throw new Error("You can either use the .legacy or the .version option, not both.")}if(void 0===r)r=a?"legacy":"2018-09";else if("2023-11"!==r&&"2023-05"!==r&&"2023-01"!==r&&"2022-03"!==r&&"2021-12"!==r&&"2018-09"!==r&&"legacy"!==r)throw new Error("Unsupported decorators version: "+r);var n=t.decoratorsBeforeExport;if(void 0===n){if("2021-12"===r||"2022-03"===r)n=!1;else if("2018-09"===r)throw new Error("The decorators plugin, when .version is '2018-09' or not specified, requires a 'decoratorsBeforeExport' option, whose value must be a boolean.")}else{if("legacy"===r||"2022-03"===r||"2023-01"===r)throw new Error("'decoratorsBeforeExport' can't be used with "+r+" decorators.");if("boolean"!=typeof n)throw new Error("'decoratorsBeforeExport' must be a boolean.")}return{name:"syntax-decorators",manipulateOptions:function(e,t){var a=e.generatorOpts;"legacy"===r?t.plugins.push("decorators-legacy"):"2023-01"===r||"2023-05"===r||"2023-11"===r?t.plugins.push(["decorators",{allowCallParenthesized:!1}],"decoratorAutoAccessors"):"2022-03"===r?t.plugins.push(["decorators",{decoratorsBeforeExport:!1,allowCallParenthesized:!1}],"decoratorAutoAccessors"):"2021-12"===r?(t.plugins.push(["decorators",{decoratorsBeforeExport:n}],"decoratorAutoAccessors"),a.decoratorsBeforeExport=n):"2018-09"===r&&(t.plugins.push(["decorators",{decoratorsBeforeExport:n}]),a.decoratorsBeforeExport=n)}}},JV=function(e){return e.assertVersion("*"),{name:"syntax-destructuring-private",manipulateOptions:function(e,t){t.plugins.push("destructuringPrivate")}}},YV=function(e){return e.assertVersion("*"),{name:"syntax-do-expressions",manipulateOptions:function(e,t){t.plugins.push("doExpressions")}}},$V=function(e){return e.assertVersion("*"),{name:"syntax-explicit-resource-management",manipulateOptions:function(e,t){t.plugins.push("explicitResourceManagement")}}},QV=function(e){return e.assertVersion("*"),{name:"syntax-export-default-from",manipulateOptions:function(e,t){t.plugins.push("exportDefaultFrom")}}},ZV=function(e,t){e.assertVersion("*");var r=t.all,a=t.enums;if("boolean"!=typeof r&&void 0!==r)throw new Error(".all must be a boolean, or undefined");return!1===a&&console.warn("The .enums option has been removed and it's now always enabled."),{name:"syntax-flow",manipulateOptions:function(e,t){t.plugins.some(function(e){return"typescript"===(Array.isArray(e)?e[0]:e)})||t.plugins.push(["flow",{all:r,enums:a}])}}},eH=function(e){return e.assertVersion("*"),{name:"syntax-function-bind",manipulateOptions:function(e,t){t.plugins.push("functionBind")}}},tH=function(e){return e.assertVersion("*"),{name:"syntax-function-sent",manipulateOptions:function(e,t){t.plugins.push("functionSent")}}},rH=function(e){e.assertVersion("*");var t=function(e,t){return"plugin"===t||Array.isArray(e)&&"plugin"===e[0]},r=function(e){return Array.isArray(e)&&e.length>1?e[1]:{}};return{name:"syntax-import-assertions",manipulateOptions:function(e,a){for(var n=a.plugins,s=0;s<n.length;s++){var o=n[s];if(t(o,"deprecatedImportAssert"))return;if(t(o,"importAttributes"))return void n.splice(s,1,"deprecatedImportAssert",["importAttributes",Object.assign({},r(o),{deprecatedAssertSyntax:!0})])}n.push("importAssertions")}}},aH=function(e,t){var r=t.deprecatedAssertSyntax;if(e.assertVersion("*"),null!=r&&"boolean"!=typeof r)throw new Error("'deprecatedAssertSyntax' must be a boolean, if specified.");return{name:"syntax-import-attributes",manipulateOptions:function(e){var t=e.parserOpts,a=e.generatorOpts;null!=a.importAttributesKeyword||(a.importAttributesKeyword="with");var n=t.plugins.indexOf("importAssertions");-1!==n&&(t.plugins.splice(n,1),r=!0),r?t.plugins.push("deprecatedImportAssert",["importAttributes",{deprecatedAssertSyntax:!0}]):t.plugins.push("importAttributes")}}},nH={};Object.defineProperty(nH,"__esModule",{value:!0}),nH.default=void 0;var sH=zV;nH.default=(0,sH.declare)(function(e){return e.assertVersion(7),{name:"syntax-import-reflection",manipulateOptions:function(e,t){t.plugins.push("importReflection")}}});var oH=function(e){return e.assertVersion("*"),{name:"syntax-jsx",manipulateOptions:function(e,t){t.plugins.some(function(e){return"typescript"===(Array.isArray(e)?e[0]:e)})||t.plugins.push("jsx")}}},iH=function(e){return e.assertVersion("*"),{name:"syntax-module-blocks",manipulateOptions:function(e,t){t.plugins.push("moduleBlocks")}}},dH=new cU("@babel/plugin-syntax-optional-chaining-assign"),cH=function(e,t){e.assertVersion("*"),dH.validateTopLevelOptions(t,{version:"version"});var r=t.version;return dH.invariant("2023-07"===r,"'.version' option required, representing the last proposal update. Currently, the only supported value is '2023-07'."),{name:"syntax-optional-chaining-assign",manipulateOptions:function(e,t){t.plugins.push(["optionalChainingAssign",{version:r}])}}},lH=["minimal","fsharp","hack","smart"],uH=["^^","@@","^","%","#"],pH="https://babeljs.io/docs/en/babel-plugin-proposal-pipeline-operator",fH=function(e,t){var r=t.proposal,a=t.topicToken;if(e.assertVersion("*"),"string"!=typeof r||!lH.includes(r)){var n=lH.map(function(e){return'"'+e+'"'}).join(", ");throw new Error('The pipeline plugin requires a "proposal" option. "proposal" must be one of: '+n+". See <"+pH+">.")}if("hack"===r&&!uH.includes(a)){var s=uH.map(function(e){return'"'+e+'"'}).join(", ");throw new Error('The pipeline plugin in "proposal": "hack" mode also requires a "topicToken" option. "topicToken" must be one of: '+s+". See <"+pH+">.")}return{name:"syntax-pipeline-operator",manipulateOptions:function(e,t){t.plugins.push(["pipelineOperator",{proposal:r,topicToken:a}]),e.generatorOpts.topicToken=a}}},gH=function(e,t){var r=[];e.forEach(function(e,a){(Array.isArray(e)?e[0]:e)===t&&r.unshift(a)});for(var a=0,n=r;a<n.length;a++){var s=n[a];e.splice(s,1)}},mH=function(e,t){e.assertVersion("*");var r=t.disallowAmbiguousJSXLike,a=t.dts,n=t.isTSX;return{name:"syntax-typescript",manipulateOptions:function(e,t){var s=t.plugins;gH(s,"flow"),gH(s,"jsx"),s.push("objectRestSpread","classProperties"),n&&s.push("jsx"),t.plugins.push(["typescript",{disallowAmbiguousJSXLike:r,dts:a}])}}},yH=ps,hH=gs,bH=Ts,vH=Ce,xH=se,RH=Re,jH=Ws,wH=Z,EH=Bs,SH=Ps,TH=Xs,PH=ur,AH=pj.expression("\n (function () {\n var REF = FUNCTION;\n return function NAME(PARAMS) {\n return REF.apply(this, arguments);\n };\n })()\n"),kH=pj.expression("\n (function () {\n var REF = FUNCTION;\n function NAME(PARAMS) {\n return REF.apply(this, arguments);\n }\n return NAME;\n })()\n"),CH=pj.statements("\n function NAME(PARAMS) { return REF.apply(this, arguments); }\n function REF() {\n REF = FUNCTION;\n return REF.apply(this, arguments);\n }\n");function _H(e,t,r,a){if(void 0===r&&(r=!0),void 0===a&&(a=!1),e.isMethod())!function(e,t,r){var a=e.node,n=a.body,s=[],o=a.params.some(function(e){return PH(e)});if(o&&(s=a.params,a.params=[],!r))for(var d,c=i(s);!(d=c()).done;){var l=d.value;if(vH(l)||RH(l))break;a.params.push(e.scope.generateUidIdentifier("x"))}var u=bH(null,s,yH(n.body),!0);o?(n.body=[jH(hH(EH(hH(t,[u]),SH("apply")),[TH(),SH("arguments")]))],e.get("body.body.0.argument.callee.object.arguments.0").unwrapFunctionEnvironment()):(n.body=[jH(hH(hH(t,[u]),[]))],e.get("body.body.0.argument.callee.arguments.0").unwrapFunctionEnvironment()),a.async=!1,a.generator=!1}(e,t,a);else{var n="id"in e.node&&!!e.node.id;(function(e,t,r,a,n){var s,o,d=e,c=null,l=e.node.params;s=d.isArrowFunctionExpression()?(d=null!=(o=d.arrowFunctionToExpression({noNewArrows:r}))?o:d).node:d.node;var u=xH(s),p=s;wH(s)||(c=s.id,s.id=null,s.type="FunctionExpression",p=hH(t,[s]));for(var f,g=[],m=i(l);!(f=m()).done;){var y=f.value;if(vH(y)||RH(y))break;g.push(d.scope.generateUidIdentifier("x"))}var h={NAME:c||null,REF:d.scope.generateUidIdentifier(n?c.name:"ref"),FUNCTION:p,PARAMS:g};if(u){var b=CH(h);d.replaceWith(b[0]),d.insertAfter(b[1])}else{var v;v=n?kH(h):AH(h),c||!a&&g.length?d.replaceWith(v):d.replaceWith(p)}})(e=e.ensureFunctionName(!1),t,r,a,n)}}var IH=lm;function DH(e){var t=e.node||e;(function(e){var t=e.leadingComments;return!!t&&t.some(function(e){return/[@#]__PURE__/.test(e.value)})})(t)||IH(t,"leading","#__PURE__")}var OH=gs,NH=sm,BH=ie,MH=Se,FH=Ao,LH=hw({ArrowFunctionExpression:function(e){e.skip()},AwaitExpression:function(e,t){var r=t.wrapAwait,a=e.get("argument");e.replaceWith(FH(r?OH(NH(r),[a.node]):a.node))}});function UH(e,t,r,a){e.traverse(LH,{wrapAwait:t.wrapAwait});var n=function(e){if(e.parentPath.isCallExpression({callee:e.node}))return!0;var t=e.parentPath;if(t.isMemberExpression()){if(BH(t.node.property,{name:"bind"})){var r=t.parentPath;return r.isCallExpression()&&1===r.node.arguments.length&&MH(r.node.arguments[0])&&r.parentPath.isCallExpression({callee:r.node})}return!0}return!1}(e);e.node.async=!1,e.node.generator=!0,_H(e,NH(t.wrapAsync),r,a),e.isObjectMethod()||e.isClassMethod()||e.parentPath.isObjectProperty()||e.parentPath.isClassProperty()||n||!e.isExpression()||DH(e)}var qH=pj("\n async function wrapper() {\n var ITERATOR_ABRUPT_COMPLETION = false;\n var ITERATOR_HAD_ERROR_KEY = false;\n var ITERATOR_ERROR_KEY;\n try {\n for (\n var ITERATOR_KEY = GET_ITERATOR(OBJECT), STEP_KEY;\n ITERATOR_ABRUPT_COMPLETION = !(STEP_KEY = await ITERATOR_KEY.next()).done;\n ITERATOR_ABRUPT_COMPLETION = false\n ) {\n }\n } catch (err) {\n ITERATOR_HAD_ERROR_KEY = true;\n ITERATOR_ERROR_KEY = err;\n } finally {\n try {\n if (ITERATOR_ABRUPT_COMPLETION && ITERATOR_KEY.return != null) {\n await ITERATOR_KEY.return();\n }\n } finally {\n if (ITERATOR_HAD_ERROR_KEY) {\n throw ITERATOR_ERROR_KEY;\n }\n }\n }\n }\n");var GH=function(e){e.assertVersion("*");var t=hw({ArrowFunctionExpression:function(e){e.skip()},YieldExpression:function(e,t){var r=e.node;if(r.delegate){var a=gs(t.addHelper("asyncIterator"),[r.argument]);r.argument=gs(t.addHelper("asyncGeneratorDelegate"),[a,t.addHelper("awaitAsyncGenerator")])}}}),r=hw({ArrowFunctionExpression:function(e){e.skip()},ForOfStatement:function(e,t){var r=t.file,a=e.node;if(a.await){var n,s=function(e,t){var r,a=t.getAsyncIterator,n=e.node,s=e.scope,o=e.parent,i=s.generateUidIdentifier("step"),d=Bs(i,Ps("value")),c=n.left;ie(c)||ur(c)||me(c)?r=Rs(is("=",c,d)):Ae(c)&&(r=Zs(c.kind,[eo(c.declarations[0].id,d)]));var l=qH({ITERATOR_HAD_ERROR_KEY:s.generateUidIdentifier("didIteratorError"),ITERATOR_ABRUPT_COMPLETION:s.generateUidIdentifier("iteratorAbruptCompletion"),ITERATOR_ERROR_KEY:s.generateUidIdentifier("iteratorError"),ITERATOR_KEY:s.generateUidIdentifier("iterator"),GET_ITERATOR:a,OBJECT:n.right,STEP_KEY:sm(i)});l=l.body.body;var u=ce(o),p=l[3].block.body,f=p[0];return u&&(p[0]=ks(o.label,f)),{replaceParent:u,node:l,declar:r,loop:f}}(e,{getAsyncIterator:r.addHelper("asyncIterator")}),o=s.declar,i=s.loop,d=i.body;if(e.ensureBlock(),o)d.body.push(o),e.node.body.body.length&&d.body.push(ps(e.node.body.body));else(n=d.body).push.apply(n,b(e.node.body.body));Cy(i,a),Cy(i.body,a.body);var c=s.replaceParent?e.parentPath:e;c.replaceWithMultiple(s.node),c.scope.parent.crawl()}}}),a={Function:function(e,a){e.node.async&&(e.traverse(r,a),e.node.generator&&(e.traverse(t,a),e.setData("@babel/plugin-transform-async-generator-functions/async_generator_function",!0),UH(e,{wrapAsync:a.addHelper("wrapAsyncGenerator"),wrapAwait:a.addHelper("awaitAsyncGenerator")})))}};return{name:"transform-async-generator-functions",manipulateOptions:function(e,t){return t.plugins.push("asyncGenerators")},visitor:{Program:function(e,t){e.traverse(a,t)}}}};var WH=(void z.env.BABEL_8_BREAKING,FO());function VH(e){var t=e,r=t.node,a=t.parentPath;if(a.isLogicalExpression()){var n=a.node,s=n.operator,o=n.right;if("&&"===s||"||"===s||"??"===s&&r===o)return VH(a)}if(a.isSequenceExpression()){var i=a.node.expressions;return i[i.length-1]!==r||VH(a)}return a.isConditional({test:r})||a.isUnaryExpression({operator:"!"})||a.isForStatement({test:r})||a.isWhile({test:r})}var HH=da,zH=so,KH=is,XH=ds,JH=Ds,YH=gs,$H=sm,QH=ys,ZH=Ps,ez=me,tz=nt,rz=at,az=Pe,nz=Ns,sz=Bs,oz=Is,iz=Do,dz=Io,cz=Vs,lz=Qs,uz=function(){function e(){this._map=void 0,this._map=new WeakMap}var t=e.prototype;return t.has=function(e){return this._map.has(e)},t.get=function(e){if(this.has(e)){var t=this._map.get(e),r=t.value;return t.count--,0===t.count?KH("=",r,e):r}},t.set=function(e,t,r){return this._map.set(e,{count:r,value:t})},o(e)}();function pz(e,t){var r=e.node;if(rz(r))return sz(t,r.property,r.computed);if(e.isOptionalCallExpression()){var a=e.get("callee");if(e.node.optional&&a.isOptionalMemberExpression()){var n=a.node.object,s=e.scope.maybeGenerateMemoised(n);return a.get("object").replaceWith(KH("=",s,n)),YH(sz(t,ZH("call")),[s].concat(b(e.node.arguments)))}return YH(t,e.node.arguments)}return e.node}var fz={memoise:function(){},handle:function(e,t){var r=e.node,a=e.parent,n=e.parentPath,s=e.scope;if(e.isOptionalMemberExpression()){if(function(e){for(;e&&!e.isProgram();){var t=e,r=t.parentPath,a=t.container,n=t.listKey,s=r.node;if(n){if(a!==s[n])return!0}else if(a!==s)return!0;e=r}return!1}(e))return;var o=e.find(function(t){var r=t.node,a=t.parent;return rz(a)?a.optional||a.object!==r:!tz(a)||(r!==e.node&&a.optional||a.callee!==r)});if(s.path.isPattern())return void o.replaceWith(YH(zH([],o.node),[]));var i=VH(o),d=o.parentPath;if(d.isUpdateExpression({argument:r}))throw e.buildCodeFrameError("can't handle update expression");var c=d.isAssignmentExpression({left:o.node}),l=d.isUnaryExpression({operator:"delete"});if(l&&o.isOptionalMemberExpression()&&o.get("property").isPrivateName())throw e.buildCodeFrameError("can't delete a private class element");for(var u=e;;)if(u.isOptionalMemberExpression()){if(u.node.optional)break;u=u.get("object")}else{if(!u.isOptionalCallExpression())throw new Error("Internal error: unexpected "+u.node.type);if(u.node.optional)break;u=u.get("callee")}var p=u.isOptionalMemberExpression()?u.node.object:u.node.callee,f=s.maybeGenerateMemoised(p),g=null!=f?f:p,m=n.isOptionalCallExpression({callee:r}),y=function(e){return m},h=n.isCallExpression({callee:r});u.replaceWith(pz(u,g)),y()?a.optional?n.replaceWith(this.optionalCall(e,a.arguments)):n.replaceWith(this.call(e,a.arguments)):h?e.replaceWith(this.boundGet(e)):this.delete&&n.isUnaryExpression({operator:"delete"})?n.replaceWith(this.delete(e)):n.isAssignmentExpression()?gz(this,e,n):e.replaceWith(this.get(e));for(var v,x=e.node,R=e;R!==o;){var j=R.parentPath;if(j===o&&y()&&a.optional){x=j.node;break}x=pz(j,x),R=j}var w=o.parentPath;if(ez(x)&&w.isOptionalCallExpression({callee:o.node,optional:!0})){var E=x.object;(v=e.scope.maybeGenerateMemoised(E))&&(x.object=KH("=",v,E))}var S=o;(l||c)&&(S=w,x=w.node);var T,P,A=f?KH("=",$H(g),$H(p)):$H(g);if(i?(T=t?XH("!=",A,oz()):nz("&&",XH("!==",A,oz()),XH("!==",$H(g),s.buildUndefinedNode())),S.replaceWith(nz("&&",T,x))):(P=t?XH("==",A,oz()):nz("||",XH("===",A,oz()),XH("===",$H(g),s.buildUndefinedNode())),S.replaceWith(QH(P,l?JH(!0):s.buildUndefinedNode(),x))),v){var k=w.node;w.replaceWith(iz(dz(k.callee,ZH("call"),!1,!0),[$H(v)].concat(b(k.arguments)),!1))}}else if(az(a,{argument:r})){if(this.simpleSet)return void e.replaceWith(this.simpleSet(e));var C=a.operator,_=a.prefix;this.memoise(e,2);var I=s.generateUidIdentifierBasedOnNode(r);s.push({id:I});var D=[KH("=",$H(I),this.get(e))];if(_){D.push(lz(C,$H(I),_));var O=cz(D);return void n.replaceWith(this.set(e,O))}var N=s.generateUidIdentifierBasedOnNode(r);s.push({id:N}),D.push(KH("=",$H(N),lz(C,$H(I),_)),$H(I));var B=cz(D);n.replaceWith(cz([this.set(e,B),$H(N)]))}else if(n.isAssignmentExpression({left:r}))gz(this,e,n);else{if(!n.isCallExpression({callee:r}))return n.isOptionalCallExpression({callee:r})?s.path.isPattern()?void n.replaceWith(YH(zH([],n.node),[])):void n.replaceWith(this.optionalCall(e,n.node.arguments)):void(this.delete&&n.isUnaryExpression({operator:"delete"})?n.replaceWith(this.delete(e)):n.isForXStatement({left:r})||n.isObjectProperty({value:r})&&n.parentPath.isObjectPattern()||n.isAssignmentPattern({left:r})&&n.parentPath.isObjectProperty({value:a})&&n.parentPath.parentPath.isObjectPattern()||n.isArrayPattern()||n.isAssignmentPattern({left:r})&&n.parentPath.isArrayPattern()||n.isRestElement()?e.replaceWith(this.destructureSet(e)):n.isTaggedTemplateExpression()?e.replaceWith(this.boundGet(e)):e.replaceWith(this.get(e)));n.replaceWith(this.call(e,n.node.arguments))}}};function gz(e,t,r){if(e.simpleSet)t.replaceWith(e.simpleSet(t));else{var a=r.node,n=a.operator,s=a.right;if("="===n)r.replaceWith(e.set(t,s));else{var o=n.slice(0,-1);HH.includes(o)?(e.memoise(t,1),r.replaceWith(nz(o,e.get(t),e.set(t,s)))):(e.memoise(t,2),r.replaceWith(e.set(t,XH(o,e.get(t),s))))}}}function mz(e,t,r){e.traverse(t,Object.assign({},fz,r,{memoiser:new uz}))}var yz,hz,bz,vz,xz=gs,Rz=Ps,jz=ie,wz=Xe,Ez=Bs,Sz=Do,Tz=Io;function Pz(e,t,r,a){return 1===r.length&&wz(r[0])&&jz(r[0].argument,{name:"arguments"})?a?Sz(Tz(e,Rz("apply"),!1,!0),[t,r[0].argument],!1):xz(Ez(e,Rz("apply")),[t,r[0].argument]):a?Sz(Tz(e,Rz("call"),!1,!0),[t].concat(b(r)),!1):xz(Ez(e,Rz("call")),[t].concat(b(r)))}var Az,kz,Cz,_z,Iz,Dz,Oz,Nz,Bz,Mz,Fz,Lz,Uz,qz,Gz,Wz,Vz,Hz,zz,Kz,Xz,Jz,Yz=is,$z=gs,Qz=sm,Zz=Ps,eK=Bs,tK=Vs,rK=Cs,aK=Xs,nK=hw({Super:function(e,t){var r=e.node,a=e.parentPath;a.isMemberExpression({object:r})&&t.handle(a)}}),sK=hw({Scopable:function(e,t){var r=t.refName,a=e.scope.getOwnBinding(r);(null==a?void 0:a.identifier.name)===r&&e.scope.rename(r)}}),oK={memoise:function(e,t){var r=e.scope,a=e.node,n=a.computed,s=a.property;if(n){var o=r.maybeGenerateMemoised(s);o&&this.memoiser.set(s,o,t)}},prop:function(e){var t=e.node,r=t.computed,a=t.property;return this.memoiser.has(a)?Qz(this.memoiser.get(a)):r?Qz(a):rK(a.name)},_getPrototypeOfExpression:function(){var e=Qz(this.getObjectRef()),t=this.isStatic||this.isPrivateMethod?e:eK(e,Zz("prototype"));return $z(this.file.addHelper("getPrototypeOf"),[t])},get:function(e){var t=Qz(this.getObjectRef());return $z(this.file.addHelper("superPropGet"),[this.isDerivedConstructor?tK([aK(),t]):t,this.prop(e),aK()].concat(b(this.isStatic||this.isPrivateMethod?[]:[_s(1)])))},_call:function(e,t,r){var a,n=Qz(this.getObjectRef());a=1===t.length&&Xe(t[0])&&(ie(t[0].argument)||Y(t[0].argument))?t[0].argument:os(t);var s=gs(this.file.addHelper("superPropGet"),[this.isDerivedConstructor?tK([aK(),n]):n,this.prop(e),aK(),_s(2|(this.isStatic||this.isPrivateMethod?0:1))]);return r?Do(s,[a],!0):$z(s,[a])},set:function(e,t){var r=Qz(this.getObjectRef());return $z(this.file.addHelper("superPropSet"),[this.isDerivedConstructor?tK([aK(),r]):r,this.prop(e),t,aK(),_s(e.isInStrictMode()?1:0)].concat(b(this.isStatic||this.isPrivateMethod?[]:[_s(1)])))},destructureSet:function(e){throw e.buildCodeFrameError("Destructuring to a super field is not supported yet.")},call:function(e,t){return this._call(e,t,!1)},optionalCall:function(e,t){return this._call(e,t,!0)},delete:function(e){return e.node.computed?tK([$z(this.file.addHelper("toPropertyKey"),[Qz(e.node.property)]),pj.expression.ast(yz||(yz=h(["\n function () { throw new ReferenceError(\"'delete super[expr]' is invalid\"); }()\n "])))]):pj.expression.ast(hz||(hz=h(["\n function () { throw new ReferenceError(\"'delete super.prop' is invalid\"); }()\n "])))}},iK={memoise:function(e,t){var r=e.scope,a=e.node,n=a.computed,s=a.property;if(n){var o=r.maybeGenerateMemoised(s);o&&this.memoiser.set(s,o,t)}},prop:function(e){var t=e.node,r=t.computed,a=t.property;return this.memoiser.has(a)?Qz(this.memoiser.get(a)):r?Qz(a):rK(a.name)},_getPrototypeOfExpression:function(){var e=Qz(this.getObjectRef()),t=this.isStatic||this.isPrivateMethod?e:eK(e,Zz("prototype"));return $z(this.file.addHelper("getPrototypeOf"),[t])},get:function(e){return this._get(e)},_get:function(e){var t=this._getPrototypeOfExpression();return $z(this.file.addHelper("get"),[this.isDerivedConstructor?tK([aK(),t]):t,this.prop(e),aK()])},set:function(e,t){var r=this._getPrototypeOfExpression();return $z(this.file.addHelper("set"),[this.isDerivedConstructor?tK([aK(),r]):r,this.prop(e),t,aK(),Ds(e.isInStrictMode())])},destructureSet:function(e){throw e.buildCodeFrameError("Destructuring to a super field is not supported yet.")},call:function(e,t){return Pz(this._get(e),aK(),t,!1)},optionalCall:function(e,t){return Pz(this._get(e),Qz(aK()),t,!0)},delete:function(e){return e.node.computed?tK([$z(this.file.addHelper("toPropertyKey"),[Qz(e.node.property)]),pj.expression.ast(bz||(bz=h(["\n function () { throw new ReferenceError(\"'delete super[expr]' is invalid\"); }()\n "])))]):pj.expression.ast(vz||(vz=h(["\n function () { throw new ReferenceError(\"'delete super.prop' is invalid\"); }()\n "])))}},dK=Object.assign({},oK,{prop:function(e){var t=e.node.property;return this.memoiser.has(t)?Qz(this.memoiser.get(t)):Qz(t)},get:function(e){var t,r,a,n=this.isStatic,s=this.getSuperRef,o=e.node.computed,i=this.prop(e);n?t=null!=(r=s())?r:eK(Zz("Function"),Zz("prototype")):t=eK(null!=(a=s())?a:Zz("Object"),Zz("prototype"));return eK(t,i,o)},set:function(e,t){var r=e.node.computed,a=this.prop(e);return Yz("=",eK(aK(),a,r),t)},destructureSet:function(e){var t=e.node.computed,r=this.prop(e);return eK(aK(),r,t)},call:function(e,t){return Pz(this.get(e),aK(),t,!1)},optionalCall:function(e,t){return Pz(this.get(e),aK(),t,!0)}}),cK=function(){function e(e){var t,r=e.methodPath;this.methodPath=r,this.isDerivedConstructor=r.isClassMethod({kind:"constructor"})&&!!e.superRef,this.isStatic=r.isObjectMethod()||r.node.static||(null==r.isStaticBlock?void 0:r.isStaticBlock()),this.isPrivateMethod=r.isPrivate()&&r.isMethod(),this.file=e.file,this.constantSuper=null!=(t=e.constantSuper)?t:e.isLoose,this.opts=e}var t=e.prototype;return t.getObjectRef=function(){return Qz(this.opts.objectRef||this.opts.getObjectRef())},t.getSuperRef=function(){return this.opts.superRef?Qz(this.opts.superRef):this.opts.getSuperRef?Qz(this.opts.getSuperRef()):void 0},t.replace=function(){var e=this.methodPath;this.opts.refToPreserve&&e.traverse(sK,{refName:this.opts.refToPreserve.name});var t=this.constantSuper?dK:this.file.availableHelper("superPropSet")?oK:iK;nK.shouldSkip=function(t){if(t.parentPath===e&&("decorators"===t.parentKey||"key"===t.parentKey))return!0},mz(e,nK,Object.assign({file:this.file,scope:this.methodPath.scope,isDerivedConstructor:this.isDerivedConstructor,isStatic:this.isStatic,isPrivateMethod:this.isPrivateMethod,getObjectRef:this.getObjectRef.bind(this),getSuperRef:this.getSuperRef.bind(this),boundGet:t.get},t))},o(e)}(),lK=Ee,uK=Vt,pK=Jt,fK=Ht,gK=zt,mK=xt;function yK(e){return uK(e)||fK(e)||gK(e)||pK(e)||mK(e)||lK(e)}function hK(e){for(;yK(e.node);)e=e.get("expression");return e}function bK(e){for(;yK(e);)e=e.expression;return e}function vK(e){if(e.node.declare)throw e.buildCodeFrameError("TypeScript 'declare' fields must first be transformed by @babel/plugin-transform-typescript.\nIf you have already enabled that plugin (or '@babel/preset-typescript'), make sure that it runs before any plugin related to additional class features:\n - @babel/plugin-transform-class-properties\n - @babel/plugin-transform-private-methods\n - @babel/plugin-proposal-decorators")}var xK=function(e){return e.availableHelper("classPrivateFieldGet2")};function RK(e){var t=hw(Object.assign({},e)),r=Object.assign({},e,{Class:function(e){for(var a,n=this.privateNamesMap,s=e.get("body.body"),o=new Map(n),d=[],c=i(s);!(a=c()).done;){var l=a.value;if(l.isPrivate()){var u=l.node.key.id.name;o.delete(u),d.push(u)}}d.length&&(e.get("body").traverse(t,Object.assign({},this,{redeclared:d})),e.traverse(r,Object.assign({},this,{privateNamesMap:o})),e.skipKey("body"))}});return r}var jK=RK({PrivateName:function(e,t){var r=t.noDocumentAll,a=this.privateNamesMap,n=this.redeclared,s=e.node,o=e.parentPath;if(o.isMemberExpression({property:s})||o.isOptionalMemberExpression({property:s})){var i=s.id.name;a.has(i)&&(null!=n&&n.includes(i)||this.handle(o,r))}}});function wK(e,t,r){for(;null!=(a=t)&&a.hasBinding(e)&&!t.bindingIdentifierEquals(e,r);){var a;t.rename(e),t=t.parent}}function EK(e,t,r){return null!=t.availableHelper&&t.availableHelper("checkInRHS")?gs(t.addHelper("checkInRHS"),[e]):e}var SK=RK({BinaryExpression:function(e,t){var r=t.file,a=e.node,n=a.operator,s=a.left,o=a.right;if("in"===n&&it(s)){var i=this.privateFieldsAsProperties,d=this.privateNamesMap,c=this.redeclared,l=s.id.name;if(d.has(l)&&(null==c||!c.includes(l)))if(wK(this.classRef.name,e.scope,this.innerBinding),i){var u=d.get(l).id;e.replaceWith(pj.expression.ast(kz||(kz=h(["\n Object.prototype.hasOwnProperty.call(",", ",")\n "])),EK(o,r),sm(u)))}else{var p=d.get(l),f=p.id;p.static?e.replaceWith(pj.expression.ast(Cz||(Cz=h([""," === ",""])),EK(o,r),sm(this.classRef))):e.replaceWith(pj.expression.ast(_z||(_z=h(["",".has(",")"])),sm(f),EK(o,r)))}}}});function TK(e,t){return gs(e.addHelper("readOnlyError"),[Cs("#"+t)])}function PK(e,t){return e.availableHelper("writeOnlyError")?gs(e.addHelper("writeOnlyError"),[Cs("#"+t)]):(console.warn("@babel/helpers is outdated, update it to silence this warning."),tm())}function AK(e,t){return t?e:Bs(e,Ps("_"))}function kK(e){return function(t){return Cy(e.apply(this,arguments),t.node)}}var CK={memoise:function(e,t){var r=e.scope,a=e.node.object,n=r.maybeGenerateMemoised(a);n&&this.memoiser.set(a,n,t)},receiver:function(e){var t=e.node.object;return this.memoiser.has(t)?sm(this.memoiser.get(t)):sm(t)},get:kK(function(e){var t=this.classRef,r=this.privateNamesMap,a=this.file,n=this.innerBinding,s=this.noUninitializedPrivateFieldAccess,o=e.node.property,i=o.id.name,d=r.get(i),c=d.id,l=d.static,u=d.method,p=d.methodId,f=d.getId,g=d.setId,m=f||g,y=function(e){return Cy(sm(e),o)};if(l){if(wK(t.name,e.scope,n),!xK(a)){var h=u&&!m?"classStaticPrivateMethodGet":"classStaticPrivateFieldSpecGet";return gs(a.addHelper(h),[this.receiver(e),sm(t),y(c)])}var b=this.receiver(e),v=ie(b)&&b.name===t.name;if(!u)return AK(v?y(c):gs(a.addHelper("assertClassBrand"),[sm(t),b,y(c)]),s);if(f)return v?gs(y(f),[b]):gs(a.addHelper("classPrivateGetter"),[sm(t),b,y(f)]);if(g){var x=tm();return v?x:Vs([gs(a.addHelper("assertClassBrand"),[sm(t),b]),x])}return v?y(c):gs(a.addHelper("assertClassBrand"),[sm(t),b,y(c)])}return u?m?f?xK(a)?gs(a.addHelper("classPrivateGetter"),[sm(c),this.receiver(e),y(f)]):gs(a.addHelper("classPrivateFieldGet"),[this.receiver(e),y(c)]):Vs([this.receiver(e),PK(a,i)]):xK(a)?gs(a.addHelper("assertClassBrand"),[sm(c),this.receiver(e),y(p)]):gs(a.addHelper("classPrivateMethodGet"),[this.receiver(e),sm(c),y(p)]):xK(a)?gs(a.addHelper("classPrivateFieldGet2"),[y(c),this.receiver(e)]):gs(a.addHelper("classPrivateFieldGet"),[this.receiver(e),y(c)])}),boundGet:function(e){return this.memoise(e,1),gs(Bs(this.get(e),Ps("bind")),[this.receiver(e)])},set:kK(function(e,t){var r=this.classRef,a=this.privateNamesMap,n=this.file,s=this.noUninitializedPrivateFieldAccess,o=e.node.property,i=o.id.name,d=a.get(i),c=d.id,l=d.static,u=d.method,p=d.setId,f=d.getId||p,g=function(e){return Cy(sm(e),o)};if(l){if(!xK(n)){var m=u&&!f?"classStaticPrivateMethodSet":"classStaticPrivateFieldSpecSet";return gs(n.addHelper(m),[this.receiver(e),sm(r),g(c),t])}var y=this.receiver(e),h=ie(y)&&y.name===r.name;if(u&&!p){var b=TK(n,i);return Vs(h?[t,b]:[t,gs(n.addHelper("assertClassBrand"),[sm(r),y]),TK(n,i)])}return p?h?gs(sm(p),[y,t]):gs(n.addHelper("classPrivateSetter"),[sm(r),g(p),y,t]):is("=",AK(g(c),s),h?t:gs(n.addHelper("assertClassBrand"),[sm(r),y,t]))}return u?p?xK(n)?gs(n.addHelper("classPrivateSetter"),[sm(c),g(p),this.receiver(e),t]):gs(n.addHelper("classPrivateFieldSet"),[this.receiver(e),g(c),t]):Vs([this.receiver(e),t,TK(n,i)]):xK(n)?gs(n.addHelper("classPrivateFieldSet2"),[g(c),this.receiver(e),t]):gs(n.addHelper("classPrivateFieldSet"),[this.receiver(e),g(c),t])}),destructureSet:function(e){var t=this.classRef,r=this.privateNamesMap,a=this.file,n=this.noUninitializedPrivateFieldAccess,s=e.node.property,o=s.id.name,i=r.get(o),d=i.id,c=i.static,l=i.method,u=i.setId,p=function(e){return Cy(sm(e),s)};if(!xK(a)){if(c){try{var f=a.addHelper("classStaticPrivateFieldDestructureSet")}catch(e){throw new Error("Babel can not transpile `[C.#p] = [0]` with @babel/helpers < 7.13.10, \nplease update @babel/helpers to the latest version.")}return Bs(gs(f,[this.receiver(e),sm(t),p(d)]),Ps("value"))}return Bs(gs(a.addHelper("classPrivateFieldDestructureSet"),[this.receiver(e),p(d)]),Ps("value"))}if(l&&!u)return Bs(Vs([e.node.object,TK(a,o)]),Ps("_"));if(c&&!l){var g=this.get(e);if(!n||!Z(g))return g;var m=g.arguments.pop();return g.arguments.push(pj.expression.ast(Iz||(Iz=h(["(_) => "," = _"])),m)),Bs(gs(a.addHelper("toSetter"),[g]),Ps("_"))}var y,b=this.set(e,Ps("_"));if(!Z(b)||!ie(b.arguments[b.arguments.length-1],{name:"_"}))throw e.buildCodeFrameError("Internal Babel error while compiling this code. This is a Babel bug. Please report it at https://github.com/babel/babel/issues.");return y=me(b.callee,{computed:!1})&&ie(b.callee.property)&&"call"===b.callee.property.name?[b.callee.object,os(b.arguments.slice(1,-1)),b.arguments[0]]:[b.callee,os(b.arguments.slice(0,-1))],Bs(gs(a.addHelper("toSetter"),y),Ps("_"))},call:function(e,t){return this.memoise(e,1),Pz(this.get(e),this.receiver(e),t,!1)},optionalCall:function(e,t){return this.memoise(e,1),Pz(this.get(e),this.receiver(e),t,!0)},delete:function(){throw new Error("Internal Babel error: deleting private elements is a parsing error.")}},_K={get:function(e){var t=this.privateNamesMap,r=this.file,a=e.node.object,n=e.node.property.id.name;return pj.expression(Dz||(Dz=h(["BASE(REF, PROP)[PROP]"])))({BASE:r.addHelper("classPrivateFieldLooseBase"),REF:sm(a),PROP:sm(t.get(n).id)})},set:function(){throw new Error("private name handler with loose = true don't need set()")},boundGet:function(e){return gs(Bs(this.get(e),Ps("bind")),[sm(e.node.object)])},simpleSet:function(e){return this.get(e)},destructureSet:function(e){return this.get(e)},call:function(e,t){return gs(this.get(e),t)},optionalCall:function(e,t){return Do(this.get(e),t,!0)},delete:function(){throw new Error("Internal Babel error: deleting private elements is a parsing error.")}};function IK(e,t,r){var a=r.get(t.node.key.id.name).id,n=t.node.value||t.scope.buildUndefinedNode();return qK(pj.statement.ast(Oz||(Oz=h(["\n Object.defineProperty(",", ",", {\n // configurable is false by default\n // enumerable is false by default\n writable: true,\n value: ","\n });\n "])),e,sm(a),n),t)}var DK=function(e,t){var r=t.get(e.node.key.id.name),a=r.id,n=r.getId,s=r.setId,o=r.initAdded,i=n||s;if(e.isProperty()||!o&&i){if(i)return t.set(e.node.key.id.name,Object.assign({},r,{initAdded:!0})),qK(pj.statement.ast(Xz||(Xz=h(["\n var "," = {\n // configurable is false by default\n // enumerable is false by default\n // writable is false by default\n get: ",",\n set: ","\n }\n "])),sm(a),n?n.name:e.scope.buildUndefinedNode(),s?s.name:e.scope.buildUndefinedNode()),e);var d=e.node.value||e.scope.buildUndefinedNode();return qK(pj.statement.ast(Jz||(Jz=h(["\n var "," = {\n // configurable is false by default\n // enumerable is false by default\n writable: true,\n value: ","\n };\n "])),sm(a),d),e)}};function OK(e,t,r,a){var n=r.get(t.node.key.id.name);if(!n.initAdded){if(!xK(a))if(n.getId||n.setId)return function(e,t,r,a){var n=r.get(t.node.key.id.name),s=n.id,o=n.getId,i=n.setId;if(r.set(t.node.key.id.name,Object.assign({},n,{initAdded:!0})),!a.availableHelper("classPrivateFieldInitSpec"))return qK(pj.statement.ast(qz||(qz=h(["\n ",".set(",", {\n get: ",",\n set: ","\n });\n "])),s,e,o?o.name:t.scope.buildUndefinedNode(),i?i.name:t.scope.buildUndefinedNode()),t);var d=a.addHelper("classPrivateFieldInitSpec");return GK(qK(pj.statement.ast(Uz||(Uz=h(["","(\n ",",\n ",",\n {\n get: ",",\n set: ","\n },\n )"])),d,{type:"ThisExpression"},sm(s),o?o.name:t.scope.buildUndefinedNode(),i?i.name:t.scope.buildUndefinedNode()),t),t.node)}(e,t,r,a);return function(e,t,r,a){var n=r.get(t.node.key.id.name),s=n.id;if(!a.availableHelper("classPrivateMethodInitSpec"))return qK(pj.statement.ast(Wz||(Wz=h(["",".add(",")"])),s,e),t);var o=a.addHelper("classPrivateMethodInitSpec");return qK(pj.statement.ast(Gz||(Gz=h(["","(\n ",",\n ","\n )"])),o,{type:"ThisExpression"},sm(s)),t)}(e,t,r,a)}}function NK(e,t){var r=t.node,a=r.key,n=r.computed,s=t.node.value||t.scope.buildUndefinedNode();return qK(Rs(is("=",Bs(e,a,n||dr(a)),s)),t)}function BK(e,t,r){var a=t.node,n=a.key,s=a.computed,o=t.node.value||t.scope.buildUndefinedNode();return qK(Rs(gs(r.addHelper("defineProperty"),[e,s||dr(n)?n:Cs(n.name),o])),t)}function MK(e,t,r,a){void 0===a&&(a=!1);var n=r.get(t.node.key.id.name),s=n.id,o=n.methodId,d=n.getId,c=n.setId,l=n.getterDeclared,u=n.setterDeclared,p=n.static,f=t.node,g=f.params,m=f.body,y=f.generator,b=f.async,v=d&&0===g.length,x=c&&g.length>0;if(v&&l||x&&u)return r.set(t.node.key.id.name,Object.assign({},n,{initAdded:!0})),null;if(xK(e)&&(v||x)&&!a){var R=t.get("body").scope,j=R.generateUidIdentifier("this"),w={thisRef:j,argumentsPath:[]};if(t.traverse(LK,w),w.argumentsPath.length){var E=R.generateUidIdentifier("arguments");R.push({id:E,init:pj.expression.ast(zz||(zz=h(["[].slice.call(arguments, 1)"])))});for(var S,T=i(w.argumentsPath);!(S=T()).done;){S.value.replaceWith(sm(E))}}g.unshift(sm(j))}var P=o;return v?(r.set(t.node.key.id.name,Object.assign({},n,{getterDeclared:!0,initAdded:!0})),P=d):x?(r.set(t.node.key.id.name,Object.assign({},n,{setterDeclared:!0,initAdded:!0})),P=c):p&&!a&&(P=s),qK(Ss(sm(P),g,m,y,b),t)}var FK,LK=hw({Identifier:function(e,t){t.argumentsPath&&"arguments"===e.node.name&&t.argumentsPath.push(e)},UnaryExpression:function(e){var t=e.node;"delete"===t.operator&&(Se(bK(t.argument))&&e.replaceWith(Ds(!0)))},ThisExpression:function(e,t){t.needsClassRef=!0,e.replaceWith(sm(t.thisRef))},MetaProperty:function(e){var t=e.node,r=e.scope;"new"===t.meta.name&&"target"===t.property.name&&e.replaceWith(r.buildUndefinedNode())}}),UK={ReferencedIdentifier:function(e,t){e.scope.bindingIdentifierEquals(e.node.name,t.innerBinding)&&(t.needsClassRef=!0,e.node.name=t.thisRef.name)}};function qK(e,t){return fm(e,t.node),pm(e,t.node),e}function GK(e,t){return e.start=t.start,e.end=t.end,e.loc=t.loc,e}function WK(e,t,r,a,n,s,o,d,c,l){var u,p=0,f=[],g=[],m=!1,y=[],b=null,v=ie(t)?function(){return t}:function(){return null!=u||(u=r[0].scope.generateUidIdentifierBasedOnNode(t)),u},x=null!=e?e:r[0].scope.generateUidIdentifier((null==l?void 0:l.name)||"Class");null!=e||(e=sm(l));for(var R,j=function(){var t=R.value;t.isClassProperty()&&vK(t);var r=!(null!=dt&&dt(t.node))&&t.node.static,i=!r,u=t.isPrivate(),b=!u,j=t.isProperty(),w=!j,E=null==t.isStaticBlock?void 0:t.isStaticBlock();if(r&&(p|=1),r||w&&u||E){new cK({methodPath:t,constantSuper:c,file:n,refToPreserve:l,getSuperRef:v,getObjectRef:function(){return p|=2,r||E?x:Bs(x,Ps("prototype"))}}).replace();var S=function(e,t,r){var a,n={thisRef:t,needsClassRef:!1,innerBinding:r};return e.isMethod()||e.traverse(LK,n),null!=r&&null!=(a=n.thisRef)&&a.name&&n.thisRef.name!==r.name&&e.traverse(UK,n),n.needsClassRef}(t,x,l);S&&(p|=2)}switch(m=!1,!0){case E:var T=t.node.body;1===T.length&&re(T[0])?f.push(qK(T[0],t)):f.push(mm(pj.statement.ast(Kz||(Kz=h(["(() => { "," })()"])),T),t.node));break;case r&&u&&j&&o:f.push(IK(sm(e),t,a));break;case r&&u&&j&&!o:xK(n)?f.push(function(e,t,r){var a=t.get(e.node.key.id.name),n=r?e.node.value:pj.expression.ast(Mz||(Mz=h(["{\n _: ","\n }"])),e.node.value||tm());return qK(Zs("var",[eo(sm(a.id),n)]),e)}(t,a,d)):f.push(DK(t,a));break;case r&&b&&j&&s:if(!function(e){var t=e.key,r=e.computed;return"Identifier"===t.type?!r&&("name"===t.name||"length"===t.name):"StringLiteral"===t.type&&("name"===t.value||"length"===t.value)}(t.node)){f.push(NK(sm(e),t));break}case r&&b&&j&&!s:f.push(BK(sm(e),t,n));break;case i&&u&&j&&o:g.push(IK({type:"ThisExpression"},t,a));break;case i&&u&&j&&!o:g.push(function(e,t,r,a){var n=r.get(t.node.key.id.name).id,s=t.node.value||t.scope.buildUndefinedNode();return a.availableHelper("classPrivateFieldInitSpec")?GK(qK(Rs(gs(a.addHelper("classPrivateFieldInitSpec"),[{type:"ThisExpression"},GK(sm(n),t.node.key),xK(a)?s:pj.expression.ast(Nz||(Nz=h(["{ writable: true, value: "," }"])),s)])),t),t.node):qK(pj.statement.ast(Bz||(Bz=h(["",".set(",", {\n // configurable is always false for private elements\n // enumerable is always false for private elements\n writable: true,\n value: ",",\n })"])),sm(n),e,s),t)}({type:"ThisExpression"},t,a,n));break;case i&&u&&w&&o:g.unshift(function(e,t,r){var a=r.get(t.node.key.id.name),n=a.methodId,s=a.id,o=a.getId,i=a.setId;if(!a.initAdded)return n?qK(pj.statement.ast(Fz||(Fz=h(["\n Object.defineProperty(",", ",", {\n // configurable is false by default\n // enumerable is false by default\n // writable is false by default\n value: ","\n });\n "])),e,s,n.name),t):o||i?(r.set(t.node.key.id.name,Object.assign({},a,{initAdded:!0})),qK(pj.statement.ast(Lz||(Lz=h(["\n Object.defineProperty(",", ",", {\n // configurable is false by default\n // enumerable is false by default\n // writable is false by default\n get: ",",\n set: ","\n });\n "])),e,s,o?o.name:t.scope.buildUndefinedNode(),i?i.name:t.scope.buildUndefinedNode()),t)):void 0}({type:"ThisExpression"},t,a)),y.push(MK(n,t,a,o));break;case i&&u&&w&&!o:g.unshift(OK({type:"ThisExpression"},t,a,n)),y.push(MK(n,t,a,o));break;case r&&u&&w&&!o:xK(n)||f.unshift(DK(t,a)),y.push(MK(n,t,a,o));break;case r&&u&&w&&o:f.unshift(function(e,t,r,a){var n=a.get(t.node.key.id.name),s=n.id,o=n.methodId,i=n.getId,d=n.setId;if(!n.initAdded)return i||d?(a.set(t.node.key.id.name,Object.assign({},n,{initAdded:!0})),qK(pj.statement.ast(Vz||(Vz=h(["\n Object.defineProperty(",", ",", {\n // configurable is false by default\n // enumerable is false by default\n // writable is false by default\n get: ",",\n set: ","\n })\n "])),e,s,i?i.name:t.scope.buildUndefinedNode(),d?d.name:t.scope.buildUndefinedNode()),t)):qK(pj.statement.ast(Hz||(Hz=h(["\n Object.defineProperty(",", ",", {\n // configurable is false by default\n // enumerable is false by default\n // writable is false by default\n value: ","\n });\n "])),e,s,o.name),t)}(sm(e),t,0,a)),y.push(MK(n,t,a,o));break;case i&&b&&j&&s:g.push(NK({type:"ThisExpression"},t));break;case i&&b&&j&&!s:m=!0,g.push(BK({type:"ThisExpression"},t,n));break;default:throw new Error("Unreachable.")}},w=i(r);!(R=w()).done;)j();return 2&p&&null!=l&&(b=Rs(is("=",sm(x),sm(l)))),{staticNodes:f.filter(Boolean),instanceNodes:g.filter(Boolean),lastInstanceNodeReturnsThis:m,pureStaticNodes:y.filter(Boolean),classBindingNode:b,wrapClass:function(t){for(var a,n=i(r);!(a=n()).done;){var s=a.value;s.node.leadingComments=null,s.remove()}return u&&(t.scope.push({id:sm(u)}),t.set("superClass",is("=",u,t.node.superClass))),0!==p&&(t.isClassExpression()?(t.scope.push({id:e}),t.replaceWith(is("=",sm(e),t.node))):(null==l&&(t.node.id=e),null!=b&&t.scope.push({id:x}))),t}}}var VK=hw({Super:function(e){var t=e.node,r=e.parentPath;r.isCallExpression({callee:t})&&this.push(r)}}),HK={"TSTypeAnnotation|TypeAnnotation":function(e){e.skip()},ReferencedIdentifier:function(e,t){var r=t.scope;r.hasOwnBinding(e.node.name)&&(r.rename(e.node.name),e.skip())}};function zK(e,t){if(t.classBinding&&t.classBinding===e.scope.getBinding(e.node.name)){var r=gs(t.file.addHelper("classNameTDZError"),[Cs(e.node.name)]);e.replaceWith(Vs([r,e.node])),e.skip()}}var KK,XK,JK,YK,$K,QK={ReferencedIdentifier:zK,"TSTypeAnnotation|TypeAnnotation":function(e){e.skip()}};function ZK(e,t,r,a,n){if(r.length){var s=!!e.node.superClass;if(!t){var o=Ro("constructor",Ps("constructor"),[],ps([]));s&&(o.params=[Gs(Ps("args"))],o.body.body.push(pj.statement.ast(FK||(FK=h(["super(...args)"]))))),t=y(e.get("body").unshiftContainer("body",o),1)[0]}if(a&&a(HK,{scope:t.scope}),s){var i=[];t.traverse(VK,i);for(var d=!0,c=0,l=i;c<l.length;c++){var u=l[c];if(d?d=!1:r=r.map(function(e){return sm(e)}),u.parentPath.isExpressionStatement())u.insertAfter(r);else{var p=[u.node].concat(b(r.map(function(e){return by(e)})));n||p.push(Xs()),u.replaceWith(Vs(p))}}}else t.get("body").unshiftContainer("body",r)}}function eX(e,t,r){if(!(ie(e)&&t.hasUid(e.name))){if($(e,{operator:"="})&&ie(e.left)&&t.hasUid(e.left.name))return sm(e);var a=Ps(r);return t.push({id:a,kind:"let"}),is("=",sm(a),e)}}function tX(e){var t;return!(null==(t=e.decorators)||!t.length)}function rX(e){return tX(e)||e.body.body.some(tX)}function aX(e,t){if(void 0===t&&(t=e.length-1),-1!==t){var r=e[t];90===r?e[t]=97:122===r?(e[t]=65,aX(e,t-1)):e[t]=r+1}else e.unshift(65)}function nX(e){var t;return function(){return t||(t=function(e){var t=[],r=new Set;return Ry(e.node,function(e){it(e)&&r.add(e.id.name)}),function(){var e;do{aX(t),e=String.fromCharCode.apply(String,t)}while(r.has(e));return Fo(Ps(e))}}(e)),t()}}function sX(e,t,r){return"PrivateName"===e.type?Bo(e,t,void 0,r):Oo(e,t,void 0,void 0,r)}function oX(e,t){e.node.id||(e.node.id="string"==typeof t?Ps(t):e.scope.generateUidIdentifier("Class"))}function iX(e,t,r,a,n,s,o,i){var d,c,l="2023-11"!==i&&"2023-05"!==i||!o?{type:"ThisExpression"}:e,u=ps([Ws(Bs(sm(l),sm(n)))]),p=ps([Rs(is("=",Bs(sm(l),sm(n)),Ps("v")))]);"PrivateName"===r.type?(d=Mo("get",r,[],u,o),c=Mo("set",a,[Ps("v")],p,o)):(d=Ro("get",r,[],u,s,o),c=Ro("set",a,[Ps("v")],p,s,o)),t.insertAfter(c),t.insertAfter(d)}function dX(e,t){return"2023-11"!==t&&"2023-05"!==t&&"2023-01"!==t?[pj.expression.ast(KK||(KK=h(["\n function () {\n return this.",";\n }\n "])),sm(e)),pj.expression.ast(XK||(XK=h(["\n function (value) {\n this."," = value;\n }\n "])),sm(e))]:[pj.expression.ast(JK||(JK=h(["\n o => o.","\n "])),sm(e)),pj.expression.ast(YK||(YK=h(["\n (o, v) => o."," = v\n "])),sm(e))]}function cX(e){if((e=hK(e)).isSequenceExpression()){var t=e.get("expressions");return cX(t[t.length-1])}return e}function lX(e){var t=cX(e);if(t.isConstantExpression())return sm(e.node);if(t.isIdentifier()&&e.scope.hasUid(t.node.name))return sm(e.node);if(t.isAssignmentExpression()&&t.get("left").isIdentifier())return sm(t.node.left);throw new Error("Internal Error: the computed key "+e.toString()+" has not yet been memoised.")}function uX(e,t){var r=t.get("key");r.isSequenceExpression()?e.push.apply(e,b(r.node.expressions)):e.push(r.node),r.replaceWith(PX(e))}function pX(e,t){var r=t.get("value");r.node?e.push(r.node):e.length>0&&(e[e.length-1]=$s("void",e[e.length-1])),r.replaceWith(PX(e))}function fX(e,t){t.unshiftContainer("body",Rs(PX(e)))}function gX(e,t){return Z(e)&&ie(e.callee,{name:t.name})}function mX(e,t,r){t.traverse({CallExpression:{exit:function(t){if(t.get("callee").isSuper()){var a=[t.node].concat(b(e.map(function(e){return sm(e)})));t.isCompletionRecord()&&a.push({type:"ThisExpression"}),t.replaceWith(function(e,t){if(t){if(e.length>=2&&gX(e[1],t)){var r=gs(sm(t),[e[0]]);e.splice(0,2,r)}e.length>=2&&Se(e[e.length-1])&&gX(e[e.length-2],t)&&e.splice(e.length-1,1)}return PX(e)}(a,r)),t.skip()}}},ClassMethod:function(e){"constructor"===e.node.kind&&e.skip()}})}function yX(e,t){var r=[Rs(PX(e))];return t&&r.unshift(Rs(gs({type:"Super"},[wo(Ps("args"))]))),Ro("constructor",Ps("constructor"),t?[Gs(Ps("args"))]:[],ps(r))}function hX(e){return Lo([Rs(PX(e))])}var bX,vX,xX,RX;function jX(e){switch(e.node.type){case"ClassProperty":case"ClassPrivateProperty":return 0;case"ClassAccessorProperty":return 1;case"ClassMethod":case"ClassPrivateMethod":return"get"===e.node.kind?3:"set"===e.node.kind?4:2}}function wX(e,t,r){for(var a=e.length,n=t.some(Boolean),s=[],o=0;o<a;o++)"2023-11"!==r&&"2023-05"!==r||!n||s.push(t[o]||$s("void",_s(0))),s.push(e[o].expression);return{haveThis:n,decs:s}}function EX(e,t,r,a,n,s){t.insertAfter(Mo("get",sm(r),[],ps([Ws(gs(sm(a),"2023-11"===e&&s?[]:[{type:"ThisExpression"}]))]),s)),t.insertAfter(Mo("set",sm(r),[Ps("v")],ps([Rs(gs(sm(n),"2023-11"===e&&s?[Ps("v")]:[{type:"ThisExpression"},Ps("v")]))]),s))}function SX(e,t,r,a){var n,s;"set"===e.node.kind?(n=[Ps("v")],s=[Rs(gs(r,[{type:"ThisExpression"},Ps("v")]))]):(n=[],s=[Ws(gs(r,[{type:"ThisExpression"}]))]),e.replaceWith(Mo(e.node.kind,sm(t),n,ps(s),a))}function TX(e){var t=e.type;return"TSDeclareMethod"!==t&&"TSIndexSignature"!==t&&"StaticBlock"!==t}function PX(e){return 0===e.length?$s("void",_s(0)):1===e.length?e[0]:Vs(e)}function AX(e){return Ts(void 0,e.params,e.body,e.generator,e.async)}function kX(e,t){return gs(e.addHelper("setFunctionName"),[{type:"ThisExpression"},t])}function CX(e,t){return gs(e.addHelper("toPropertyKey"),[t])}function _X(e){return so([Ps("_")],ds("in",sm(e),Ps("_")))}function IX(e){try{return Ry(e,function(e){if(it(e))throw null}),!1}catch(e){return!0}}function DX(e,t){var r=!1;if(t.length>0){for(var a,n=RK({PrivateName:function(e,t){t.privateNamesMap.has(e.node.id.name)&&(r=!0,e.stop())}}),s=new Map,o=i(t);!(a=o()).done;){var d=a.value;s.set(d,null)}e.traverse(n,{privateNamesMap:s})}return r}function OX(e,t,r,a,n,s,o){for(var d,c,l,u,p=e.get("body.body"),f=e.node.decorators,g=!1,m=!1,v=!1,x=nX(e),R=[],j=e.scope.parent,w=function(e,t,r){var a=UX(j,t);return r.push(is("=",a,e)),sm(a)},E=null==(d=e.node.id)?void 0:d.name,S="object"==typeof n?n:void 0,T=function(e){try{return Ry(e,function(e){if(Se(e)||Je(e)||Qe(e)||Ze(e)||ie(e,{name:"arguments"})||E&&ie(e,{name:E})||He(e)&&"import"!==e.meta.name)throw null}),!1}catch(e){return!0}},P=[],A=i(p);!(u=A()).done;){var k=u.value;if(TX(k)){var C=k.node;if(!C.static&&it(C.key)&&P.push(C.key.id.name),BX(C)){switch(C.type){case"ClassProperty":s.ClassProperty(k,t);break;case"ClassPrivateProperty":s.ClassPrivateProperty(k,t);break;case"ClassAccessorProperty":if(s.ClassAccessorProperty(k,t),"2023-11"===o)break;default:C.static?null!=l||(l=UX(j,"initStatic")):null!=c||(c=UX(j,"initProto"))}g=!0,v||(v=C.decorators.some(T))}else if("ClassAccessorProperty"===C.type){s.ClassAccessorProperty(k,t);var _=C.key,I=C.value,D=C.static,O=C.computed,N=x(),B=sX(N,I,D),M=k.get("key"),F=y(k.replaceWith(B),1)[0],L=void 0,U=void 0;O&&!M.isConstantExpression()?U=sm((L=eX(CX(t,_),j,j.generateUid("computedKey"))).left):(L=sm(_),U=sm(_)),oX(e,n),iX(e.node.id,F,L,U,N,O,D,o)}"computed"in k.node&&k.node.computed&&(m||(m=!j.isStatic(k.node.key)))}}if(!f&&!g)return e.node.id||"string"!=typeof n||(e.node.id=Ps(n)),void(S&&e.node.body.body.unshift(hX([kX(t,S)])));var q,G,W,V=[],H=new Set,z=null;function K(e){for(var t,r=!1,a=!1,n=[],s=i(e);!(t=s()).done;){var d=t.value,c=d.expression,l=void 0;"2023-11"!==o&&"2023-05"!==o||!me(c)||(Je(c.object)?l=Xs():j.isStatic(c.object)?l=sm(c.object):(null!=z||(z=UX(j,"obj")),l=is("=",sm(z),c.object),c.object=sm(z))),n.push(l),r||(r=!j.isStatic(c)),a||(a=T(d))}return{hasSideEffects:r,usesFnContext:a,decoratorsThis:n}}var X,J,Y=m||v||"2023-11"!==o,Q=!1,Z=0,ee=[],te=[];if(f){G=UX(j,"initClass"),Q=e.isClassDeclaration();var re=function(e,t){var r,a=e.node.id,n=e.scope;if("ClassDeclaration"===e.type){var s=a.name,o=n.generateUidIdentifierBasedOnNode(a),i=Ps(s);return n.rename(s,o.name),e.get("id").replaceWith(i),{id:sm(o),path:e}}a?(t=a.name,r=UX(n.parent,t),n.rename(t,r.name)):r=UX(n.parent,"string"==typeof t?t:"decorated_class");var d=io("string"==typeof t?Ps(t):null,e.node.superClass,e.node.body),c=y(e.replaceWith(Vs([d,r])),1)[0];return{id:sm(r),path:c.get("expressions.0")}}(e,n);W=re.id,(e=re.path).node.decorators=null;var ae=f.some(IX),ne=K(f),se=ne.hasSideEffects,oe=ne.usesFnContext,de=wX(f,ne.decoratorsThis,o);if(Z=de.haveThis?1:0,ee=de.decs,(oe||se&&Y||ae)&&(X=w(os(ee),"classDecs",R)),!g)for(var ce,le=i(e.get("body.body"));!(ce=le()).done;){var ue=ce.value,pe=ue.node;if("computed"in pe&&pe.computed)if(ue.isClassProperty({static:!0})){if(!ue.get("key").isConstantExpression()){var fe=eX(pe.key,j,j.generateUid("computedKey"));null!=fe&&(pe.key=sm(fe.left),te.push(fe))}}else te.length>0&&(uX(te,ue),te=[])}}else oX(e,n),W=sm(e.node.id);var ge=!1,ye=[],he=[];if(g){if(c){var be=gs(sm(c),[{type:"ThisExpression"}]);ye.push(be)}for(var ve,xe=i(p);!(ve=xe()).done;){var je=ve.value;if(TX(je)){var we=je.node,Ee=we.decorators,Te=!(null==Ee||!Ee.length),Pe="computed"in we&&we.computed,Ae="computedKey";"PrivateName"===we.key.type?Ae=we.key.id.name:Pe||"Identifier"!==we.key.type||(Ae=we.key.name);var ke=void 0,Ce=void 0;if(Te){var _e=K(Ee),Ie=_e.hasSideEffects,De=_e.usesFnContext,Oe=wX(Ee,_e.decoratorsThis,o),Ne=Oe.decs;Ce=Oe.haveThis,ke=1===Ne.length?Ne[0]:os(Ne),(De||Ie&&Y)&&(ke=w(ke,Ae+"Decs",te))}if(Pe&&!je.get("key").isConstantExpression()){var Be=we.key,Me=eX(Te?CX(t,Be):Be,j,j.generateUid("computedKey"));null!=Me&&(f&&je.isClassProperty({static:!0})?(we.key=sm(Me.left),te.push(Me)):we.key=Me)}var Fe=we.key,Le=we.static,Ue="PrivateName"===Fe.type,qe=jX(je);Ue&&!Le&&(Te&&(ge=!0),!ot(we)&&J||(J=Fe)),je.isClassMethod({kind:"constructor"})&&(q=je);var Ge=void 0;if(Te){var We=void 0,Ve=void 0;if(Ve=Pe?lX(je.get("key")):"PrivateName"===Fe.type?Cs(Fe.id.name):"Identifier"===Fe.type?Cs(Fe.name):sm(Fe),1===qe){var ze=je.node.value,Ke="2023-11"===o&&Le?[]:[Xs()];ze&&Ke.push(sm(ze));var Xe=x(),Ye=UX(j,"init_"+Ae),$e=sX(Xe,gs(sm(Ye),Ke),Le),et=y(je.replaceWith($e),1)[0];if(Ue){We=dX(Xe,o);var tt=UX(j,"get_"+Ae),rt=UX(j,"set_"+Ae);EX(o,et,Fe,tt,rt,Le),Ge=[Ye,tt,rt]}else oX(e,n),iX(e.node.id,et,sm(Fe),$(Fe)?sm(Fe.left):sm(Fe),Xe,Pe,Le,o),Ge=[Ye]}else if(0===qe){var at=UX(j,"init_"+Ae),nt=je.get("value"),dt="2023-11"===o&&Le?[]:[Xs()];nt.node&&dt.push(nt.node),nt.replaceWith(gs(sm(at),dt)),Ge=[at],Ue&&(We=dX(Fe,o))}else if(Ue){var ct=UX(j,"call_"+Ae);if(Ge=[ct],new cK({constantSuper:r,methodPath:je,objectRef:W,superRef:e.node.superClass,file:t.file,refToPreserve:W}).replace(),We=[AX(je.node)],3===qe||4===qe)SX(je,sm(Fe),sm(ct),Le);else{var lt=je.node;e.node.body.body.unshift(Bo(Fe,sm(ct),[],lt.static)),H.add(Fe.id.name),je.remove()}}V.push({kind:qe,decoratorsArray:ke,decoratorsHaveThis:Ce,name:Ve,isStatic:Le,privateMethods:We,locals:Ge}),je.node&&(je.node.decorators=null)}if(Pe&&te.length>0&&(f&&je.isClassProperty({static:!0})||(uX(te,1===qe?je.getNextSibling():je),te=[])),ye.length>0&&!Le&&(0===qe||1===qe)&&(pX(ye,je),ye=[]),he.length>0&&Le&&(0===qe||1===qe)&&(pX(he,je),he=[]),Te&&"2023-11"===o&&(0===qe||1===qe)){var ut=UX(j,"init_extra_"+Ae);Ge.push(ut);var pt=gs(sm(ut),Le?[]:[Xs()]);Le?he.push(pt):ye.push(pt)}}else he.length>0&&je.isStaticBlock()&&(fX(he,je),he=[])}}if(te.length>0){for(var ft,gt=e.get("body.body"),mt=gt.length-1;mt>=0;mt--){var yt=gt[mt],ht=yt.node;if(ht.computed){if(f&&st(ht,{static:!0}))continue;ft=yt;break}}null!=ft&&(!function(e,t){var r=t.get("key"),a=cX(r);if(a.isConstantExpression())uX(e,t);else{var n=r.scope.parent,s=eX(a.node,n,n.generateUid("computedKey"));if(s){var o=[].concat(b(e),[sm(s.left)]),i=a.parentPath;i.isSequenceExpression()?i.pushContainer("expressions",o):a.replaceWith(PX([sm(s)].concat(b(o))))}else uX(e,t)}}(te,ft),te=[])}if(ye.length>0){var bt=!!e.node.superClass;q?bt?mX(ye,q,c):function(e,t){t.node.body.body.unshift(Rs(PX(e)))}(ye,q):e.node.body.body.unshift(yX(ye,bt)),ye=[]}he.length>0&&(e.node.body.body.push(hX(he)),he=[]);var vt,xt=[].concat(b((vt=V).filter(function(e){return e.isStatic&&e.kind>=1&&e.kind<=4})),b(vt.filter(function(e){return!e.isStatic&&e.kind>=1&&e.kind<=4})),b(vt.filter(function(e){return e.isStatic&&0===e.kind})),b(vt.filter(function(e){return!e.isStatic&&0===e.kind}))),Rt=function(e,t){return os(e.map(function(e){var r=e.kind;return e.isStatic&&(r+="2023-11"===t||"2023-05"===t?8:5),e.decoratorsHaveThis&&(r+=16),os([e.decoratorsArray,_s(r),e.name].concat(b(e.privateMethods||[])))}))}("2023-11"===o?V:xt,o),jt=function(e){for(var t,r=[],a=i(e);!(t=a()).done;){var n=t.value.locals;Array.isArray(n)?r.push.apply(r,b(n)):void 0!==n&&r.push(n)}return r}(xt);c&&jt.push(c),l&&jt.push(l);var wt=[],Et=!1,St=G&&gs(sm(G),[]),Tt=e,Pt=e.node,At=[];if(f){wt.push(W,G);var kt=[];if(e.get("body.body").forEach(function(n){if(n.isStaticBlock()){if(DX(n,P)){var s=w(Ts(null,[],ps(n.node.body)),"staticBlock",At);he.push(gs(Bs(s,Ps("call")),[{type:"ThisExpression"}]))}else he.push(function(e){return gs(so([],ps(e.body)),[])}(n.node));n.remove()}else{if((n.isClassProperty()||n.isClassPrivateProperty())&&n.node.static){var o=n.get("value");if(DX(o,P)){var i=w(function(e){return Ts(null,[],ps([Ws(e)]))}(o.node),"fieldValue",At);o.replaceWith(gs(Bs(i,Ps("call")),[{type:"ThisExpression"}]))}he.length>0&&(pX(he,n),he=[]),n.node.static=!1,kt.push(n.node),n.remove()}else if(n.isClassPrivateMethod({static:!0})){if(DX(n,P)){new cK({constantSuper:r,methodPath:n,objectRef:W,superRef:e.node.superClass,file:t.file,refToPreserve:W}).replace();var d=w(AX(n.node),n.get("key.id").node.name,At);a?(n.node.params=[Gs(Ps("arg"))],n.node.body=ps([Ws(gs(Bs(d,Ps("apply")),[{type:"ThisExpression"},Ps("arg")]))])):(n.node.params=n.node.params.map(function(e,t){return Re(e)?Gs(Ps("arg")):Ps("_"+t)}),n.node.body=ps([Ws(gs(Bs(d,Ps("apply")),[{type:"ThisExpression"},Ps("arguments")]))]))}n.node.static=!1,kt.push(n.node),n.remove()}}}),kt.length>0||he.length>0){var Ct=pj.expression.ast($K||($K=h(["\n class extends "," {}\n "])),t.addHelper("identity"));Ct.body.body=[Oo(by(Pt),void 0,void 0,void 0,!0,!0)].concat(kt);var _t=[],It=Ms(Ct,[]);he.length>0&&_t.push.apply(_t,b(he)),St&&(Et=!0,_t.push(St)),_t.length>0?(_t.unshift(gs({type:"Super"},[sm(W)])),Ct.body.body.push(yX(_t,!1))):It.arguments.push(sm(W)),Tt=y(e.replaceWith(It),1)[0].get("callee").get("body").get("body.0.key")}}!Et&&St&&e.node.body.body.push(Lo([Rs(St)]));var Dt=Pt.superClass;if(Dt&&("2023-11"===o||"2023-05"===o)){var Ot=e.scope.maybeGenerateMemoised(Dt);Ot&&(Pt.superClass=is("=",Ot,Dt),Dt=Ot)}var Nt=Lo([]);Pt.body.body.unshift(Nt);var Bt=Nt.body;if(te.length>0){for(var Mt,Ft,Lt=i(Tt.get("body.body"));!(Ft=Lt()).done;){var Ut=Ft.value;if((Ut.isClassProperty()||Ut.isClassMethod())&&"constructor"!==Ut.node.kind){Mt=Ut;break}}null!=Mt?(!function(e){var t=e.node;t.computed=!0,ie(t.key)&&(t.key=Cs(t.key.name))}(Mt),uX(te,Mt)):(Pt.body.body.unshift(Oo(Vs([].concat(b(te),[Cs("_")])),void 0,void 0,void 0,!0,!0)),Bt.push(Rs($s("delete",Bs({type:"ThisExpression"},Ps("_")))))),te=[]}if(Bt.push(Rs(function(e,t,r,a,n,s,o,i,d,c){var l,u,p=[o?kX(d,o):{type:"ThisExpression"},a,r];"2023-11"!==c&&p.splice(1,2,r,a);if("2021-12"===c||"2022-03"===c&&!d.availableHelper("applyDecs2203R"))return is("=",l=no([].concat(b(e),b(t))),u=gs(d.addHelper("2021-12"===c?"applyDecs":"applyDecs2203"),p));"2022-03"===c?u=gs(d.addHelper("applyDecs2203R"),p):"2023-01"===c?(s&&p.push(_X(s)),u=gs(d.addHelper("applyDecs2301"),p)):"2023-05"===c&&((s||i||0!==n.value)&&p.push(n),s?p.push(_X(s)):i&&p.push($s("void",_s(0))),i&&p.push(i),u=gs(d.addHelper("applyDecs2305"),p));"2023-11"===c&&((s||i||0!==n.value)&&p.push(n),s?p.push(_X(s)):i&&p.push($s("void",_s(0))),i&&p.push(i),u=gs(d.addHelper("applyDecs2311"),p));e.length>0?t.length>0?l=jo([qs(Ps("e"),no(e)),qs(Ps("c"),no(t))]):(l=no(e),u=Bs(u,Ps("e"),!1,!1)):(l=no(t),u=Bs(u,Ps("c"),!1,!1));return is("=",l,u)}(jt,wt,Rt,null!=X?X:os(ee),_s(Z),ge?J:null,S,sm(Dt),t,o))),l&&Bt.push(Rs(gs(sm(l),[{type:"ThisExpression"}]))),At.length>0&&Bt.push.apply(Bt,b(At.map(function(e){return Rs(e)}))),e.insertBefore(R.map(function(e){return Rs(e)})),Q)if(j.getBinding(W.name).constantViolations.length){var qt=j.generateUidIdentifier("t"+W.name),Gt=W;e.replaceWithMultiple([Zs("let",[eo(sm(Gt)),eo(qt)]),ps([Zs("let",[eo(sm(W))]),e.node,Rs(is("=",sm(qt),sm(W)))]),Rs(is("=",sm(Gt),sm(qt)))])}else e.insertBefore(Zs("let",[eo(sm(W))]));return H.size>0&&function(e,t){for(var r,a=RK({PrivateName:function(e,t){if(t.privateNamesMap.has(e.node.id.name)){var r=e.parentPath,a=r.parentPath;if("AssignmentExpression"===a.node.type&&a.node.left===r.node||"UpdateExpression"===a.node.type||"RestElement"===a.node.type||"ArrayPattern"===a.node.type||"ObjectProperty"===a.node.type&&a.node.value===r.node&&"ObjectPattern"===a.parentPath.type||"ForOfStatement"===a.node.type&&a.node.left===r.node)throw e.buildCodeFrameError('Decorated private methods are read-only, but "#'+e.node.id.name+'" is updated via this expression.')}}}),n=new Map,s=i(t);!(r=s()).done;){var o=r.value;n.set(o,null)}e.traverse(a,{privateNamesMap:n})}(e,H),e.scope.crawl(),e}function NX(e){return"Identifier"===e.type?"__proto__"===e.name:"__proto__"===e.value}function BX(e){return e.decorators&&e.decorators.length>0}function MX(e){switch(e.type){case"ClassAccessorProperty":return!0;case"ClassMethod":case"ClassProperty":case"ClassPrivateMethod":case"ClassPrivateProperty":return BX(e);default:return!1}}function FX(e,t){function r(e,t,r){switch(t.type){case"StringLiteral":return Cs(t.value);case"NumericLiteral":case"BigIntLiteral":var a=t.value+"";return e.get("key").replaceWith(Cs(a)),Cs(a);default:var n=e.scope.maybeGenerateMemoised(t);return e.get("key").replaceWith(is("=",n,CX(r,t))),sm(n)}}return{VariableDeclarator:function(r,a){var n=r.node.id;if("Identifier"===n.type){var s=hK(r.get("init"));if(e(s)){var o=n.name;t(s,a,o)}}},AssignmentExpression:function(r,a){var n=r.node.left;if("Identifier"===n.type){var s=hK(r.get("right"));if(e(s))switch(r.node.operator){case"=":case"&&=":case"||=":case"??=":t(s,a,n.name)}}},AssignmentPattern:function(r,a){var n=r.node.left;if("Identifier"===n.type){var s=hK(r.get("right"));if(e(s)){var o=n.name;t(s,a,o)}}},ObjectExpression:function(a,n){for(var s,o=i(a.get("properties"));!(s=o()).done;){var d=s.value;if(d.isObjectProperty()){var c=d.node,l=c.key,u=hK(d.get("value"));if(e(u))if(c.computed){var p=r(d,l,n);t(u,n,p)}else if(!NX(l))if("Identifier"===l.type)t(u,n,l.name);else{var f=Cs(l.value+"");t(u,n,f)}}}},ClassPrivateProperty:function(r,a){var n=r.node,s=hK(r.get("value"));if(e(s)){var o=Cs("#"+n.key.id.name);t(s,a,o)}},ClassAccessorProperty:function(a,n){var s=a.node,o=s.key,i=hK(a.get("value"));if(e(i))if(s.computed){var d=r(a,o,n);t(i,n,d)}else if("Identifier"===o.type)t(i,n,o.name);else if("PrivateName"===o.type){var c=Cs("#"+o.id.name);t(i,n,c)}else{var l=Cs(o.value+"");t(i,n,l)}},ClassProperty:function(a,n){var s=a.node,o=s.key,i=hK(a.get("value"));if(e(i))if(s.computed){var d=r(a,o,n);t(i,n,d)}else if("Identifier"===o.type)t(i,n,o.name);else{var c=Cs(o.value+"");t(i,n,c)}}}}function LX(e){return e.isClassExpression({id:null})&&function(e){return BX(e)||e.body.body.some(MX)}(e.node)}function UX(e,t){var r=e.generateUidIdentifier(t);return e.push({id:r,kind:"let"}),sm(r)}function qX(e,t){return t?qs(Ps(e),t):null}function GX(e){var t;return e.decorators&&e.decorators.length>0&&(t=os(e.decorators.map(function(e){return e.expression}))),e.decorators=void 0,t}function WX(e){return e.computed?e.key:ie(e.key)?Cs(e.key.name):Cs(String(e.key.value))}function VX(e,t,r,a){var n=a.isClassMethod();if(a.isPrivate())throw a.buildCodeFrameError("Private "+(n?"methods":"fields")+" in decorated classes are not supported yet.");if("ClassAccessorProperty"===a.node.type)throw a.buildCodeFrameError('Accessor properties are not supported in 2018-09 decorator transform, please specify { "version": "2021-12" } instead.');if("StaticBlock"===a.node.type)throw a.buildCodeFrameError('Static blocks are not supported in 2018-09 decorator transform, please specify { "version": "2021-12" } instead.');var s=a,o=s.node,i=s.scope;a.isTSDeclareMethod()||new cK({methodPath:a,objectRef:t,superRef:r,file:e,refToPreserve:t}).replace();var d=[qX("kind",Cs(ze(o)?o.kind:"field")),qX("decorators",GX(o)),qX("static",o.static&&Ds(!0)),qX("key",WX(o))].filter(Boolean);return n?(a.ensureFunctionName(!1),d.push(qX("value",by(a.node)))):st(o)&&o.value?d.push(function(e,t){return Us("method",Ps(e),[],ps(t))}("value",pj.statements.ast(bX||(bX=h(["return ",""])),o.value))):d.push(qX("value",i.buildUndefinedNode())),a.remove(),Ls(d)}var HX=Object.freeze({fields:2,privateMethods:4,decorators:8,privateIn:16,staticBlocks:32}),zX=new Map([[HX.fields,"@babel/plugin-transform-class-properties"],[HX.privateMethods,"@babel/plugin-transform-private-methods"],[HX.privateIn,"@babel/plugin-transform-private-property-in-object"]]),KX="@babel/plugin-class-features/featuresKey",XX="@babel/plugin-class-features/looseKey",JX="@babel/plugin-class-features/looseLowPriorityKey/#__internal__@babel/preset-env__please-overwrite-loose-instead-of-throwing",YX=function(e,t){return!!(e.get(JX)&t)};function $X(e,t,r){var a;ZX(e,t)&&!YX(e,t)||(e.set(KX,e.get(KX)|t),"#__internal__@babel/preset-env__prefer-true-but-false-is-ok-if-it-prevents-an-error"===r?(tJ(e,t,!0),e.set(JX,e.get(JX)|t)):"#__internal__@babel/preset-env__prefer-false-but-true-is-ok-if-it-prevents-an-error"===r?(tJ(e,t,!1),e.set(JX,e.get(JX)|t)):tJ(e,t,r));for(var n,s=i(zX);!(n=s()).done;){var o=y(n.value,2),d=o[0],c=o[1];if(ZX(e,d)&&!YX(e,d)){var l=eJ(e,d);if(a===!l)throw new Error("'loose' mode configuration must be the same for @babel/plugin-transform-class-properties, @babel/plugin-transform-private-methods and @babel/plugin-transform-private-property-in-object (when they are enabled).\n\n"+QX(e));a=l;var u=c}}if(void 0!==a)for(var p,f=i(zX);!(p=f()).done;){var g=y(p.value,2),m=g[0],h=g[1];ZX(e,m)&&eJ(e,m)!==a&&(tJ(e,m,a),console.warn('Though the "loose" option was set to "'+!a+'" in your @babel/preset-env config, it will not be used for '+h+' since the "loose" mode option was set to "'+a+'" for '+u+'.\nThe "loose" option must be the same for @babel/plugin-transform-class-properties, @babel/plugin-transform-private-methods and @babel/plugin-transform-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding\n\t["'+h+'", { "loose": '+a+' }]\nto the "plugins" section of your Babel config.\n\n'+QX(e)))}}function QX(e){var t=e.opts.filename;return t&&"unknown"!==t||(t="[name of the input file]"),"If you already set the same 'loose' mode for these plugins in your config, it's possible that they are enabled multiple times with different options.\nYou can re-run Babel with the BABEL_SHOW_CONFIG_FOR environment variable to show the loaded configuration:\n\tnpx cross-env BABEL_SHOW_CONFIG_FOR="+t+" <your build command>\nSee https://babeljs.io/docs/configuration#print-effective-configs for more info."}function ZX(e,t){return!!(e.get(KX)&t)}function eJ(e,t){return!!(e.get(XX)&t)}function tJ(e,t,r){r?e.set(XX,e.get(XX)|t):e.set(XX,e.get(XX)&~t),e.set(JX,e.get(JX)&~t)}var rJ="@babel/plugin-class-features/version";function aJ(e){var t,r=e.name,a=e.feature,n=e.loose,s=e.manipulateOptions,o=e.api,d=e.inherits,c=e.decoratorVersion;if(a&HX.decorators&&("2023-11"===c||"2023-05"===c||"2023-01"===c||"2022-03"===c||"2021-12"===c))return function(e,t,r,a){var n,s,o=e.assertVersion,i=e.assumption,d=t.loose;o("*");var c=new WeakSet,l=null!=(n=i("constantSuper"))?n:d,u=null!=(s=i("ignoreFunctionLength"))?s:d,p=FX(LX,f);function f(e,t,a){var n;if(!c.has(e)){var s=e.node;null!=a||(a=null==(n=s.id)?void 0:n.name);var o=OX(e,t,l,u,a,p,r);o?c.add(o):c.add(e)}}return{name:"proposal-decorators",inherits:a,visitor:Object.assign({ExportDefaultDeclaration:function(e,t){var r=e.node.declaration;if("ClassDeclaration"===(null==r?void 0:r.type)&&BX(r)){var a=!r.id,n=e.splitExportDeclaration();a&&f(n,t,Cs("default"))}},ExportNamedDeclaration:function(e){var t=e.node.declaration;"ClassDeclaration"===(null==t?void 0:t.type)&&BX(t)&&e.splitExportDeclaration()},Class:function(e,t){f(e,t,void 0)}},p)}}(o,{loose:n},c,d);null!=o||(o={assumption:function(){}});var l=o.assumption("setPublicClassFields"),u=o.assumption("privateFieldsAsSymbols"),p=o.assumption("privateFieldsAsProperties"),f=null!=(t=o.assumption("noUninitializedPrivateFieldAccess"))&&t,g=o.assumption("constantSuper"),m=o.assumption("noDocumentAll");if(p&&u)throw new Error('Cannot enable both the "privateFieldsAsProperties" and "privateFieldsAsSymbols" assumptions as the same time.');var v=p||u;if(!0===n){var x=[];void 0!==l&&x.push('"setPublicClassFields"'),void 0!==p&&x.push('"privateFieldsAsProperties"'),void 0!==u&&x.push('"privateFieldsAsSymbols"'),0!==x.length&&console.warn("["+r+']: You are using the "loose: true" option and you are explicitly setting a value for the '+x.join(" and ")+" assumption"+(x.length>1?"s":"")+'. The "loose" option can cause incompatibilities with the other class features plugins, so it\'s recommended that you replace it with the following top-level option:\n\t"assumptions": {\n\t\t"setPublicClassFields": true,\n\t\t"privateFieldsAsSymbols": true\n\t}')}return{name:r,manipulateOptions:s,inherits:d,pre:function(e){$X(e,a,n),"number"!=typeof e.get(rJ)&&e.get(rJ)&&!WH.lt(e.get(rJ),"7.28.6")||e.set(rJ,"7.28.6")},visitor:{Class:function(e,t){var r=t.file;if("7.28.6"===r.get(rJ)&&function(e,t){var r=null,a=null,n=null,s=null,o=null;tX(e.node)&&(r=e.get("decorators.0"));for(var d,c=i(e.get("body.body"));!(d=c()).done;){var l=d.value;!r&&tX(l.node)&&(r=l.get("decorators.0")),!a&&l.isClassProperty()&&(a=l),!n&&l.isClassPrivateProperty()&&(n=l),!s&&null!=l.isClassPrivateMethod&&l.isClassPrivateMethod()&&(s=l),!o&&null!=l.isStaticBlock&&l.isStaticBlock()&&(o=l)}if(r&&n)throw n.buildCodeFrameError("Private fields in decorated classes are not supported yet.");if(r&&s)throw s.buildCodeFrameError("Private methods in decorated classes are not supported yet.");if(r&&!ZX(t,HX.decorators))throw e.buildCodeFrameError('Decorators are not enabled.\nIf you are using ["@babel/plugin-proposal-decorators", { "version": "legacy" }], make sure it comes *before* "@babel/plugin-transform-class-properties" and enable loose mode, like so:\n\t["@babel/plugin-proposal-decorators", { "version": "legacy" }]\n\t["@babel/plugin-transform-class-properties", { "loose": true }]');if(s&&!ZX(t,HX.privateMethods))throw s.buildCodeFrameError("Class private methods are not enabled. Please add `@babel/plugin-transform-private-methods` to your configuration.");if((a||n)&&!ZX(t,HX.fields)&&!ZX(t,HX.privateMethods))throw e.buildCodeFrameError("Class fields are not enabled. Please add `@babel/plugin-transform-class-properties` to your configuration.");if(o&&!ZX(t,HX.staticBlocks))throw e.buildCodeFrameError("Static class blocks are not enabled. Please add `@babel/plugin-transform-class-static-block` to your configuration.");return!!(r||s||o)||!(!a&&!n||!ZX(t,HX.fields))}(e,r)){var n=e.isClassDeclaration();n&&vK(e);for(var s,o,d=eJ(r,a),c=rX(e.node),x=[],R=[],j=[],w=new Set,E=i(e.get("body").get("body"));!(o=E()).done;){var S=o.value;if((S.isClassProperty()||S.isClassMethod())&&S.node.computed&&j.push(S),S.isPrivate()){var T=S.node.key.id.name,P="get "+T,A="set "+T;if(S.isClassPrivateMethod()){if("get"===S.node.kind){if(w.has(P)||w.has(T)&&!w.has(A))throw S.buildCodeFrameError("Duplicate private field");w.add(P).add(T)}else if("set"===S.node.kind){if(w.has(A)||w.has(T)&&!w.has(P))throw S.buildCodeFrameError("Duplicate private field");w.add(A).add(T)}}else{if(w.has(T)&&!w.has(P)&&!w.has(A)||w.has(T)&&(w.has(P)||w.has(A)))throw S.buildCodeFrameError("Duplicate private field");w.add(T)}}S.isClassMethod({kind:"constructor"})?s=S:(R.push(S),(S.isProperty()||S.isPrivate()||null!=S.isStaticBlock&&S.isStaticBlock())&&x.push(S))}if(x.length||c){var k,C=e.node.id;C&&n||(e.ensureFunctionName(!1),k=e.scope.generateUidIdentifier((null==C?void 0:C.name)||"Class"));var _,I,D,O,N,B,M,F=null!=k?k:sm(C),L=function(e,t,r,a){for(var n,s,o=new Map,d=i(r);!(s=d()).done;){var c=s.value;if(c.isPrivate()){var l=c.node.key.id.name,u=o.get(l);if(!u){var p=!c.isProperty(),f=c.node.static,g=!1,m=void 0;!t&&xK(a)&&p&&!f?(g=!!n,null!=n||(n=c.scope.generateUidIdentifier(e+"_brand")),m=n):m=c.scope.generateUidIdentifier(l),u={id:m,static:f,method:p,initAdded:g},o.set(l,u)}if(c.isClassPrivateMethod())if("get"===c.node.kind){var y=c.node.body.body,h=void 0;1===y.length&&je(h=y[0])&&Z(h=h.argument)&&1===h.arguments.length&&Se(h.arguments[0])&&ie(h=h.callee)?(u.getId=sm(h),u.getterDeclared=!0):u.getId=c.scope.generateUidIdentifier("get_"+l)}else if("set"===c.node.kind){var b=c.node.params,v=c.node.body.body,x=void 0;1===v.length&&re(x=v[0])&&Z(x=x.expression)&&2===x.arguments.length&&Se(x.arguments[0])&&ie(x.arguments[1],{name:b[0].name})&&ie(x=x.callee)?(u.setId=sm(x),u.setterDeclared=!0):u.setId=c.scope.generateUidIdentifier("set_"+l)}else"method"===c.node.kind&&(u.methodId=c.scope.generateUidIdentifier(l));o.set(l,u)}}return o}(F.name,null!=v?v:d,x,r),U=function(e,t,r,a){for(var n,s=[],o=new Set,d=i(e);!(n=d()).done;){var c=y(n.value,2),l=c[0],u=c[1],p=u.static,f=u.method,g=u.getId,m=u.setId,b=g||m,v=sm(u.id),x=void 0;if(t)x=gs(a.addHelper("classPrivateFieldLooseKey"),[Cs(l)]);else if(r)x=gs(Ps("Symbol"),[Cs(l)]);else if(!p){if(o.has(v.name))continue;o.add(v.name),x=Ms(Ps(!f||b&&!xK(a)?"WeakMap":"WeakSet"),[])}x&&(r||DH(x),s.push(pj.statement.ast(Az||(Az=h(["var "," = ",""])),v,x)))}return s}(L,null!=p?p:d,null!=u&&u,r);if(function(e,t,r,a,n){var s=a.privateFieldsAsProperties,o=a.noUninitializedPrivateFieldAccess,i=a.noDocumentAll,d=a.innerBinding;if(r.size){var c=t.get("body"),l=s?_K:CK;mz(c,jK,Object.assign({privateNamesMap:r,classRef:e,file:n},l,{noDocumentAll:i,noUninitializedPrivateFieldAccess:o,innerBinding:d})),c.traverse(SK,{privateNamesMap:r,classRef:e,file:n,privateFieldsAsProperties:s,innerBinding:d})}}(F,e,L,{privateFieldsAsProperties:null!=v?v:d,noUninitializedPrivateFieldAccess:f,noDocumentAll:m,innerBinding:C},r),c){I=N=_=[];var q=function(e,t,r,a){var n,s=t.node,o=t.scope,i=o.generateUidIdentifier("initialize"),d=s.id&&t.isDeclaration(),c=t.isInStrictMode(),l=s.superClass;s.type="ClassDeclaration",s.id||(s.id=sm(e)),l&&(n=o.generateUidIdentifierBasedOnNode(s.superClass,"super"),s.superClass=n);var u=GX(s),p=os(r.filter(function(e){return!e.node.abstract&&"TSIndexSignature"!==e.node.type}).map(function(e){return VX(a,s.id,n,e)})),f=pj.expression.ast(vX||(vX=h(["\n ","(\n ",",\n function (",", ",") {\n ","\n return { F: ",", d: "," };\n },\n ","\n )\n "])),function(e){return e.addHelper("decorate")}(a),u||{type:"NullLiteral"},i,l?sm(n):null,s,sm(s.id),p,l);c||f.arguments[1].body.directives.push(ls(us("use strict")));var g=f,m="arguments.1.body.body.0";return d&&(g=pj.statement.ast(xX||(xX=h(["let "," = ",""])),e,f),m="declarations.0.init."+m),{instanceNodes:[pj.statement.ast(RX||(RX=h(["\n ","(this)\n "])),sm(i))],wrapClass:function(e){return e.replaceWith(g),e.get(m)}}}(F,e,R,r);D=q.instanceNodes,M=q.wrapClass}else{_=function(e,t,r){for(var a,n=e.scope,s=[],o={classBinding:e.node.id&&n.getBinding(e.node.id.name),file:r},d=i(t);!(a=d()).done;){var c=a.value,l=c.get("key");l.isReferencedIdentifier()?zK(l,o):l.traverse(QK,o);var u=c.node;if(!l.isConstantExpression()){var p=eX(l.node,n,n.generateUidBasedOnNode(l.node));p&&(s.push(Rs(p)),u.key=sm(p.left))}}return s}(e,j,r);var G=WK(k,e.node.superClass,x,L,r,null!=l?l:d,null!=v?v:d,f,null!=g?g:d,C);I=G.staticNodes,N=G.pureStaticNodes,D=G.instanceNodes,O=G.lastInstanceNodeReturnsThis,B=G.classBindingNode,M=G.wrapClass}D.length>0&&ZK(e,s,D,function(e,t){if(!c)for(var r,a=i(x);!(r=a()).done;){var n=r.value;null!=dt&&dt(n.node)||n.node.static||n.traverse(e,t)}},O);var W=M(e);W.insertBefore([].concat(b(U),b(_))),I.length>0&&W.insertAfter(I),N.length>0&&W.find(function(e){return e.isStatement()||e.isDeclaration()}).insertAfter(N),null!=B&&n&&W.insertAfter(B)}}},ExportDefaultDeclaration:function(e,t){if("7.28.6"===t.file.get(rJ)){var r=e.get("declaration");r.isClassDeclaration()&&rX(r.node)&&(r.node.id?e.splitExportDeclaration():r.node.type="ClassExpression")}}}}}var nJ,sJ,oJ,iJ=function(e,t){return e.assertVersion("*"),aJ({name:"transform-class-properties",api:e,feature:HX.fields,loose:t.loose,manipulateOptions:function(e,t){t.plugins.push("classProperties","classPrivateProperties")}})};var dJ=function(e){var t=e.types,r=e.template,a=e.traverse;(0,e.assertVersion)("*");var n=FX(function(e){if(!e.isClassExpression())return!1;for(var r=e.node.body.body.length-1;r>=0;r--){var a=e.node.body.body[r];if(t.isStaticBlock(a))return!0;if((t.isClassProperty(a)||t.isClassPrivateProperty(a))&&a.static)break}return!1},function(e,a,n){var s="string"==typeof n?t.stringLiteral(n):n;e.get("body").unshiftContainer("body",t.staticBlock([r.statement.ast(nJ||(nJ=h(["\n ","(this, ",");\n "])),a.addHelper("setFunctionName"),s)]))});t.classAccessorProperty||delete n.ClassAccessorProperty;var s=a.visitors.explode(n),o=function(e){return 1===e.length?e[0]:t.sequenceExpression(e)},d=function(e){return e.map(function(e){var a=e.body;return 1===a.length&&t.isExpressionStatement(a[0])?t.inheritsComments(t.inheritsComments(a[0].expression,a[0]),e):t.inheritsComments(r.expression.ast(sJ||(sJ=h(["(() => { "," })()"])),a),e)})},c=function(e,r){var a,n;e.value=e.value?t.sequenceExpression([].concat(b(r),[e.value])):o((n=function(e){return t.unaryExpression("void",e)},0===(a=r).length?a:[].concat(b(a.slice(0,-1)),[n(a[a.length-1])])))};return{name:"transform-class-static-block",manipulateOptions:function(e,t){return t.plugins.push("classStaticBlock")},pre:function(){$X(this.file,HX.staticBlocks,!1)},visitor:{ClassBody:function(e){var a=this,n=e.scope,l=e.parentPath;if(l.isClassExpression()&&!l.node.id){do{l=l.parentPath}while(l&&!s[l.type]&&!l.isStatement());var u;if(l)null==(u=s[l.type])||u.enter.forEach(function(e){return e.call(a,l,a)})}for(var p,f=[],g=null,m=i(e.get("body"));!(p=m()).done;){var y=p.value;y.isStaticBlock()?(f.push(y.node),y.remove()):(y.isClassProperty({static:!0})||y.isClassPrivateProperty({static:!0}))&&(g=y,f.length>0&&(c(y.node,d(f)),f.length=0))}if(f.length>0){var b,v=n.generateDeclaredUidIdentifier("staticBlock"),x=e.parentPath.isExpression();if(f.length>1||1===f[0].body.length&&t.isExpressionStatement(f[0].body[0])){var R=d(f);x&&R.push(t.thisExpression()),b=o(R)}else b=t.blockStatement(f[0].body),x&&b.body.push(t.returnStatement(t.thisExpression()));var j=r.expression.ast(oJ||(oJ=h([""," = () => ",""])),v,b);if(g)c(g.node,[j]);else{for(var w,E=new Set,S=i(e.get("body"));!(w=S()).done;){var T=w.value;T.isPrivate()&&E.add(T.get("key.id").node.name)}var P=function(e,t){var r,a=1;do{r="_",a>1&&(r+=a),a++}while(t.has(r));return r}(0,E),A=t.privateName(t.identifier(P));e.pushContainer("body",[t.classPrivateProperty(A,j,[],!0)])}var k=t.callExpression(t.cloneNode(v),[]);e.parentPath.isClassExpression()?e.parentPath.replaceWith(t.sequenceExpression([e.parent,k])):e.parentPath.insertAfter(t.expressionStatement(k))}}}}},cJ=pj.statement("\n DECORATOR(CLASS_REF = INNER) || CLASS_REF;\n"),lJ=pj("\n CLASS_REF.prototype;\n"),uJ=pj("\n Object.getOwnPropertyDescriptor(TARGET, PROPERTY);\n"),pJ=pj("\n (TEMP = Object.getOwnPropertyDescriptor(TARGET, PROPERTY), (TEMP = TEMP ? TEMP.value : undefined), {\n enumerable: true,\n configurable: true,\n writable: true,\n initializer: function(){\n return TEMP;\n }\n })\n"),fJ=new WeakSet;function gJ(e){var t=(e.isClass()?[e].concat(b(e.get("body.body"))):e.get("properties")).reduce(function(e,t){return e.concat(t.node.decorators||[])},[]),r=t.filter(function(e){return!ie(e.expression)});if(0!==r.length)return Vs(r.map(function(t){var r=t.expression;return is("=",t.expression=e.scope.generateDeclaredUidIdentifier("dec"),r)}).concat([e.node]))}function mJ(e){var t;return!(null==(t=e.decorators)||!t.length)}function yJ(e){return e.some(function(e){var t;return null==(t=e.decorators)?void 0:t.length})}function hJ(e,t,r){var a=e.scope.generateDeclaredUidIdentifier(e.isClass()?"class":"obj"),n=r.reduce(function(r,n){var s=[];if(null!=n.decorators&&(s=n.decorators,n.decorators=null),0===s.length)return r;if(n.computed)throw e.buildCodeFrameError("Computed method/property decorators are not yet supported.");var o=dr(n.key)?n.key:Cs(n.key.name),i=e.isClass()&&!n.static?lJ({CLASS_REF:a}).expression:a;if(st(n,{static:!1})){var d=e.scope.generateDeclaredUidIdentifier("descriptor"),c=n.value?Ts(null,[],ps([Ws(n.value)])):{type:"NullLiteral"};n.value=gs(t.addHelper("initializerWarningHelper"),[d,{type:"ThisExpression"}]),fJ.add(n.value),r.push(is("=",sm(d),gs(t.addHelper("applyDecoratedDescriptor"),[sm(i),sm(o),os(s.map(function(e){return sm(e.expression)})),Ls([qs(Ps("configurable"),Ds(!0)),qs(Ps("enumerable"),Ds(!0)),qs(Ps("writable"),Ds(!0)),qs(Ps("initializer"),c)])])))}else r.push(gs(t.addHelper("applyDecoratedDescriptor"),[sm(i),sm(o),os(s.map(function(e){return sm(e.expression)})),xe(n)||st(n,{static:!0})?pJ({TEMP:e.scope.generateDeclaredUidIdentifier("init"),TARGET:sm(i),PROPERTY:sm(o)}).expression:uJ({TARGET:sm(i),PROPERTY:sm(o)}).expression,sm(i)]));return r},[]);return Vs([is("=",sm(a),e.node),Vs(n),sm(a)])}function bJ(e){var t=e.node,r=e.scope;if(mJ(t)||yJ(t.body.body))return Zs("let",[eo(t.id?sm(t.id):r.generateUidIdentifier("class"),by(t))])}var vJ,xJ={ExportDefaultDeclaration:function(e){var t=e.get("declaration");if(t.isClassDeclaration()){var r=bJ(t);if(r){var a=y(e.replaceWithMultiple([r,po(null,[fo(sm(r.declarations[0].id),Ps("default"))])]),1)[0];t.node.id||e.scope.registerDeclaration(a)}}},ClassDeclaration:function(e){var t=bJ(e);if(t){var r=y(e.replaceWith(t),1)[0].get("declarations.0"),a=r.node.id,n=e.scope.getOwnBinding(a.name);n.identifier=a,n.path=r}},ClassExpression:function(e,t){var r=gJ(e)||function(e){if(mJ(e.node)){var t=e.node.decorators||[];e.node.decorators=null;var r=e.scope.generateDeclaredUidIdentifier("class");return t.map(function(e){return e.expression}).reverse().reduce(function(e,t){return cJ({CLASS_REF:sm(r),DECORATOR:sm(t),INNER:e}).expression},e.node)}}(e)||function(e,t){if(yJ(e.node.body.body))return hJ(e,t,e.node.body.body)}(e,t);r&&e.replaceWith(r)},ObjectExpression:function(e,t){var r=gJ(e)||function(e,t){if(yJ(e.node.properties))return hJ(e,t,e.node.properties.filter(function(e){return"SpreadElement"!==e.type}))}(e,t);r&&e.replaceWith(r)},AssignmentExpression:function(e,t){fJ.has(e.node.right)&&e.replaceWith(gs(t.addHelper("initializerDefineProperty"),[sm(e.get("left.object").node),Cs(e.get("left.property").node.name||e.get("left.property").node.value),sm(e.get("right.arguments")[0].node),sm(e.get("right.arguments")[1].node)]))},CallExpression:function(e,t){3===e.node.arguments.length&&fJ.has(e.node.arguments[2])&&e.node.callee.name===t.addHelper("defineProperty").name&&e.replaceWith(gs(t.addHelper("initializerDefineProperty"),[sm(e.get("arguments")[0].node),sm(e.get("arguments")[1].node),sm(e.get("arguments.2.arguments")[0].node),sm(e.get("arguments.2.arguments")[1].node)]))}},RJ=function(e,t){e.assertVersion("*");var r=t.legacy,a=t.version;if(r||"legacy"===a)return{name:"proposal-decorators",inherits:XV,visitor:xJ};if(a&&"2018-09"!==a&&"2021-12"!==a&&"2022-03"!==a&&"2023-01"!==a&&"2023-05"!==a&&"2023-11"!==a)throw new Error("The '.version' option must be one of 'legacy', '2023-11', '2023-05', '2023-01', '2022-03', or '2021-12'.");return e.assertVersion("*"),aJ({name:"proposal-decorators",api:e,feature:HX.decorators,inherits:XV,decoratorVersion:a})};function jJ(e){return Te(e)&&"void"===e.operator&&or(e.argument)}function wJ(e,t){e.ensureBlock();var r,a=e.scope,n=e.node,s=e.get("body").scope.bindings,o=Object.keys(s).some(function(e){return a.hasBinding(e)});o?n.body=ps([].concat(b(t),[n.body])):(r=n.body.body).unshift.apply(r,b(t))}function EJ(e){return e.elements.some(function(e){return Re(e)})}var SJ={},TJ=function(e,t,r){if(t.length&&ie(e)&&Gy(e,t[t.length-1].node)&&r.bindings[e.name])throw r.deopt=!0,SJ},PJ=function(){function e(e){this.blockHoist=void 0,this.operator=void 0,this.arrayRefSet=void 0,this.nodes=void 0,this.scope=void 0,this.kind=void 0,this.iterableIsArray=void 0,this.arrayLikeIsIterable=void 0,this.objectRestNoSymbols=void 0,this.useBuiltIns=void 0,this.addHelper=void 0,this.blockHoist=e.blockHoist,this.operator=e.operator,this.arrayRefSet=new Set,this.nodes=e.nodes||[],this.scope=e.scope,this.kind=e.kind,this.iterableIsArray=e.iterableIsArray,this.arrayLikeIsIterable=e.arrayLikeIsIterable,this.objectRestNoSymbols=e.objectRestNoSymbols,this.useBuiltIns=e.useBuiltIns,this.addHelper=e.addHelper}var t=e.prototype;return t.getExtendsHelper=function(){return this.useBuiltIns?Bs(Ps("Object"),Ps("assign")):this.addHelper("extends")},t.buildVariableAssignment=function(e,t){var r,a,n=this.operator;((me(e)||at(e))&&(n="="),n)?r=Rs(is(n,e,sm(t)||this.scope.buildUndefinedNode())):(a="const"===this.kind&&null===t?this.scope.buildUndefinedNode():sm(t),r=Zs(this.kind,[eo(e,a)]));return r._blockHoist=this.blockHoist,r},t.buildVariableDeclaration=function(e,t){var r=Zs("var",[eo(sm(e),sm(t))]);return r._blockHoist=this.blockHoist,r},t.push=function(e,t){var r=sm(t);Ke(e)?this.pushObjectPattern(e,r):_e(e)?this.pushArrayPattern(e,r):Ce(e)?this.pushAssignmentPattern(e,r):this.nodes.push(this.buildVariableAssignment(e,r))},t.toArray=function(e,t){if(this.iterableIsArray||ie(e)&&this.arrayRefSet.has(e.name))return e;var r,a=this.scope,n=this.arrayLikeIsIterable;if(ie(e)){var s=a.getBinding(e.name);if(null!=s&&s.constant&&s.path.isGenericType("Array"))return e}if(Y(e))return e;if(ie(e,{name:"arguments"}))return pj.expression.ast(vJ||(vJ=h(["\n Array.prototype.slice.call(",")\n "])),e);var o=[e];return"number"==typeof t?(o.push(_s(t)),r="slicedToArray"):r="toArray",n&&(o.unshift(a.path.hub.addHelper(r)),r="maybeArrayLike"),gs(a.path.hub.addHelper(r),o)},t.pushAssignmentPattern=function(e,t){var r=e.left,a=e.right;if(jJ(t))this.push(r,a);else{var n=this.scope.generateUidIdentifierBasedOnNode(t);this.nodes.push(this.buildVariableDeclaration(n,t));var s,o,i=ys(ds("===",sm(n),this.scope.buildUndefinedNode()),a,sm(n));if(ur(r))"const"===this.kind||"let"===this.kind?(s=this.scope.generateUidIdentifier(n.name),o=this.buildVariableDeclaration(s,i)):(s=n,o=Rs(is("=",sm(n),i))),this.nodes.push(o),this.push(r,s);else this.nodes.push(this.buildVariableAssignment(r,i))}},t.pushObjectRest=function(e,t,r,a){var n=this,s=AJ(e.properties.slice(0,a),t,this.scope,function(e){return n.addHelper(e)},this.objectRestNoSymbols,this.useBuiltIns);this.nodes.push(this.buildVariableAssignment(r.argument,s))},t.pushObjectProperty=function(e,t){dr(e.key)&&(e.computed=!0);var r=e.value,a=Bs(sm(t),e.key,e.computed);ur(r)?this.push(r,a):this.nodes.push(this.buildVariableAssignment(r,a))},t.pushObjectPattern=function(e,t){if(e.properties.length){if(e.properties.length>1&&!this.scope.isStatic(t)){var r=this.scope.generateUidIdentifierBasedOnNode(t);this.nodes.push(this.buildVariableDeclaration(r,t)),t=r}if(function(e){return e.properties.some(function(e){return Re(e)})}(e))for(var a,n=0;n<e.properties.length;n++){var s=e.properties[n];if(Re(s))break;var o=s.key;if(s.computed&&!this.scope.isPure(o)){var i=this.scope.generateUidIdentifierBasedOnNode(o);this.nodes.push(this.buildVariableDeclaration(i,o)),a||(a=e=Object.assign({},e,{properties:e.properties.slice()})),a.properties[n]=Object.assign({},s,{key:i})}}for(var d=0;d<e.properties.length;d++){var c=e.properties[d];Re(c)?this.pushObjectRest(e,t,c,d):this.pushObjectProperty(c,t)}}else this.nodes.push(Rs(gs(this.addHelper("objectDestructuringEmpty"),jJ(t)?[]:[t])))},t.canUnpackArrayPattern=function(e,t){if(!Y(t))return!1;if(!(e.elements.length>t.elements.length)){if(e.elements.length<t.elements.length&&!EJ(e))return!1;for(var r,a=i(e.elements);!(r=a()).done;){var n=r.value;if(!n)return!1;if(me(n))return!1}for(var s,o=i(t.elements);!(s=o()).done;){var d=s.value;if(Xe(d))return!1;if(Z(d))return!1;if(me(d))return!1}var c={deopt:!1,bindings:Iy(e)};try{By(t,TJ,c)}catch(e){if(e!==SJ)throw e}return!c.deopt}},t.pushUnpackedArrayPattern=function(e,t){for(var r=this,a=function(e){return null!=e?e:r.scope.buildUndefinedNode()},n=0;n<e.elements.length;n++){var s=e.elements[n];Re(s)?this.push(s.argument,os(t.elements.slice(n).map(a))):this.push(s,a(t.elements[n]))}},t.pushArrayPattern=function(e,t){if(null!==t){if(e.elements)if(this.canUnpackArrayPattern(e,t))this.pushUnpackedArrayPattern(e,t);else{var r=!EJ(e)&&e.elements.length,a=this.toArray(t,r);ie(a)?t=a:(t=this.scope.generateUidIdentifierBasedOnNode(t),this.arrayRefSet.add(t.name),this.nodes.push(this.buildVariableDeclaration(t,a)));for(var n=0;n<e.elements.length;n++){var s=e.elements[n];s&&(Re(s)?this.push(s.argument,gs(Bs(gs(this.scope.path.hub.addHelper("arrayLikeToArray"),[t]),Ps("slice")),[_s(n)])):this.push(s,Bs(t,_s(n),!0)))}}}else this.nodes.push(Rs(gs(this.addHelper("objectDestructuringEmpty"),[])))},t.init=function(e,t){if(!Y(t)&&!me(t)){var r=this.scope.maybeGenerateMemoised(t,!0);r&&(this.nodes.push(this.buildVariableDeclaration(r,sm(t))),t=r)}return this.push(e,t),this.nodes},o(e)}();function AJ(e,t,r,a,n,s){for(var o,i=[],d=!0,c=!1,l=0;l<e.length;l++){var u=e[l],p=u.key;ie(p)&&!u.computed?i.push(Cs(p.name)):$e(p)?(i.push(sm(p)),c=!0):dr(p)?i.push(Cs(String(p.value))):it(p)||(i.push(sm(p)),d=!1)}if(0===i.length){o=gs(s?Bs(Ps("Object"),Ps("assign")):a("extends"),[Ls([]),Vs([gs(a("objectDestructuringEmpty"),[sm(t)]),sm(t)])])}else{var f=os(i);if(d){if(!c&&!he(r.block)){var g=r.getProgramParent(),m=g.generateUidIdentifier("excluded");g.push({id:m,init:f,kind:"const"}),f=sm(m)}}else f=gs(Bs(f,Ps("map")),[a("toPropertyKey")]);o=gs(a("objectWithoutProperties"+(n?"Loose":"")),[sm(t),f])}return o}function kJ(e){for(var t,r=i(e.declarations);!(t=r()).done;){var a=t.value;if(ur(a.id)&&"VoidPattern"!==a.id.type)return!0}return!1}var CJ=function(e,t){var r,a,n,s,o,i;e.assertVersion("*");var d=t.useBuiltIns,c=void 0!==d&&d,l=null!=(r=null!=(a=e.assumption("iterableIsArray"))?a:t.loose)&&r,u=null!=(n=null!=(s=t.allowArrayLike)?s:e.assumption("arrayLikeIsIterable"))&&n,p=null!=(o=null!=(i=e.assumption("objectRestNoSymbols"))?i:t.loose)&&o;return{name:"transform-destructuring",visitor:{ExportNamedDeclaration:function(e){var t=e.get("declaration");t.isVariableDeclaration()&&kJ(t.node)&&e.splitExportDeclaration()},ForXStatement:function(e){var t=this,r=e.node,a=e.scope,n=r.left;if(ur(n)){var s=a.generateUidIdentifier("ref");r.left=Zs("var",[eo(s)]),e.ensureBlock();var o=[];return 0===e.node.body.body.length&&e.isCompletionRecord()&&o.unshift(Rs(a.buildUndefinedNode())),o.unshift(Rs(is("=",n,sm(s)))),wJ(e,o),void a.crawl()}if(Ae(n)){var i=n.declarations[0].id;if(ur(i)&&"VoidPattern"!==i.type){var d=a.generateUidIdentifier("ref");r.left=Zs(n.kind,[eo(d,null)]);var f=[],g=new PJ({kind:n.kind,scope:a,nodes:f,arrayLikeIsIterable:u,iterableIsArray:l,objectRestNoSymbols:p,useBuiltIns:c,addHelper:function(e){return t.addHelper(e)}});g.init(i,d),wJ(e,f),a.crawl()}}},CatchClause:function(e){var t=this,r=e.node,a=e.scope,n=r.param;if(ur(n)){var s=a.generateUidIdentifier("ref");r.param=s;var o=[],i=new PJ({kind:"let",scope:a,nodes:o,arrayLikeIsIterable:u,iterableIsArray:l,objectRestNoSymbols:p,useBuiltIns:c,addHelper:function(e){return t.addHelper(e)}});i.init(n,s),r.body.body=[].concat(o,b(r.body.body)),a.crawl()}},AssignmentExpression:function(e,t){ur(e.node.left)&&function(e,t,r,a,n,s){var o,i=e.node,d=e.scope,c=e.parentPath,l=[],u=new PJ({operator:i.operator,scope:d,nodes:l,arrayLikeIsIterable:r,iterableIsArray:a,objectRestNoSymbols:n,useBuiltIns:s,addHelper:t});(!c.isExpressionStatement()&&!c.isSequenceExpression()||e.isCompletionRecord())&&(o=d.generateUidIdentifierBasedOnNode(i.right,"ref"),l.push(Zs("var",[eo(o,i.right)])),Y(i.right)&&u.arrayRefSet.add(o.name)),u.init(i.left,o||i.right),o&&(c.isArrowFunctionExpression()?(e.replaceWith(ps([])),l.push(Ws(sm(o)))):l.push(Rs(sm(o)))),e.replaceWithMultiple(l),d.crawl()}(e,function(e){return t.addHelper(e)},u,l,p,c)},VariableDeclaration:function(e,t){var r=e.node,a=e.parent;ar(a)||a&&e.container&&kJ(r)&&function(e,t,r,a,n,s){for(var o=e.node,i=e.scope,d=o.kind,c=o.loc,l=[],u=0;u<o.declarations.length;u++){var p=o.declarations[u],f=p.init,g=p.id,m=new PJ({blockHoist:o._blockHoist,nodes:l,scope:i,kind:o.kind,iterableIsArray:a,arrayLikeIsIterable:r,useBuiltIns:s,objectRestNoSymbols:n,addHelper:t});ur(g)?(m.init(g,f),+u!==o.declarations.length-1&&Cy(l[l.length-1],p)):l.push(Cy(m.buildVariableAssignment(g,f),p))}for(var y=null,h=[],v=0,x=l;v<x.length;v++){var R=x[v];if(Ae(R)){if(null!==y){var j;(j=y.declarations).push.apply(j,b(R.declarations));continue}R.kind=d,y=R}else y=null;R.loc||(R.loc=c),h.push(R)}if(2===h.length&&Ae(h[0])&&re(h[1])&&Z(h[1].expression)&&1===h[0].declarations.length){var w=h[1].expression;w.arguments=[h[0].declarations[0].init],h=[w]}else if(ne(e.parent,{init:o})&&!h.some(function(e){return Ae(e)}))for(var E=0;E<h.length;E++){var S=h[E];re(S)&&(h[E]=S.expression)}1===h.length?e.replaceWith(h[0]):e.replaceWithMultiple(h),i.crawl()}(e,function(e){return t.addHelper(e)},u,l,p,c)}}}},_J=p().m(QJ),IJ=p().m(eY),DJ=p().m(rY),OJ=is,NJ=ds,BJ=ys,MJ=sm,FJ=xe,LJ=it,UJ=Bs,qJ=_s,GJ=jo,WJ=Gs,VJ=eo,HJ=Zs,zJ=$s;function KJ(e,t){return BJ(NJ("===",MJ(t),zJ("void",qJ(0))),e,MJ(t))}function XJ(e){if("ObjectPattern"===e.type){var t=e.properties;if("RestElement"===t[t.length-1].type)return[]}return null}function JJ(e,t,r){if(null!==e)for(var a,n=function(){var t=a.value,n=t.key;if(t.computed&&!r.isStatic(n)){var s=r.generateDeclaredUidIdentifier("m");t.key=OJ("=",s,n),e.push({key:s,computed:!0})}else if("PrivateName"!==n.type){var o=e.some(function(e){if(e.computed||t.computed)return!1;var r=function(e){switch(e.type){case"Identifier":return e.name;case"StringLiteral":return e.value;case"NumericLiteral":case"BigIntLiteral":return String(e.value);default:return null}},a=r(e.key),s=r(n);return null!==a&&null!==s&&a===s});o||e.push(t)}},s=i(t);!(a=s()).done;)n()}function YJ(e,t){var r=$J(e,t,!1),a=r.elements,n=r.transformed;return{params:a,variableDeclaration:HJ("var",n.map(function(e){var t=e.left,r=e.right;return VJ(t,r)}))}}function $J(e,t,r){for(var a,n=[],s=[],o=i(e);!(a=o()).done;){var d=a.value;if(null!==d&&"VoidPattern"!==d.type){var c=t.generateUidIdentifier("p");r&&t.push({id:MJ(c)}),"RestElement"===d.type?(n.push(WJ(c)),d=d.argument):n.push(c),"AssignmentPattern"===d.type?s.push({left:d.left,right:KJ(d.right,c)}):s.push({left:d,right:MJ(c)})}else n.push(null),s.push(null)}return{elements:n,transformed:s}}function QJ(e,t){var r,a,n,s,o,i,d,c,l,u,f;return p().w(function(p){for(;;)switch(p.n){case 0:(r=[]).push({node:e,index:0,depth:0});case 1:if(void 0===(a=r.pop())){p.n=12;break}if(s=(n=a).node,o=n.index,null!==s){p.n=2;break}return p.a(3,1);case 2:return p.d(g(t(s,o,a.depth)),3);case 3:i=a.depth+1,f=s.type,p.n="AssignmentPattern"===f?4:"ObjectProperty"===f?5:"RestElement"===f?6:"ObjectPattern"===f?7:"ArrayPattern"===f?8:"TSParameterProperty"===f||"TSAsExpression"===f||"TSTypeAssertion"===f||"TSNonNullExpression"===f?9:10;break;case 4:return r.push({node:s.left,index:0,depth:i}),p.a(3,11);case 5:return r.push({node:s.value,index:o,depth:a.depth}),p.a(3,11);case 6:return r.push({node:s.argument,index:0,depth:i}),p.a(3,11);case 7:for(d=s.properties,c=d.length-1;c>=0;c--)r.push({node:d[c],index:c,depth:i});return p.a(3,11);case 8:for(l=s.elements,u=l.length-1;u>=0;u--)r.push({node:l[u],index:u,depth:i});return p.a(3,11);case 9:throw new Error("TypeScript features must first be transformed by @babel/plugin-transform-typescript.\nIf you have already enabled that plugin (or '@babel/preset-typescript'), make sure that it runs before @babel/plugin-proposal-destructuring-private.");case 10:return p.a(3,11);case 11:p.n=1;break;case 12:return p.a(2)}},_J)}function ZJ(e){var t=!1;return QJ(e,p().m(function e(r){return p().w(function(e){for(;;)switch(e.n){case 0:if(!FJ(r)||!LJ(r.key)){e.n=1;break}return t=!0,void(e.n=1);case 1:return e.a(2)}},e)})).next(),t}function eY(e){var t;return p().w(function(r){for(;;)switch(r.n){case 0:return t=[],r.d(g(QJ(e,p().m(function e(r,a,n){return p().w(function(e){for(;;)switch(e.n){case 0:if(t[n]=a,!FJ(r)||!LJ(r.key)){e.n=1;break}return e.n=1,t.slice(1,n+1);case 1:return e.a(2)}},e)}))),1);case 1:return r.a(2)}},IJ)}function tY(e){switch(e.type){case"Identifier":case"ArrayPattern":return!0;case"ObjectPattern":return 1===e.properties.length;default:return!1}}function rY(e,t,r,a,n,s,o,i){var d,c,l,u,f,g,m,y,h,v,x,R,j,w,E,S,T,P,A,k,C,_,I,D,O,N,B,M,F,L,U,q;return p().w(function(p){for(;;)switch(p.n){case 0:c=t,(d=[]).push({left:e,right:t,restExcludingKeys:XJ(e)});case 1:if(void 0===(l=d.pop())){p.n=21;break}if(u=l.restExcludingKeys,g=(f=l).left,m=f.right,!(y=eY(g).next()).done){p.n=8;break}if(!((null==u?void 0:u.length)>0)){p.n=6;break}if(h=g.properties,"RestElement"!==(null==(v=h[h.length-1])?void 0:v.type)){p.n=4;break}if(x=h.slice(0,-1),R=v,u&&JJ(u,x,r),!(x.length>0)){p.n=2;break}return p.n=2,{left:GJ(x),right:MJ(m)};case 2:return p.n=3,{left:R.argument,right:AJ(u,m,r,s,o,i)};case 3:return p.a(3,1);case 4:return 1===(j=g.properties).length&&(g=j[0].argument),p.n=5,{left:g,right:AJ(u,m,r,s,o,i)};case 5:p.n=7;break;case 6:return p.n=7,{left:g,right:m};case 7:p.n=20;break;case 8:w=y.value,E=0;case 9:if(!(E<w.length&&void 0!==(S=w[E])||"AssignmentPattern"===g.type)){p.n=19;break}if(!(n&&m===c)&&(tY(g)||r.isStatic(m))){p.n=11;break}return T=r.generateUidIdentifier("m"),a&&r.push({id:MJ(T)}),p.n=10,{left:T,right:m};case 10:m=MJ(T);case 11:q=g.type,p.n="ObjectPattern"===q?12:"AssignmentPattern"===q?14:"ArrayPattern"===q?15:17;break;case 12:if(P=g.properties,!(S>0)){p.n=13;break}return A=P.slice(0,S),p.n=13,{left:GJ(A),right:MJ(m)};case 13:return S<P.length-1&&(JJ(k=0===E?u:XJ(g),P.slice(0,S+1),r),d.push({left:GJ(P.slice(S+1)),right:MJ(m),restExcludingKeys:k})),"VoidPattern"===(C=P[S]).value.type&&(_=r.generateUidIdentifier("_"),a&&r.push({id:MJ(_)}),C.value=_),g=C.value,I=C.key,D=C.computed||"Identifier"!==I.type&&"PrivateName"!==I.type,m=UJ(m,I,D),p.a(3,18);case 14:return m=KJ(g.right,m),g=g.left,p.a(3,18);case 15:return O=g.elements,N=O.splice(S),B=$J(N,r,a),M=B.elements,F=B.transformed,O.push.apply(O,b(M)),p.n=16,{left:g,right:MJ(m)};case 16:for(L=F.length-1;L>0;L--)null!==F[L]&&d.push(F[L]);return U=F[0],g=U.left,m=U.right,p.a(3,18);case 17:return p.a(3,18);case 18:E++,p.n=9;break;case 19:d.push({left:g,right:m,restExcludingKeys:XJ(g)});case 20:p.n=1;break;case 21:return p.a(2)}},DJ)}var aY,nY={"ReferencedIdentifier|BindingIdentifier":function(e,t){var r=e.scope,a=e.node.name;("eval"===a||r.getBinding(a)===t.scope.parent.getBinding(a)&&t.scope.hasOwnBinding(a))&&(t.needsOuterBinding=!0,e.stop())},"TypeAnnotation|TSTypeAnnotation|TypeParameterDeclaration|TSTypeParameterDeclaration":function(e){return e.skip()}};function sY(e,t,r){for(var a=0,n=Object.keys(e.getBindingIdentifiers());a<n.length;a++){var s,o=n[a],d=null==(s=t.bindings[o])?void 0:s.constantViolations;if(d)for(var c,l=i(d);!(c=l()).done;){var u=c.value,p=u.node;switch(p.type){case"VariableDeclarator":if(null===p.init){var f=u.parentPath;if(!f.parentPath.isFor()||f.parentPath.get("body")===f){u.remove();break}}r.add(o);break;case"FunctionDeclaration":r.add(o)}}}}function oY(e,t){for(var r,a=[],n=[],s=i(e);!(r=s()).done;){var o=r.value;a.push(Ps(o)),n.push(Ps(o))}return Ws(gs(so(n,t),a))}var iY=pj.statement("\n let VARIABLE_NAME =\n arguments.length > ARGUMENT_KEY && arguments[ARGUMENT_KEY] !== undefined ?\n arguments[ARGUMENT_KEY]\n :\n DEFAULT_VALUE;\n"),dY=pj.statement("\n if (ASSIGNMENT_IDENTIFIER === UNDEFINED) {\n ASSIGNMENT_IDENTIFIER = DEFAULT_VALUE;\n }\n"),cY=pj.statement("\n let ASSIGNMENT_IDENTIFIER = PARAMETER_NAME === UNDEFINED ? DEFAULT_VALUE : PARAMETER_NAME ;\n"),lY=pj.statement("\n let $0 = arguments.length > $1 ? arguments[$1] : undefined;\n");function uY(e,t,r,a){var n=e.get("params"),s=n.every(function(e){return e.isIdentifier()});if(s)return!1;for(var o,d=e.node,c=e.scope,l=[],u=new Set,p=i(n);!(o=p()).done;){sY(o.value,c,u)}var f={needsOuterBinding:!1,scope:c};if(0===u.size)for(var g,m=i(n);!(g=m()).done;){var y=g.value;if(y.isIdentifier()||y.traverse(nY,f),f.needsOuterBinding)break}for(var b=null,v=0;v<n.length;v++){var x=n[v];if(!r||r(v)){var R=[];a&&a(e,x,R);var j=x.isAssignmentPattern();if(j&&(t||cr(d,{kind:"set"}))){var w=x.get("left"),E=x.get("right"),S=c.buildUndefinedNode();if(w.isIdentifier())l.push(dY({ASSIGNMENT_IDENTIFIER:sm(w.node),DEFAULT_VALUE:E.node,UNDEFINED:S})),x.replaceWith(w.node);else if(w.isObjectPattern()||w.isArrayPattern()){var T=c.generateUidIdentifier();l.push(cY({ASSIGNMENT_IDENTIFIER:w.node,DEFAULT_VALUE:E.node,PARAMETER_NAME:sm(T),UNDEFINED:S})),x.replaceWith(T)}}else if(j){null===b&&(b=v);var P=x.get("left"),A=x.get("right"),k=iY({VARIABLE_NAME:P.node,DEFAULT_VALUE:A.node,ARGUMENT_KEY:_s(v)});l.push(k)}else if(null!==b){var C=lY([x.node,_s(v)]);l.push(C)}else if(x.isObjectPattern()||x.isArrayPattern()){var _=e.scope.generateUidIdentifier("ref");_.typeAnnotation=x.node.typeAnnotation;var I=Zs("let",[eo(x.node,_)]);l.push(I),x.replaceWith(sm(_))}if(R)for(var D,O=i(R);!(D=O()).done;){var N=D.value;l.push(N)}}}null!==b&&(d.params=d.params.slice(0,b)),e.ensureBlock();var B=e,M=d.async,F=d.generator;if(F||f.needsOuterBinding||u.size>0){l.push(oY(u,B.node.body)),e.set("body",ps(l));var L=B.get("body.body"),U=L[L.length-1].get("argument.callee");U.arrowFunctionToExpression(),U.node.generator=F,U.node.async=M,d.generator=!1,d.async=!1,M&&!F&&(B.node.body=pj.statement.ast(aY||(aY=h(["{\n try {\n ","\n } catch (e) {\n return Promise.reject(e);\n }\n }"])),B.node.body.body))}else B.get("body").unshiftContainer("body",l);return!0}var pY=pj.statement("\n for (var LEN = ARGUMENTS.length,\n ARRAY = new Array(ARRAY_LEN),\n KEY = START;\n KEY < LEN;\n KEY++) {\n ARRAY[ARRAY_KEY] = ARGUMENTS[KEY];\n }\n"),fY=pj.expression("\n (INDEX < OFFSET || ARGUMENTS.length <= INDEX) ? undefined : ARGUMENTS[INDEX]\n"),gY=pj.expression("\n REF = INDEX, (REF < OFFSET || ARGUMENTS.length <= REF) ? undefined : ARGUMENTS[REF]\n"),mY=pj.expression("\n ARGUMENTS.length <= OFFSET ? 0 : ARGUMENTS.length - OFFSET\n");function yY(e,t){return e.node.name===t.name&&e.scope.bindingIdentifierEquals(t.name,t.outerBinding)}var hY={Scope:function(e,t){e.scope.bindingIdentifierEquals(t.name,t.outerBinding)||e.skip()},Flow:function(e){e.isTypeCastExpression()||e.skip()},Function:function(e,t){var r=t.noOptimise;t.noOptimise=!0,e.traverse(hY,t),t.noOptimise=r,e.skip()},ReferencedIdentifier:function(e,t){var r=e.node;if("arguments"===r.name&&(t.deopted=!0),yY(e,t))if(t.noOptimise)t.deopted=!0;else{var a=e.parentPath;if("params"===a.listKey&&a.key<t.offset)return;if(a.isMemberExpression({object:r})){var n=a.parentPath;if(!t.deopted&&!(n.isAssignmentExpression()&&a.node===n.node.left||n.isLVal()||n.isForXStatement()||n.isUpdateExpression()||n.isUnaryExpression({operator:"delete"})||(n.isCallExpression()||n.isNewExpression())&&a.node===n.node.callee))if(a.node.computed){if(a.get("property").isBaseType("number"))return void t.candidates.push({cause:"indexGetter",path:e})}else if("length"===a.node.property.name)return void t.candidates.push({cause:"lengthGetter",path:e})}if(0===t.offset&&a.isSpreadElement()){var s=a.parentPath;if(s.isCallExpression()&&1===s.node.arguments.length)return void t.candidates.push({cause:"argSpread",path:e})}t.references.push(e)}},BindingIdentifier:function(e,t){yY(e,t)&&(t.deopted=!0)}};function bY(e,t,r){var a,n=_s(r),s=e.parent;a=ue(s.property)?_s(s.property.value+r):0===r?s.property:ds("+",s.property,sm(n));var o=e.scope,i=e.parentPath;if(o.isPure(a)){i.replaceWith(fY({ARGUMENTS:t,OFFSET:n,INDEX:a}));var d=i,c=d.get("test"),l=c.get("left").evaluate();l.confident&&(!0===l.value?d.replaceWith(o.buildUndefinedNode()):c.replaceWith(c.get("right")))}else{var u=o.generateUidIdentifierBasedOnNode(a);o.push({id:u,kind:"var"}),i.replaceWith(gY({ARGUMENTS:t,OFFSET:n,INDEX:a,REF:sm(u)}))}}function vY(e,t,r){r?e.parentPath.replaceWith(mY({ARGUMENTS:t,OFFSET:_s(r)})):e.replaceWith(t)}function xY(e){var t,r=e.node,a=e.scope;if(!function(e){var t=e.params.length;return t>0&&Re(e.params[t-1])}(r))return!1;var n=e.get("params."+(r.params.length-1)+".argument");if(!n.isIdentifier()){var s=new Set;sY(n,e.scope,s);var o=s.size>0;if(!o){var d={needsOuterBinding:!1,scope:a};n.traverse(nY,d),o=d.needsOuterBinding}o&&(e.ensureBlock(),e.set("body",ps([oY(s,e.node.body)])))}var c=n.node;if(r.params.pop(),ur(c)){var l=Zs("let",[eo(c,c=a.generateUidIdentifier("ref"))]);e.ensureBlock(),r.body.body.unshift(l)}else"arguments"===c.name&&a.rename(c.name);var u=Ps("arguments"),p=function(e){var t=e.params.length;return t>0&&ie(e.params[0],{name:"this"})&&(t-=1),t}(r),f={references:[],offset:p,argumentsNode:u,outerBinding:a.getBindingIdentifier(c.name),candidates:[],name:c.name,deopted:!1};if(e.traverse(hY,f),!f.deopted&&!f.references.length){for(var g,m=i(f.candidates);!(g=m()).done;){var y=g.value,h=y.path,v=y.cause,x=sm(u);switch(v){case"indexGetter":bY(h,x,f.offset);break;case"lengthGetter":vY(h,x,f.offset);break;default:h.replaceWith(x)}}return!0}(t=f.references).push.apply(t,b(f.candidates.map(function(e){return e.path})));var R,j,w=_s(p),E=a.generateUidIdentifier("key"),S=a.generateUidIdentifier("len");p?(R=ds("-",sm(E),sm(w)),j=ys(ds(">",sm(S),sm(w)),ds("-",sm(S),sm(w)),_s(0))):(R=Ps(E.name),j=Ps(S.name));var T=pY({ARGUMENTS:u,ARRAY_KEY:R,ARRAY_LEN:j,START:w,ARRAY:c,KEY:E,LEN:S});if(f.deopted)r.body.body.unshift(T);else{var P=e.getEarliestCommonAncestorFrom(f.references).getStatementParent();P.findParent(function(e){if(!e.isLoop())return e.isFunction();P=e}),P.insertBefore(T)}return!0}var RY=function(e,t){var r,a;e.assertVersion("*");var n=null!=(r=e.assumption("ignoreFunctionLength"))?r:t.loose,s=null==(a=e.assumption("noNewArrows"))||a;return{name:"transform-parameters",visitor:{Function:function(e){if(!e.isArrowFunctionExpression()||!e.get("params").some(function(e){return e.isRestElement()||e.isAssignmentPattern()})||(e.arrowFunctionToExpression({allowInsertArrowWithRest:!1,noNewArrows:s}),e.isFunctionExpression())){var t=xY(e),r=uY(e,n);(t||r)&&e.scope.crawl()}}}}},jY=function(e){var t=e.assertVersion,r=e.assumption,a=e.types;t("*");var n=a.assignmentExpression,s=a.assignmentPattern,o=a.cloneNode,d=a.expressionStatement,c=a.isExpressionStatement,l=a.isIdentifier,u=a.isSequenceExpression,p=a.sequenceExpression,f=a.variableDeclaration,g=a.variableDeclarator,m=r("ignoreFunctionLength"),y=r("objectRestNoSymbols"),h={Function:function(e){var t=e.node.params.findIndex(function(e){return ZJ(e)});if(-1!==t){uY(e,m,function(){return!1});var r=e.node,a=e.scope,n=r.params,o=m?-1:n.findIndex(function(e){return"AssignmentPattern"===e.type}),i=YJ(n.splice(t),a),d=i.params,c=i.variableDeclaration;e.get("body").unshiftContainer("body",c),n.push.apply(n,b(d)),o>=t&&(n[o]=s(n[o],a.buildUndefinedNode())),a.crawl()}},CatchClause:function(e){var t=e.node,r=e.scope;if(ZJ(t.param)){var a=r.generateUidIdentifier("e");e.get("body").unshiftContainer("body",f("let",[g(t.param,a)])),t.param=o(a),r.crawl()}},ForXStatement:function(e){var t=e.node,r=e.scope,a=e.get("left");if(a.isVariableDeclaration()){var s=a.node;if(!ZJ(s.declarations[0].id))return;var i=r.generateUidIdentifier("ref");t.left=f(s.kind,[g(i,null)]),s.declarations[0].init=o(i),wJ(e,[s]),r.crawl()}else if(a.isPattern()){if(!ZJ(a.node))return;var c=r.generateUidIdentifier("ref");t.left=f("const",[g(c,null)]),wJ(e,[d(n("=",a.node,o(c)))]),r.crawl()}},VariableDeclaration:function(e,t){var r=e.scope,a=e.node,n=a.declarations;if(n.some(function(e){return ZJ(e.id)})){for(var s,o=[],d=i(n);!(s=d()).done;)for(var c,l=s.value,u=i(rY(l.id,l.init,r,!1,!1,function(e){return t.addHelper(e)},y,!0));!(c=u()).done;){var p=c.value,f=p.left,m=p.right;o.push(g(f,m))}a.declarations=o,r.crawl()}},AssignmentExpression:function(e,t){var r=e.node,a=e.scope,s=e.parent;if(ZJ(r.left)){for(var d,f=[],g=!c(s)&&!u(s)||e.isCompletionRecord(),m=i(rY(r.left,r.right,a,!0,g,function(e){return t.addHelper(e)},y,!0));!(d=m()).done;){var h=d.value,b=h.left,v=h.right;f.push(n("=",b,v))}if(g){var x=f[0],R=x.left,j=x.right;if(l(R)&&j===r.right)l(f[f.length-1].right,{name:R.name})||f.push(o(R));else{var w=a.generateDeclaredUidIdentifier("m");f.unshift(n("=",w,o(r.right))),f.push(o(w))}}e.replaceWith(p(f)),a.crawl()}}},v={Class:function(e,t){(function(e){return e.body.some(function(e){return LJ(e.key)})})(e.node.body)&&e.traverse(h,t)}};return{name:"proposal-destructuring-private",manipulateOptions:function(e,t){return t.plugins.push("destructuringPrivate")},visitor:v}},wY=OO.visitors.merge;function EY(e){throw e.buildCodeFrameError("This control flow escape from do expression is not supported.")}var SY={FunctionParent:function(e){e.skip()},"SwitchStatement|Loop":function(e,t){t.break.add(null),t.continue.add(null)},LabeledStatement:function(e,t){var r=e.node.label.name;t.break.add(r)},BreakStatement:function(e,t){var r,a;t.break.has(null!=(r=null==(a=e.node.label)?void 0:a.name)?r:null)||EY(e)},ContinueStatement:function(e,t){var r,a;t.continue.has(null!=(r=null==(a=e.node.label)?void 0:a.name)?r:null)||EY(e)},ReturnStatement:function(e,t){t.returnPath=e}};var TY=function(e){var t;e.assertVersion("*");var r=e.types,a=null!=(t=e.assumption("noDocumentAll"))&&t;return{name:"proposal-do-expressions",manipulateOptions:function(e,t){return t.plugins.push("doExpressions")},visitor:{DoExpression:{exit:function(e){if(!e.node.async){var t=function(e){var t={break:new Set,continue:new Set,returnPath:null};return e.traverse(SY,t),t}(e);if(t.returnPath||t.break.size||t.continue.size)!function(e){var t=new WeakSet,a=e;for(;a;){if(!a.node)return;if(t.add(a.node),a.isFunction()){var s=a.get("body");if(a.isArrowFunctionExpression()&&s.isExpression()&&t.has(s.node)){var o=s.replaceWith(r.blockStatement([r.returnStatement(s.node)]));x((s=y(o,1)[0]).get("body")[0])}for(var d,c=!1,l=[],u=[],p=i(a.get("params"));!(d=p()).done;){var f=d.value,g=f.isRestElement()?f.get("argument"):f.isTSParameterProperty()?f.get("parameter"):f;if(c||(c=t.has(g.node)),c&&!PY(g)){var m=g.node,h=s.scope.generateUidIdentifier("do");g.replaceWith(r.cloneNode(h)),l.push(m),u.push(h)}}if(l.length){var v=void 0;if(s.isBlockStatement())v=s;else v=y(s.replaceWith(r.blockStatement([r.returnStatement(s.node)])),1)[0];v.unshiftContainer("body",r.variableDeclaration("var",[r.variableDeclarator(r.arrayPattern(l),r.arrayExpression(u))])),x(v.get("body")[0])}return}if(a.isStatement())return void x(a);a=a.parentPath}throw new Error("Internal error: DoExpression must be in a statement. This is a Babel bug, please report it.");function x(e){switch(e.type){case"VariableDeclaration":for(var a,n=[],s=i(e.get("declarations"));!(a=s()).done;){var o=a.value,d=o.get("init"),c=o.get("id");t.has(d.node)&&n.push.apply(n,b(R(d))),t.has(c.node)?n.push.apply(n,b(w(c,d.node,e.node.kind))):n.push(r.variableDeclaration(e.node.kind,[o.node]))}e.replaceWithMultiple(n);break;case"ForStatement":var l=[],u=e.get("test");t.has(u.node)&&(l.push.apply(l,b(R(u)).concat([r.ifStatement(r.unaryExpression("!",u.node),r.breakStatement())])),u.remove()),l.push(e.node.body);var p=e.get("update");t.has(p.node)&&(l.push.apply(l,b(R(p,{discardResult:!0}))),p.remove()),e.set("body",r.blockStatement(l));var f=e.get("init");if(t.has(f.node)){var g=f.isExpression()?r.expressionStatement(f.node):f.node;f.remove(),x(y(e.replaceWith(r.blockStatement([g,e.node])),1)[0].get("body")[0])}break;case"ForInStatement":case"ForOfStatement":var m=e.get("left");if(t.has(m.node)){var h=e.get("body"),v=h.scope.generateDeclaredUidIdentifier("do");if(m.isVariableDeclaration()){var j=m.get("declarations")[0].get("init");if(j.node)throw j.buildCodeFrameError("Complex variable declaration in for-in with do expression is not currently supported");j.replaceWith(r.cloneNode(v)),x(y(h.replaceWith(r.blockStatement([m.node,h.node])),1)[0].get("body")[0])}else h.replaceWith(r.blockStatement([].concat(b(w(m,r.cloneNode(v),null)),[h.node])));m.replaceWith(v)}var S=e.get("right");t.has(S.node)&&e.replaceWithMultiple([].concat(b(R(S)),[e.node]));break;case"WhileStatement":var T=e.get("test");e.set("body",r.blockStatement([].concat(b(R(T)),[r.ifStatement(r.unaryExpression("!",T.node),r.breakStatement()),e.node.body]))),T.replaceWith(r.booleanLiteral(!0));break;case"DoWhileStatement":var P=e.get("test");e.set("body",r.blockStatement([e.node.body].concat(b(R(P)),[r.ifStatement(r.unaryExpression("!",P.node),r.breakStatement())]))),P.replaceWith(r.booleanLiteral(!0));break;case"ExpressionStatement":e.replaceWithMultiple(R(e.get("expression"),{discardResult:!0}));break;default:e.insertBefore(E(e))}}function R(e,a){if(void 0===a&&(a={}),function(e){return e.isPureish()||e.isBinaryExpression()||e.isParenthesizedExpression()||e.isSequenceExpression()||e.isUnaryExpression()&&"throw"!==e.node.operator&&"delete"!==e.node.operator}(e))return E(e,a.flattenTrailing);var s=t.has(e.node);if(s){if(e.isDoExpression()){var o=e.get("body");if(!a.discardResult){var d=o.getCompletionRecords(!0).filter(function(e){return e.isExpressionStatement()});if(d.length){for(var c,l=o.scope.generateDeclaredUidIdentifier("do"),u=i(d);!(c=u()).done;){var p=c.value;p.replaceWith(r.assignmentExpression("=",r.cloneNode(l),p.node.expression))}e.replaceWith(l)}else e.replaceWith(e.scope.buildUndefinedNode())}return[o.node]}if(e.isAssignmentExpression()){var f=e.get("left"),g=e.get("right");if(t.has(f.node)){if("="!==e.node.operator)throw e.buildCodeFrameError("Do expression inside complex assignment expression is not currently supported.");var m=e.scope.generateDeclaredUidIdentifier("do");return e.replaceWith(m),[].concat(b(R(g)),b(w(f,g.node,null)))}}else{if(e.isLogicalExpression()){var h=e.node.operator,v=e.get("left"),x=e.get("right"),T=[].concat(b(R(v)),[r.ifStatement("&&"===h?r.cloneNode(v.node):"||"===h?r.unaryExpression("!",r.cloneNode(v.node)):r.binaryExpression("==",r.cloneNode(v.node),r.nullLiteral()),r.blockStatement(R(x)))]);return e.replaceWith(r.logicalExpression(e.node.operator,v.node,x.node)),T}if(e.isConditionalExpression()){var P=e.get("test"),A=e.get("alternate"),k=e.get("consequent"),C=[].concat(b(R(P)),[r.ifStatement(r.cloneNode(P.node),r.blockStatement(R(k)),r.blockStatement(R(A)))]);return e.replaceWith(r.conditionalExpression(P.node,k.node,A.node)),C}if(e.isOptionalMemberExpression()&&e.node.computed){var _=e.get("object"),I=e.get("property"),D=e.scope.generateDeclaredUidIdentifier("do");return e.replaceWith(D),[].concat(b(R(_)),[r.ifStatement(n(_.node),r.blockStatement([].concat(b(R(I)),[r.expressionStatement(r.assignmentExpression("=",r.cloneNode(D),r.memberExpression(_.node,I.node,!0)))])))])}if(e.isOptionalCallExpression()){var O=e.get("callee"),N=R(O),B=j(y(e.replaceWith(r.callExpression(r.cloneNode(O.node),e.node.arguments)),1)[0],a.discardResult);return[].concat(b(N),[r.ifStatement(n(O.node),r.blockStatement(B))])}if(e.isCallExpression())return j(e,a.discardResult)}}return s?[].concat(b(E(e,a.flattenTrailing)),[S(e,a.discardResult)]):[S(e,a.discardResult)]}function j(e,t){var a,n=e.get("callee"),s=[];n.isMemberExpression()&&((a=n.get("object")).isSuper()||s.push.apply(s,b(R(a)))),s.push.apply(s,b(R(n)));for(var o,d=i(e.get("arguments"));!(o=d()).done;){var c=o.value;if(c.isSpreadElement()){var l=e.scope.generateDeclaredUidIdentifier("do");s.push.apply(s,b(R(c.get("argument"))).concat([r.expressionStatement(r.assignmentExpression("=",r.cloneNode(l),r.arrayExpression([c.node])))])),c.replaceWith(r.spreadElement(l))}else s.push.apply(s,b(R(c)))}return a?(e.replaceWith(r.callExpression(r.memberExpression(e.node.callee,r.identifier("call")),[a.isSuper()?r.thisExpression():r.cloneNode(a.node)].concat(b(e.node.arguments)))),[].concat(s,[S(e,t)])):(e.replaceWith(r.callExpression(n.node,e.node.arguments)),[].concat(s,[S(e,t)]))}function w(e,t,a){switch(e.type){case"ObjectPattern":!function(e){var t={break:new Set,continue:new Set,returnPath:null};e.traverse(wY([{DoExpression:function(e){var t=e.node.body.body;t.length?e.replaceExpressionWithStatements(t):e.replaceWith(e.scope.buildUndefinedNode())}},SY]),t),t.returnPath&&EY(t.returnPath)}(e);case"Identifier":return a?[r.variableDeclaration(a,[r.variableDeclarator(e.node,t)])]:[r.expressionStatement(r.assignmentExpression("=",e.node,t))];case"MemberExpression":return[].concat(b(E(e)),[r.expressionStatement(r.assignmentExpression("=",e.node,t))]);case"AssignmentPattern":var n=e.get("left"),s=e.get("right");if(t){var o=e.scope.generateDeclaredUidIdentifier("do");return[r.expressionStatement(r.assignmentExpression("=",r.cloneNode(o),t)),r.ifStatement(r.binaryExpression("===",r.cloneNode(o),r.buildUndefinedNode()),r.blockStatement([].concat(b(R(s)),[r.expressionStatement(r.assignmentExpression("=",r.cloneNode(o),s.node))])))].concat(b(w(n,o,a)))}return w(e.get("left"),s.node,a);case"ArrayPattern":for(var d,c=[],l=[],u=i(e.get("elements"));!(d=u()).done;){var p=d.value;if(p.type&&!PY(p)){var f=e.scope.generateDeclaredUidIdentifier("do");p.isRestElement()?(c.push(r.restElement(r.cloneNode(f))),l.push.apply(l,b(w(p.get("argument"),f,a)))):(c.push(r.cloneNode(f)),l.push.apply(l,b(w(p,f,a))))}else c.push(p.node)}return[r.expressionStatement(r.assignmentExpression("=",r.arrayPattern(c),t))].concat(l);default:throw e.buildCodeFrameError("Do expression inside "+e.type+" is not currently supported")}}function E(e,r){var a,n=[];if(e.traverse({Statement:function(e){e.skip()},Expression:function(e){n.push(e),e.skip()}}),!r)for(;n.length;){var s=n.pop();if(t.has(s.node)){a=s;break}}for(var o=[],i=0,d=n;i<d.length;i++){var c=d[i];o.push.apply(o,b(R(c,{flattenTrailing:!0})))}return a&&o.push.apply(o,b(R(a))),o}function S(e,t){if(t)return r.expressionStatement(e.node);var a=e.scope.generateDeclaredUidIdentifier("do"),n=r.expressionStatement(r.assignmentExpression("=",r.cloneNode(a),e.node));return e.replaceWith(a),n}}(e);else{var a=e.node.body.body;a.length?e.replaceExpressionWithStatements(a):e.replaceWith(e.scope.buildUndefinedNode())}}}}}};function n(e){return a?r.binaryExpression("!=",r.cloneNode(e),r.nullLiteral()):r.logicalExpression("&&",r.binaryExpression("!==",r.cloneNode(e),r.nullLiteral()),r.binaryExpression("!==",r.cloneNode(e),r.buildUndefinedNode()))}};function PY(e){return e.isIdentifier()||e.isAssignmentPattern()&&PY(e.get("left"))&&e.get("right").isPureish()||e.isRestElement()&&PY(e.get("argument"))}var AY={},kY={exports:{}};!function(e,t){!function(r){var a=t,n=e&&e.exports==a&&e,s="object"==typeof dR&&dR;s.global!==s&&s.window!==s||(r=s);var o="A range\u2019s `stop` value must be greater than or equal to the `start` value.",i="Invalid code point value. Code points range from U+000000 to U+10FFFF.",d=55296,c=56319,l=56320,u=57343,p=/\\x00([^0123456789]|$)/g,f={},g=f.hasOwnProperty,m=function(e,t){for(var r=-1,a=e.length;++r<a;)t(e[r],r)},y=f.toString,h=function(e){return"[object Array]"==y.call(e)},b=function(e){return"number"==typeof e||"[object Number]"==y.call(e)},v=function(e,t){var r=String(e);return r.length<t?("0000"+r).slice(-t):r},x=function(e){return Number(e).toString(16).toUpperCase()},R=[].slice,j=function(e,t){for(var r,a,n=0,s=e.length;n<s;){if(r=e[n],a=e[n+1],t>=r&&t<a)return t==r?a==r+1?(e.splice(n,2),e):(e[n]=t+1,e):t==a-1?(e[n+1]=t,e):(e.splice(n,2,r,t,t+1,a),e);n+=2}return e},w=function(e,t,r){if(r<t)throw Error(o);for(var a,n,s=0;s<e.length;){if(a=e[s],n=e[s+1]-1,a>r)return e;if(t<=a&&r>=n)e.splice(s,2);else{if(t>=a&&r<n)return t==a?(e[s]=r+1,e[s+1]=n+1,e):(e.splice(s,2,a,t,r+1,n+1),e);if(t>=a&&t<=n)e[s+1]=t;else if(r>=a&&r<=n)return e[s]=r+1,e;s+=2}}return e},E=function(e,t){var r,a,n=0,s=null,o=e.length;if(t<0||t>1114111)throw RangeError(i);for(;n<o;){if(r=e[n],a=e[n+1],t>=r&&t<a)return e;if(t==r-1)return e[n]=t,e;if(r>t)return e.splice(null!=s?s+2:0,0,t,t+1),e;if(t==a)return t+1==e[n+2]?(e.splice(n,4,r,e[n+3]),e):(e[n+1]=t+1,e);s=n,n+=2}return e.push(t,t+1),e},S=function(e,t){for(var r,a,n=0,s=e.slice(),o=t.length;n<o;)s=(r=t[n])==(a=t[n+1]-1)?E(s,r):T(s,r,a),n+=2;return s},T=function(e,t,r){if(r<t)throw Error(o);if(t<0||t>1114111||r<0||r>1114111)throw RangeError(i);for(var a,n,s=0,d=!1,c=e.length;s<c;){if(a=e[s],n=e[s+1],d){if(a==r+1)return e.splice(s-1,2),e;if(a>r)return e;a>=t&&a<=r&&(n>t&&n-1<=r?(e.splice(s,2),s-=2):(e.splice(s-1,2),s-=2))}else{if(a==r+1||a==r)return e[s]=t,e;if(a>r)return e.splice(s,0,t,r+1),e;if(t>=a&&t<n&&r+1<=n)return e;t>=a&&t<n||n==t?(e[s+1]=r+1,d=!0):t<=a&&r+1>=n&&(e[s]=t,e[s+1]=r+1,d=!0)}s+=2}return d||e.push(t,r+1),e},P=function(e,t){var r=0,a=e.length,n=e[r],s=e[a-1];if(a>=2&&(t<n||t>s))return!1;for(;r<a;){if(n=e[r],s=e[r+1],t>=n&&t<s)return!0;r+=2}return!1},A=function(e){return!e.length},k=function(e){return 2==e.length&&e[0]+1==e[1]},C=function(e){for(var t,r,a=0,n=[],s=e.length;a<s;){for(t=e[a],r=e[a+1];t<r;)n.push(t),++t;a+=2}return n},_=Math.floor,I=function(e){return parseInt(_((e-65536)/1024)+d,10)},D=function(e){return parseInt((e-65536)%1024+l,10)},O=String.fromCharCode,N=function(e){return 9==e?"\\t":10==e?"\\n":12==e?"\\f":13==e?"\\r":45==e?"\\x2D":92==e?"\\\\":36==e||e>=40&&e<=43||46==e||47==e||63==e||e>=91&&e<=94||e>=123&&e<=125?"\\"+O(e):e>=32&&e<=126?O(e):e<=255?"\\x"+v(x(e),2):"\\u"+v(x(e),4)},B=function(e){return e<=65535?N(e):"\\u{"+e.toString(16).toUpperCase()+"}"},M=function(e){var t,r=e.length,a=e.charCodeAt(0);return a>=d&&a<=c&&r>1?(t=e.charCodeAt(1),1024*(a-d)+t-l+65536):a},F=function(e){var t,r,a="",n=0,s=e.length;if(k(e))return N(e[0]);for(;n<s;)a+=(t=e[n])==(r=e[n+1]-1)?N(t):t+1==r?N(t)+N(r):N(t)+"-"+N(r),n+=2;return"["+a+"]"},L=function(e){if(1==e.length)return e;for(var t=-1,r=-1;++t<e.length;){var a=e[t],n=a[1],s=n[0],o=n[1];for(r=t;++r<e.length;){var i=e[r],d=i[1],c=d[0],l=d[1];s==c&&o==l&&2===d.length&&(k(i[0])?a[0]=E(a[0],i[0][0]):a[0]=T(a[0],i[0][0],i[0][1]-1),e.splice(r,1),--r)}}return e},U=function(e){if(!e.length)return[];for(var t,r,a,n,s,o,i=0,d=[],c=e.length;i<c;){t=e[i],r=e[i+1]-1,a=I(t),n=D(t),s=I(r);var p=(o=D(r))==u,f=!1;a==s||n==l&&p?(d.push([[a,s+1],[n,o+1]]),f=!0):d.push([[a,a+1],[n,57344]]),!f&&a+1<s&&(p?(d.push([[a+1,s+1],[l,o+1]]),f=!0):d.push([[a+1,s],[l,57344]])),f||d.push([[s,s+1],[l,o+1]]),i+=2}return function(e){for(var t,r,a,n,s,o,i=[],d=[],c=!1,l=-1,u=e.length;++l<u;)if(t=e[l],r=e[l+1]){for(a=t[0],n=t[1],s=r[0],o=r[1],d=n;s&&a[0]==s[0]&&a[1]==s[1];)d=k(o)?E(d,o[0]):T(d,o[0],o[1]-1),a=(t=e[++l])[0],n=t[1],s=(r=e[l+1])&&r[0],o=r&&r[1],c=!0;i.push([a,c?d:n]),c=!1}else i.push(t);return L(i)}(d)},q=function(e,t,r){if(r)return function(e){var t,r,a="",n=0,s=e.length;if(k(e))return B(e[0]);for(;n<s;)a+=(t=e[n])==(r=e[n+1]-1)?B(t):t+1==r?B(t)+B(r):B(t)+"-"+B(r),n+=2;return"["+a+"]"}(e);var a=[],n=function(e){for(var t,r,a=[],n=[],s=[],o=[],i=0,p=e.length;i<p;)t=e[i],r=e[i+1]-1,t<d?(r<d&&s.push(t,r+1),r>=d&&r<=c&&(s.push(t,d),a.push(d,r+1)),r>=l&&r<=u&&(s.push(t,d),a.push(d,56320),n.push(l,r+1)),r>u&&(s.push(t,d),a.push(d,56320),n.push(l,57344),r<=65535?s.push(57344,r+1):(s.push(57344,65536),o.push(65536,r+1)))):t>=d&&t<=c?(r>=d&&r<=c&&a.push(t,r+1),r>=l&&r<=u&&(a.push(t,56320),n.push(l,r+1)),r>u&&(a.push(t,56320),n.push(l,57344),r<=65535?s.push(57344,r+1):(s.push(57344,65536),o.push(65536,r+1)))):t>=l&&t<=u?(r>=l&&r<=u&&n.push(t,r+1),r>u&&(n.push(t,57344),r<=65535?s.push(57344,r+1):(s.push(57344,65536),o.push(65536,r+1)))):t>u&&t<=65535?r<=65535?s.push(t,r+1):(s.push(t,65536),o.push(65536,r+1)):o.push(t,r+1),i+=2;return{loneHighSurrogates:a,loneLowSurrogates:n,bmp:s,astral:o}}(e),s=n.loneHighSurrogates,o=n.loneLowSurrogates,i=n.bmp,p=n.astral,f=!A(s),g=!A(o),y=U(p);return t&&(i=S(i,s),f=!1,i=S(i,o),g=!1),A(i)||a.push(F(i)),y.length&&a.push(function(e){var t=[];return m(e,function(e){var r=e[0],a=e[1];t.push(F(r)+F(a))}),t.join("|")}(y)),f&&a.push(F(s)+"(?![\\uDC00-\\uDFFF])"),g&&a.push("(?:[^\\uD800-\\uDBFF]|^)"+F(o)),a.join("|")},G=function(e){return arguments.length>1&&(e=R.call(arguments)),this instanceof G?(this.data=[],e?this.add(e):this):(new G).add(e)};G.version="1.4.2";var W=G.prototype;!function(e,t){var r;for(r in t)g.call(t,r)&&(e[r]=t[r])}(W,{add:function(e){var t=this;return null==e?t:e instanceof G?(t.data=S(t.data,e.data),t):(arguments.length>1&&(e=R.call(arguments)),h(e)?(m(e,function(e){t.add(e)}),t):(t.data=E(t.data,b(e)?e:M(e)),t))},remove:function(e){var t=this;return null==e?t:e instanceof G?(t.data=function(e,t){for(var r,a,n=0,s=e.slice(),o=t.length;n<o;)s=(r=t[n])==(a=t[n+1]-1)?j(s,r):w(s,r,a),n+=2;return s}(t.data,e.data),t):(arguments.length>1&&(e=R.call(arguments)),h(e)?(m(e,function(e){t.remove(e)}),t):(t.data=j(t.data,b(e)?e:M(e)),t))},addRange:function(e,t){var r=this;return r.data=T(r.data,b(e)?e:M(e),b(t)?t:M(t)),r},removeRange:function(e,t){var r=this,a=b(e)?e:M(e),n=b(t)?t:M(t);return r.data=w(r.data,a,n),r},intersection:function(e){var t=this,r=e instanceof G?C(e.data):e;return t.data=function(e,t){for(var r,a=0,n=t.length,s=[];a<n;)r=t[a],P(e,r)&&s.push(r),++a;return function(e){for(var t,r=-1,a=e.length,n=a-1,s=[],o=!0,i=0;++r<a;)if(t=e[r],o)s.push(t),i=t,o=!1;else if(t==i+1){if(r!=n){i=t;continue}o=!0,s.push(t+1)}else s.push(i+1,t),i=t;return o||s.push(t+1),s}(s)}(t.data,r),t},contains:function(e){return P(this.data,b(e)?e:M(e))},clone:function(){var e=new G;return e.data=this.data.slice(0),e},toString:function(e){var t=q(this.data,!!e&&e.bmpOnly,!!e&&e.hasUnicodeFlag);return t?t.replace(p,"\\0$1"):"[]"},toRegExp:function(e){var t=this.toString(e&&-1!=e.indexOf("u")?{hasUnicodeFlag:!0}:null);return RegExp(t,e||"")},valueOf:function(){return C(this.data)}}),W.toArray=W.valueOf,a&&!a.nodeType?n?n.exports=G:a.regenerate=G:r.regenerate=G}(dR)}(kY,kY.exports);var CY,_Y=kY.exports;function IY(){if(CY)return AY;CY=1;var e=_Y(170,181,186,748,750,837,895,902,908,1369,1471,1479,1791,2042,2199,2482,2510,2519,2556,2641,2654,2768,2929,2972,3024,3031,3406,3517,3542,3661,3716,3749,3782,3789,3840,4152,4295,4301,4696,4800,6103,6108,6823,7418,8025,8027,8029,8126,8305,8319,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,11823,43205,43259,43471,43712,43714,64318,67592,67644,68969,69415,69826,70006,70106,70108,70199,70280,70480,70487,70539,70542,70594,70597,70609,70611,70855,71232,71236,71352,71945,72161,72349,72768,73018,73027,73112,73648,94179,110898,110933,113822,119970,119995,120134,123023,123214,124400,125255,125259,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(867,884).addRange(886,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1456,1469).addRange(1473,1474).addRange(1476,1477).addRange(1488,1514).addRange(1519,1522).addRange(1552,1562).addRange(1568,1623).addRange(1625,1631).addRange(1646,1747).addRange(1749,1756).addRange(1761,1768).addRange(1773,1775).addRange(1786,1788).addRange(1808,1855).addRange(1869,1969).addRange(1994,2026).addRange(2036,2037).addRange(2048,2071).addRange(2074,2092).addRange(2112,2136).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2208,2249).addRange(2260,2271).addRange(2275,2281).addRange(2288,2363).addRange(2365,2380).addRange(2382,2384).addRange(2389,2403).addRange(2417,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472),e.addRange(2474,2480).addRange(2486,2489).addRange(2493,2500).addRange(2503,2504).addRange(2507,2508).addRange(2524,2525).addRange(2527,2531).addRange(2544,2545).addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2636).addRange(2649,2652).addRange(2672,2677).addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2749,2757).addRange(2759,2761).addRange(2763,2764).addRange(2784,2787).addRange(2809,2812).addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2877,2884).addRange(2887,2888).addRange(2891,2892).addRange(2902,2903).addRange(2908,2909).addRange(2911,2915).addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970),e.addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3006,3010).addRange(3014,3016).addRange(3018,3020).addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3133,3140).addRange(3142,3144).addRange(3146,3148).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3200,3203).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3261,3268).addRange(3270,3272).addRange(3274,3276).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3313,3315).addRange(3328,3340).addRange(3342,3344).addRange(3346,3386).addRange(3389,3396).addRange(3398,3400).addRange(3402,3404).addRange(3412,3415).addRange(3423,3427).addRange(3450,3455).addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3570,3571).addRange(3585,3642).addRange(3648,3654).addRange(3713,3714),e.addRange(3718,3722).addRange(3724,3747).addRange(3751,3769).addRange(3771,3773).addRange(3776,3780).addRange(3804,3807).addRange(3904,3911).addRange(3913,3948).addRange(3953,3971).addRange(3976,3991).addRange(3993,4028).addRange(4096,4150).addRange(4155,4159).addRange(4176,4239).addRange(4250,4253).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5870,5880).addRange(5888,5907).addRange(5919,5939).addRange(5952,5971).addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003).addRange(6016,6067).addRange(6070,6088).addRange(6176,6264).addRange(6272,6314).addRange(6320,6389).addRange(6400,6430),e.addRange(6432,6443).addRange(6448,6456).addRange(6480,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6656,6683).addRange(6688,6750).addRange(6753,6772).addRange(6847,6848).addRange(6860,6862).addRange(6912,6963).addRange(6965,6979).addRange(6981,6988).addRange(7040,7081).addRange(7084,7087).addRange(7098,7141).addRange(7143,7153).addRange(7168,7222).addRange(7245,7247).addRange(7258,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7401,7404).addRange(7406,7411).addRange(7413,7414).addRange(7424,7615).addRange(7635,7668).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8336,8348).addRange(8458,8467).addRange(8473,8477).addRange(8490,8493).addRange(8495,8505).addRange(8508,8511).addRange(8517,8521),e.addRange(8544,8584).addRange(9398,9449).addRange(11264,11492).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(11568,11623).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(11744,11775).addRange(12293,12295).addRange(12321,12329).addRange(12337,12341).addRange(12344,12348).addRange(12353,12438).addRange(12445,12447).addRange(12449,12538).addRange(12540,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42527).addRange(42538,42539).addRange(42560,42606).addRange(42612,42619).addRange(42623,42735).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43013).addRange(43015,43047).addRange(43072,43123).addRange(43136,43203).addRange(43250,43255).addRange(43261,43263).addRange(43274,43306).addRange(43312,43346).addRange(43360,43388).addRange(43392,43442),e.addRange(43444,43455).addRange(43488,43503).addRange(43514,43518).addRange(43520,43574).addRange(43584,43597).addRange(43616,43638).addRange(43642,43710).addRange(43739,43741).addRange(43744,43759).addRange(43762,43765).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44010).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64285,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65019).addRange(65136,65140).addRange(65142,65276).addRange(65313,65338).addRange(65345,65370).addRange(65382,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786),e.addRange(65856,65908).addRange(66176,66204).addRange(66208,66256).addRange(66304,66335).addRange(66349,66378).addRange(66384,66426).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66513,66517).addRange(66560,66717).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68096,68099).addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295),e.addRange(68297,68324).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497).addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68864,68903).addRange(68938,68965).addRange(68975,68997).addRange(69248,69289).addRange(69291,69292).addRange(69296,69297).addRange(69314,69319).addRange(69370,69372).addRange(69376,69404).addRange(69424,69445).addRange(69488,69505).addRange(69552,69572).addRange(69600,69622).addRange(69632,69701).addRange(69745,69749).addRange(69760,69816).addRange(69840,69864).addRange(69888,69938).addRange(69956,69959).addRange(69968,70002).addRange(70016,70079).addRange(70081,70084).addRange(70094,70095).addRange(70144,70161).addRange(70163,70196).addRange(70206,70209).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70376).addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70461,70468).addRange(70471,70472).addRange(70475,70476).addRange(70493,70499).addRange(70528,70537),e.addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70605).addRange(70656,70721).addRange(70723,70725).addRange(70727,70730).addRange(70751,70753).addRange(70784,70849).addRange(70852,70853).addRange(71040,71093).addRange(71096,71102).addRange(71128,71133).addRange(71168,71230).addRange(71296,71349).addRange(71424,71450).addRange(71453,71466).addRange(71488,71494).addRange(71680,71736).addRange(71840,71903).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,71996).addRange(71999,72002).addRange(72096,72103).addRange(72106,72151).addRange(72154,72159).addRange(72163,72164).addRange(72192,72242).addRange(72245,72254).addRange(72272,72343).addRange(72368,72440).addRange(72544,72551).addRange(72640,72672).addRange(72704,72712).addRange(72714,72758).addRange(72760,72766).addRange(72818,72847).addRange(72850,72871).addRange(72873,72886).addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73025).addRange(73030,73031).addRange(73056,73061).addRange(73063,73064),e.addRange(73066,73102).addRange(73104,73105).addRange(73107,73110).addRange(73136,73179).addRange(73440,73462).addRange(73472,73488).addRange(73490,73530).addRange(73534,73536).addRange(73728,74649).addRange(74752,74862).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90414).addRange(92160,92728).addRange(92736,92766).addRange(92784,92862).addRange(92880,92909).addRange(92928,92975).addRange(92992,92995).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94031,94087).addRange(94095,94111).addRange(94176,94177).addRange(94192,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967),e.addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122654).addRange(122661,122666).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(122928,122989).addRange(123136,123180).addRange(123191,123197).addRange(123536,123565).addRange(123584,123627).addRange(124112,124139).addRange(124368,124397).addRange(124608,124638).addRange(124640,124661).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125184,125251).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514),e.addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(127280,127305).addRange(127312,127337).addRange(127344,127369).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),AY.characters=e,AY}var DY,OY={};function NY(){if(DY)return OY;DY=1;var e=_Y();return e.addRange(0,1114111),OY.characters=e,OY}var BY,MY={};function FY(){if(BY)return MY;BY=1;var e=_Y();return e.addRange(48,57).addRange(65,70).addRange(97,102),MY.characters=e,MY}var LY,UY={};function qY(){if(LY)return UY;LY=1;var e=_Y();return e.addRange(0,127),UY.characters=e,UY}var GY,WY={};function VY(){if(GY)return WY;GY=1;var e=_Y(908,2142,2482,2519,2620,2641,2654,2768,2972,3024,3031,3517,3530,3542,3716,3749,3782,4295,4301,4696,4800,6464,8025,8027,8029,11559,11565,64318,65279,65952,67592,67644,69837,70280,70480,70487,70539,70542,70594,70597,71945,73018,73648,110898,110933,119970,119995,120134,123023,123647,124415,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590,129008,129736,917505);return e.addRange(0,887).addRange(890,895).addRange(900,906).addRange(910,929).addRange(931,1327).addRange(1329,1366).addRange(1369,1418).addRange(1421,1423).addRange(1425,1479).addRange(1488,1514).addRange(1519,1524).addRange(1536,1805).addRange(1807,1866).addRange(1869,1969).addRange(1984,2042).addRange(2045,2093).addRange(2096,2110).addRange(2112,2139).addRange(2144,2154).addRange(2160,2193).addRange(2199,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2492,2500).addRange(2503,2504).addRange(2507,2510).addRange(2524,2525).addRange(2527,2531).addRange(2534,2558).addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2649,2652).addRange(2662,2678).addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739),e.addRange(2741,2745).addRange(2748,2757).addRange(2759,2761).addRange(2763,2765).addRange(2784,2787).addRange(2790,2801).addRange(2809,2815).addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2876,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2908,2909).addRange(2911,2915).addRange(2918,2935).addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3006,3010).addRange(3014,3016).addRange(3018,3021).addRange(3046,3066).addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3132,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3174,3183).addRange(3191,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257),e.addRange(3260,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3302,3311).addRange(3313,3315).addRange(3328,3340).addRange(3342,3344).addRange(3346,3396).addRange(3398,3400).addRange(3402,3407).addRange(3412,3427).addRange(3430,3455).addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3558,3567).addRange(3570,3572).addRange(3585,3642).addRange(3647,3675).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3773).addRange(3776,3780).addRange(3784,3790).addRange(3792,3801).addRange(3804,3807).addRange(3840,3911).addRange(3913,3948).addRange(3953,3991).addRange(3993,4028).addRange(4030,4044).addRange(4046,4058).addRange(4096,4293).addRange(4304,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805),e.addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4957,4988).addRange(4992,5017).addRange(5024,5109).addRange(5112,5117).addRange(5120,5788).addRange(5792,5880).addRange(5888,5909).addRange(5919,5942).addRange(5952,5971).addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003).addRange(6016,6109).addRange(6112,6121).addRange(6128,6137).addRange(6144,6169).addRange(6176,6264).addRange(6272,6314).addRange(6320,6389).addRange(6400,6430).addRange(6432,6443).addRange(6448,6459).addRange(6468,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6622,6683).addRange(6686,6750).addRange(6752,6780).addRange(6783,6793).addRange(6800,6809).addRange(6816,6829).addRange(6832,6877).addRange(6880,6891).addRange(6912,6988).addRange(6990,7155).addRange(7164,7223).addRange(7227,7241).addRange(7245,7306).addRange(7312,7354).addRange(7357,7367).addRange(7376,7418).addRange(7424,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013),e.addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8132).addRange(8134,8147).addRange(8150,8155).addRange(8157,8175).addRange(8178,8180).addRange(8182,8190).addRange(8192,8292).addRange(8294,8305).addRange(8308,8334).addRange(8336,8348).addRange(8352,8385).addRange(8400,8432).addRange(8448,8587).addRange(8592,9257).addRange(9280,9290).addRange(9312,11123).addRange(11126,11507).addRange(11513,11557).addRange(11568,11623).addRange(11631,11632).addRange(11647,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(11744,11869).addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12272,12351).addRange(12353,12438).addRange(12441,12543).addRange(12549,12591).addRange(12593,12686).addRange(12688,12773).addRange(12783,12830).addRange(12832,42124).addRange(42128,42182).addRange(42192,42539).addRange(42560,42743).addRange(42752,42972).addRange(42993,43052).addRange(43056,43065).addRange(43072,43127),e.addRange(43136,43205).addRange(43214,43225).addRange(43232,43347).addRange(43359,43388).addRange(43392,43469).addRange(43471,43481).addRange(43486,43518).addRange(43520,43574).addRange(43584,43597).addRange(43600,43609).addRange(43612,43714).addRange(43739,43766).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43883).addRange(43888,44013).addRange(44016,44025).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(55296,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64285,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64975).addRange(65008,65049).addRange(65056,65106).addRange(65108,65126).addRange(65128,65131).addRange(65136,65140).addRange(65142,65276).addRange(65281,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65504,65510).addRange(65512,65518).addRange(65529,65533).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613),e.addRange(65616,65629).addRange(65664,65786).addRange(65792,65794).addRange(65799,65843).addRange(65847,65934).addRange(65936,65948).addRange(66e3,66045).addRange(66176,66204).addRange(66208,66256).addRange(66272,66299).addRange(66304,66339).addRange(66349,66378).addRange(66384,66426).addRange(66432,66461).addRange(66463,66499).addRange(66504,66517).addRange(66560,66717).addRange(66720,66729).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66927,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67671,67742).addRange(67751,67759).addRange(67808,67826).addRange(67828,67829).addRange(67835,67867).addRange(67871,67897).addRange(67903,67929).addRange(67968,68023).addRange(68028,68047).addRange(68050,68099),e.addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68152,68154).addRange(68159,68168).addRange(68176,68184).addRange(68192,68255).addRange(68288,68326).addRange(68331,68342).addRange(68352,68405).addRange(68409,68437).addRange(68440,68466).addRange(68472,68497).addRange(68505,68508).addRange(68521,68527).addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68858,68903).addRange(68912,68921).addRange(68928,68965).addRange(68969,68997).addRange(69006,69007).addRange(69216,69246).addRange(69248,69289).addRange(69291,69293).addRange(69296,69297).addRange(69314,69319).addRange(69328,69336).addRange(69370,69415).addRange(69424,69465).addRange(69488,69513).addRange(69552,69579).addRange(69600,69622).addRange(69632,69709).addRange(69714,69749).addRange(69759,69826).addRange(69840,69864).addRange(69872,69881).addRange(69888,69940).addRange(69942,69959).addRange(69968,70006).addRange(70016,70111).addRange(70113,70132).addRange(70144,70161).addRange(70163,70209).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70313),e.addRange(70320,70378).addRange(70384,70393).addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70459,70468).addRange(70471,70472).addRange(70475,70477).addRange(70493,70499).addRange(70502,70508).addRange(70512,70516).addRange(70528,70537).addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70613).addRange(70615,70616).addRange(70625,70626).addRange(70656,70747).addRange(70749,70753).addRange(70784,70855).addRange(70864,70873).addRange(71040,71093).addRange(71096,71133).addRange(71168,71236).addRange(71248,71257).addRange(71264,71276).addRange(71296,71353).addRange(71360,71369).addRange(71376,71395).addRange(71424,71450).addRange(71453,71467).addRange(71472,71494).addRange(71680,71739).addRange(71840,71922).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,72006).addRange(72016,72025).addRange(72096,72103).addRange(72106,72151).addRange(72154,72164).addRange(72192,72263).addRange(72272,72354),e.addRange(72368,72440).addRange(72448,72457).addRange(72544,72551).addRange(72640,72673).addRange(72688,72697).addRange(72704,72712).addRange(72714,72758).addRange(72760,72773).addRange(72784,72812).addRange(72816,72847).addRange(72850,72871).addRange(72873,72886).addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73031).addRange(73040,73049).addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73104,73105).addRange(73107,73112).addRange(73120,73129).addRange(73136,73179).addRange(73184,73193).addRange(73440,73464).addRange(73472,73488).addRange(73490,73530).addRange(73534,73562).addRange(73664,73713).addRange(73727,74649).addRange(74752,74862).addRange(74864,74868).addRange(74880,75075).addRange(77712,77810).addRange(77824,78933).addRange(78944,82938).addRange(82944,83526).addRange(90368,90425).addRange(92160,92728).addRange(92736,92766).addRange(92768,92777).addRange(92782,92862).addRange(92864,92873).addRange(92880,92909).addRange(92912,92917).addRange(92928,92997).addRange(93008,93017).addRange(93019,93025).addRange(93027,93047),e.addRange(93053,93071).addRange(93504,93561).addRange(93760,93850).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94031,94087).addRange(94095,94111).addRange(94176,94180).addRange(94192,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(113820,113827).addRange(117760,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118512).addRange(118528,118573).addRange(118576,118598).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119274).addRange(119296,119365).addRange(119488,119507).addRange(119520,119539).addRange(119552,119638).addRange(119648,119672).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092),e.addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779).addRange(120782,121483).addRange(121499,121503).addRange(121505,121519).addRange(122624,122654).addRange(122661,122666).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(122928,122989).addRange(123136,123180).addRange(123184,123197).addRange(123200,123209).addRange(123214,123215).addRange(123536,123566).addRange(123584,123641).addRange(124112,124153).addRange(124368,124410).addRange(124608,124638).addRange(124640,124661).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125127,125142).addRange(125184,125259).addRange(125264,125273).addRange(125278,125279).addRange(126065,126132).addRange(126209,126269).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588),e.addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(126704,126705).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183).addRange(127185,127221).addRange(127232,127405).addRange(127462,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(127584,127589).addRange(127744,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129232,129240).addRange(129280,129623).addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130042).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041).addRange(917536,917631).addRange(917760,917999),e.addRange(983040,1048573).addRange(1048576,1114109),WY.characters=e,WY}var HY,zY={};function KY(){if(HY)return zY;HY=1;var e=_Y(1564);return e.addRange(8206,8207).addRange(8234,8238).addRange(8294,8297),zY.characters=e,zY}var XY,JY={};function YY(){if(XY)return JY;XY=1;var e=_Y(60,62,91,93,123,125,171,187,8512,8721,8740,8742,8761,8802,8856,10176,10680,10697,10721,10788,10790,10793,10972,10974,10995,11005,11262,65308,65310,65339,65341,65371,65373,120539,120597,120655,120713,120771);return e.addRange(40,41).addRange(3898,3901).addRange(5787,5788).addRange(8249,8250).addRange(8261,8262).addRange(8317,8318).addRange(8333,8334).addRange(8705,8708).addRange(8712,8717).addRange(8725,8726).addRange(8730,8733).addRange(8735,8738).addRange(8747,8755).addRange(8763,8780).addRange(8786,8789).addRange(8799,8800).addRange(8804,8811).addRange(8813,8844).addRange(8847,8850).addRange(8866,8867).addRange(8870,8888).addRange(8894,8895).addRange(8905,8909).addRange(8912,8913).addRange(8918,8941).addRange(8944,8959).addRange(8968,8971).addRange(8992,8993).addRange(9001,9002).addRange(10088,10101).addRange(10179,10182).addRange(10184,10185).addRange(10187,10189).addRange(10195,10198).addRange(10204,10206).addRange(10210,10223).addRange(10627,10648).addRange(10651,10656).addRange(10658,10671).addRange(10688,10693).addRange(10702,10706).addRange(10708,10709).addRange(10712,10716).addRange(10723,10725).addRange(10728,10729).addRange(10740,10745).addRange(10748,10749).addRange(10762,10780).addRange(10782,10785).addRange(10795,10798).addRange(10804,10805),e.addRange(10812,10814).addRange(10839,10840).addRange(10852,10853).addRange(10858,10861).addRange(10863,10864).addRange(10867,10868).addRange(10873,10915).addRange(10918,10925).addRange(10927,10966).addRange(10978,10982).addRange(10988,10990).addRange(10999,11003).addRange(11778,11781).addRange(11785,11786).addRange(11788,11789).addRange(11804,11805).addRange(11808,11817).addRange(11861,11868).addRange(12296,12305).addRange(12308,12315).addRange(65113,65118).addRange(65124,65125).addRange(65288,65289).addRange(65375,65376).addRange(65378,65379),JY.characters=e,JY}var $Y,QY={};function ZY(){if($Y)return QY;$Y=1;var e=_Y(39,46,58,94,96,168,173,175,180,890,903,1369,1375,1471,1479,1524,1564,1600,1648,1807,1809,2042,2045,2184,2362,2364,2381,2417,2433,2492,2509,2558,2620,2641,2677,2748,2765,2817,2876,2879,2893,2946,3008,3021,3072,3076,3132,3201,3260,3263,3270,3405,3457,3530,3542,3633,3761,3782,3893,3895,3897,4038,4226,4237,4253,4348,6086,6103,6109,6211,6313,6450,6683,6742,6752,6754,6783,6823,6964,6972,6978,7142,7149,7405,7412,7544,8125,8228,8231,8305,8319,11631,11647,11823,12293,12347,40981,42508,42623,42864,43010,43014,43019,43052,43263,43443,43471,43587,43596,43632,43644,43696,43713,43741,43766,44005,44008,44013,64286,65043,65106,65109,65279,65287,65294,65306,65342,65344,65392,65507,66045,66272,68159,68942,68975,69317,69633,69744,69821,69826,69837,70003,70095,70196,70206,70209,70367,70464,70606,70608,70610,70726,70750,70842,71229,71339,71341,71351,71453,71455,71998,72003,72160,72263,72544,72550,72767,73018,73031,73109,73111,73177,73536,73538,73562,94031,121461,121476,123023,123566,124643,124646,124661,124671,917505);return e.addRange(183,184).addRange(688,879).addRange(884,885).addRange(900,901).addRange(1155,1161).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1536,1541).addRange(1552,1562).addRange(1611,1631).addRange(1750,1757).addRange(1759,1768).addRange(1770,1773).addRange(1840,1866).addRange(1958,1968).addRange(2027,2037).addRange(2070,2093).addRange(2137,2139).addRange(2192,2193).addRange(2199,2207).addRange(2249,2306).addRange(2369,2376).addRange(2385,2391).addRange(2402,2403).addRange(2497,2500).addRange(2530,2531).addRange(2561,2562).addRange(2625,2626).addRange(2631,2632).addRange(2635,2637).addRange(2672,2673).addRange(2689,2690).addRange(2753,2757).addRange(2759,2760).addRange(2786,2787).addRange(2810,2815).addRange(2881,2884).addRange(2901,2902).addRange(2914,2915).addRange(3134,3136).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3170,3171).addRange(3276,3277).addRange(3298,3299).addRange(3328,3329).addRange(3387,3388).addRange(3393,3396).addRange(3426,3427),e.addRange(3538,3540).addRange(3636,3642).addRange(3654,3662).addRange(3764,3772).addRange(3784,3790).addRange(3864,3865).addRange(3953,3966).addRange(3968,3972).addRange(3974,3975).addRange(3981,3991).addRange(3993,4028).addRange(4141,4144).addRange(4146,4151).addRange(4153,4154).addRange(4157,4158).addRange(4184,4185).addRange(4190,4192).addRange(4209,4212).addRange(4229,4230).addRange(4957,4959).addRange(5906,5908).addRange(5938,5939).addRange(5970,5971).addRange(6002,6003).addRange(6068,6069).addRange(6071,6077).addRange(6089,6099).addRange(6155,6159).addRange(6277,6278).addRange(6432,6434).addRange(6439,6440).addRange(6457,6459).addRange(6679,6680).addRange(6744,6750).addRange(6757,6764).addRange(6771,6780).addRange(6832,6877).addRange(6880,6891).addRange(6912,6915).addRange(6966,6970).addRange(7019,7027).addRange(7040,7041).addRange(7074,7077).addRange(7080,7081).addRange(7083,7085).addRange(7144,7145).addRange(7151,7153).addRange(7212,7219).addRange(7222,7223).addRange(7288,7293).addRange(7376,7378),e.addRange(7380,7392).addRange(7394,7400).addRange(7416,7417).addRange(7468,7530).addRange(7579,7679).addRange(8127,8129).addRange(8141,8143).addRange(8157,8159).addRange(8173,8175).addRange(8189,8190).addRange(8203,8207).addRange(8216,8217).addRange(8234,8238).addRange(8288,8292).addRange(8294,8303).addRange(8336,8348).addRange(8400,8432).addRange(11388,11389).addRange(11503,11505).addRange(11744,11775).addRange(12330,12333).addRange(12337,12341).addRange(12441,12446).addRange(12540,12542).addRange(42232,42237).addRange(42607,42610).addRange(42612,42621).addRange(42652,42655).addRange(42736,42737).addRange(42752,42785).addRange(42888,42890).addRange(42993,42996).addRange(43e3,43001).addRange(43045,43046).addRange(43204,43205).addRange(43232,43249).addRange(43302,43309).addRange(43335,43345).addRange(43392,43394).addRange(43446,43449).addRange(43452,43453).addRange(43493,43494).addRange(43561,43566).addRange(43569,43570).addRange(43573,43574).addRange(43698,43700).addRange(43703,43704).addRange(43710,43711).addRange(43756,43757).addRange(43763,43764).addRange(43867,43871),e.addRange(43881,43883).addRange(64434,64450).addRange(65024,65039).addRange(65056,65071).addRange(65438,65439).addRange(65529,65531).addRange(66422,66426).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(68097,68099).addRange(68101,68102).addRange(68108,68111).addRange(68152,68154).addRange(68325,68326).addRange(68900,68903).addRange(68969,68973).addRange(69291,69292).addRange(69370,69375).addRange(69446,69456).addRange(69506,69509).addRange(69688,69702).addRange(69747,69748).addRange(69759,69761).addRange(69811,69814).addRange(69817,69818).addRange(69888,69890).addRange(69927,69931).addRange(69933,69940).addRange(70016,70017).addRange(70070,70078).addRange(70089,70092).addRange(70191,70193).addRange(70198,70199).addRange(70371,70378).addRange(70400,70401).addRange(70459,70460).addRange(70502,70508).addRange(70512,70516).addRange(70587,70592).addRange(70625,70626).addRange(70712,70719).addRange(70722,70724).addRange(70835,70840).addRange(70847,70848).addRange(70850,70851).addRange(71090,71093).addRange(71100,71101).addRange(71103,71104).addRange(71132,71133).addRange(71219,71226),e.addRange(71231,71232).addRange(71344,71349).addRange(71458,71461).addRange(71463,71467).addRange(71727,71735).addRange(71737,71738).addRange(71995,71996).addRange(72148,72151).addRange(72154,72155).addRange(72193,72202).addRange(72243,72248).addRange(72251,72254).addRange(72273,72278).addRange(72281,72283).addRange(72330,72342).addRange(72344,72345).addRange(72546,72548).addRange(72752,72758).addRange(72760,72765).addRange(72850,72871).addRange(72874,72880).addRange(72882,72883).addRange(72885,72886).addRange(73009,73014).addRange(73020,73021).addRange(73023,73029).addRange(73104,73105).addRange(73459,73460).addRange(73472,73473).addRange(73526,73530).addRange(78896,78912).addRange(78919,78933).addRange(90398,90409).addRange(90413,90415).addRange(92912,92916).addRange(92976,92982).addRange(92992,92995).addRange(93504,93506).addRange(93547,93548).addRange(94095,94111).addRange(94176,94177).addRange(94179,94180).addRange(94194,94195).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(113821,113822).addRange(113824,113827).addRange(118528,118573).addRange(118576,118598).addRange(119143,119145),e.addRange(119155,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(122928,122989).addRange(123184,123197).addRange(123628,123631).addRange(124139,124143).addRange(124398,124399).addRange(124654,124655).addRange(125136,125142).addRange(125252,125259).addRange(127995,127999).addRange(917536,917631).addRange(917760,917999),QY.characters=e,QY}var e$,t$={};function r$(){if(e$)return t$;e$=1;var e=_Y(170,181,186,837,895,902,908,4295,4301,8025,8027,8029,8126,8305,8319,8450,8455,8469,8484,8486,8488,8505,8526,11559,11565,67456,119970,119995,120134);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,442).addRange(444,447).addRange(452,659).addRange(662,696).addRange(704,705).addRange(736,740).addRange(880,883).addRange(886,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(4256,4293).addRange(4304,4346).addRange(4348,4351).addRange(5024,5109).addRange(5112,5117).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7424,7615).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8336,8348).addRange(8458,8467).addRange(8473,8477).addRange(8490,8493).addRange(8495,8500).addRange(8508,8511).addRange(8517,8521),e.addRange(8544,8575).addRange(8579,8580).addRange(9398,9449).addRange(11264,11492).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(42560,42605).addRange(42624,42653).addRange(42786,42887).addRange(42891,42894).addRange(42896,42972).addRange(42993,42998).addRange(43e3,43002).addRange(43824,43866).addRange(43868,43881).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65313,65338).addRange(65345,65370).addRange(66560,66639).addRange(66736,66771).addRange(66776,66811).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67459,67461).addRange(67463,67504).addRange(67506,67514).addRange(68736,68786).addRange(68800,68850).addRange(68944,68965).addRange(68976,68997).addRange(71840,71903).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069),e.addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122633).addRange(122635,122654).addRange(122661,122666).addRange(122928,122989).addRange(125184,125251).addRange(127280,127305).addRange(127312,127337).addRange(127344,127369),t$.characters=e,t$}var a$,n$={};function s$(){if(a$)return n$;a$=1;var e=_Y(181,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,379,381,383,388,418,420,425,428,437,444,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,500,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,577,584,586,588,590,837,880,882,886,895,902,908,962,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1015,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,1415,4295,4301,7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,8025,8027,8029,8031,8486,8498,8579,11360,11367,11369,11371,11378,11381,11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,42934,42936,42938,42940,42942,42944,42946,42953,42958,42960,42962,42964,42966,42968,42970,42972,42997);return e.addRange(65,90).addRange(192,214).addRange(216,223).addRange(329,330).addRange(376,377).addRange(385,386).addRange(390,391).addRange(393,395).addRange(398,401).addRange(403,404).addRange(406,408).addRange(412,413).addRange(415,416).addRange(422,423).addRange(430,431).addRange(433,435).addRange(439,440).addRange(452,453).addRange(455,456).addRange(458,459).addRange(497,498).addRange(502,504).addRange(570,571).addRange(573,574).addRange(579,582).addRange(904,906).addRange(910,911).addRange(913,929).addRange(931,939).addRange(975,977).addRange(981,982).addRange(1008,1009).addRange(1012,1013).addRange(1017,1018).addRange(1021,1071).addRange(1216,1217).addRange(1329,1366).addRange(4256,4293).addRange(5112,5117).addRange(7296,7305).addRange(7312,7354).addRange(7357,7359).addRange(7834,7835).addRange(7944,7951).addRange(7960,7965).addRange(7976,7983).addRange(7992,7999).addRange(8008,8013).addRange(8040,8047).addRange(8064,8111).addRange(8114,8116),e.addRange(8119,8124).addRange(8130,8132).addRange(8135,8140).addRange(8152,8155).addRange(8168,8172).addRange(8178,8180).addRange(8183,8188).addRange(8490,8491).addRange(8544,8559).addRange(9398,9423).addRange(11264,11311).addRange(11362,11364).addRange(11373,11376).addRange(11390,11392).addRange(42877,42878).addRange(42922,42926).addRange(42928,42932).addRange(42948,42951).addRange(42955,42956).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65313,65338).addRange(66560,66599).addRange(66736,66771).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(68736,68786).addRange(68944,68965).addRange(71840,71871).addRange(93760,93791).addRange(93856,93880).addRange(125184,125217),n$.characters=e,n$}var o$,i$={};function d$(){if(o$)return i$;o$=1;var e=_Y(181,447,601,623,629,637,640,658,837,895,902,908,4295,4301,7545,7549,7566,7838,8025,8027,8029,8126,8486,8498,8526,11559,11565,43859);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,311).addRange(313,396).addRange(398,425).addRange(428,441).addRange(444,445).addRange(452,544).addRange(546,563).addRange(570,596).addRange(598,599).addRange(603,604).addRange(608,609).addRange(611,614).addRange(616,620).addRange(625,626).addRange(642,643).addRange(647,652).addRange(669,670).addRange(880,883).addRange(886,887).addRange(891,893).addRange(904,906).addRange(910,929).addRange(931,977).addRange(981,1013).addRange(1015,1019).addRange(1021,1153).addRange(1162,1327).addRange(1329,1366).addRange(1377,1415).addRange(4256,4293).addRange(4304,4346).addRange(4349,4351).addRange(5024,5109).addRange(5112,5117).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7680,7835).addRange(7840,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132),e.addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8490,8491).addRange(8544,8575).addRange(8579,8580).addRange(9398,9449).addRange(11264,11376).addRange(11378,11379).addRange(11381,11382).addRange(11390,11491).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(42560,42605).addRange(42624,42651).addRange(42786,42799).addRange(42802,42863).addRange(42873,42887).addRange(42891,42893).addRange(42896,42900).addRange(42902,42926).addRange(42928,42972).addRange(42997,42998).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65313,65338).addRange(65345,65370).addRange(66560,66639).addRange(66736,66771).addRange(66776,66811).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(68736,68786).addRange(68800,68850).addRange(68944,68965).addRange(68976,68997).addRange(71840,71903).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907),e.addRange(125184,125251),i$.characters=e,i$}var c$,l$={};function u$(){if(c$)return l$;c$=1;var e=_Y(256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,379,381,388,418,420,425,428,437,444,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,500,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,577,584,586,588,590,880,882,886,895,902,908,975,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,4295,4301,7305,7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,8025,8027,8029,8031,8486,8498,8579,11360,11367,11369,11371,11378,11381,11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,42934,42936,42938,42940,42942,42944,42946,42953,42958,42960,42962,42964,42966,42968,42970,42972,42997);return e.addRange(65,90).addRange(192,214).addRange(216,222).addRange(376,377).addRange(385,386).addRange(390,391).addRange(393,395).addRange(398,401).addRange(403,404).addRange(406,408).addRange(412,413).addRange(415,416).addRange(422,423).addRange(430,431).addRange(433,435).addRange(439,440).addRange(452,453).addRange(455,456).addRange(458,459).addRange(497,498).addRange(502,504).addRange(570,571).addRange(573,574).addRange(579,582).addRange(904,906).addRange(910,911).addRange(913,929).addRange(931,939).addRange(1017,1018).addRange(1021,1071).addRange(1216,1217).addRange(1329,1366).addRange(4256,4293).addRange(5024,5109).addRange(7312,7354).addRange(7357,7359).addRange(7944,7951).addRange(7960,7965).addRange(7976,7983).addRange(7992,7999).addRange(8008,8013).addRange(8040,8047).addRange(8072,8079).addRange(8088,8095).addRange(8104,8111).addRange(8120,8124).addRange(8136,8140).addRange(8152,8155).addRange(8168,8172).addRange(8184,8188).addRange(8490,8491),e.addRange(8544,8559).addRange(9398,9423).addRange(11264,11311).addRange(11362,11364).addRange(11373,11376).addRange(11390,11392).addRange(42877,42878).addRange(42922,42926).addRange(42928,42932).addRange(42948,42951).addRange(42955,42956).addRange(65313,65338).addRange(66560,66599).addRange(66736,66771).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(68736,68786).addRange(68944,68965).addRange(71840,71871).addRange(93760,93791).addRange(93856,93880).addRange(125184,125217),l$.characters=e,l$}var p$,f$={};function g$(){if(p$)return f$;p$=1;var e=_Y(160,168,170,173,175,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,310,313,315,317,323,325,327,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,379,381,383,388,418,420,425,428,437,444,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,577,584,586,588,590,847,880,882,884,886,890,908,962,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1015,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,1415,1564,2527,2611,2614,2654,3635,3763,3852,3907,3917,3922,3927,3932,3945,3955,3969,3987,3997,4002,4007,4012,4025,4295,4301,4348,7544,7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,8025,8027,8029,8031,8049,8051,8053,8055,8057,8059,8061,8147,8163,8209,8215,8252,8254,8279,8360,8484,8486,8488,8579,8585,10764,10972,11360,11367,11369,11371,11378,11381,11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,11631,11935,12019,12288,12342,12447,12543,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42864,42873,42875,42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,42934,42936,42938,42940,42942,42944,42946,42953,42958,42960,42962,42964,42966,42968,42970,42972,43881,64016,64018,64032,64034,64285,64318,65140,65279,119970,119995,120134,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590,127376);return e.addRange(65,90).addRange(178,181).addRange(184,186).addRange(188,190).addRange(192,214).addRange(216,223).addRange(306,308).addRange(319,321).addRange(329,330).addRange(376,377).addRange(385,386).addRange(390,391).addRange(393,395).addRange(398,401).addRange(403,404).addRange(406,408).addRange(412,413).addRange(415,416).addRange(422,423).addRange(430,431).addRange(433,435).addRange(439,440).addRange(452,461).addRange(497,500).addRange(502,504).addRange(570,571).addRange(573,574).addRange(579,582).addRange(688,696).addRange(728,733).addRange(736,740).addRange(832,833).addRange(835,837).addRange(894,895).addRange(900,906).addRange(910,911).addRange(913,929).addRange(931,939).addRange(975,982).addRange(1008,1010).addRange(1012,1013).addRange(1017,1018).addRange(1021,1071).addRange(1216,1217).addRange(1329,1366).addRange(1653,1656).addRange(2392,2399).addRange(2524,2525).addRange(2649,2651).addRange(2908,2909).addRange(3804,3805),e.addRange(3957,3961).addRange(4256,4293).addRange(4447,4448).addRange(5112,5117).addRange(6068,6069).addRange(6155,6159).addRange(7296,7305).addRange(7312,7354).addRange(7357,7359).addRange(7468,7470).addRange(7472,7482).addRange(7484,7501).addRange(7503,7530).addRange(7579,7615).addRange(7834,7835).addRange(7944,7951).addRange(7960,7965).addRange(7976,7983).addRange(7992,7999).addRange(8008,8013).addRange(8040,8047).addRange(8064,8111).addRange(8114,8116).addRange(8119,8132).addRange(8135,8143).addRange(8152,8155).addRange(8157,8159).addRange(8168,8175).addRange(8178,8180).addRange(8183,8190).addRange(8192,8207).addRange(8228,8230).addRange(8234,8239).addRange(8243,8244).addRange(8246,8247).addRange(8263,8265).addRange(8287,8305).addRange(8308,8334).addRange(8336,8348).addRange(8448,8451).addRange(8453,8455).addRange(8457,8467).addRange(8469,8470).addRange(8473,8477).addRange(8480,8482).addRange(8490,8493).addRange(8495,8505).addRange(8507,8512).addRange(8517,8521).addRange(8528,8575).addRange(8748,8749),e.addRange(8751,8752).addRange(9001,9002).addRange(9312,9450).addRange(10868,10870).addRange(11264,11311).addRange(11362,11364).addRange(11373,11376).addRange(11388,11392).addRange(12032,12245).addRange(12344,12346).addRange(12443,12444).addRange(12593,12686).addRange(12690,12703).addRange(12800,12830).addRange(12832,12871).addRange(12880,12926).addRange(12928,13311).addRange(42652,42653).addRange(42877,42878).addRange(42922,42926).addRange(42928,42932).addRange(42948,42951).addRange(42955,42956).addRange(42993,42997).addRange(43e3,43001).addRange(43868,43871).addRange(43888,43967).addRange(63744,64013).addRange(64021,64030).addRange(64037,64038).addRange(64042,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64287,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65020).addRange(65024,65049).addRange(65072,65092).addRange(65095,65106).addRange(65108,65126).addRange(65128,65131).addRange(65136,65138).addRange(65142,65276).addRange(65281,65470),e.addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65504,65510).addRange(65512,65518).addRange(65520,65528).addRange(66560,66599).addRange(66736,66771).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(67457,67461).addRange(67463,67504).addRange(67506,67514).addRange(68736,68786).addRange(68944,68965).addRange(71840,71871).addRange(93760,93791).addRange(93856,93880).addRange(113824,113827).addRange(117974,118009).addRange(119134,119140).addRange(119155,119162).addRange(119227,119232).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779).addRange(120782,120831).addRange(122928,122989).addRange(125184,125217).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519),e.addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(127232,127242).addRange(127248,127278).addRange(127280,127311).addRange(127338,127340).addRange(127488,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(130032,130041).addRange(194560,195101).addRange(917504,921599),f$.characters=e,f$}var m$,y$={};function h$(){if(m$)return y$;m$=1;var e=_Y(181,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,387,389,392,396,402,405,414,417,419,421,424,429,432,436,438,441,445,447,452,460,462,464,466,468,470,472,474,479,481,483,485,487,489,491,493,499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,578,583,585,587,589,601,623,629,637,640,658,837,881,883,887,912,985,987,989,991,993,995,997,999,1001,1003,1005,1013,1016,1019,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,7306,7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,8126,8526,8580,11361,11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42957,42959,42961,42963,42965,42967,42969,42971,42998,43859);return e.addRange(97,122).addRange(223,246).addRange(248,255).addRange(328,329).addRange(382,384).addRange(409,411).addRange(454,455).addRange(457,458).addRange(476,477).addRange(495,497).addRange(575,576).addRange(591,596).addRange(598,599).addRange(603,604).addRange(608,609).addRange(611,614).addRange(616,620).addRange(625,626).addRange(642,643).addRange(647,652).addRange(669,670).addRange(891,893).addRange(940,974).addRange(976,977).addRange(981,983).addRange(1007,1011).addRange(1072,1119).addRange(1230,1231).addRange(1377,1415).addRange(5112,5117).addRange(7296,7304).addRange(7829,7835).addRange(7935,7943).addRange(7952,7957).addRange(7968,7975).addRange(7984,7991).addRange(8e3,8005).addRange(8016,8023).addRange(8032,8039).addRange(8048,8061).addRange(8064,8071).addRange(8080,8087).addRange(8096,8103).addRange(8112,8116).addRange(8118,8119).addRange(8130,8132).addRange(8134,8135).addRange(8144,8147).addRange(8150,8151).addRange(8160,8167).addRange(8178,8180),e.addRange(8182,8183).addRange(8560,8575).addRange(9424,9449).addRange(11312,11359).addRange(11365,11366).addRange(11520,11557).addRange(42899,42900).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65345,65370).addRange(66600,66639).addRange(66776,66811).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(68800,68850).addRange(68976,68997).addRange(71872,71903).addRange(93792,93823).addRange(93883,93907).addRange(125218,125251),y$.characters=e,y$}var b$,v$={};function x$(){if(b$)return v$;b$=1;var e=_Y(181,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,387,389,392,396,402,405,414,417,419,421,424,429,432,436,438,441,445,447,462,464,466,468,470,472,474,479,481,483,485,487,489,491,493,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,578,583,585,587,589,601,623,629,637,640,658,837,881,883,887,912,985,987,989,991,993,995,997,999,1001,1003,1005,1013,1016,1019,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,7306,7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,8124,8126,8140,8188,8526,8580,11361,11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42957,42959,42961,42963,42965,42967,42969,42971,42998,43859);return e.addRange(97,122).addRange(223,246).addRange(248,255).addRange(328,329).addRange(382,384).addRange(409,411).addRange(453,454).addRange(456,457).addRange(459,460).addRange(476,477).addRange(495,496).addRange(498,499).addRange(575,576).addRange(591,596).addRange(598,599).addRange(603,604).addRange(608,609).addRange(611,614).addRange(616,620).addRange(625,626).addRange(642,643).addRange(647,652).addRange(669,670).addRange(891,893).addRange(940,974).addRange(976,977).addRange(981,983).addRange(1007,1011).addRange(1072,1119).addRange(1230,1231).addRange(1377,1415).addRange(4304,4346).addRange(4349,4351).addRange(5112,5117).addRange(7296,7304).addRange(7829,7835).addRange(7935,7943).addRange(7952,7957).addRange(7968,7975).addRange(7984,7991).addRange(8e3,8005).addRange(8016,8023).addRange(8032,8039).addRange(8048,8061).addRange(8064,8116).addRange(8118,8119).addRange(8130,8132).addRange(8134,8135).addRange(8144,8147).addRange(8150,8151).addRange(8160,8167),e.addRange(8178,8180).addRange(8182,8183).addRange(8560,8575).addRange(9424,9449).addRange(11312,11359).addRange(11365,11366).addRange(11520,11557).addRange(42899,42900).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65345,65370).addRange(66600,66639).addRange(66776,66811).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(68800,68850).addRange(68976,68997).addRange(71872,71903).addRange(93792,93823).addRange(93883,93907).addRange(125218,125251),v$.characters=e,v$}var R$,j$={};function w$(){if(R$)return j$;R$=1;var e=_Y(45,1418,1470,5120,6150,8275,8315,8331,8722,11799,11802,11840,11869,12316,12336,12448,65112,65123,65293,68974,69293);return e.addRange(8208,8213).addRange(11834,11835).addRange(65073,65074),j$.characters=e,j$}var E$,S$={};function T$(){if(E$)return S$;E$=1;var e=_Y(173,847,1564,12644,65279,65440);return e.addRange(4447,4448).addRange(6068,6069).addRange(6155,6159).addRange(8203,8207).addRange(8234,8238).addRange(8288,8303).addRange(65024,65039).addRange(65520,65528).addRange(113824,113827).addRange(119155,119162).addRange(917504,921599),S$.characters=e,S$}var P$,A$={};function k$(){if(P$)return A$;P$=1;var e=_Y(329,1651,3959,3961,917505);return e.addRange(6051,6052).addRange(8298,8303).addRange(9001,9002),A$.characters=e,A$}var C$,_$={};function I$(){if(C$)return _$;C$=1;var e=_Y(94,96,168,175,180,890,1369,1471,1479,2364,2381,2417,2492,2509,2620,2637,2748,2765,2876,2893,2901,3021,3132,3149,3260,3277,3405,3530,3642,3662,3770,3893,3895,3897,4038,4151,4239,5940,6109,6752,6783,6964,6980,7142,7405,7412,8125,11823,12540,42607,42623,42993,43014,43052,43204,43347,43443,43456,43493,43766,64286,65342,65344,65392,65507,66272,68159,68942,69370,69702,69744,70003,70080,70477,70722,70726,71231,71467,72003,72160,72244,72263,72345,72767,73026,73111,73177,73562,90415,123566);return e.addRange(183,184).addRange(688,846).addRange(848,855).addRange(861,866).addRange(884,885).addRange(900,901).addRange(1155,1159).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1611,1618).addRange(1623,1624).addRange(1759,1760).addRange(1765,1766).addRange(1770,1772).addRange(1840,1866).addRange(1958,1968).addRange(2027,2037).addRange(2072,2073).addRange(2200,2207).addRange(2249,2258).addRange(2275,2302).addRange(2385,2388).addRange(2813,2815).addRange(3387,3388).addRange(3655,3660).addRange(3784,3788).addRange(3864,3865).addRange(3902,3903).addRange(3970,3972).addRange(3974,3975).addRange(4153,4154).addRange(4195,4196).addRange(4201,4205).addRange(4231,4237).addRange(4250,4251).addRange(4957,4959).addRange(5908,5909).addRange(6089,6099).addRange(6457,6459).addRange(6773,6780).addRange(6832,6846).addRange(6849,6859).addRange(6863,6877).addRange(6880,6891).addRange(7019,7027).addRange(7082,7083).addRange(7154,7155).addRange(7222,7223).addRange(7288,7293).addRange(7376,7400),e.addRange(7415,7417).addRange(7468,7530).addRange(7579,7614).addRange(7620,7631).addRange(7669,7679).addRange(8127,8129).addRange(8141,8143).addRange(8157,8159).addRange(8173,8175).addRange(8189,8190).addRange(11503,11505).addRange(12330,12335).addRange(12441,12444).addRange(42620,42621).addRange(42652,42653).addRange(42736,42737).addRange(42752,42785).addRange(42888,42890).addRange(43e3,43001).addRange(43232,43249).addRange(43307,43310).addRange(43643,43645).addRange(43711,43714).addRange(43867,43871).addRange(43881,43883).addRange(44012,44013).addRange(65056,65071).addRange(65438,65439).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(68152,68154).addRange(68325,68326).addRange(68898,68903).addRange(68969,68973).addRange(69373,69375).addRange(69446,69456).addRange(69506,69509).addRange(69817,69818).addRange(69939,69940).addRange(70090,70092).addRange(70197,70198).addRange(70377,70378).addRange(70459,70460).addRange(70502,70508).addRange(70512,70516).addRange(70606,70608).addRange(70610,70611).addRange(70625,70626).addRange(70850,70851).addRange(71103,71104),e.addRange(71350,71351).addRange(71737,71738).addRange(71997,71998).addRange(73028,73029).addRange(73537,73538).addRange(78919,78933).addRange(92912,92916).addRange(92976,92982).addRange(93547,93548).addRange(94095,94111).addRange(94192,94193).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(118528,118573).addRange(118576,118598).addRange(119143,119145).addRange(119149,119154).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(122928,122989).addRange(123184,123190).addRange(123628,123631).addRange(124398,124399).addRange(125136,125142).addRange(125252,125254).addRange(125256,125258),_$.characters=e,_$}var D$,O$={};function N$(){if(D$)return O$;D$=1;var e=_Y(35,42,8205,8419,65039);return e.addRange(48,57).addRange(127462,127487).addRange(127995,127999).addRange(129456,129459).addRange(917536,917631),O$.characters=e,O$}var B$,M$={};function F$(){if(B$)return M$;B$=1;var e=_Y(9757,9977,127877,127943,128124,128143,128145,128170,128378,128400,128675,128704,128716,129292,129295,129318,129399,129467);return e.addRange(9994,9997).addRange(127938,127940).addRange(127946,127948).addRange(128066,128067).addRange(128070,128080).addRange(128102,128120).addRange(128129,128131).addRange(128133,128135).addRange(128372,128373).addRange(128405,128406).addRange(128581,128583).addRange(128587,128591).addRange(128692,128694).addRange(129304,129311).addRange(129328,129337).addRange(129340,129342).addRange(129461,129462).addRange(129464,129465).addRange(129485,129487).addRange(129489,129501).addRange(129731,129733).addRange(129776,129784),M$.characters=e,M$}var L$,U$={};function q$(){if(L$)return U$;L$=1;var e=_Y();return e.addRange(127995,127999),U$.characters=e,U$}var G$,W$={};function V$(){if(G$)return W$;G$=1;var e=_Y(9200,9203,9855,9875,9889,9934,9940,9962,9973,9978,9981,9989,10024,10060,10062,10071,10160,10175,11088,11093,126980,127183,127374,127489,127514,127535,127988,128064,128378,128420,128716,129008,129736);return e.addRange(8986,8987).addRange(9193,9196).addRange(9725,9726).addRange(9748,9749).addRange(9800,9811).addRange(9898,9899).addRange(9917,9918).addRange(9924,9925).addRange(9970,9971).addRange(9994,9995).addRange(10067,10069).addRange(10133,10135).addRange(11035,11036).addRange(127377,127386).addRange(127462,127487).addRange(127538,127542).addRange(127544,127546).addRange(127568,127569).addRange(127744,127776).addRange(127789,127797).addRange(127799,127868).addRange(127870,127891).addRange(127904,127946).addRange(127951,127955).addRange(127968,127984).addRange(127992,128062).addRange(128066,128252).addRange(128255,128317).addRange(128331,128334).addRange(128336,128359).addRange(128405,128406).addRange(128507,128591).addRange(128640,128709).addRange(128720,128722).addRange(128725,128728).addRange(128732,128735).addRange(128747,128748).addRange(128756,128764).addRange(128992,129003).addRange(129292,129338).addRange(129340,129349).addRange(129351,129535).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784),W$.characters=e,W$}var H$,z$={};function K$(){if(H$)return z$;H$=1;var e=_Y(35,42,169,174,8252,8265,8482,8505,9e3,9167,9410,9654,9664,9742,9745,9752,9757,9760,9766,9770,9792,9794,9827,9832,9851,9881,9895,9928,9937,9981,9986,9989,9999,10002,10004,10006,10013,10017,10024,10052,10055,10060,10062,10071,10145,10160,10175,11088,11093,12336,12349,12951,12953,126980,127183,127374,127514,127535,128391,128400,128424,128444,128481,128483,128488,128495,128499,128745,128752,129008,129736);return e.addRange(48,57).addRange(8596,8601).addRange(8617,8618).addRange(8986,8987).addRange(9193,9203).addRange(9208,9210).addRange(9642,9643).addRange(9723,9726).addRange(9728,9732).addRange(9748,9749).addRange(9762,9763).addRange(9774,9775).addRange(9784,9786).addRange(9800,9811).addRange(9823,9824).addRange(9829,9830).addRange(9854,9855).addRange(9874,9879).addRange(9883,9884).addRange(9888,9889).addRange(9898,9899).addRange(9904,9905).addRange(9917,9918).addRange(9924,9925).addRange(9934,9935).addRange(9939,9940).addRange(9961,9962).addRange(9968,9973).addRange(9975,9978).addRange(9992,9997).addRange(10035,10036).addRange(10067,10069).addRange(10083,10084).addRange(10133,10135).addRange(10548,10549).addRange(11013,11015).addRange(11035,11036).addRange(127344,127345).addRange(127358,127359).addRange(127377,127386).addRange(127462,127487).addRange(127489,127490).addRange(127538,127546).addRange(127568,127569).addRange(127744,127777).addRange(127780,127891).addRange(127894,127895).addRange(127897,127899).addRange(127902,127984).addRange(127987,127989).addRange(127991,128253),e.addRange(128255,128317).addRange(128329,128334).addRange(128336,128359).addRange(128367,128368).addRange(128371,128378).addRange(128394,128397).addRange(128405,128406).addRange(128420,128421).addRange(128433,128434).addRange(128450,128452).addRange(128465,128467).addRange(128476,128478).addRange(128506,128591).addRange(128640,128709).addRange(128715,128722).addRange(128725,128728).addRange(128732,128741).addRange(128747,128748).addRange(128755,128764).addRange(128992,129003).addRange(129292,129338).addRange(129340,129349).addRange(129351,129535).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784),z$.characters=e,z$}var X$,J$={};function Y$(){if(X$)return J$;X$=1;var e=_Y(169,174,8252,8265,8482,8505,9e3,9167,9410,9654,9664,9742,9745,9752,9757,9760,9766,9770,9792,9794,9827,9832,9851,9881,9895,9928,9937,9981,9986,9989,9999,10002,10004,10006,10013,10017,10024,10052,10055,10060,10062,10071,10145,10160,10175,11088,11093,12336,12349,12951,12953,126980,127168,127374,127514,127535,128391,128400,128424,128444,128481,128483,128488,128495,128499,128745);return e.addRange(8596,8601).addRange(8617,8618).addRange(8986,8987).addRange(9193,9203).addRange(9208,9210).addRange(9642,9643).addRange(9723,9726).addRange(9728,9732).addRange(9748,9749).addRange(9762,9763).addRange(9774,9775).addRange(9784,9786).addRange(9800,9811).addRange(9823,9824).addRange(9829,9830).addRange(9854,9855).addRange(9874,9879).addRange(9883,9884).addRange(9888,9889).addRange(9898,9899).addRange(9904,9905).addRange(9917,9918).addRange(9924,9925).addRange(9934,9935).addRange(9939,9940).addRange(9961,9962).addRange(9968,9973).addRange(9975,9978).addRange(9992,9997).addRange(10035,10036).addRange(10067,10069).addRange(10083,10084).addRange(10133,10135).addRange(10548,10549).addRange(11013,11015).addRange(11035,11036).addRange(127020,127023).addRange(127124,127135).addRange(127151,127152).addRange(127183,127184).addRange(127222,127231).addRange(127344,127345).addRange(127358,127359).addRange(127377,127386).addRange(127406,127461).addRange(127489,127503).addRange(127538,127546).addRange(127548,127551).addRange(127561,127583).addRange(127590,127777).addRange(127780,127891),e.addRange(127894,127895).addRange(127897,127899).addRange(127902,127984).addRange(127987,127989).addRange(127991,127994).addRange(128e3,128253).addRange(128255,128317).addRange(128329,128334).addRange(128336,128359).addRange(128367,128368).addRange(128371,128378).addRange(128394,128397).addRange(128405,128406).addRange(128420,128421).addRange(128433,128434).addRange(128450,128452).addRange(128465,128467).addRange(128476,128478).addRange(128506,128591).addRange(128640,128709).addRange(128715,128722).addRange(128725,128741).addRange(128747,128752).addRange(128755,128767).addRange(128986,129023).addRange(129036,129039).addRange(129096,129103).addRange(129114,129119).addRange(129160,129167).addRange(129198,129199).addRange(129212,129215).addRange(129218,129231).addRange(129241,129279).addRange(129292,129338).addRange(129340,129349).addRange(129351,129535).addRange(129624,129631).addRange(129646,129791).addRange(130048,131069),J$.characters=e,J$}var $$,Q$={};function Z$(){if($$)return Q$;$$=1;var e=_Y(183,1600,2042,2673,2811,2901,3654,3782,6154,6211,6823,7222,7291,12293,40981,42508,43471,43494,43632,43741,65392,68942,68970,68975,70199,70493,72344,73177,94179,124399);return e.addRange(720,721).addRange(12337,12341).addRange(12445,12446).addRange(12540,12542).addRange(43763,43764).addRange(67457,67458).addRange(70610,70611).addRange(71110,71112).addRange(92994,92995).addRange(94176,94177).addRange(94194,94195).addRange(123196,123197).addRange(125252,125254),Q$.characters=e,Q$}var eQ,tQ={};function rQ(){if(eQ)return tQ;eQ=1;var e=_Y(908,1470,1472,1475,1478,1563,1758,1769,1808,1969,2074,2084,2088,2142,2363,2482,2493,2510,2563,2654,2678,2691,2761,2768,2809,2877,2880,2947,2972,3007,3024,3133,3265,3389,3517,3716,3749,3773,3782,3894,3896,3967,3973,4145,4152,4295,4301,4696,4800,6070,6314,6464,6743,6753,7143,7150,7379,7393,7418,8025,8027,8029,11559,11565,42611,43346,43597,43697,43712,43714,64285,64318,65952,67592,67644,69293,69632,69749,69932,70079,70280,70461,70463,70480,70539,70542,70583,70602,70609,70725,70749,70841,70846,70849,71102,71230,71340,71454,71462,71736,71739,71945,72192,72272,72343,72545,72549,72551,72766,72873,72881,72884,73030,73110,73112,73648,92917,110898,110933,113820,113823,119365,119970,119995,120134,123647,124415,125259,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590,129008,129736);return e.addRange(32,126).addRange(160,172).addRange(174,767).addRange(880,887).addRange(890,895).addRange(900,906).addRange(910,929).addRange(931,1154).addRange(1162,1327).addRange(1329,1366).addRange(1369,1418).addRange(1421,1423).addRange(1488,1514).addRange(1519,1524).addRange(1542,1551).addRange(1565,1610).addRange(1632,1647).addRange(1649,1749).addRange(1765,1766).addRange(1774,1805).addRange(1810,1839).addRange(1869,1957).addRange(1984,2026).addRange(2036,2042).addRange(2046,2069).addRange(2096,2110).addRange(2112,2136).addRange(2144,2154).addRange(2160,2191).addRange(2208,2249).addRange(2307,2361).addRange(2365,2368).addRange(2377,2380).addRange(2382,2384).addRange(2392,2401).addRange(2404,2432).addRange(2434,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2495,2496).addRange(2503,2504).addRange(2507,2508).addRange(2524,2525).addRange(2527,2529).addRange(2534,2557).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600),e.addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2624).addRange(2649,2652).addRange(2662,2671).addRange(2674,2676).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2749,2752).addRange(2763,2764).addRange(2784,2785).addRange(2790,2801).addRange(2818,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2887,2888).addRange(2891,2892).addRange(2908,2909).addRange(2911,2913).addRange(2918,2935).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3009,3010).addRange(3014,3016).addRange(3018,3020).addRange(3046,3066).addRange(3073,3075).addRange(3077,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3137,3140).addRange(3160,3162).addRange(3164,3165).addRange(3168,3169),e.addRange(3174,3183).addRange(3191,3200).addRange(3202,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3261,3262).addRange(3267,3268).addRange(3292,3294).addRange(3296,3297).addRange(3302,3311).addRange(3313,3315).addRange(3330,3340).addRange(3342,3344).addRange(3346,3386).addRange(3391,3392).addRange(3398,3400).addRange(3402,3404).addRange(3406,3407).addRange(3412,3414).addRange(3416,3425).addRange(3430,3455).addRange(3458,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3536,3537).addRange(3544,3550).addRange(3558,3567).addRange(3570,3572).addRange(3585,3632).addRange(3634,3635).addRange(3647,3654).addRange(3663,3675).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3760).addRange(3762,3763).addRange(3776,3780).addRange(3792,3801).addRange(3804,3807).addRange(3840,3863).addRange(3866,3892).addRange(3898,3911).addRange(3913,3948).addRange(3976,3980).addRange(4030,4037).addRange(4039,4044),e.addRange(4046,4058).addRange(4096,4140).addRange(4155,4156).addRange(4159,4183).addRange(4186,4189).addRange(4193,4208).addRange(4213,4225).addRange(4227,4228).addRange(4231,4236).addRange(4238,4252).addRange(4254,4293).addRange(4304,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4960,4988).addRange(4992,5017).addRange(5024,5109).addRange(5112,5117).addRange(5120,5788).addRange(5792,5880).addRange(5888,5905).addRange(5919,5937).addRange(5941,5942).addRange(5952,5969).addRange(5984,5996).addRange(5998,6e3).addRange(6016,6067).addRange(6078,6085).addRange(6087,6088).addRange(6100,6108).addRange(6112,6121).addRange(6128,6137).addRange(6144,6154).addRange(6160,6169).addRange(6176,6264).addRange(6272,6276).addRange(6279,6312).addRange(6320,6389).addRange(6400,6430).addRange(6435,6438),e.addRange(6441,6443).addRange(6448,6449).addRange(6451,6456).addRange(6468,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6622,6678).addRange(6681,6682).addRange(6686,6741).addRange(6755,6756).addRange(6765,6770).addRange(6784,6793).addRange(6800,6809).addRange(6816,6829).addRange(6916,6963).addRange(6974,6977).addRange(6981,6988).addRange(6990,7018).addRange(7028,7039).addRange(7042,7073).addRange(7078,7079).addRange(7086,7141).addRange(7146,7148).addRange(7164,7211).addRange(7220,7221).addRange(7227,7241).addRange(7245,7306).addRange(7312,7354).addRange(7357,7367).addRange(7401,7404).addRange(7406,7411).addRange(7413,7415).addRange(7424,7615).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8132).addRange(8134,8147).addRange(8150,8155).addRange(8157,8175).addRange(8178,8180).addRange(8182,8190).addRange(8192,8202).addRange(8208,8231).addRange(8239,8287),e.addRange(8304,8305).addRange(8308,8334).addRange(8336,8348).addRange(8352,8385).addRange(8448,8587).addRange(8592,9257).addRange(9280,9290).addRange(9312,11123).addRange(11126,11502).addRange(11506,11507).addRange(11513,11557).addRange(11568,11623).addRange(11631,11632).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(11776,11869).addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12272,12329).addRange(12336,12351).addRange(12353,12438).addRange(12443,12543).addRange(12549,12591).addRange(12593,12686).addRange(12688,12773).addRange(12783,12830).addRange(12832,42124).addRange(42128,42182).addRange(42192,42539).addRange(42560,42606).addRange(42622,42653).addRange(42656,42735).addRange(42738,42743).addRange(42752,42972).addRange(42993,43009).addRange(43011,43013).addRange(43015,43018).addRange(43020,43044).addRange(43047,43051).addRange(43056,43065).addRange(43072,43127).addRange(43136,43203).addRange(43214,43225),e.addRange(43250,43262).addRange(43264,43301).addRange(43310,43334).addRange(43359,43388).addRange(43395,43442).addRange(43444,43445).addRange(43450,43451).addRange(43454,43455).addRange(43457,43469).addRange(43471,43481).addRange(43486,43492).addRange(43494,43518).addRange(43520,43560).addRange(43567,43568).addRange(43571,43572).addRange(43584,43586).addRange(43588,43595).addRange(43600,43609).addRange(43612,43643).addRange(43645,43695).addRange(43701,43702).addRange(43705,43709).addRange(43739,43755).addRange(43758,43765).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43883).addRange(43888,44004).addRange(44006,44007).addRange(44009,44012).addRange(44016,44025).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64287,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64975).addRange(65008,65023).addRange(65040,65049).addRange(65072,65106).addRange(65108,65126).addRange(65128,65131),e.addRange(65136,65140).addRange(65142,65276).addRange(65281,65437).addRange(65440,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65504,65510).addRange(65512,65518).addRange(65532,65533).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65792,65794).addRange(65799,65843).addRange(65847,65934).addRange(65936,65948).addRange(66e3,66044).addRange(66176,66204).addRange(66208,66256).addRange(66273,66299).addRange(66304,66339).addRange(66349,66378).addRange(66384,66421).addRange(66432,66461).addRange(66463,66499).addRange(66504,66517).addRange(66560,66717).addRange(66720,66729).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66927,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461),e.addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67671,67742).addRange(67751,67759).addRange(67808,67826).addRange(67828,67829).addRange(67835,67867).addRange(67871,67897).addRange(67903,67929).addRange(67968,68023).addRange(68028,68047).addRange(68050,68096).addRange(68112,68115).addRange(68117,68119).addRange(68121,68149).addRange(68160,68168).addRange(68176,68184).addRange(68192,68255).addRange(68288,68324).addRange(68331,68342).addRange(68352,68405).addRange(68409,68437).addRange(68440,68466).addRange(68472,68497).addRange(68505,68508).addRange(68521,68527).addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68858,68899).addRange(68912,68921).addRange(68928,68965).addRange(68974,68997).addRange(69006,69007).addRange(69216,69246).addRange(69248,69289).addRange(69296,69297).addRange(69314,69319).addRange(69328,69336).addRange(69376,69415).addRange(69424,69445).addRange(69457,69465).addRange(69488,69505).addRange(69510,69513).addRange(69552,69579).addRange(69600,69622).addRange(69634,69687),e.addRange(69703,69709).addRange(69714,69743).addRange(69745,69746).addRange(69762,69810).addRange(69815,69816).addRange(69819,69820).addRange(69822,69825).addRange(69840,69864).addRange(69872,69881).addRange(69891,69926).addRange(69942,69959).addRange(69968,70002).addRange(70004,70006).addRange(70018,70069).addRange(70081,70088).addRange(70093,70094).addRange(70096,70111).addRange(70113,70132).addRange(70144,70161).addRange(70163,70190).addRange(70194,70195).addRange(70200,70205).addRange(70207,70208).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70313).addRange(70320,70366).addRange(70368,70370).addRange(70384,70393).addRange(70402,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70465,70468).addRange(70471,70472).addRange(70475,70476).addRange(70493,70499).addRange(70528,70537).addRange(70544,70581).addRange(70585,70586).addRange(70604,70605).addRange(70611,70613).addRange(70615,70616).addRange(70656,70711).addRange(70720,70721).addRange(70727,70747).addRange(70751,70753),e.addRange(70784,70831).addRange(70833,70834).addRange(70843,70844).addRange(70852,70855).addRange(70864,70873).addRange(71040,71086).addRange(71088,71089).addRange(71096,71099).addRange(71105,71131).addRange(71168,71218).addRange(71227,71228).addRange(71233,71236).addRange(71248,71257).addRange(71264,71276).addRange(71296,71338).addRange(71342,71343).addRange(71352,71353).addRange(71360,71369).addRange(71376,71395).addRange(71424,71450).addRange(71456,71457).addRange(71472,71494).addRange(71680,71726).addRange(71840,71922).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71983).addRange(71985,71989).addRange(71991,71992).addRange(71999,72002).addRange(72004,72006).addRange(72016,72025).addRange(72096,72103).addRange(72106,72147).addRange(72156,72159).addRange(72161,72164).addRange(72203,72242).addRange(72249,72250).addRange(72255,72262).addRange(72279,72280).addRange(72284,72329).addRange(72346,72354).addRange(72368,72440).addRange(72448,72457).addRange(72640,72673).addRange(72688,72697).addRange(72704,72712).addRange(72714,72751).addRange(72768,72773).addRange(72784,72812),e.addRange(72816,72847).addRange(72960,72966).addRange(72968,72969).addRange(72971,73008).addRange(73040,73049).addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73107,73108).addRange(73120,73129).addRange(73136,73179).addRange(73184,73193).addRange(73440,73458).addRange(73461,73464).addRange(73474,73488).addRange(73490,73525).addRange(73534,73535).addRange(73539,73561).addRange(73664,73713).addRange(73727,74649).addRange(74752,74862).addRange(74864,74868).addRange(74880,75075).addRange(77712,77810).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90397).addRange(90410,90412).addRange(90416,90425).addRange(92160,92728).addRange(92736,92766).addRange(92768,92777).addRange(92782,92862).addRange(92864,92873).addRange(92880,92909).addRange(92928,92975).addRange(92983,92997).addRange(93008,93017).addRange(93019,93025).addRange(93027,93047).addRange(93053,93071).addRange(93504,93561).addRange(93760,93850).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94032,94087).addRange(94099,94111).addRange(94176,94179),e.addRange(94194,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(117760,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118512).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119140).addRange(119146,119148).addRange(119171,119172).addRange(119180,119209).addRange(119214,119274).addRange(119296,119361).addRange(119488,119507).addRange(119520,119539).addRange(119552,119638).addRange(119648,119672).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779).addRange(120782,121343).addRange(121399,121402),e.addRange(121453,121460).addRange(121462,121475).addRange(121477,121483).addRange(122624,122654).addRange(122661,122666).addRange(122928,122989).addRange(123136,123180).addRange(123191,123197).addRange(123200,123209).addRange(123214,123215).addRange(123536,123565).addRange(123584,123627).addRange(123632,123641).addRange(124112,124139).addRange(124144,124153).addRange(124368,124397).addRange(124400,124410).addRange(124608,124638).addRange(124640,124642).addRange(124644,124645).addRange(124647,124653).addRange(124656,124660).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125127,125135).addRange(125184,125251).addRange(125264,125273).addRange(125278,125279).addRange(126065,126132).addRange(126209,126269).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651),e.addRange(126704,126705).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183).addRange(127185,127221).addRange(127232,127405).addRange(127462,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(127584,127589).addRange(127744,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129232,129240).addRange(129280,129623).addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130042).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),tQ.characters=e,tQ}var aQ,nQ={};function sQ(){if(aQ)return nQ;aQ=1;var e=_Y(1471,1479,1648,1809,2045,2362,2364,2381,2433,2492,2494,2509,2519,2558,2620,2641,2677,2748,2765,2817,2876,2893,2946,3006,3008,3021,3031,3072,3076,3132,3201,3260,3266,3390,3405,3415,3457,3530,3535,3542,3551,3633,3761,3893,3895,3897,4038,4226,4237,4253,6086,6109,6159,6313,6450,6683,6742,6752,6754,6783,7142,7149,7405,7412,8204,11647,43010,43014,43019,43052,43263,43347,43443,43456,43493,43587,43596,43644,43696,43713,43766,44005,44008,44013,64286,66045,66272,68159,69633,69744,69826,70003,70080,70095,70206,70209,70367,70462,70464,70477,70487,70584,70594,70597,70610,70726,70750,70832,70842,70845,71087,71229,71339,71341,71453,71455,71984,72003,72160,72263,72544,72550,72767,73018,73031,73109,73111,73562,78912,94031,94180,121461,121476,123023,123566,124643,124646,124661);return e.addRange(768,879).addRange(1155,1161).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1552,1562).addRange(1611,1631).addRange(1750,1756).addRange(1759,1764).addRange(1767,1768).addRange(1770,1773).addRange(1840,1866).addRange(1958,1968).addRange(2027,2035).addRange(2070,2073).addRange(2075,2083).addRange(2085,2087).addRange(2089,2093).addRange(2137,2139).addRange(2199,2207).addRange(2250,2273).addRange(2275,2306).addRange(2369,2376).addRange(2385,2391).addRange(2402,2403).addRange(2497,2500).addRange(2530,2531).addRange(2561,2562).addRange(2625,2626).addRange(2631,2632).addRange(2635,2637).addRange(2672,2673).addRange(2689,2690).addRange(2753,2757).addRange(2759,2760).addRange(2786,2787).addRange(2810,2815).addRange(2878,2879).addRange(2881,2884).addRange(2901,2903).addRange(2914,2915).addRange(3134,3136).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3170,3171).addRange(3263,3264).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3298,3299),e.addRange(3328,3329).addRange(3387,3388).addRange(3393,3396).addRange(3426,3427).addRange(3538,3540).addRange(3636,3642).addRange(3655,3662).addRange(3764,3772).addRange(3784,3790).addRange(3864,3865).addRange(3953,3966).addRange(3968,3972).addRange(3974,3975).addRange(3981,3991).addRange(3993,4028).addRange(4141,4144).addRange(4146,4151).addRange(4153,4154).addRange(4157,4158).addRange(4184,4185).addRange(4190,4192).addRange(4209,4212).addRange(4229,4230).addRange(4957,4959).addRange(5906,5909).addRange(5938,5940).addRange(5970,5971).addRange(6002,6003).addRange(6068,6069).addRange(6071,6077).addRange(6089,6099).addRange(6155,6157).addRange(6277,6278).addRange(6432,6434).addRange(6439,6440).addRange(6457,6459).addRange(6679,6680).addRange(6744,6750).addRange(6757,6764).addRange(6771,6780).addRange(6832,6877).addRange(6880,6891).addRange(6912,6915).addRange(6964,6973).addRange(6978,6980).addRange(7019,7027).addRange(7040,7041).addRange(7074,7077).addRange(7080,7085).addRange(7144,7145).addRange(7151,7155),e.addRange(7212,7219).addRange(7222,7223).addRange(7376,7378).addRange(7380,7392).addRange(7394,7400).addRange(7416,7417).addRange(7616,7679).addRange(8400,8432).addRange(11503,11505).addRange(11744,11775).addRange(12330,12335).addRange(12441,12442).addRange(42607,42610).addRange(42612,42621).addRange(42654,42655).addRange(42736,42737).addRange(43045,43046).addRange(43204,43205).addRange(43232,43249).addRange(43302,43309).addRange(43335,43345).addRange(43392,43394).addRange(43446,43449).addRange(43452,43453).addRange(43561,43566).addRange(43569,43570).addRange(43573,43574).addRange(43698,43700).addRange(43703,43704).addRange(43710,43711).addRange(43756,43757).addRange(65024,65039).addRange(65056,65071).addRange(65438,65439).addRange(66422,66426).addRange(68097,68099).addRange(68101,68102).addRange(68108,68111).addRange(68152,68154).addRange(68325,68326).addRange(68900,68903).addRange(68969,68973).addRange(69291,69292).addRange(69370,69375).addRange(69446,69456).addRange(69506,69509).addRange(69688,69702).addRange(69747,69748).addRange(69759,69761).addRange(69811,69814).addRange(69817,69818),e.addRange(69888,69890).addRange(69927,69931).addRange(69933,69940).addRange(70016,70017).addRange(70070,70078).addRange(70089,70092).addRange(70191,70193).addRange(70196,70199).addRange(70371,70378).addRange(70400,70401).addRange(70459,70460).addRange(70502,70508).addRange(70512,70516).addRange(70587,70592).addRange(70599,70601).addRange(70606,70608).addRange(70625,70626).addRange(70712,70719).addRange(70722,70724).addRange(70835,70840).addRange(70847,70848).addRange(70850,70851).addRange(71090,71093).addRange(71100,71101).addRange(71103,71104).addRange(71132,71133).addRange(71219,71226).addRange(71231,71232).addRange(71344,71351).addRange(71458,71461).addRange(71463,71467).addRange(71727,71735).addRange(71737,71738).addRange(71995,71998).addRange(72148,72151).addRange(72154,72155).addRange(72193,72202).addRange(72243,72248).addRange(72251,72254).addRange(72273,72278).addRange(72281,72283).addRange(72330,72342).addRange(72344,72345).addRange(72546,72548).addRange(72752,72758).addRange(72760,72765).addRange(72850,72871).addRange(72874,72880).addRange(72882,72883).addRange(72885,72886).addRange(73009,73014),e.addRange(73020,73021).addRange(73023,73029).addRange(73104,73105).addRange(73459,73460).addRange(73472,73473).addRange(73526,73530).addRange(73536,73538).addRange(78919,78933).addRange(90398,90409).addRange(90413,90415).addRange(92912,92916).addRange(92976,92982).addRange(94095,94098).addRange(94192,94193).addRange(113821,113822).addRange(118528,118573).addRange(118576,118598).addRange(119141,119145).addRange(119149,119154).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(123184,123190).addRange(123628,123631).addRange(124140,124143).addRange(124398,124399).addRange(124654,124655).addRange(125136,125142).addRange(125252,125258).addRange(917536,917631).addRange(917760,917999),nQ.characters=e,nQ}var oQ,iQ={};function dQ(){if(oQ)return iQ;oQ=1;var e=_Y();return e.addRange(48,57).addRange(65,70).addRange(97,102).addRange(65296,65305).addRange(65313,65318).addRange(65345,65350),iQ.characters=e,iQ}var cQ,lQ={};function uQ(){if(cQ)return lQ;cQ=1;var e=_Y(95,170,181,183,186,748,750,895,908,1369,1471,1479,1791,2042,2045,2482,2519,2556,2558,2620,2641,2654,2768,2929,2972,3024,3031,3517,3530,3542,3716,3749,3782,3840,3893,3895,3897,4038,4295,4301,4696,4800,6103,6823,8025,8027,8029,8126,8276,8305,8319,8417,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,43052,43259,64318,65343,66045,66272,67592,67644,68159,69415,69826,70006,70108,70280,70480,70487,70539,70542,70594,70597,70855,71236,71945,72263,72349,73018,73648,110898,110933,119970,119995,120134,121461,121476,123023,123214,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(48,57).addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(768,884).addRange(886,887).addRange(890,893).addRange(902,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1155,1159).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1488,1514).addRange(1519,1522).addRange(1552,1562).addRange(1568,1641).addRange(1646,1747).addRange(1749,1756).addRange(1759,1768).addRange(1770,1788).addRange(1808,1866).addRange(1869,1969).addRange(1984,2037).addRange(2048,2093).addRange(2112,2139).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2199,2273).addRange(2275,2403).addRange(2406,2415).addRange(2417,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2492,2500).addRange(2503,2504).addRange(2507,2510).addRange(2524,2525),e.addRange(2527,2531).addRange(2534,2545).addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2649,2652).addRange(2662,2677).addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2748,2757).addRange(2759,2761).addRange(2763,2765).addRange(2784,2787).addRange(2790,2799).addRange(2809,2815).addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2876,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2908,2909).addRange(2911,2915).addRange(2918,2927).addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001),e.addRange(3006,3010).addRange(3014,3016).addRange(3018,3021).addRange(3046,3055).addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3132,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3174,3183).addRange(3200,3203).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3260,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3302,3311).addRange(3313,3315).addRange(3328,3340).addRange(3342,3344).addRange(3346,3396).addRange(3398,3400).addRange(3402,3406).addRange(3412,3415).addRange(3423,3427).addRange(3430,3439).addRange(3450,3455).addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3558,3567).addRange(3570,3571).addRange(3585,3642).addRange(3648,3662).addRange(3664,3673),e.addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3773).addRange(3776,3780).addRange(3784,3790).addRange(3792,3801).addRange(3804,3807).addRange(3864,3865).addRange(3872,3881).addRange(3902,3911).addRange(3913,3948).addRange(3953,3972).addRange(3974,3991).addRange(3993,4028).addRange(4096,4169).addRange(4176,4253).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4957,4959).addRange(4969,4977).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5870,5880).addRange(5888,5909).addRange(5919,5940).addRange(5952,5971).addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003).addRange(6016,6099).addRange(6108,6109),e.addRange(6112,6121).addRange(6155,6157).addRange(6159,6169).addRange(6176,6264).addRange(6272,6314).addRange(6320,6389).addRange(6400,6430).addRange(6432,6443).addRange(6448,6459).addRange(6470,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6656,6683).addRange(6688,6750).addRange(6752,6780).addRange(6783,6793).addRange(6800,6809).addRange(6832,6845).addRange(6847,6877).addRange(6880,6891).addRange(6912,6988).addRange(6992,7001).addRange(7019,7027).addRange(7040,7155).addRange(7168,7223).addRange(7232,7241).addRange(7245,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7376,7378).addRange(7380,7418).addRange(7424,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8204,8205).addRange(8255,8256),e.addRange(8336,8348).addRange(8400,8412).addRange(8421,8432).addRange(8458,8467).addRange(8472,8477).addRange(8490,8505).addRange(8508,8511).addRange(8517,8521).addRange(8544,8584).addRange(11264,11492).addRange(11499,11507).addRange(11520,11557).addRange(11568,11623).addRange(11647,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(11744,11775).addRange(12293,12295).addRange(12321,12335).addRange(12337,12341).addRange(12344,12348).addRange(12353,12438).addRange(12441,12447).addRange(12449,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42539).addRange(42560,42607).addRange(42612,42621).addRange(42623,42737).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43047).addRange(43072,43123).addRange(43136,43205).addRange(43216,43225).addRange(43232,43255).addRange(43261,43309),e.addRange(43312,43347).addRange(43360,43388).addRange(43392,43456).addRange(43471,43481).addRange(43488,43518).addRange(43520,43574).addRange(43584,43597).addRange(43600,43609).addRange(43616,43638).addRange(43642,43714).addRange(43739,43741).addRange(43744,43759).addRange(43762,43766).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44010).addRange(44012,44013).addRange(44016,44025).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64285,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65019).addRange(65024,65039).addRange(65056,65071).addRange(65075,65076).addRange(65101,65103).addRange(65136,65140).addRange(65142,65276).addRange(65296,65305).addRange(65313,65338).addRange(65345,65370).addRange(65381,65470).addRange(65474,65479),e.addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65856,65908).addRange(66176,66204).addRange(66208,66256).addRange(66304,66335).addRange(66349,66378).addRange(66384,66426).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66513,66517).addRange(66560,66717).addRange(66720,66729).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897),e.addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68096,68099).addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68152,68154).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68326).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497).addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68864,68903).addRange(68912,68921).addRange(68928,68965).addRange(68969,68973).addRange(68975,68997).addRange(69248,69289).addRange(69291,69292).addRange(69296,69297).addRange(69314,69319).addRange(69370,69404).addRange(69424,69456).addRange(69488,69509).addRange(69552,69572).addRange(69600,69622).addRange(69632,69702).addRange(69734,69749).addRange(69759,69818).addRange(69840,69864).addRange(69872,69881).addRange(69888,69940).addRange(69942,69951).addRange(69956,69959).addRange(69968,70003).addRange(70016,70084).addRange(70089,70092).addRange(70094,70106).addRange(70144,70161).addRange(70163,70199).addRange(70206,70209).addRange(70272,70278).addRange(70282,70285),e.addRange(70287,70301).addRange(70303,70312).addRange(70320,70378).addRange(70384,70393).addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70459,70468).addRange(70471,70472).addRange(70475,70477).addRange(70493,70499).addRange(70502,70508).addRange(70512,70516).addRange(70528,70537).addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70611).addRange(70625,70626).addRange(70656,70730).addRange(70736,70745).addRange(70750,70753).addRange(70784,70853).addRange(70864,70873).addRange(71040,71093).addRange(71096,71104).addRange(71128,71133).addRange(71168,71232).addRange(71248,71257).addRange(71296,71352).addRange(71360,71369).addRange(71376,71395).addRange(71424,71450).addRange(71453,71467).addRange(71472,71481).addRange(71488,71494).addRange(71680,71738).addRange(71840,71913).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,72003).addRange(72016,72025).addRange(72096,72103).addRange(72106,72151),e.addRange(72154,72161).addRange(72163,72164).addRange(72192,72254).addRange(72272,72345).addRange(72368,72440).addRange(72544,72551).addRange(72640,72672).addRange(72688,72697).addRange(72704,72712).addRange(72714,72758).addRange(72760,72768).addRange(72784,72793).addRange(72818,72847).addRange(72850,72871).addRange(72873,72886).addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73031).addRange(73040,73049).addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73104,73105).addRange(73107,73112).addRange(73120,73129).addRange(73136,73179).addRange(73184,73193).addRange(73440,73462).addRange(73472,73488).addRange(73490,73530).addRange(73534,73538).addRange(73552,73562).addRange(73728,74649).addRange(74752,74862).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78912,78933).addRange(78944,82938).addRange(82944,83526).addRange(90368,90425).addRange(92160,92728).addRange(92736,92766).addRange(92768,92777).addRange(92784,92862).addRange(92864,92873).addRange(92880,92909).addRange(92912,92916).addRange(92928,92982),e.addRange(92992,92995).addRange(93008,93017).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93552,93561).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94031,94087).addRange(94095,94111).addRange(94176,94177).addRange(94179,94180).addRange(94192,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(113821,113822).addRange(118e3,118009).addRange(118528,118573).addRange(118576,118598).addRange(119141,119145).addRange(119149,119154).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121),e.addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(120782,120831).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122624,122654).addRange(122661,122666).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(122928,122989).addRange(123136,123180).addRange(123184,123197).addRange(123200,123209).addRange(123536,123566).addRange(123584,123641).addRange(124112,124153).addRange(124368,124410).addRange(124608,124638).addRange(124640,124661).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125136,125142).addRange(125184,125259).addRange(125264,125273).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519),e.addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(130032,130041).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041).addRange(917760,917999),lQ.characters=e,lQ}var pQ,fQ={};function gQ(){if(pQ)return fQ;pQ=1;var e=_Y(170,181,186,748,750,895,902,908,1369,1749,1791,1808,1969,2042,2074,2084,2088,2365,2384,2482,2493,2510,2556,2654,2749,2768,2809,2877,2929,2947,2972,3024,3133,3200,3261,3389,3406,3517,3716,3749,3773,3782,3840,4159,4193,4238,4295,4301,4696,4800,6103,6108,6314,6823,7418,8025,8027,8029,8126,8305,8319,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,43259,43471,43642,43697,43712,43714,64285,64318,67592,67644,68096,69415,69749,69956,69959,70006,70106,70108,70280,70461,70480,70539,70542,70583,70609,70611,70855,71236,71352,71945,71999,72001,72161,72163,72192,72250,72272,72349,72768,73030,73112,73474,73648,94032,94179,110898,110933,119970,119995,120134,123214,124400,125259,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(880,884).addRange(886,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1488,1514).addRange(1519,1522).addRange(1568,1610).addRange(1646,1647).addRange(1649,1747).addRange(1765,1766).addRange(1774,1775).addRange(1786,1788).addRange(1810,1839).addRange(1869,1957).addRange(1994,2026).addRange(2036,2037).addRange(2048,2069).addRange(2112,2136).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2208,2249).addRange(2308,2361).addRange(2392,2401).addRange(2417,2432).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2524,2525).addRange(2527,2529).addRange(2544,2545).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611),e.addRange(2613,2614).addRange(2616,2617).addRange(2649,2652).addRange(2674,2676).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2784,2785).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2908,2909).addRange(2911,2913).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3077,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3160,3162).addRange(3164,3165).addRange(3168,3169).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3292,3294).addRange(3296,3297).addRange(3313,3314).addRange(3332,3340).addRange(3342,3344).addRange(3346,3386).addRange(3412,3414).addRange(3423,3425).addRange(3450,3455).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515),e.addRange(3520,3526).addRange(3585,3632).addRange(3634,3635).addRange(3648,3654).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3760).addRange(3762,3763).addRange(3776,3780).addRange(3804,3807).addRange(3904,3911).addRange(3913,3948).addRange(3976,3980).addRange(4096,4138).addRange(4176,4181).addRange(4186,4189).addRange(4197,4198).addRange(4206,4208).addRange(4213,4225).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5870,5880).addRange(5888,5905).addRange(5919,5937).addRange(5952,5969).addRange(5984,5996).addRange(5998,6e3).addRange(6016,6067).addRange(6176,6264),e.addRange(6272,6312).addRange(6320,6389).addRange(6400,6430).addRange(6480,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6656,6678).addRange(6688,6740).addRange(6917,6963).addRange(6981,6988).addRange(7043,7072).addRange(7086,7087).addRange(7098,7141).addRange(7168,7203).addRange(7245,7247).addRange(7258,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7401,7404).addRange(7406,7411).addRange(7413,7414).addRange(7424,7615).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8336,8348).addRange(8458,8467).addRange(8472,8477).addRange(8490,8505).addRange(8508,8511).addRange(8517,8521).addRange(8544,8584).addRange(11264,11492).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(11568,11623),e.addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(12293,12295).addRange(12321,12329).addRange(12337,12341).addRange(12344,12348).addRange(12353,12438).addRange(12443,12447).addRange(12449,12538).addRange(12540,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42527).addRange(42538,42539).addRange(42560,42606).addRange(42623,42653).addRange(42656,42735).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43009).addRange(43011,43013).addRange(43015,43018).addRange(43020,43042).addRange(43072,43123).addRange(43138,43187).addRange(43250,43255).addRange(43261,43262).addRange(43274,43301).addRange(43312,43334).addRange(43360,43388).addRange(43396,43442).addRange(43488,43492).addRange(43494,43503).addRange(43514,43518).addRange(43520,43560).addRange(43584,43586).addRange(43588,43595),e.addRange(43616,43638).addRange(43646,43695).addRange(43701,43702).addRange(43705,43709).addRange(43739,43741).addRange(43744,43754).addRange(43762,43764).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44002).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64287,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65019).addRange(65136,65140).addRange(65142,65276).addRange(65313,65338).addRange(65345,65370).addRange(65382,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65856,65908).addRange(66176,66204).addRange(66208,66256),e.addRange(66304,66335).addRange(66349,66378).addRange(66384,66421).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66513,66517).addRange(66560,66717).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68112,68115).addRange(68117,68119).addRange(68121,68149).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68324).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497),e.addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68864,68899).addRange(68938,68965).addRange(68975,68997).addRange(69248,69289).addRange(69296,69297).addRange(69314,69319).addRange(69376,69404).addRange(69424,69445).addRange(69488,69505).addRange(69552,69572).addRange(69600,69622).addRange(69635,69687).addRange(69745,69746).addRange(69763,69807).addRange(69840,69864).addRange(69891,69926).addRange(69968,70002).addRange(70019,70066).addRange(70081,70084).addRange(70144,70161).addRange(70163,70187).addRange(70207,70208).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70366).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70493,70497).addRange(70528,70537).addRange(70544,70581).addRange(70656,70708).addRange(70727,70730).addRange(70751,70753).addRange(70784,70831).addRange(70852,70853).addRange(71040,71086).addRange(71128,71131).addRange(71168,71215).addRange(71296,71338).addRange(71424,71450).addRange(71488,71494).addRange(71680,71723),e.addRange(71840,71903).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71983).addRange(72096,72103).addRange(72106,72144).addRange(72203,72242).addRange(72284,72329).addRange(72368,72440).addRange(72640,72672).addRange(72704,72712).addRange(72714,72750).addRange(72818,72847).addRange(72960,72966).addRange(72968,72969).addRange(72971,73008).addRange(73056,73061).addRange(73063,73064).addRange(73066,73097).addRange(73136,73179).addRange(73440,73458).addRange(73476,73488).addRange(73490,73523).addRange(73728,74649).addRange(74752,74862).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90397).addRange(92160,92728).addRange(92736,92766).addRange(92784,92862).addRange(92880,92909).addRange(92928,92975).addRange(92992,92995).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94099,94111).addRange(94176,94177).addRange(94194,94198).addRange(94208,101589).addRange(101631,101662),e.addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122654).addRange(122661,122666).addRange(122928,122989).addRange(123136,123180).addRange(123191,123197).addRange(123536,123565).addRange(123584,123627).addRange(124112,124139).addRange(124368,124397).addRange(124608,124638).addRange(124640,124642).addRange(124644,124645),e.addRange(124647,124653).addRange(124656,124660).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125184,125251).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),fQ.characters=e,fQ}var mQ,yQ={};function hQ(){if(mQ)return yQ;mQ=1;var e=_Y(94180);return e.addRange(12294,12295).addRange(12321,12329).addRange(12344,12346).addRange(13312,19903).addRange(19968,40959).addRange(63744,64109).addRange(64112,64217).addRange(94194,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110960,111355).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),yQ.characters=e,yQ}var bQ,vQ={};function xQ(){if(bQ)return vQ;bQ=1;var e=_Y(12783);return e.addRange(12272,12273).addRange(12276,12285),vQ.characters=e,vQ}var RQ,jQ={};function wQ(){if(RQ)return jQ;RQ=1;var e=_Y();return e.addRange(12274,12275),jQ.characters=e,jQ}var EQ,SQ={};function TQ(){if(EQ)return SQ;EQ=1;var e=_Y();return e.addRange(8204,8205),SQ.characters=e,SQ}var PQ,AQ={};function kQ(){if(PQ)return AQ;PQ=1;var e=_Y(6586,43705);return e.addRange(3648,3652).addRange(3776,3780).addRange(6581,6583).addRange(43701,43702).addRange(43707,43708),AQ.characters=e,AQ}var CQ,_Q={};function IQ(){if(CQ)return _Q;CQ=1;var e=_Y(170,181,186,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,314,316,318,320,322,324,326,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,387,389,392,402,405,414,417,419,421,424,429,432,436,438,454,457,460,462,464,466,468,470,472,474,479,481,483,485,487,489,491,493,499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,572,578,583,585,587,589,837,881,883,887,912,985,987,989,991,993,995,997,999,1001,1003,1005,1013,1016,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,7306,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,8126,8305,8319,8458,8467,8495,8500,8505,8526,8580,11361,11368,11370,11372,11377,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11500,11502,11507,11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42787,42789,42791,42793,42795,42797,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42957,42959,42961,42963,42965,42967,42969,42971,42998,67456,119995,120779);return e.addRange(97,122).addRange(223,246).addRange(248,255).addRange(311,312).addRange(328,329).addRange(382,384).addRange(396,397).addRange(409,411).addRange(426,427).addRange(441,442).addRange(445,447).addRange(476,477).addRange(495,496).addRange(563,569).addRange(575,576).addRange(591,659).addRange(662,696).addRange(704,705).addRange(736,740).addRange(890,893).addRange(940,974).addRange(976,977).addRange(981,983).addRange(1007,1011).addRange(1019,1020).addRange(1072,1119).addRange(1230,1231).addRange(1376,1416).addRange(4304,4346).addRange(4348,4351).addRange(5112,5117).addRange(7296,7304).addRange(7424,7615).addRange(7829,7837).addRange(7935,7943).addRange(7952,7957).addRange(7968,7975).addRange(7984,7991).addRange(8e3,8005).addRange(8016,8023).addRange(8032,8039).addRange(8048,8061).addRange(8064,8071).addRange(8080,8087).addRange(8096,8103).addRange(8112,8116).addRange(8118,8119).addRange(8130,8132).addRange(8134,8135).addRange(8144,8147).addRange(8150,8151),e.addRange(8160,8167).addRange(8178,8180).addRange(8182,8183).addRange(8336,8348).addRange(8462,8463).addRange(8508,8509).addRange(8518,8521).addRange(8560,8575).addRange(9424,9449).addRange(11312,11359).addRange(11365,11366).addRange(11379,11380).addRange(11382,11389).addRange(11491,11492).addRange(11520,11557).addRange(42651,42653).addRange(42799,42801).addRange(42863,42872).addRange(42899,42901).addRange(42993,42996).addRange(43e3,43002).addRange(43824,43866).addRange(43868,43881).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65345,65370).addRange(66600,66639).addRange(66776,66811).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67459,67461).addRange(67463,67504).addRange(67506,67514).addRange(68800,68850).addRange(68976,68997).addRange(71872,71903).addRange(93792,93823).addRange(93883,93907).addRange(119834,119859).addRange(119886,119892).addRange(119894,119911).addRange(119938,119963).addRange(119990,119993).addRange(119997,120003).addRange(120005,120015).addRange(120042,120067).addRange(120094,120119).addRange(120146,120171),e.addRange(120198,120223).addRange(120250,120275).addRange(120302,120327).addRange(120354,120379).addRange(120406,120431).addRange(120458,120485).addRange(120514,120538).addRange(120540,120545).addRange(120572,120596).addRange(120598,120603).addRange(120630,120654).addRange(120656,120661).addRange(120688,120712).addRange(120714,120719).addRange(120746,120770).addRange(120772,120777).addRange(122624,122633).addRange(122635,122654).addRange(122661,122666).addRange(122928,122989).addRange(125218,125251),_Q.characters=e,_Q}var DQ,OQ={};function NQ(){if(DQ)return OQ;DQ=1;var e=_Y(43,94,124,126,172,177,215,247,981,8214,8256,8260,8274,8417,8450,8455,8469,8484,8523,8669,9084,9143,9168,9698,9700,9792,9794,64297,65128,65291,65340,65342,65372,65374,65506,118512,119970,119995,120134,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(60,62).addRange(976,978).addRange(1008,1009).addRange(1012,1014).addRange(1542,1544).addRange(8242,8244).addRange(8289,8292).addRange(8314,8318).addRange(8330,8334).addRange(8400,8412).addRange(8421,8422).addRange(8427,8431).addRange(8458,8467).addRange(8472,8477).addRange(8488,8489).addRange(8492,8493).addRange(8495,8497).addRange(8499,8504).addRange(8508,8521).addRange(8592,8615).addRange(8617,8622).addRange(8624,8625).addRange(8630,8631).addRange(8636,8667).addRange(8676,8677).addRange(8692,8959).addRange(8968,8971).addRange(8992,8993).addRange(9115,9141).addRange(9180,9186).addRange(9632,9633).addRange(9646,9655).addRange(9660,9665).addRange(9670,9671).addRange(9674,9675).addRange(9679,9683).addRange(9703,9708).addRange(9720,9727).addRange(9733,9734).addRange(9824,9827).addRange(9837,9839).addRange(10176,10239).addRange(10496,11007).addRange(11056,11076).addRange(11079,11084).addRange(65121,65126).addRange(65308,65310).addRange(65513,65516).addRange(69006,69007).addRange(119808,119892).addRange(119894,119964),e.addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779).addRange(120782,120831).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(126704,126705).addRange(129232,129240),OQ.characters=e,OQ}var BQ,MQ={};function FQ(){if(BQ)return MQ;BQ=1;var e=_Y();return e.addRange(64976,65007).addRange(65534,65535).addRange(131070,131071).addRange(196606,196607).addRange(262142,262143).addRange(327678,327679).addRange(393214,393215).addRange(458750,458751).addRange(524286,524287).addRange(589822,589823).addRange(655358,655359).addRange(720894,720895).addRange(786430,786431).addRange(851966,851967).addRange(917502,917503).addRange(983038,983039).addRange(1048574,1048575).addRange(1114110,1114111),MQ.characters=e,MQ}var LQ,UQ={};function qQ(){if(LQ)return UQ;LQ=1;var e=_Y(96,169,174,182,187,191,215,247,12336);return e.addRange(33,47).addRange(58,64).addRange(91,94).addRange(123,126).addRange(161,167).addRange(171,172).addRange(176,177).addRange(8208,8231).addRange(8240,8254).addRange(8257,8275).addRange(8277,8286).addRange(8592,9311).addRange(9472,10101).addRange(10132,11263).addRange(11776,11903).addRange(12289,12291).addRange(12296,12320).addRange(64830,64831).addRange(65093,65094),UQ.characters=e,UQ}var GQ,WQ={};function VQ(){if(GQ)return WQ;GQ=1;var e=_Y(32,133);return e.addRange(9,13).addRange(8206,8207).addRange(8232,8233),WQ.characters=e,WQ}var HQ,zQ={};function KQ(){if(HQ)return zQ;HQ=1;var e=_Y(34,39,171,187,11842,65282,65287);return e.addRange(8216,8223).addRange(8249,8250).addRange(12300,12303).addRange(12317,12319).addRange(65089,65092).addRange(65378,65379),zQ.characters=e,zQ}var XQ,JQ={};function YQ(){if(XQ)return JQ;XQ=1;var e=_Y();return e.addRange(11904,11929).addRange(11931,12019).addRange(12032,12245),JQ.characters=e,JQ}var $Q,QQ={};function ZQ(){if($Q)return QQ;$Q=1;var e=_Y();return e.addRange(127462,127487),QQ.characters=e,QQ}var eZ,tZ={};function rZ(){if(eZ)return tZ;eZ=1;var e=_Y(33,46,63,1417,1748,2041,2103,2105,4962,5742,6147,6153,8228,11822,11836,12290,42239,42739,42743,43311,44011,65042,65106,65281,65294,65311,65377,70093,70313,72004,72006,92917,92996,93848,113823,121480);return e.addRange(1565,1567).addRange(1792,1794).addRange(2109,2110).addRange(2404,2405).addRange(4170,4171).addRange(4967,4968).addRange(5941,5942).addRange(6100,6101).addRange(6468,6469).addRange(6824,6827).addRange(6990,6991).addRange(7002,7003).addRange(7006,7007).addRange(7037,7039).addRange(7227,7228).addRange(7294,7295).addRange(8252,8253).addRange(8263,8265).addRange(11513,11515).addRange(11859,11860).addRange(42510,42511).addRange(43126,43127).addRange(43214,43215).addRange(43464,43465).addRange(43613,43615).addRange(43760,43761).addRange(65045,65046).addRange(65110,65111).addRange(68182,68183).addRange(69461,69465).addRange(69510,69513).addRange(69703,69704).addRange(69822,69825).addRange(69953,69955).addRange(70085,70086).addRange(70110,70111).addRange(70200,70201).addRange(70203,70204).addRange(70612,70613).addRange(70731,70732).addRange(71106,71107).addRange(71113,71127).addRange(71233,71234).addRange(71484,71486).addRange(72258,72259).addRange(72347,72348).addRange(72769,72770).addRange(73463,73464).addRange(73539,73540).addRange(92782,92783).addRange(92983,92984),e.addRange(93550,93551),tZ.characters=e,tZ}var aZ,nZ={};function sZ(){if(aZ)return nZ;aZ=1;var e=_Y(303,585,616,669,690,1011,1110,1112,7522,7574,7588,7592,7725,7883,8305,11388,122650,122984);return e.addRange(105,106).addRange(8520,8521).addRange(119842,119843).addRange(119894,119895).addRange(119946,119947).addRange(119998,119999).addRange(120050,120051).addRange(120102,120103).addRange(120154,120155).addRange(120206,120207).addRange(120258,120259).addRange(120310,120311).addRange(120362,120363).addRange(120414,120415).addRange(120466,120467).addRange(122956,122957),nZ.characters=e,nZ}var oZ,iZ={};function dZ(){if(oZ)return iZ;oZ=1;var e=_Y(33,44,46,63,894,903,1417,1475,1548,1563,1748,1804,2142,3848,5742,6106,8228,11822,11836,11841,11852,43311,43743,44011,65042,65281,65292,65294,65311,65377,65380,66463,66512,67671,67871,70093,70313,72004,72006,72817,92917,92996,113823);return e.addRange(58,59).addRange(1565,1567).addRange(1792,1802).addRange(2040,2041).addRange(2096,2101).addRange(2103,2110).addRange(2404,2405).addRange(3674,3675).addRange(3853,3858).addRange(4170,4171).addRange(4961,4968).addRange(5867,5869).addRange(5941,5942).addRange(6100,6102).addRange(6146,6149).addRange(6152,6153).addRange(6468,6469).addRange(6824,6827).addRange(6990,6991).addRange(7002,7003).addRange(7005,7007).addRange(7037,7039).addRange(7227,7231).addRange(7294,7295).addRange(8252,8253).addRange(8263,8265).addRange(11513,11515).addRange(11854,11855).addRange(11859,11860).addRange(12289,12290).addRange(42238,42239).addRange(42509,42511).addRange(42739,42743).addRange(43126,43127).addRange(43214,43215).addRange(43463,43465).addRange(43613,43615).addRange(43760,43761).addRange(65045,65046).addRange(65104,65106).addRange(65108,65111).addRange(65306,65307).addRange(68182,68183).addRange(68336,68341).addRange(68410,68415).addRange(68505,68508).addRange(69461,69465).addRange(69510,69513).addRange(69703,69709).addRange(69822,69825).addRange(69953,69955),e.addRange(70085,70086).addRange(70110,70111).addRange(70200,70204).addRange(70612,70613).addRange(70731,70733).addRange(70746,70747).addRange(71106,71109).addRange(71113,71127).addRange(71233,71234).addRange(71484,71486).addRange(72258,72259).addRange(72347,72348).addRange(72353,72354).addRange(72769,72771).addRange(73463,73464).addRange(73539,73540).addRange(74864,74868).addRange(92782,92783).addRange(92983,92985).addRange(93550,93551).addRange(93847,93848).addRange(121479,121482),iZ.characters=e,iZ}var cZ,lZ={};function uZ(){if(cZ)return lZ;cZ=1;var e=_Y(64017,64031,64033);return e.addRange(13312,19903).addRange(19968,40959).addRange(64014,64015).addRange(64019,64020).addRange(64035,64036).addRange(64039,64041).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(196608,201546).addRange(201552,210041),lZ.characters=e,lZ}var pZ,fZ={};function gZ(){if(pZ)return fZ;pZ=1;var e=_Y(256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,379,381,388,418,420,425,428,437,444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,577,584,586,588,590,880,882,886,895,902,908,975,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,4295,4301,7305,7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,8025,8027,8029,8031,8450,8455,8469,8484,8486,8488,8517,8579,11360,11367,11369,11371,11378,11381,11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,42934,42936,42938,42940,42942,42944,42946,42953,42958,42960,42962,42964,42966,42968,42970,42972,42997,119964,119970,120134,120778);return e.addRange(65,90).addRange(192,214).addRange(216,222).addRange(376,377).addRange(385,386).addRange(390,391).addRange(393,395).addRange(398,401).addRange(403,404).addRange(406,408).addRange(412,413).addRange(415,416).addRange(422,423).addRange(430,431).addRange(433,435).addRange(439,440).addRange(502,504).addRange(570,571).addRange(573,574).addRange(579,582).addRange(904,906).addRange(910,911).addRange(913,929).addRange(931,939).addRange(978,980).addRange(1017,1018).addRange(1021,1071).addRange(1216,1217).addRange(1329,1366).addRange(4256,4293).addRange(5024,5109).addRange(7312,7354).addRange(7357,7359).addRange(7944,7951).addRange(7960,7965).addRange(7976,7983).addRange(7992,7999).addRange(8008,8013).addRange(8040,8047).addRange(8120,8123).addRange(8136,8139).addRange(8152,8155).addRange(8168,8172).addRange(8184,8187).addRange(8459,8461).addRange(8464,8466).addRange(8473,8477).addRange(8490,8493).addRange(8496,8499).addRange(8510,8511).addRange(8544,8559),e.addRange(9398,9423).addRange(11264,11311).addRange(11362,11364).addRange(11373,11376).addRange(11390,11392).addRange(42877,42878).addRange(42922,42926).addRange(42928,42932).addRange(42948,42951).addRange(42955,42956).addRange(65313,65338).addRange(66560,66599).addRange(66736,66771).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(68736,68786).addRange(68944,68965).addRange(71840,71871).addRange(93760,93791).addRange(93856,93880).addRange(119808,119833).addRange(119860,119885).addRange(119912,119937).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119989).addRange(120016,120041).addRange(120068,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120120,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120172,120197).addRange(120224,120249).addRange(120276,120301).addRange(120328,120353).addRange(120380,120405).addRange(120432,120457).addRange(120488,120512).addRange(120546,120570).addRange(120604,120628).addRange(120662,120686).addRange(120720,120744).addRange(125184,125217).addRange(127280,127305),e.addRange(127312,127337).addRange(127344,127369),fZ.characters=e,fZ}var mZ,yZ={};function hZ(){if(mZ)return yZ;mZ=1;var e=_Y(6159);return e.addRange(6155,6157).addRange(65024,65039).addRange(917760,917999),yZ.characters=e,yZ}var bZ,vZ={};function xZ(){if(bZ)return vZ;bZ=1;var e=_Y(32,133,160,5760,8239,8287,12288);return e.addRange(9,13).addRange(8192,8202).addRange(8232,8233),vZ.characters=e,vZ}var RZ,jZ={};function wZ(){if(RZ)return jZ;RZ=1;var e=_Y(95,170,181,183,186,748,750,895,908,1369,1471,1479,1791,2042,2045,2482,2519,2556,2558,2620,2641,2654,2768,2929,2972,3024,3031,3517,3530,3542,3716,3749,3782,3840,3893,3895,3897,4038,4295,4301,4696,4800,6103,6823,8025,8027,8029,8126,8276,8305,8319,8417,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,43052,43259,64318,65137,65139,65143,65145,65147,65149,65343,66045,66272,67592,67644,68159,69415,69826,70006,70108,70280,70480,70487,70539,70542,70594,70597,70855,71236,71945,72263,72349,73018,73648,110898,110933,119970,119995,120134,121461,121476,123023,123214,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(48,57).addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(768,884).addRange(886,887).addRange(891,893).addRange(902,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1155,1159).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1488,1514).addRange(1519,1522).addRange(1552,1562).addRange(1568,1641).addRange(1646,1747).addRange(1749,1756).addRange(1759,1768).addRange(1770,1788).addRange(1808,1866).addRange(1869,1969).addRange(1984,2037).addRange(2048,2093).addRange(2112,2139).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2199,2273).addRange(2275,2403).addRange(2406,2415).addRange(2417,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2492,2500).addRange(2503,2504).addRange(2507,2510).addRange(2524,2525),e.addRange(2527,2531).addRange(2534,2545).addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2649,2652).addRange(2662,2677).addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2748,2757).addRange(2759,2761).addRange(2763,2765).addRange(2784,2787).addRange(2790,2799).addRange(2809,2815).addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2876,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2908,2909).addRange(2911,2915).addRange(2918,2927).addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001),e.addRange(3006,3010).addRange(3014,3016).addRange(3018,3021).addRange(3046,3055).addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3132,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3174,3183).addRange(3200,3203).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3260,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3302,3311).addRange(3313,3315).addRange(3328,3340).addRange(3342,3344).addRange(3346,3396).addRange(3398,3400).addRange(3402,3406).addRange(3412,3415).addRange(3423,3427).addRange(3430,3439).addRange(3450,3455).addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3558,3567).addRange(3570,3571).addRange(3585,3642).addRange(3648,3662).addRange(3664,3673),e.addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3773).addRange(3776,3780).addRange(3784,3790).addRange(3792,3801).addRange(3804,3807).addRange(3864,3865).addRange(3872,3881).addRange(3902,3911).addRange(3913,3948).addRange(3953,3972).addRange(3974,3991).addRange(3993,4028).addRange(4096,4169).addRange(4176,4253).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4957,4959).addRange(4969,4977).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5870,5880).addRange(5888,5909).addRange(5919,5940).addRange(5952,5971).addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003).addRange(6016,6099).addRange(6108,6109),e.addRange(6112,6121).addRange(6155,6157).addRange(6159,6169).addRange(6176,6264).addRange(6272,6314).addRange(6320,6389).addRange(6400,6430).addRange(6432,6443).addRange(6448,6459).addRange(6470,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6656,6683).addRange(6688,6750).addRange(6752,6780).addRange(6783,6793).addRange(6800,6809).addRange(6832,6845).addRange(6847,6877).addRange(6880,6891).addRange(6912,6988).addRange(6992,7001).addRange(7019,7027).addRange(7040,7155).addRange(7168,7223).addRange(7232,7241).addRange(7245,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7376,7378).addRange(7380,7418).addRange(7424,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8204,8205).addRange(8255,8256),e.addRange(8336,8348).addRange(8400,8412).addRange(8421,8432).addRange(8458,8467).addRange(8472,8477).addRange(8490,8505).addRange(8508,8511).addRange(8517,8521).addRange(8544,8584).addRange(11264,11492).addRange(11499,11507).addRange(11520,11557).addRange(11568,11623).addRange(11647,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(11744,11775).addRange(12293,12295).addRange(12321,12335).addRange(12337,12341).addRange(12344,12348).addRange(12353,12438).addRange(12441,12442).addRange(12445,12447).addRange(12449,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42539).addRange(42560,42607).addRange(42612,42621).addRange(42623,42737).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43047).addRange(43072,43123).addRange(43136,43205).addRange(43216,43225).addRange(43232,43255),e.addRange(43261,43309).addRange(43312,43347).addRange(43360,43388).addRange(43392,43456).addRange(43471,43481).addRange(43488,43518).addRange(43520,43574).addRange(43584,43597).addRange(43600,43609).addRange(43616,43638).addRange(43642,43714).addRange(43739,43741).addRange(43744,43759).addRange(43762,43766).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44010).addRange(44012,44013).addRange(44016,44025).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64285,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64605).addRange(64612,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65017).addRange(65024,65039).addRange(65056,65071).addRange(65075,65076).addRange(65101,65103).addRange(65151,65276).addRange(65296,65305).addRange(65313,65338).addRange(65345,65370).addRange(65381,65470),e.addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65856,65908).addRange(66176,66204).addRange(66208,66256).addRange(66304,66335).addRange(66349,66378).addRange(66384,66426).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66513,66517).addRange(66560,66717).addRange(66720,66729).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861),e.addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68096,68099).addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68152,68154).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68326).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497).addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68864,68903).addRange(68912,68921).addRange(68928,68965).addRange(68969,68973).addRange(68975,68997).addRange(69248,69289).addRange(69291,69292).addRange(69296,69297).addRange(69314,69319).addRange(69370,69404).addRange(69424,69456).addRange(69488,69509).addRange(69552,69572).addRange(69600,69622).addRange(69632,69702).addRange(69734,69749).addRange(69759,69818).addRange(69840,69864).addRange(69872,69881).addRange(69888,69940).addRange(69942,69951).addRange(69956,69959).addRange(69968,70003).addRange(70016,70084).addRange(70089,70092).addRange(70094,70106).addRange(70144,70161).addRange(70163,70199).addRange(70206,70209).addRange(70272,70278),e.addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70378).addRange(70384,70393).addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70459,70468).addRange(70471,70472).addRange(70475,70477).addRange(70493,70499).addRange(70502,70508).addRange(70512,70516).addRange(70528,70537).addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70611).addRange(70625,70626).addRange(70656,70730).addRange(70736,70745).addRange(70750,70753).addRange(70784,70853).addRange(70864,70873).addRange(71040,71093).addRange(71096,71104).addRange(71128,71133).addRange(71168,71232).addRange(71248,71257).addRange(71296,71352).addRange(71360,71369).addRange(71376,71395).addRange(71424,71450).addRange(71453,71467).addRange(71472,71481).addRange(71488,71494).addRange(71680,71738).addRange(71840,71913).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,72003).addRange(72016,72025).addRange(72096,72103),e.addRange(72106,72151).addRange(72154,72161).addRange(72163,72164).addRange(72192,72254).addRange(72272,72345).addRange(72368,72440).addRange(72544,72551).addRange(72640,72672).addRange(72688,72697).addRange(72704,72712).addRange(72714,72758).addRange(72760,72768).addRange(72784,72793).addRange(72818,72847).addRange(72850,72871).addRange(72873,72886).addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73031).addRange(73040,73049).addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73104,73105).addRange(73107,73112).addRange(73120,73129).addRange(73136,73179).addRange(73184,73193).addRange(73440,73462).addRange(73472,73488).addRange(73490,73530).addRange(73534,73538).addRange(73552,73562).addRange(73728,74649).addRange(74752,74862).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78912,78933).addRange(78944,82938).addRange(82944,83526).addRange(90368,90425).addRange(92160,92728).addRange(92736,92766).addRange(92768,92777).addRange(92784,92862).addRange(92864,92873).addRange(92880,92909).addRange(92912,92916),e.addRange(92928,92982).addRange(92992,92995).addRange(93008,93017).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93552,93561).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94031,94087).addRange(94095,94111).addRange(94176,94177).addRange(94179,94180).addRange(94192,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(113821,113822).addRange(118e3,118009).addRange(118528,118573).addRange(118576,118598).addRange(119141,119145).addRange(119149,119154).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092),e.addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(120782,120831).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122624,122654).addRange(122661,122666).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(122928,122989).addRange(123136,123180).addRange(123184,123197).addRange(123200,123209).addRange(123536,123566).addRange(123584,123641).addRange(124112,124153).addRange(124368,124410).addRange(124608,124638).addRange(124640,124661).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125136,125142).addRange(125184,125259).addRange(125264,125273).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514),e.addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(130032,130041).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041).addRange(917760,917999),jZ.characters=e,jZ}var EZ,SZ={};function TZ(){if(EZ)return SZ;EZ=1;var e=_Y(170,181,186,748,750,895,902,908,1369,1749,1791,1808,1969,2042,2074,2084,2088,2365,2384,2482,2493,2510,2556,2654,2749,2768,2809,2877,2929,2947,2972,3024,3133,3200,3261,3389,3406,3517,3634,3716,3749,3762,3773,3782,3840,4159,4193,4238,4295,4301,4696,4800,6103,6108,6314,6823,7418,8025,8027,8029,8126,8305,8319,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,43259,43471,43642,43697,43712,43714,64285,64318,65137,65139,65143,65145,65147,65149,67592,67644,68096,69415,69749,69956,69959,70006,70106,70108,70280,70461,70480,70539,70542,70583,70609,70611,70855,71236,71352,71945,71999,72001,72161,72163,72192,72250,72272,72349,72768,73030,73112,73474,73648,94032,94179,110898,110933,119970,119995,120134,123214,124400,125259,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(880,884).addRange(886,887).addRange(891,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1488,1514).addRange(1519,1522).addRange(1568,1610).addRange(1646,1647).addRange(1649,1747).addRange(1765,1766).addRange(1774,1775).addRange(1786,1788).addRange(1810,1839).addRange(1869,1957).addRange(1994,2026).addRange(2036,2037).addRange(2048,2069).addRange(2112,2136).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2208,2249).addRange(2308,2361).addRange(2392,2401).addRange(2417,2432).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2524,2525).addRange(2527,2529).addRange(2544,2545).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611),e.addRange(2613,2614).addRange(2616,2617).addRange(2649,2652).addRange(2674,2676).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2784,2785).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2908,2909).addRange(2911,2913).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3077,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3160,3162).addRange(3164,3165).addRange(3168,3169).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3292,3294).addRange(3296,3297).addRange(3313,3314).addRange(3332,3340).addRange(3342,3344).addRange(3346,3386).addRange(3412,3414).addRange(3423,3425).addRange(3450,3455).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515),e.addRange(3520,3526).addRange(3585,3632).addRange(3648,3654).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3760).addRange(3776,3780).addRange(3804,3807).addRange(3904,3911).addRange(3913,3948).addRange(3976,3980).addRange(4096,4138).addRange(4176,4181).addRange(4186,4189).addRange(4197,4198).addRange(4206,4208).addRange(4213,4225).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5870,5880).addRange(5888,5905).addRange(5919,5937).addRange(5952,5969).addRange(5984,5996).addRange(5998,6e3).addRange(6016,6067).addRange(6176,6264).addRange(6272,6312).addRange(6320,6389),e.addRange(6400,6430).addRange(6480,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6656,6678).addRange(6688,6740).addRange(6917,6963).addRange(6981,6988).addRange(7043,7072).addRange(7086,7087).addRange(7098,7141).addRange(7168,7203).addRange(7245,7247).addRange(7258,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7401,7404).addRange(7406,7411).addRange(7413,7414).addRange(7424,7615).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8336,8348).addRange(8458,8467).addRange(8472,8477).addRange(8490,8505).addRange(8508,8511).addRange(8517,8521).addRange(8544,8584).addRange(11264,11492).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(11568,11623).addRange(11648,11670).addRange(11680,11686),e.addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(12293,12295).addRange(12321,12329).addRange(12337,12341).addRange(12344,12348).addRange(12353,12438).addRange(12445,12447).addRange(12449,12538).addRange(12540,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42527).addRange(42538,42539).addRange(42560,42606).addRange(42623,42653).addRange(42656,42735).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43009).addRange(43011,43013).addRange(43015,43018).addRange(43020,43042).addRange(43072,43123).addRange(43138,43187).addRange(43250,43255).addRange(43261,43262).addRange(43274,43301).addRange(43312,43334).addRange(43360,43388).addRange(43396,43442).addRange(43488,43492).addRange(43494,43503).addRange(43514,43518).addRange(43520,43560).addRange(43584,43586).addRange(43588,43595).addRange(43616,43638).addRange(43646,43695),e.addRange(43701,43702).addRange(43705,43709).addRange(43739,43741).addRange(43744,43754).addRange(43762,43764).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44002).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64287,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64605).addRange(64612,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65017).addRange(65151,65276).addRange(65313,65338).addRange(65345,65370).addRange(65382,65437).addRange(65440,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65856,65908).addRange(66176,66204).addRange(66208,66256).addRange(66304,66335),e.addRange(66349,66378).addRange(66384,66421).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66513,66517).addRange(66560,66717).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68112,68115).addRange(68117,68119).addRange(68121,68149).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68324).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497).addRange(68608,68680),e.addRange(68736,68786).addRange(68800,68850).addRange(68864,68899).addRange(68938,68965).addRange(68975,68997).addRange(69248,69289).addRange(69296,69297).addRange(69314,69319).addRange(69376,69404).addRange(69424,69445).addRange(69488,69505).addRange(69552,69572).addRange(69600,69622).addRange(69635,69687).addRange(69745,69746).addRange(69763,69807).addRange(69840,69864).addRange(69891,69926).addRange(69968,70002).addRange(70019,70066).addRange(70081,70084).addRange(70144,70161).addRange(70163,70187).addRange(70207,70208).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70366).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70493,70497).addRange(70528,70537).addRange(70544,70581).addRange(70656,70708).addRange(70727,70730).addRange(70751,70753).addRange(70784,70831).addRange(70852,70853).addRange(71040,71086).addRange(71128,71131).addRange(71168,71215).addRange(71296,71338).addRange(71424,71450).addRange(71488,71494).addRange(71680,71723).addRange(71840,71903),e.addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71983).addRange(72096,72103).addRange(72106,72144).addRange(72203,72242).addRange(72284,72329).addRange(72368,72440).addRange(72640,72672).addRange(72704,72712).addRange(72714,72750).addRange(72818,72847).addRange(72960,72966).addRange(72968,72969).addRange(72971,73008).addRange(73056,73061).addRange(73063,73064).addRange(73066,73097).addRange(73136,73179).addRange(73440,73458).addRange(73476,73488).addRange(73490,73523).addRange(73728,74649).addRange(74752,74862).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90397).addRange(92160,92728).addRange(92736,92766).addRange(92784,92862).addRange(92880,92909).addRange(92928,92975).addRange(92992,92995).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94099,94111).addRange(94176,94177).addRange(94194,94198).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874),e.addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122654).addRange(122661,122666).addRange(122928,122989).addRange(123136,123180).addRange(123191,123197).addRange(123536,123565).addRange(123584,123627).addRange(124112,124139).addRange(124368,124397).addRange(124608,124638).addRange(124640,124642).addRange(124644,124645).addRange(124647,124653),e.addRange(124656,124660).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125184,125251).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),SZ.characters=e,SZ}var PZ,AZ={};function kZ(){if(PZ)return AZ;PZ=1;var e=_Y(181,895,902,908,4295,4301,8025,8027,8029,8126,8450,8455,8469,8484,8486,8488,8505,8526,11559,11565,43002,119970,119995,120134);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,442).addRange(444,447).addRange(452,659).addRange(662,687).addRange(880,883).addRange(886,887).addRange(891,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(4256,4293).addRange(4304,4346).addRange(4349,4351).addRange(5024,5109).addRange(5112,5117).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7424,7467).addRange(7531,7543).addRange(7545,7578).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8458,8467).addRange(8473,8477).addRange(8490,8493).addRange(8495,8500).addRange(8508,8511).addRange(8517,8521).addRange(8579,8580),e.addRange(11264,11387).addRange(11390,11492).addRange(11499,11502).addRange(11506,11507).addRange(11520,11557).addRange(42560,42605).addRange(42624,42651).addRange(42786,42863).addRange(42865,42887).addRange(42891,42894).addRange(42896,42972).addRange(42997,42998).addRange(43824,43866).addRange(43872,43880).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65313,65338).addRange(65345,65370).addRange(66560,66639).addRange(66736,66771).addRange(66776,66811).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(68736,68786).addRange(68800,68850).addRange(68944,68965).addRange(68976,68997).addRange(71840,71903).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126),e.addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122633).addRange(122635,122654).addRange(122661,122666).addRange(125184,125251),AZ.characters=e,AZ}var CZ,_Z={};function IZ(){if(CZ)return _Z;CZ=1;var e=_Y(41,93,125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,12297,12299,12301,12303,12305,12309,12311,12313,12315,64830,65048,65078,65080,65082,65084,65086,65088,65090,65092,65096,65114,65116,65118,65289,65341,65373,65376,65379);return e.addRange(12318,12319),_Z.characters=e,_Z}var DZ,OZ={};function NZ(){if(DZ)return OZ;DZ=1;var e=_Y(95,8276,65343);return e.addRange(8255,8256).addRange(65075,65076).addRange(65101,65103),OZ.characters=e,OZ}var BZ,MZ={};function FZ(){if(BZ)return MZ;BZ=1;var e=_Y();return e.addRange(0,31).addRange(127,159),MZ.characters=e,MZ}var LZ,UZ={};function qZ(){if(LZ)return UZ;LZ=1;var e=_Y(36,1423,1547,2555,2801,3065,3647,6107,43064,65020,65129,65284,123647,126128);return e.addRange(162,165).addRange(2046,2047).addRange(2546,2547).addRange(8352,8385).addRange(65504,65505).addRange(65509,65510).addRange(73693,73696),UZ.characters=e,UZ}var GZ,WZ={};function VZ(){if(GZ)return WZ;GZ=1;var e=_Y(45,1418,1470,5120,6150,11799,11802,11840,11869,12316,12336,12448,65112,65123,65293,68974,69293);return e.addRange(8208,8213).addRange(11834,11835).addRange(65073,65074),WZ.characters=e,WZ}var HZ,zZ={};function KZ(){if(HZ)return zZ;HZ=1;var e=_Y();return e.addRange(48,57).addRange(1632,1641).addRange(1776,1785).addRange(1984,1993).addRange(2406,2415).addRange(2534,2543).addRange(2662,2671).addRange(2790,2799).addRange(2918,2927).addRange(3046,3055).addRange(3174,3183).addRange(3302,3311).addRange(3430,3439).addRange(3558,3567).addRange(3664,3673).addRange(3792,3801).addRange(3872,3881).addRange(4160,4169).addRange(4240,4249).addRange(6112,6121).addRange(6160,6169).addRange(6470,6479).addRange(6608,6617).addRange(6784,6793).addRange(6800,6809).addRange(6992,7001).addRange(7088,7097).addRange(7232,7241).addRange(7248,7257).addRange(42528,42537).addRange(43216,43225).addRange(43264,43273).addRange(43472,43481).addRange(43504,43513).addRange(43600,43609).addRange(44016,44025).addRange(65296,65305).addRange(66720,66729).addRange(68912,68921).addRange(68928,68937).addRange(69734,69743).addRange(69872,69881).addRange(69942,69951).addRange(70096,70105).addRange(70384,70393).addRange(70736,70745).addRange(70864,70873).addRange(71248,71257).addRange(71360,71369).addRange(71376,71395).addRange(71472,71481),e.addRange(71904,71913).addRange(72016,72025).addRange(72688,72697).addRange(72784,72793).addRange(73040,73049).addRange(73120,73129).addRange(73184,73193).addRange(73552,73561).addRange(90416,90425).addRange(92768,92777).addRange(92864,92873).addRange(93008,93017).addRange(93552,93561).addRange(118e3,118009).addRange(120782,120831).addRange(123200,123209).addRange(123632,123641).addRange(124144,124153).addRange(124401,124410).addRange(125264,125273).addRange(130032,130041),zZ.characters=e,zZ}var XZ,JZ={};function YZ(){if(XZ)return JZ;XZ=1;var e=_Y(6846);return e.addRange(1160,1161).addRange(8413,8416).addRange(8418,8420).addRange(42608,42610),JZ.characters=e,JZ}var $Z,QZ={};function ZZ(){if($Z)return QZ;$Z=1;var e=_Y(187,8217,8221,8250,11779,11781,11786,11789,11805,11809);return QZ.characters=e,QZ}var e1,t1={};function r1(){if(e1)return t1;e1=1;var e=_Y(173,1564,1757,1807,2274,6158,65279,69821,69837,917505);return e.addRange(1536,1541).addRange(2192,2193).addRange(8203,8207).addRange(8234,8238).addRange(8288,8292).addRange(8294,8303).addRange(65529,65531).addRange(78896,78911).addRange(113824,113827).addRange(119155,119162).addRange(917536,917631),t1.characters=e,t1}var a1,n1={};function s1(){if(a1)return n1;a1=1;var e=_Y(171,8216,8223,8249,11778,11780,11785,11788,11804,11808);return e.addRange(8219,8220),n1.characters=e,n1}var o1,i1={};function d1(){if(o1)return i1;o1=1;var e=_Y(12295,66369,66378);return e.addRange(5870,5872).addRange(8544,8578).addRange(8581,8584).addRange(12321,12329).addRange(12344,12346).addRange(42726,42735).addRange(65856,65908).addRange(66513,66517).addRange(74752,74862).addRange(94196,94198),i1.characters=e,i1}var c1,l1={};function u1(){if(c1)return l1;c1=1;var e=_Y(170,181,186,748,750,895,902,908,1369,1749,1791,1808,1969,2042,2074,2084,2088,2365,2384,2482,2493,2510,2556,2654,2749,2768,2809,2877,2929,2947,2972,3024,3133,3200,3261,3389,3406,3517,3716,3749,3773,3782,3840,4159,4193,4238,4295,4301,4696,4800,6103,6108,6314,6823,7418,8025,8027,8029,8126,8305,8319,8450,8455,8469,8484,8486,8488,8526,11559,11565,11631,11823,43259,43471,43642,43697,43712,43714,64285,64318,67592,67644,68096,69415,69749,69956,69959,70006,70106,70108,70280,70461,70480,70539,70542,70583,70609,70611,70855,71236,71352,71945,71999,72001,72161,72163,72192,72250,72272,72349,72768,73030,73112,73474,73648,94032,94179,110898,110933,119970,119995,120134,123214,124400,125259,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,705).addRange(710,721).addRange(736,740).addRange(880,884).addRange(886,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,1013).addRange(1015,1153).addRange(1162,1327).addRange(1329,1366).addRange(1376,1416).addRange(1488,1514).addRange(1519,1522).addRange(1568,1610).addRange(1646,1647).addRange(1649,1747).addRange(1765,1766).addRange(1774,1775).addRange(1786,1788).addRange(1810,1839).addRange(1869,1957).addRange(1994,2026).addRange(2036,2037).addRange(2048,2069).addRange(2112,2136).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2208,2249).addRange(2308,2361).addRange(2392,2401).addRange(2417,2432).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2524,2525).addRange(2527,2529).addRange(2544,2545).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611),e.addRange(2613,2614).addRange(2616,2617).addRange(2649,2652).addRange(2674,2676).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2784,2785).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2908,2909).addRange(2911,2913).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3077,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3160,3162).addRange(3164,3165).addRange(3168,3169).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3292,3294).addRange(3296,3297).addRange(3313,3314).addRange(3332,3340).addRange(3342,3344).addRange(3346,3386).addRange(3412,3414).addRange(3423,3425).addRange(3450,3455).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515),e.addRange(3520,3526).addRange(3585,3632).addRange(3634,3635).addRange(3648,3654).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3760).addRange(3762,3763).addRange(3776,3780).addRange(3804,3807).addRange(3904,3911).addRange(3913,3948).addRange(3976,3980).addRange(4096,4138).addRange(4176,4181).addRange(4186,4189).addRange(4197,4198).addRange(4206,4208).addRange(4213,4225).addRange(4256,4293).addRange(4304,4346).addRange(4348,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4992,5007).addRange(5024,5109).addRange(5112,5117).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5873,5880).addRange(5888,5905).addRange(5919,5937).addRange(5952,5969).addRange(5984,5996).addRange(5998,6e3).addRange(6016,6067).addRange(6176,6264),e.addRange(6272,6276).addRange(6279,6312).addRange(6320,6389).addRange(6400,6430).addRange(6480,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6656,6678).addRange(6688,6740).addRange(6917,6963).addRange(6981,6988).addRange(7043,7072).addRange(7086,7087).addRange(7098,7141).addRange(7168,7203).addRange(7245,7247).addRange(7258,7293).addRange(7296,7306).addRange(7312,7354).addRange(7357,7359).addRange(7401,7404).addRange(7406,7411).addRange(7413,7414).addRange(7424,7615).addRange(7680,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8124).addRange(8130,8132).addRange(8134,8140).addRange(8144,8147).addRange(8150,8155).addRange(8160,8172).addRange(8178,8180).addRange(8182,8188).addRange(8336,8348).addRange(8458,8467).addRange(8473,8477).addRange(8490,8493).addRange(8495,8505).addRange(8508,8511).addRange(8517,8521).addRange(8579,8580).addRange(11264,11492).addRange(11499,11502).addRange(11506,11507),e.addRange(11520,11557).addRange(11568,11623).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(12293,12294).addRange(12337,12341).addRange(12347,12348).addRange(12353,12438).addRange(12445,12447).addRange(12449,12538).addRange(12540,12543).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,42124).addRange(42192,42237).addRange(42240,42508).addRange(42512,42527).addRange(42538,42539).addRange(42560,42606).addRange(42623,42653).addRange(42656,42725).addRange(42775,42783).addRange(42786,42888).addRange(42891,42972).addRange(42993,43009).addRange(43011,43013).addRange(43015,43018).addRange(43020,43042).addRange(43072,43123).addRange(43138,43187).addRange(43250,43255).addRange(43261,43262).addRange(43274,43301).addRange(43312,43334).addRange(43360,43388).addRange(43396,43442).addRange(43488,43492).addRange(43494,43503).addRange(43514,43518).addRange(43520,43560).addRange(43584,43586),e.addRange(43588,43595).addRange(43616,43638).addRange(43646,43695).addRange(43701,43702).addRange(43705,43709).addRange(43739,43741).addRange(43744,43754).addRange(43762,43764).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43824,43866).addRange(43868,43881).addRange(43888,44002).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64256,64262).addRange(64275,64279).addRange(64287,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65019).addRange(65136,65140).addRange(65142,65276).addRange(65313,65338).addRange(65345,65370).addRange(65382,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(66176,66204).addRange(66208,66256),e.addRange(66304,66335).addRange(66349,66368).addRange(66370,66377).addRange(66384,66421).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66560,66717).addRange(66736,66771).addRange(66776,66811).addRange(66816,66855).addRange(66864,66915).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(67008,67059).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68112,68115).addRange(68117,68119).addRange(68121,68149).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68324).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497),e.addRange(68608,68680).addRange(68736,68786).addRange(68800,68850).addRange(68864,68899).addRange(68938,68965).addRange(68975,68997).addRange(69248,69289).addRange(69296,69297).addRange(69314,69319).addRange(69376,69404).addRange(69424,69445).addRange(69488,69505).addRange(69552,69572).addRange(69600,69622).addRange(69635,69687).addRange(69745,69746).addRange(69763,69807).addRange(69840,69864).addRange(69891,69926).addRange(69968,70002).addRange(70019,70066).addRange(70081,70084).addRange(70144,70161).addRange(70163,70187).addRange(70207,70208).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70366).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70493,70497).addRange(70528,70537).addRange(70544,70581).addRange(70656,70708).addRange(70727,70730).addRange(70751,70753).addRange(70784,70831).addRange(70852,70853).addRange(71040,71086).addRange(71128,71131).addRange(71168,71215).addRange(71296,71338).addRange(71424,71450).addRange(71488,71494).addRange(71680,71723),e.addRange(71840,71903).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71983).addRange(72096,72103).addRange(72106,72144).addRange(72203,72242).addRange(72284,72329).addRange(72368,72440).addRange(72640,72672).addRange(72704,72712).addRange(72714,72750).addRange(72818,72847).addRange(72960,72966).addRange(72968,72969).addRange(72971,73008).addRange(73056,73061).addRange(73063,73064).addRange(73066,73097).addRange(73136,73179).addRange(73440,73458).addRange(73476,73488).addRange(73490,73523).addRange(73728,74649).addRange(74880,75075).addRange(77712,77808).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90397).addRange(92160,92728).addRange(92736,92766).addRange(92784,92862).addRange(92880,92909).addRange(92928,92975).addRange(92992,92995).addRange(93027,93047).addRange(93053,93071).addRange(93504,93548).addRange(93760,93823).addRange(93856,93880).addRange(93883,93907).addRange(93952,94026).addRange(94099,94111).addRange(94176,94177).addRange(94194,94195).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874),e.addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120512).addRange(120514,120538).addRange(120540,120570).addRange(120572,120596).addRange(120598,120628).addRange(120630,120654).addRange(120656,120686).addRange(120688,120712).addRange(120714,120744).addRange(120746,120770).addRange(120772,120779).addRange(122624,122654).addRange(122661,122666).addRange(122928,122989).addRange(123136,123180).addRange(123191,123197).addRange(123536,123565).addRange(123584,123627).addRange(124112,124139).addRange(124368,124397).addRange(124608,124638).addRange(124640,124642).addRange(124644,124645).addRange(124647,124653),e.addRange(124656,124660).addRange(124670,124671).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(125184,125251).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),l1.characters=e,l1}var p1,f1={};function g1(){if(p1)return f1;p1=1;var e=_Y(8232);return f1.characters=e,f1}var m1,y1={};function h1(){if(m1)return y1;m1=1;var e=_Y(181,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,314,316,318,320,322,324,326,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,387,389,392,402,405,414,417,419,421,424,429,432,436,438,454,457,460,462,464,466,468,470,472,474,479,481,483,485,487,489,491,493,499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,572,578,583,585,587,589,881,883,887,912,985,987,989,991,993,995,997,999,1001,1003,1005,1013,1016,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,7306,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,8126,8458,8467,8495,8500,8505,8526,8580,11361,11368,11370,11372,11377,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11500,11502,11507,11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42957,42959,42961,42963,42965,42967,42969,42971,42998,43002,119995,120779);return e.addRange(97,122).addRange(223,246).addRange(248,255).addRange(311,312).addRange(328,329).addRange(382,384).addRange(396,397).addRange(409,411).addRange(426,427).addRange(441,442).addRange(445,447).addRange(476,477).addRange(495,496).addRange(563,569).addRange(575,576).addRange(591,659).addRange(662,687).addRange(891,893).addRange(940,974).addRange(976,977).addRange(981,983).addRange(1007,1011).addRange(1019,1020).addRange(1072,1119).addRange(1230,1231).addRange(1376,1416).addRange(4304,4346).addRange(4349,4351).addRange(5112,5117).addRange(7296,7304).addRange(7424,7467).addRange(7531,7543).addRange(7545,7578).addRange(7829,7837).addRange(7935,7943).addRange(7952,7957).addRange(7968,7975).addRange(7984,7991).addRange(8e3,8005).addRange(8016,8023).addRange(8032,8039).addRange(8048,8061).addRange(8064,8071).addRange(8080,8087).addRange(8096,8103).addRange(8112,8116).addRange(8118,8119).addRange(8130,8132).addRange(8134,8135).addRange(8144,8147).addRange(8150,8151),e.addRange(8160,8167).addRange(8178,8180).addRange(8182,8183).addRange(8462,8463).addRange(8508,8509).addRange(8518,8521).addRange(11312,11359).addRange(11365,11366).addRange(11379,11380).addRange(11382,11387).addRange(11491,11492).addRange(11520,11557).addRange(42799,42801).addRange(42865,42872).addRange(42899,42901).addRange(43824,43866).addRange(43872,43880).addRange(43888,43967).addRange(64256,64262).addRange(64275,64279).addRange(65345,65370).addRange(66600,66639).addRange(66776,66811).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004).addRange(68800,68850).addRange(68976,68997).addRange(71872,71903).addRange(93792,93823).addRange(93883,93907).addRange(119834,119859).addRange(119886,119892).addRange(119894,119911).addRange(119938,119963).addRange(119990,119993).addRange(119997,120003).addRange(120005,120015).addRange(120042,120067).addRange(120094,120119).addRange(120146,120171).addRange(120198,120223).addRange(120250,120275).addRange(120302,120327).addRange(120354,120379).addRange(120406,120431).addRange(120458,120485).addRange(120514,120538).addRange(120540,120545).addRange(120572,120596),e.addRange(120598,120603).addRange(120630,120654).addRange(120656,120661).addRange(120688,120712).addRange(120714,120719).addRange(120746,120770).addRange(120772,120777).addRange(122624,122633).addRange(122635,122654).addRange(122661,122666).addRange(125218,125251),y1.characters=e,y1}var b1,v1={};function x1(){if(b1)return v1;b1=1;var e=_Y(1471,1479,1648,1809,2045,2492,2519,2558,2620,2641,2677,2748,2876,2946,3031,3132,3260,3315,3415,3530,3542,3633,3761,3893,3895,3897,4038,4239,6109,6159,6313,6783,7405,7412,11647,43010,43014,43019,43052,43263,43493,43587,43696,43713,64286,66045,66272,68159,69744,69826,70003,70206,70209,70487,70594,70597,70610,70750,72e3,72164,72263,73018,73031,73475,73562,78912,94031,94180,121461,121476,123023,123566,124643,124646,124661);return e.addRange(768,879).addRange(1155,1161).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1552,1562).addRange(1611,1631).addRange(1750,1756).addRange(1759,1764).addRange(1767,1768).addRange(1770,1773).addRange(1840,1866).addRange(1958,1968).addRange(2027,2035).addRange(2070,2073).addRange(2075,2083).addRange(2085,2087).addRange(2089,2093).addRange(2137,2139).addRange(2199,2207).addRange(2250,2273).addRange(2275,2307).addRange(2362,2364).addRange(2366,2383).addRange(2385,2391).addRange(2402,2403).addRange(2433,2435).addRange(2494,2500).addRange(2503,2504).addRange(2507,2509).addRange(2530,2531).addRange(2561,2563).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2672,2673).addRange(2689,2691).addRange(2750,2757).addRange(2759,2761).addRange(2763,2765).addRange(2786,2787).addRange(2810,2815).addRange(2817,2819).addRange(2878,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2914,2915).addRange(3006,3010).addRange(3014,3016).addRange(3018,3021),e.addRange(3072,3076).addRange(3134,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3170,3171).addRange(3201,3203).addRange(3262,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3298,3299).addRange(3328,3331).addRange(3387,3388).addRange(3390,3396).addRange(3398,3400).addRange(3402,3405).addRange(3426,3427).addRange(3457,3459).addRange(3535,3540).addRange(3544,3551).addRange(3570,3571).addRange(3636,3642).addRange(3655,3662).addRange(3764,3772).addRange(3784,3790).addRange(3864,3865).addRange(3902,3903).addRange(3953,3972).addRange(3974,3975).addRange(3981,3991).addRange(3993,4028).addRange(4139,4158).addRange(4182,4185).addRange(4190,4192).addRange(4194,4196).addRange(4199,4205).addRange(4209,4212).addRange(4226,4237).addRange(4250,4253).addRange(4957,4959).addRange(5906,5909).addRange(5938,5940).addRange(5970,5971).addRange(6002,6003).addRange(6068,6099).addRange(6155,6157).addRange(6277,6278).addRange(6432,6443).addRange(6448,6459).addRange(6679,6683),e.addRange(6741,6750).addRange(6752,6780).addRange(6832,6877).addRange(6880,6891).addRange(6912,6916).addRange(6964,6980).addRange(7019,7027).addRange(7040,7042).addRange(7073,7085).addRange(7142,7155).addRange(7204,7223).addRange(7376,7378).addRange(7380,7400).addRange(7415,7417).addRange(7616,7679).addRange(8400,8432).addRange(11503,11505).addRange(11744,11775).addRange(12330,12335).addRange(12441,12442).addRange(42607,42610).addRange(42612,42621).addRange(42654,42655).addRange(42736,42737).addRange(43043,43047).addRange(43136,43137).addRange(43188,43205).addRange(43232,43249).addRange(43302,43309).addRange(43335,43347).addRange(43392,43395).addRange(43443,43456).addRange(43561,43574).addRange(43596,43597).addRange(43643,43645).addRange(43698,43700).addRange(43703,43704).addRange(43710,43711).addRange(43755,43759).addRange(43765,43766).addRange(44003,44010).addRange(44012,44013).addRange(65024,65039).addRange(65056,65071).addRange(66422,66426).addRange(68097,68099).addRange(68101,68102).addRange(68108,68111).addRange(68152,68154).addRange(68325,68326).addRange(68900,68903),e.addRange(68969,68973).addRange(69291,69292).addRange(69370,69375).addRange(69446,69456).addRange(69506,69509).addRange(69632,69634).addRange(69688,69702).addRange(69747,69748).addRange(69759,69762).addRange(69808,69818).addRange(69888,69890).addRange(69927,69940).addRange(69957,69958).addRange(70016,70018).addRange(70067,70080).addRange(70089,70092).addRange(70094,70095).addRange(70188,70199).addRange(70367,70378).addRange(70400,70403).addRange(70459,70460).addRange(70462,70468).addRange(70471,70472).addRange(70475,70477).addRange(70498,70499).addRange(70502,70508).addRange(70512,70516).addRange(70584,70592).addRange(70599,70602).addRange(70604,70608).addRange(70625,70626).addRange(70709,70726).addRange(70832,70851).addRange(71087,71093).addRange(71096,71104).addRange(71132,71133).addRange(71216,71232).addRange(71339,71351).addRange(71453,71467).addRange(71724,71738).addRange(71984,71989).addRange(71991,71992).addRange(71995,71998).addRange(72002,72003).addRange(72145,72151).addRange(72154,72160).addRange(72193,72202).addRange(72243,72249).addRange(72251,72254).addRange(72273,72283).addRange(72330,72345),e.addRange(72544,72551).addRange(72751,72758).addRange(72760,72767).addRange(72850,72871).addRange(72873,72886).addRange(73009,73014).addRange(73020,73021).addRange(73023,73029).addRange(73098,73102).addRange(73104,73105).addRange(73107,73111).addRange(73459,73462).addRange(73472,73473).addRange(73524,73530).addRange(73534,73538).addRange(78919,78933).addRange(90398,90415).addRange(92912,92916).addRange(92976,92982).addRange(94033,94087).addRange(94095,94098).addRange(94192,94193).addRange(113821,113822).addRange(118528,118573).addRange(118576,118598).addRange(119141,119145).addRange(119149,119154).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(123184,123190).addRange(123628,123631).addRange(124140,124143).addRange(124398,124399).addRange(124654,124655).addRange(125136,125142).addRange(125252,125258).addRange(917760,917999),v1.characters=e,v1}var R1,j1={};function w1(){if(R1)return j1;R1=1;var e=_Y(43,124,126,172,177,215,247,1014,8260,8274,8472,8523,8608,8611,8614,8622,8658,8660,9084,9655,9665,9839,64297,65122,65291,65372,65374,65506,118512,120513,120539,120571,120597,120629,120655,120687,120713,120745,120771);return e.addRange(60,62).addRange(1542,1544).addRange(8314,8316).addRange(8330,8332).addRange(8512,8516).addRange(8592,8596).addRange(8602,8603).addRange(8654,8655).addRange(8692,8959).addRange(8992,8993).addRange(9115,9139).addRange(9180,9185).addRange(9720,9727).addRange(10176,10180).addRange(10183,10213).addRange(10224,10239).addRange(10496,10626).addRange(10649,10711).addRange(10716,10747).addRange(10750,11007).addRange(11056,11076).addRange(11079,11084).addRange(65124,65126).addRange(65308,65310).addRange(65513,65516).addRange(69006,69007).addRange(126704,126705).addRange(129232,129240),j1.characters=e,j1}var E1,S1={};function T1(){if(E1)return S1;E1=1;var e=_Y(748,750,884,890,1369,1600,2042,2074,2084,2088,2249,2417,3654,3782,4348,6103,6211,6823,7544,8305,8319,11631,11823,12293,12347,40981,42508,42623,42864,42888,43471,43494,43632,43741,43881,65392,68942,68975,69317,73177,94179,124139,124671,125259);return e.addRange(688,705).addRange(710,721).addRange(736,740).addRange(1765,1766).addRange(2036,2037).addRange(7288,7293).addRange(7468,7530).addRange(7579,7615).addRange(8336,8348).addRange(11388,11389).addRange(12337,12341).addRange(12445,12446).addRange(12540,12542).addRange(42232,42237).addRange(42652,42653).addRange(42775,42783).addRange(42993,42996).addRange(43e3,43001).addRange(43763,43764).addRange(43868,43871).addRange(65438,65439).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(92992,92995).addRange(93504,93506).addRange(93547,93548).addRange(94099,94111).addRange(94176,94177).addRange(94194,94195).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(122928,122989).addRange(123191,123197),S1.characters=e,S1}var P1,A1={};function k1(){if(P1)return A1;P1=1;var e=_Y(94,96,168,175,180,184,749,885,2184,8125,43867,65342,65344,65507);return e.addRange(706,709).addRange(722,735).addRange(741,747).addRange(751,767).addRange(900,901).addRange(8127,8129).addRange(8141,8143).addRange(8157,8159).addRange(8173,8175).addRange(8189,8190).addRange(12443,12444).addRange(42752,42774).addRange(42784,42785).addRange(42889,42890).addRange(43882,43883).addRange(64434,64450).addRange(127995,127999),A1.characters=e,A1}var C1,_1={};function I1(){if(C1)return _1;C1=1;var e=_Y(1471,1479,1648,1809,2045,2362,2364,2381,2433,2492,2509,2558,2620,2641,2677,2748,2765,2817,2876,2879,2893,2946,3008,3021,3072,3076,3132,3201,3260,3263,3270,3405,3457,3530,3542,3633,3761,3893,3895,3897,4038,4226,4237,4253,6086,6109,6159,6313,6450,6683,6742,6752,6754,6783,6964,6972,6978,7142,7149,7405,7412,8417,11647,42607,43010,43014,43019,43052,43263,43443,43493,43587,43596,43644,43696,43713,43766,44005,44008,44013,64286,66045,66272,68159,69633,69744,69826,70003,70095,70196,70206,70209,70367,70464,70606,70608,70610,70726,70750,70842,71229,71339,71341,71351,71453,71455,71998,72003,72160,72263,72544,72550,72767,73018,73031,73109,73111,73536,73538,73562,78912,94031,94180,121461,121476,123023,123566,124643,124646,124661);return e.addRange(768,879).addRange(1155,1159).addRange(1425,1469).addRange(1473,1474).addRange(1476,1477).addRange(1552,1562).addRange(1611,1631).addRange(1750,1756).addRange(1759,1764).addRange(1767,1768).addRange(1770,1773).addRange(1840,1866).addRange(1958,1968).addRange(2027,2035).addRange(2070,2073).addRange(2075,2083).addRange(2085,2087).addRange(2089,2093).addRange(2137,2139).addRange(2199,2207).addRange(2250,2273).addRange(2275,2306).addRange(2369,2376).addRange(2385,2391).addRange(2402,2403).addRange(2497,2500).addRange(2530,2531).addRange(2561,2562).addRange(2625,2626).addRange(2631,2632).addRange(2635,2637).addRange(2672,2673).addRange(2689,2690).addRange(2753,2757).addRange(2759,2760).addRange(2786,2787).addRange(2810,2815).addRange(2881,2884).addRange(2901,2902).addRange(2914,2915).addRange(3134,3136).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3170,3171).addRange(3276,3277).addRange(3298,3299).addRange(3328,3329).addRange(3387,3388).addRange(3393,3396).addRange(3426,3427),e.addRange(3538,3540).addRange(3636,3642).addRange(3655,3662).addRange(3764,3772).addRange(3784,3790).addRange(3864,3865).addRange(3953,3966).addRange(3968,3972).addRange(3974,3975).addRange(3981,3991).addRange(3993,4028).addRange(4141,4144).addRange(4146,4151).addRange(4153,4154).addRange(4157,4158).addRange(4184,4185).addRange(4190,4192).addRange(4209,4212).addRange(4229,4230).addRange(4957,4959).addRange(5906,5908).addRange(5938,5939).addRange(5970,5971).addRange(6002,6003).addRange(6068,6069).addRange(6071,6077).addRange(6089,6099).addRange(6155,6157).addRange(6277,6278).addRange(6432,6434).addRange(6439,6440).addRange(6457,6459).addRange(6679,6680).addRange(6744,6750).addRange(6757,6764).addRange(6771,6780).addRange(6832,6845).addRange(6847,6877).addRange(6880,6891).addRange(6912,6915).addRange(6966,6970).addRange(7019,7027).addRange(7040,7041).addRange(7074,7077).addRange(7080,7081).addRange(7083,7085).addRange(7144,7145).addRange(7151,7153).addRange(7212,7219).addRange(7222,7223).addRange(7376,7378),e.addRange(7380,7392).addRange(7394,7400).addRange(7416,7417).addRange(7616,7679).addRange(8400,8412).addRange(8421,8432).addRange(11503,11505).addRange(11744,11775).addRange(12330,12333).addRange(12441,12442).addRange(42612,42621).addRange(42654,42655).addRange(42736,42737).addRange(43045,43046).addRange(43204,43205).addRange(43232,43249).addRange(43302,43309).addRange(43335,43345).addRange(43392,43394).addRange(43446,43449).addRange(43452,43453).addRange(43561,43566).addRange(43569,43570).addRange(43573,43574).addRange(43698,43700).addRange(43703,43704).addRange(43710,43711).addRange(43756,43757).addRange(65024,65039).addRange(65056,65071).addRange(66422,66426).addRange(68097,68099).addRange(68101,68102).addRange(68108,68111).addRange(68152,68154).addRange(68325,68326).addRange(68900,68903).addRange(68969,68973).addRange(69291,69292).addRange(69370,69375).addRange(69446,69456).addRange(69506,69509).addRange(69688,69702).addRange(69747,69748).addRange(69759,69761).addRange(69811,69814).addRange(69817,69818).addRange(69888,69890).addRange(69927,69931).addRange(69933,69940).addRange(70016,70017),e.addRange(70070,70078).addRange(70089,70092).addRange(70191,70193).addRange(70198,70199).addRange(70371,70378).addRange(70400,70401).addRange(70459,70460).addRange(70502,70508).addRange(70512,70516).addRange(70587,70592).addRange(70625,70626).addRange(70712,70719).addRange(70722,70724).addRange(70835,70840).addRange(70847,70848).addRange(70850,70851).addRange(71090,71093).addRange(71100,71101).addRange(71103,71104).addRange(71132,71133).addRange(71219,71226).addRange(71231,71232).addRange(71344,71349).addRange(71458,71461).addRange(71463,71467).addRange(71727,71735).addRange(71737,71738).addRange(71995,71996).addRange(72148,72151).addRange(72154,72155).addRange(72193,72202).addRange(72243,72248).addRange(72251,72254).addRange(72273,72278).addRange(72281,72283).addRange(72330,72342).addRange(72344,72345).addRange(72546,72548).addRange(72752,72758).addRange(72760,72765).addRange(72850,72871).addRange(72874,72880).addRange(72882,72883).addRange(72885,72886).addRange(73009,73014).addRange(73020,73021).addRange(73023,73029).addRange(73104,73105).addRange(73459,73460).addRange(73472,73473).addRange(73526,73530),e.addRange(78919,78933).addRange(90398,90409).addRange(90413,90415).addRange(92912,92916).addRange(92976,92982).addRange(94095,94098).addRange(113821,113822).addRange(118528,118573).addRange(118576,118598).addRange(119143,119145).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(119362,119364).addRange(121344,121398).addRange(121403,121452).addRange(121499,121503).addRange(121505,121519).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922).addRange(123184,123190).addRange(123628,123631).addRange(124140,124143).addRange(124398,124399).addRange(124654,124655).addRange(125136,125142).addRange(125252,125258).addRange(917760,917999),_1.characters=e,_1}var D1,O1={};function N1(){if(D1)return O1;D1=1;var e=_Y(185,8304,11517,12295,66369,66378);return e.addRange(48,57).addRange(178,179).addRange(188,190).addRange(1632,1641).addRange(1776,1785).addRange(1984,1993).addRange(2406,2415).addRange(2534,2543).addRange(2548,2553).addRange(2662,2671).addRange(2790,2799).addRange(2918,2927).addRange(2930,2935).addRange(3046,3058).addRange(3174,3183).addRange(3192,3198).addRange(3302,3311).addRange(3416,3422).addRange(3430,3448).addRange(3558,3567).addRange(3664,3673).addRange(3792,3801).addRange(3872,3891).addRange(4160,4169).addRange(4240,4249).addRange(4969,4988).addRange(5870,5872).addRange(6112,6121).addRange(6128,6137).addRange(6160,6169).addRange(6470,6479).addRange(6608,6618).addRange(6784,6793).addRange(6800,6809).addRange(6992,7001).addRange(7088,7097).addRange(7232,7241).addRange(7248,7257).addRange(8308,8313).addRange(8320,8329).addRange(8528,8578).addRange(8581,8585).addRange(9312,9371).addRange(9450,9471).addRange(10102,10131).addRange(12321,12329).addRange(12344,12346).addRange(12690,12693).addRange(12832,12841).addRange(12872,12879).addRange(12881,12895),e.addRange(12928,12937).addRange(12977,12991).addRange(42528,42537).addRange(42726,42735).addRange(43056,43061).addRange(43216,43225).addRange(43264,43273).addRange(43472,43481).addRange(43504,43513).addRange(43600,43609).addRange(44016,44025).addRange(65296,65305).addRange(65799,65843).addRange(65856,65912).addRange(65930,65931).addRange(66273,66299).addRange(66336,66339).addRange(66513,66517).addRange(66720,66729).addRange(67672,67679).addRange(67705,67711).addRange(67751,67759).addRange(67835,67839).addRange(67862,67867).addRange(68028,68029).addRange(68032,68047).addRange(68050,68095).addRange(68160,68168).addRange(68221,68222).addRange(68253,68255).addRange(68331,68335).addRange(68440,68447).addRange(68472,68479).addRange(68521,68527).addRange(68858,68863).addRange(68912,68921).addRange(68928,68937).addRange(69216,69246).addRange(69405,69414).addRange(69457,69460).addRange(69573,69579).addRange(69714,69743).addRange(69872,69881).addRange(69942,69951).addRange(70096,70105).addRange(70113,70132).addRange(70384,70393).addRange(70736,70745).addRange(70864,70873).addRange(71248,71257).addRange(71360,71369),e.addRange(71376,71395).addRange(71472,71483).addRange(71904,71922).addRange(72016,72025).addRange(72688,72697).addRange(72784,72812).addRange(73040,73049).addRange(73120,73129).addRange(73184,73193).addRange(73552,73561).addRange(73664,73684).addRange(74752,74862).addRange(90416,90425).addRange(92768,92777).addRange(92864,92873).addRange(93008,93017).addRange(93019,93025).addRange(93552,93561).addRange(93824,93846).addRange(94196,94198).addRange(118e3,118009).addRange(119488,119507).addRange(119520,119539).addRange(119648,119672).addRange(120782,120831).addRange(123200,123209).addRange(123632,123641).addRange(124144,124153).addRange(124401,124410).addRange(125127,125135).addRange(125264,125273).addRange(126065,126123).addRange(126125,126127).addRange(126129,126132).addRange(126209,126253).addRange(126255,126269).addRange(127232,127244).addRange(130032,130041),O1.characters=e,O1}var B1,M1={};function F1(){if(B1)return M1;B1=1;var e=_Y(40,91,123,3898,3900,5787,8218,8222,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11810,11812,11814,11816,11842,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,12317,64831,65047,65077,65079,65081,65083,65085,65087,65089,65091,65095,65113,65115,65117,65288,65339,65371,65375,65378);return M1.characters=e,M1}var L1,U1={};function q1(){if(L1)return U1;L1=1;var e=_Y(170,186,443,1749,1791,1808,1969,2365,2384,2482,2493,2510,2556,2654,2749,2768,2809,2877,2929,2947,2972,3024,3133,3200,3261,3389,3406,3517,3716,3749,3773,3840,4159,4193,4238,4696,4800,6108,6314,7418,12294,12348,12447,12543,42606,42895,42999,43259,43642,43697,43712,43714,43762,64285,64318,67592,67644,68096,68943,69415,69749,69956,69959,70006,70106,70108,70280,70461,70480,70539,70542,70583,70609,70611,70855,71236,71352,71945,71999,72001,72161,72163,72192,72250,72272,72349,72768,73030,73112,73474,73648,94032,110898,110933,122634,123214,124400,124670,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(448,451).addRange(660,661).addRange(1488,1514).addRange(1519,1522).addRange(1568,1599).addRange(1601,1610).addRange(1646,1647).addRange(1649,1747).addRange(1774,1775).addRange(1786,1788).addRange(1810,1839).addRange(1869,1957).addRange(1994,2026).addRange(2048,2069).addRange(2112,2136).addRange(2144,2154).addRange(2160,2183).addRange(2185,2191).addRange(2208,2248).addRange(2308,2361).addRange(2392,2401).addRange(2418,2432).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2524,2525).addRange(2527,2529).addRange(2544,2545).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2649,2652).addRange(2674,2676).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2784,2785).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867),e.addRange(2869,2873).addRange(2908,2909).addRange(2911,2913).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3077,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3160,3162).addRange(3164,3165).addRange(3168,3169).addRange(3205,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3292,3294).addRange(3296,3297).addRange(3313,3314).addRange(3332,3340).addRange(3342,3344).addRange(3346,3386).addRange(3412,3414).addRange(3423,3425).addRange(3450,3455).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3585,3632).addRange(3634,3635).addRange(3648,3653).addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3760).addRange(3762,3763).addRange(3776,3780).addRange(3804,3807).addRange(3904,3911).addRange(3913,3948).addRange(3976,3980).addRange(4096,4138).addRange(4176,4181),e.addRange(4186,4189).addRange(4197,4198).addRange(4206,4208).addRange(4213,4225).addRange(4352,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4992,5007).addRange(5121,5740).addRange(5743,5759).addRange(5761,5786).addRange(5792,5866).addRange(5873,5880).addRange(5888,5905).addRange(5919,5937).addRange(5952,5969).addRange(5984,5996).addRange(5998,6e3).addRange(6016,6067).addRange(6176,6210).addRange(6212,6264).addRange(6272,6276).addRange(6279,6312).addRange(6320,6389).addRange(6400,6430).addRange(6480,6509).addRange(6512,6516).addRange(6528,6571).addRange(6576,6601).addRange(6656,6678).addRange(6688,6740).addRange(6917,6963).addRange(6981,6988).addRange(7043,7072).addRange(7086,7087).addRange(7098,7141).addRange(7168,7203).addRange(7245,7247).addRange(7258,7287).addRange(7401,7404),e.addRange(7406,7411).addRange(7413,7414).addRange(8501,8504).addRange(11568,11623).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(12353,12438).addRange(12449,12538).addRange(12549,12591).addRange(12593,12686).addRange(12704,12735).addRange(12784,12799).addRange(13312,19903).addRange(19968,40980).addRange(40982,42124).addRange(42192,42231).addRange(42240,42507).addRange(42512,42527).addRange(42538,42539).addRange(42656,42725).addRange(43003,43009).addRange(43011,43013).addRange(43015,43018).addRange(43020,43042).addRange(43072,43123).addRange(43138,43187).addRange(43250,43255).addRange(43261,43262).addRange(43274,43301).addRange(43312,43334).addRange(43360,43388).addRange(43396,43442).addRange(43488,43492).addRange(43495,43503).addRange(43514,43518).addRange(43520,43560).addRange(43584,43586).addRange(43588,43595).addRange(43616,43631).addRange(43633,43638).addRange(43646,43695).addRange(43701,43702).addRange(43705,43709).addRange(43739,43740),e.addRange(43744,43754).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(43968,44002).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(63744,64109).addRange(64112,64217).addRange(64287,64296).addRange(64298,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64433).addRange(64467,64829).addRange(64848,64911).addRange(64914,64967).addRange(65008,65019).addRange(65136,65140).addRange(65142,65276).addRange(65382,65391).addRange(65393,65437).addRange(65440,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500).addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(66176,66204).addRange(66208,66256).addRange(66304,66335).addRange(66349,66368).addRange(66370,66377).addRange(66384,66421).addRange(66432,66461).addRange(66464,66499).addRange(66504,66511).addRange(66640,66717).addRange(66816,66855).addRange(66864,66915).addRange(67008,67059),e.addRange(67072,67382).addRange(67392,67413).addRange(67424,67431).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640).addRange(67647,67669).addRange(67680,67702).addRange(67712,67742).addRange(67808,67826).addRange(67828,67829).addRange(67840,67861).addRange(67872,67897).addRange(67904,67929).addRange(67968,68023).addRange(68030,68031).addRange(68112,68115).addRange(68117,68119).addRange(68121,68149).addRange(68192,68220).addRange(68224,68252).addRange(68288,68295).addRange(68297,68324).addRange(68352,68405).addRange(68416,68437).addRange(68448,68466).addRange(68480,68497).addRange(68608,68680).addRange(68864,68899).addRange(68938,68941).addRange(69248,69289).addRange(69296,69297).addRange(69314,69316).addRange(69318,69319).addRange(69376,69404).addRange(69424,69445).addRange(69488,69505).addRange(69552,69572).addRange(69600,69622).addRange(69635,69687).addRange(69745,69746).addRange(69763,69807).addRange(69840,69864).addRange(69891,69926).addRange(69968,70002).addRange(70019,70066).addRange(70081,70084).addRange(70144,70161).addRange(70163,70187).addRange(70207,70208).addRange(70272,70278),e.addRange(70282,70285).addRange(70287,70301).addRange(70303,70312).addRange(70320,70366).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70493,70497).addRange(70528,70537).addRange(70544,70581).addRange(70656,70708).addRange(70727,70730).addRange(70751,70753).addRange(70784,70831).addRange(70852,70853).addRange(71040,71086).addRange(71128,71131).addRange(71168,71215).addRange(71296,71338).addRange(71424,71450).addRange(71488,71494).addRange(71680,71723).addRange(71935,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71983).addRange(72096,72103).addRange(72106,72144).addRange(72203,72242).addRange(72284,72329).addRange(72368,72440).addRange(72640,72672).addRange(72704,72712).addRange(72714,72750).addRange(72818,72847).addRange(72960,72966).addRange(72968,72969).addRange(72971,73008).addRange(73056,73061).addRange(73063,73064).addRange(73066,73097).addRange(73136,73176).addRange(73178,73179).addRange(73440,73458).addRange(73476,73488).addRange(73490,73523).addRange(73728,74649).addRange(74880,75075),e.addRange(77712,77808).addRange(77824,78895).addRange(78913,78918).addRange(78944,82938).addRange(82944,83526).addRange(90368,90397).addRange(92160,92728).addRange(92736,92766).addRange(92784,92862).addRange(92880,92909).addRange(92928,92975).addRange(93027,93047).addRange(93053,93071).addRange(93507,93546).addRange(93952,94026).addRange(94208,101589).addRange(101631,101662).addRange(101760,101874).addRange(110592,110882).addRange(110928,110930).addRange(110948,110951).addRange(110960,111355).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(123136,123180).addRange(123536,123565).addRange(123584,123627).addRange(124112,124138).addRange(124368,124397).addRange(124608,124638).addRange(124640,124642).addRange(124644,124645).addRange(124647,124653).addRange(124656,124660).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926).addRange(124928,125124).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578),e.addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),U1.characters=e,U1}var G1,W1={};function V1(){if(G1)return W1;G1=1;var e=_Y(185,6618,8304,8585,11517);return e.addRange(178,179).addRange(188,190).addRange(2548,2553).addRange(2930,2935).addRange(3056,3058).addRange(3192,3198).addRange(3416,3422).addRange(3440,3448).addRange(3882,3891).addRange(4969,4988).addRange(6128,6137).addRange(8308,8313).addRange(8320,8329).addRange(8528,8543).addRange(9312,9371).addRange(9450,9471).addRange(10102,10131).addRange(12690,12693).addRange(12832,12841).addRange(12872,12879).addRange(12881,12895).addRange(12928,12937).addRange(12977,12991).addRange(43056,43061).addRange(65799,65843).addRange(65909,65912).addRange(65930,65931).addRange(66273,66299).addRange(66336,66339).addRange(67672,67679).addRange(67705,67711).addRange(67751,67759).addRange(67835,67839).addRange(67862,67867).addRange(68028,68029).addRange(68032,68047).addRange(68050,68095).addRange(68160,68168).addRange(68221,68222).addRange(68253,68255).addRange(68331,68335).addRange(68440,68447).addRange(68472,68479).addRange(68521,68527).addRange(68858,68863).addRange(69216,69246).addRange(69405,69414).addRange(69457,69460).addRange(69573,69579).addRange(69714,69733).addRange(70113,70132),e.addRange(71482,71483).addRange(71914,71922).addRange(72794,72812).addRange(73664,73684).addRange(93019,93025).addRange(93824,93846).addRange(119488,119507).addRange(119520,119539).addRange(119648,119672).addRange(125127,125135).addRange(126065,126123).addRange(126125,126127).addRange(126129,126132).addRange(126209,126253).addRange(126255,126269).addRange(127232,127244),W1.characters=e,W1}var H1,z1={};function K1(){if(H1)return z1;H1=1;var e=_Y(42,44,92,161,167,191,894,903,1417,1472,1475,1478,1563,1748,2142,2416,2557,2678,2800,3191,3204,3572,3663,3860,3973,4347,5742,7379,8275,11632,11787,11803,11841,12349,12539,42611,42622,43260,43359,44011,65049,65072,65128,65290,65292,65340,65377,66463,66512,66927,67671,67871,67903,68223,69328,70093,70107,70313,70749,70854,71353,71739,72162,72673,73727,92917,92996,94178,113823,124415);return e.addRange(33,35).addRange(37,39).addRange(46,47).addRange(58,59).addRange(63,64).addRange(182,183).addRange(1370,1375).addRange(1523,1524).addRange(1545,1546).addRange(1548,1549).addRange(1565,1567).addRange(1642,1645).addRange(1792,1805).addRange(2039,2041).addRange(2096,2110).addRange(2404,2405).addRange(3674,3675).addRange(3844,3858).addRange(4048,4052).addRange(4057,4058).addRange(4170,4175).addRange(4960,4968).addRange(5867,5869).addRange(5941,5942).addRange(6100,6102).addRange(6104,6106).addRange(6144,6149).addRange(6151,6154).addRange(6468,6469).addRange(6686,6687).addRange(6816,6822).addRange(6824,6829).addRange(6990,6991).addRange(7002,7008).addRange(7037,7039).addRange(7164,7167).addRange(7227,7231).addRange(7294,7295).addRange(7360,7367).addRange(8214,8215).addRange(8224,8231).addRange(8240,8248).addRange(8251,8254).addRange(8257,8259).addRange(8263,8273).addRange(8277,8286).addRange(11513,11516).addRange(11518,11519).addRange(11776,11777).addRange(11782,11784).addRange(11790,11798),e.addRange(11800,11801).addRange(11806,11807).addRange(11818,11822).addRange(11824,11833).addRange(11836,11839).addRange(11843,11855).addRange(11858,11860).addRange(12289,12291).addRange(42238,42239).addRange(42509,42511).addRange(42738,42743).addRange(43124,43127).addRange(43214,43215).addRange(43256,43258).addRange(43310,43311).addRange(43457,43469).addRange(43486,43487).addRange(43612,43615).addRange(43742,43743).addRange(43760,43761).addRange(65040,65046).addRange(65093,65094).addRange(65097,65100).addRange(65104,65106).addRange(65108,65111).addRange(65119,65121).addRange(65130,65131).addRange(65281,65283).addRange(65285,65287).addRange(65294,65295).addRange(65306,65307).addRange(65311,65312).addRange(65380,65381).addRange(65792,65794).addRange(68176,68184).addRange(68336,68342).addRange(68409,68415).addRange(68505,68508).addRange(69461,69465).addRange(69510,69513).addRange(69703,69709).addRange(69819,69820).addRange(69822,69825).addRange(69952,69955).addRange(70004,70005).addRange(70085,70088).addRange(70109,70111).addRange(70200,70205).addRange(70612,70613).addRange(70615,70616).addRange(70731,70735),e.addRange(70746,70747).addRange(71105,71127).addRange(71233,71235).addRange(71264,71276).addRange(71484,71486).addRange(72004,72006).addRange(72255,72262).addRange(72346,72348).addRange(72350,72354).addRange(72448,72457).addRange(72769,72773).addRange(72816,72817).addRange(73463,73464).addRange(73539,73551).addRange(74864,74868).addRange(77809,77810).addRange(92782,92783).addRange(92983,92987).addRange(93549,93551).addRange(93847,93850).addRange(121479,121483).addRange(125278,125279),z1.characters=e,z1}var X1,J1={};function Y1(){if(X1)return J1;X1=1;var e=_Y(166,169,174,176,1154,1758,1769,2038,2554,2928,3066,3199,3407,3449,3859,3892,3894,3896,5741,6464,8468,8485,8487,8489,8494,8522,8527,8659,12292,12320,12783,12880,43065,65508,65512,65952,68296,71487,92997,113820,119365,123215,126124,126254,129008,129736,130042);return e.addRange(1421,1422).addRange(1550,1551).addRange(1789,1790).addRange(3059,3064).addRange(3841,3843).addRange(3861,3863).addRange(3866,3871).addRange(4030,4037).addRange(4039,4044).addRange(4046,4047).addRange(4053,4056).addRange(4254,4255).addRange(5008,5017).addRange(6622,6655).addRange(7009,7018).addRange(7028,7036).addRange(8448,8449).addRange(8451,8454).addRange(8456,8457).addRange(8470,8471).addRange(8478,8483).addRange(8506,8507).addRange(8524,8525).addRange(8586,8587).addRange(8597,8601).addRange(8604,8607).addRange(8609,8610).addRange(8612,8613).addRange(8615,8621).addRange(8623,8653).addRange(8656,8657).addRange(8661,8691).addRange(8960,8967).addRange(8972,8991).addRange(8994,9e3).addRange(9003,9083).addRange(9085,9114).addRange(9140,9179).addRange(9186,9257).addRange(9280,9290).addRange(9372,9449).addRange(9472,9654).addRange(9656,9664).addRange(9666,9719).addRange(9728,9838).addRange(9840,10087).addRange(10132,10175).addRange(10240,10495).addRange(11008,11055).addRange(11077,11078).addRange(11085,11123),e.addRange(11126,11263).addRange(11493,11498).addRange(11856,11857).addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12272,12287).addRange(12306,12307).addRange(12342,12343).addRange(12350,12351).addRange(12688,12689).addRange(12694,12703).addRange(12736,12773).addRange(12800,12830).addRange(12842,12871).addRange(12896,12927).addRange(12938,12976).addRange(12992,13311).addRange(19904,19967).addRange(42128,42182).addRange(43048,43051).addRange(43062,43063).addRange(43639,43641).addRange(64451,64466).addRange(64832,64847).addRange(64912,64913).addRange(64968,64975).addRange(65021,65023).addRange(65517,65518).addRange(65532,65533).addRange(65847,65855).addRange(65913,65929).addRange(65932,65934).addRange(65936,65948).addRange(66e3,66044).addRange(67703,67704).addRange(69329,69336).addRange(73685,73692).addRange(73697,73713).addRange(92988,92991).addRange(117760,117999).addRange(118010,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118511).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119140).addRange(119146,119148).addRange(119171,119172),e.addRange(119180,119209).addRange(119214,119274).addRange(119296,119361).addRange(119552,119638).addRange(120832,121343).addRange(121399,121402).addRange(121453,121460).addRange(121462,121475).addRange(121477,121478).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183).addRange(127185,127221).addRange(127245,127405).addRange(127462,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(127584,127589).addRange(127744,127994).addRange(128e3,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129280,129623).addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130031),J1.characters=e,J1}var $1,Q1={};function Z1(){if($1)return Q1;$1=1;var e=_Y(173,907,909,930,1328,1424,1564,1757,2111,2143,2274,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2816,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3085,3089,3113,3141,3145,3159,3163,3213,3217,3241,3252,3269,3273,3295,3312,3341,3345,3397,3401,3456,3460,3506,3516,3541,3543,3715,3717,3723,3748,3750,3781,3783,3791,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5997,6001,6158,6431,6751,6989,8024,8026,8028,8030,8117,8133,8156,8181,8191,8335,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12592,12687,12831,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65511,65548,65575,65595,65598,65935,66462,66939,66955,66963,66966,66978,66994,67002,67462,67505,67593,67638,67670,67827,68100,68116,68120,69247,69290,69821,69941,70112,70162,70279,70281,70286,70302,70404,70441,70449,70452,70458,70538,70543,70582,70593,70598,70603,70614,70748,71956,71959,71990,72713,72759,72872,72967,72970,73019,73022,73062,73065,73103,73106,73489,74863,92767,92863,93018,93026,110580,110588,110591,119893,119965,119981,119994,119996,120004,120070,120085,120093,120122,120127,120133,120145,121504,122887,122914,122917,124639,124903,124908,124911,124927,126468,126496,126499,126504,126515,126520,126522,126536,126538,126540,126544,126547,126552,126554,126556,126558,126560,126563,126571,126579,126584,126589,126591,126602,126628,126634,127168,127184,129735,129939);return e.addRange(0,31).addRange(127,159).addRange(888,889).addRange(896,899).addRange(1367,1368).addRange(1419,1420).addRange(1480,1487).addRange(1515,1518).addRange(1525,1541).addRange(1806,1807).addRange(1867,1868).addRange(1970,1983).addRange(2043,2044).addRange(2094,2095).addRange(2140,2141).addRange(2155,2159).addRange(2192,2198).addRange(2445,2446).addRange(2449,2450).addRange(2483,2485).addRange(2490,2491).addRange(2501,2502).addRange(2505,2506).addRange(2511,2518).addRange(2520,2523).addRange(2532,2533).addRange(2559,2560).addRange(2571,2574).addRange(2577,2578).addRange(2618,2619).addRange(2627,2630).addRange(2633,2634).addRange(2638,2640).addRange(2642,2648).addRange(2655,2661).addRange(2679,2688).addRange(2746,2747).addRange(2766,2767).addRange(2769,2783).addRange(2788,2789).addRange(2802,2808).addRange(2829,2830).addRange(2833,2834).addRange(2874,2875).addRange(2885,2886).addRange(2889,2890).addRange(2894,2900).addRange(2904,2907).addRange(2916,2917).addRange(2936,2945).addRange(2955,2957),e.addRange(2966,2968).addRange(2976,2978).addRange(2981,2983).addRange(2987,2989).addRange(3002,3005).addRange(3011,3013).addRange(3022,3023).addRange(3025,3030).addRange(3032,3045).addRange(3067,3071).addRange(3130,3131).addRange(3150,3156).addRange(3166,3167).addRange(3172,3173).addRange(3184,3190).addRange(3258,3259).addRange(3278,3284).addRange(3287,3291).addRange(3300,3301).addRange(3316,3327).addRange(3408,3411).addRange(3428,3429).addRange(3479,3481).addRange(3518,3519).addRange(3527,3529).addRange(3531,3534).addRange(3552,3557).addRange(3568,3569).addRange(3573,3584).addRange(3643,3646).addRange(3676,3712).addRange(3774,3775).addRange(3802,3803).addRange(3808,3839).addRange(3949,3952).addRange(4059,4095).addRange(4296,4300).addRange(4302,4303).addRange(4686,4687).addRange(4702,4703).addRange(4750,4751).addRange(4790,4791).addRange(4806,4807).addRange(4886,4887).addRange(4955,4956).addRange(4989,4991).addRange(5018,5023).addRange(5110,5111).addRange(5118,5119).addRange(5789,5791).addRange(5881,5887),e.addRange(5910,5918).addRange(5943,5951).addRange(5972,5983).addRange(6004,6015).addRange(6110,6111).addRange(6122,6127).addRange(6138,6143).addRange(6170,6175).addRange(6265,6271).addRange(6315,6319).addRange(6390,6399).addRange(6444,6447).addRange(6460,6463).addRange(6465,6467).addRange(6510,6511).addRange(6517,6527).addRange(6572,6575).addRange(6602,6607).addRange(6619,6621).addRange(6684,6685).addRange(6781,6782).addRange(6794,6799).addRange(6810,6815).addRange(6830,6831).addRange(6878,6879).addRange(6892,6911).addRange(7156,7163).addRange(7224,7226).addRange(7242,7244).addRange(7307,7311).addRange(7355,7356).addRange(7368,7375).addRange(7419,7423).addRange(7958,7959).addRange(7966,7967).addRange(8006,8007).addRange(8014,8015).addRange(8062,8063).addRange(8148,8149).addRange(8176,8177).addRange(8203,8207).addRange(8234,8238).addRange(8288,8303).addRange(8306,8307).addRange(8349,8351).addRange(8386,8399).addRange(8433,8447).addRange(8588,8591).addRange(9258,9279).addRange(9291,9311).addRange(11124,11125),e.addRange(11508,11512).addRange(11560,11564).addRange(11566,11567).addRange(11624,11630).addRange(11633,11646).addRange(11671,11679).addRange(11870,11903).addRange(12020,12031).addRange(12246,12271).addRange(12439,12440).addRange(12544,12548).addRange(12774,12782).addRange(42125,42127).addRange(42183,42191).addRange(42540,42559).addRange(42744,42751).addRange(42973,42992).addRange(43053,43055).addRange(43066,43071).addRange(43128,43135).addRange(43206,43213).addRange(43226,43231).addRange(43348,43358).addRange(43389,43391).addRange(43482,43485).addRange(43575,43583).addRange(43598,43599).addRange(43610,43611).addRange(43715,43738).addRange(43767,43776).addRange(43783,43784).addRange(43791,43792).addRange(43799,43807).addRange(43884,43887).addRange(44014,44015).addRange(44026,44031).addRange(55204,55215).addRange(55239,55242).addRange(55292,63743).addRange(64110,64111).addRange(64218,64255).addRange(64263,64274).addRange(64280,64284).addRange(64976,65007).addRange(65050,65055).addRange(65132,65135).addRange(65277,65280).addRange(65471,65473).addRange(65480,65481).addRange(65488,65489).addRange(65496,65497),e.addRange(65501,65503).addRange(65519,65531).addRange(65534,65535).addRange(65614,65615).addRange(65630,65663).addRange(65787,65791).addRange(65795,65798).addRange(65844,65846).addRange(65949,65951).addRange(65953,65999).addRange(66046,66175).addRange(66205,66207).addRange(66257,66271).addRange(66300,66303).addRange(66340,66348).addRange(66379,66383).addRange(66427,66431).addRange(66500,66503).addRange(66518,66559).addRange(66718,66719).addRange(66730,66735).addRange(66772,66775).addRange(66812,66815).addRange(66856,66863).addRange(66916,66926).addRange(67005,67007).addRange(67060,67071).addRange(67383,67391).addRange(67414,67423).addRange(67432,67455).addRange(67515,67583).addRange(67590,67591).addRange(67641,67643).addRange(67645,67646).addRange(67743,67750).addRange(67760,67807).addRange(67830,67834).addRange(67868,67870).addRange(67898,67902).addRange(67930,67967).addRange(68024,68027).addRange(68048,68049).addRange(68103,68107).addRange(68150,68151).addRange(68155,68158).addRange(68169,68175).addRange(68185,68191).addRange(68256,68287).addRange(68327,68330).addRange(68343,68351).addRange(68406,68408),e.addRange(68438,68439).addRange(68467,68471).addRange(68498,68504).addRange(68509,68520).addRange(68528,68607).addRange(68681,68735).addRange(68787,68799).addRange(68851,68857).addRange(68904,68911).addRange(68922,68927).addRange(68966,68968).addRange(68998,69005).addRange(69008,69215).addRange(69294,69295).addRange(69298,69313).addRange(69320,69327).addRange(69337,69369).addRange(69416,69423).addRange(69466,69487).addRange(69514,69551).addRange(69580,69599).addRange(69623,69631).addRange(69710,69713).addRange(69750,69758).addRange(69827,69839).addRange(69865,69871).addRange(69882,69887).addRange(69960,69967).addRange(70007,70015).addRange(70133,70143).addRange(70210,70271).addRange(70314,70319).addRange(70379,70383).addRange(70394,70399).addRange(70413,70414).addRange(70417,70418).addRange(70469,70470).addRange(70473,70474).addRange(70478,70479).addRange(70481,70486).addRange(70488,70492).addRange(70500,70501).addRange(70509,70511).addRange(70517,70527).addRange(70540,70541).addRange(70595,70596).addRange(70617,70624).addRange(70627,70655).addRange(70754,70783).addRange(70856,70863).addRange(70874,71039),e.addRange(71094,71095).addRange(71134,71167).addRange(71237,71247).addRange(71258,71263).addRange(71277,71295).addRange(71354,71359).addRange(71370,71375).addRange(71396,71423).addRange(71451,71452).addRange(71468,71471).addRange(71495,71679).addRange(71740,71839).addRange(71923,71934).addRange(71943,71944).addRange(71946,71947).addRange(71993,71994).addRange(72007,72015).addRange(72026,72095).addRange(72104,72105).addRange(72152,72153).addRange(72165,72191).addRange(72264,72271).addRange(72355,72367).addRange(72441,72447).addRange(72458,72543).addRange(72552,72639).addRange(72674,72687).addRange(72698,72703).addRange(72774,72783).addRange(72813,72815).addRange(72848,72849).addRange(72887,72959).addRange(73015,73017).addRange(73032,73039).addRange(73050,73055).addRange(73113,73119).addRange(73130,73135).addRange(73180,73183).addRange(73194,73439).addRange(73465,73471).addRange(73531,73533).addRange(73563,73647).addRange(73649,73663).addRange(73714,73726).addRange(74650,74751).addRange(74869,74879).addRange(75076,77711).addRange(77811,77823).addRange(78896,78911).addRange(78934,78943).addRange(82939,82943),e.addRange(83527,90367).addRange(90426,92159).addRange(92729,92735).addRange(92778,92781).addRange(92874,92879).addRange(92910,92911).addRange(92918,92927).addRange(92998,93007).addRange(93048,93052).addRange(93072,93503).addRange(93562,93759).addRange(93851,93855).addRange(93881,93882).addRange(93908,93951).addRange(94027,94030).addRange(94088,94094).addRange(94112,94175).addRange(94181,94191).addRange(94199,94207).addRange(101590,101630).addRange(101663,101759).addRange(101875,110575).addRange(110883,110897).addRange(110899,110927).addRange(110931,110932).addRange(110934,110947).addRange(110952,110959).addRange(111356,113663).addRange(113771,113775).addRange(113789,113791).addRange(113801,113807).addRange(113818,113819).addRange(113824,117759).addRange(118013,118015).addRange(118452,118457).addRange(118481,118495).addRange(118513,118527).addRange(118574,118575).addRange(118599,118607).addRange(118724,118783).addRange(119030,119039).addRange(119079,119080).addRange(119155,119162).addRange(119275,119295).addRange(119366,119487).addRange(119508,119519).addRange(119540,119551).addRange(119639,119647).addRange(119673,119807).addRange(119968,119969).addRange(119971,119972),e.addRange(119975,119976).addRange(120075,120076).addRange(120135,120137).addRange(120486,120487).addRange(120780,120781).addRange(121484,121498).addRange(121520,122623).addRange(122655,122660).addRange(122667,122879).addRange(122905,122906).addRange(122923,122927).addRange(122990,123022).addRange(123024,123135).addRange(123181,123183).addRange(123198,123199).addRange(123210,123213).addRange(123216,123535).addRange(123567,123583).addRange(123642,123646).addRange(123648,124111).addRange(124154,124367).addRange(124411,124414).addRange(124416,124607).addRange(124662,124669).addRange(124672,124895).addRange(125125,125126).addRange(125143,125183).addRange(125260,125263).addRange(125274,125277).addRange(125280,126064).addRange(126133,126208).addRange(126270,126463).addRange(126501,126502).addRange(126524,126529).addRange(126531,126534).addRange(126549,126550).addRange(126565,126566).addRange(126620,126624).addRange(126652,126703).addRange(126706,126975).addRange(127020,127023).addRange(127124,127135).addRange(127151,127152).addRange(127222,127231).addRange(127406,127461).addRange(127491,127503).addRange(127548,127551).addRange(127561,127567).addRange(127570,127583).addRange(127590,127743).addRange(128729,128731),e.addRange(128749,128751).addRange(128765,128767).addRange(128986,128991).addRange(129004,129007).addRange(129009,129023).addRange(129036,129039).addRange(129096,129103).addRange(129114,129119).addRange(129160,129167).addRange(129198,129199).addRange(129212,129215).addRange(129218,129231).addRange(129241,129279).addRange(129624,129631).addRange(129646,129647).addRange(129661,129663).addRange(129675,129677).addRange(129737,129740).addRange(129757,129758).addRange(129771,129774).addRange(129785,129791).addRange(130043,131071).addRange(173792,173823).addRange(178206,178207).addRange(183982,183983).addRange(191457,191471).addRange(192094,194559).addRange(195102,196607).addRange(201547,201551).addRange(210042,917759).addRange(918e3,1114111),Q1.characters=e,Q1}var e0,t0={};function r0(){if(e0)return t0;e0=1;var e=_Y(8233);return t0.characters=e,t0}var a0,n0={};function s0(){if(a0)return n0;a0=1;var e=_Y();return e.addRange(57344,63743).addRange(983040,1048573).addRange(1048576,1114109),n0.characters=e,n0}var o0,i0={};function d0(){if(o0)return i0;o0=1;var e=_Y(95,123,125,161,167,171,187,191,894,903,1470,1472,1475,1478,1563,1748,2142,2416,2557,2678,2800,3191,3204,3572,3663,3860,3973,4347,5120,5742,7379,11632,12336,12349,12448,12539,42611,42622,43260,43359,44011,65123,65128,65343,65371,65373,66463,66512,66927,67671,67871,67903,68223,68974,69293,69328,70093,70107,70313,70749,70854,71353,71739,72162,72673,73727,92917,92996,94178,113823,124415);return e.addRange(33,35).addRange(37,42).addRange(44,47).addRange(58,59).addRange(63,64).addRange(91,93).addRange(182,183).addRange(1370,1375).addRange(1417,1418).addRange(1523,1524).addRange(1545,1546).addRange(1548,1549).addRange(1565,1567).addRange(1642,1645).addRange(1792,1805).addRange(2039,2041).addRange(2096,2110).addRange(2404,2405).addRange(3674,3675).addRange(3844,3858).addRange(3898,3901).addRange(4048,4052).addRange(4057,4058).addRange(4170,4175).addRange(4960,4968).addRange(5787,5788).addRange(5867,5869).addRange(5941,5942).addRange(6100,6102).addRange(6104,6106).addRange(6144,6154).addRange(6468,6469).addRange(6686,6687).addRange(6816,6822).addRange(6824,6829).addRange(6990,6991).addRange(7002,7008).addRange(7037,7039).addRange(7164,7167).addRange(7227,7231).addRange(7294,7295).addRange(7360,7367).addRange(8208,8231).addRange(8240,8259).addRange(8261,8273).addRange(8275,8286).addRange(8317,8318).addRange(8333,8334).addRange(8968,8971).addRange(9001,9002).addRange(10088,10101),e.addRange(10181,10182).addRange(10214,10223).addRange(10627,10648).addRange(10712,10715).addRange(10748,10749).addRange(11513,11516).addRange(11518,11519).addRange(11776,11822).addRange(11824,11855).addRange(11858,11869).addRange(12289,12291).addRange(12296,12305).addRange(12308,12319).addRange(42238,42239).addRange(42509,42511).addRange(42738,42743).addRange(43124,43127).addRange(43214,43215).addRange(43256,43258).addRange(43310,43311).addRange(43457,43469).addRange(43486,43487).addRange(43612,43615).addRange(43742,43743).addRange(43760,43761).addRange(64830,64831).addRange(65040,65049).addRange(65072,65106).addRange(65108,65121).addRange(65130,65131).addRange(65281,65283).addRange(65285,65290).addRange(65292,65295).addRange(65306,65307).addRange(65311,65312).addRange(65339,65341).addRange(65375,65381).addRange(65792,65794).addRange(68176,68184).addRange(68336,68342).addRange(68409,68415).addRange(68505,68508).addRange(69461,69465).addRange(69510,69513).addRange(69703,69709).addRange(69819,69820).addRange(69822,69825).addRange(69952,69955).addRange(70004,70005).addRange(70085,70088).addRange(70109,70111),e.addRange(70200,70205).addRange(70612,70613).addRange(70615,70616).addRange(70731,70735).addRange(70746,70747).addRange(71105,71127).addRange(71233,71235).addRange(71264,71276).addRange(71484,71486).addRange(72004,72006).addRange(72255,72262).addRange(72346,72348).addRange(72350,72354).addRange(72448,72457).addRange(72769,72773).addRange(72816,72817).addRange(73463,73464).addRange(73539,73551).addRange(74864,74868).addRange(77809,77810).addRange(92782,92783).addRange(92983,92987).addRange(93549,93551).addRange(93847,93850).addRange(121479,121483).addRange(125278,125279),i0.characters=e,i0}var c0,l0={};function u0(){if(c0)return l0;c0=1;var e=_Y(32,160,5760,8239,8287,12288);return e.addRange(8192,8202).addRange(8232,8233),l0.characters=e,l0}var p0,f0={};function g0(){if(p0)return f0;p0=1;var e=_Y(32,160,5760,8239,8287,12288);return e.addRange(8192,8202),f0.characters=e,f0}var m0,y0={};function h0(){if(m0)return y0;m0=1;var e=_Y(2307,2363,2519,2563,2691,2761,2878,2880,2903,3031,3262,3315,3415,3967,4145,4152,4239,5909,5940,6070,6741,6743,6753,6916,6965,6971,7042,7073,7082,7143,7150,7393,7415,43047,43395,43597,43643,43645,43755,43765,44012,69632,69634,69762,69932,70018,70094,70197,70487,70594,70597,70607,70725,70841,70849,71102,71230,71340,71350,71454,71462,71736,71997,72e3,72002,72164,72249,72343,72545,72549,72551,72751,72766,72873,72881,72884,73110,73475,73537);return e.addRange(2366,2368).addRange(2377,2380).addRange(2382,2383).addRange(2434,2435).addRange(2494,2496).addRange(2503,2504).addRange(2507,2508).addRange(2622,2624).addRange(2750,2752).addRange(2763,2764).addRange(2818,2819).addRange(2887,2888).addRange(2891,2892).addRange(3006,3007).addRange(3009,3010).addRange(3014,3016).addRange(3018,3020).addRange(3073,3075).addRange(3137,3140).addRange(3202,3203).addRange(3264,3268).addRange(3271,3272).addRange(3274,3275).addRange(3285,3286).addRange(3330,3331).addRange(3390,3392).addRange(3398,3400).addRange(3402,3404).addRange(3458,3459).addRange(3535,3537).addRange(3544,3551).addRange(3570,3571).addRange(3902,3903).addRange(4139,4140).addRange(4155,4156).addRange(4182,4183).addRange(4194,4196).addRange(4199,4205).addRange(4227,4228).addRange(4231,4236).addRange(4250,4252).addRange(6078,6085).addRange(6087,6088).addRange(6435,6438).addRange(6441,6443).addRange(6448,6449).addRange(6451,6456).addRange(6681,6682).addRange(6755,6756).addRange(6765,6770).addRange(6973,6977),e.addRange(6979,6980).addRange(7078,7079).addRange(7146,7148).addRange(7154,7155).addRange(7204,7211).addRange(7220,7221).addRange(12334,12335).addRange(43043,43044).addRange(43136,43137).addRange(43188,43203).addRange(43346,43347).addRange(43444,43445).addRange(43450,43451).addRange(43454,43456).addRange(43567,43568).addRange(43571,43572).addRange(43758,43759).addRange(44003,44004).addRange(44006,44007).addRange(44009,44010).addRange(69808,69810).addRange(69815,69816).addRange(69957,69958).addRange(70067,70069).addRange(70079,70080).addRange(70188,70190).addRange(70194,70195).addRange(70368,70370).addRange(70402,70403).addRange(70462,70463).addRange(70465,70468).addRange(70471,70472).addRange(70475,70477).addRange(70498,70499).addRange(70584,70586).addRange(70599,70602).addRange(70604,70605).addRange(70709,70711).addRange(70720,70721).addRange(70832,70834).addRange(70843,70846).addRange(71087,71089).addRange(71096,71099).addRange(71216,71218).addRange(71227,71228).addRange(71342,71343).addRange(71456,71457).addRange(71724,71726).addRange(71984,71989).addRange(71991,71992).addRange(72145,72147),e.addRange(72156,72159).addRange(72279,72280).addRange(73098,73102).addRange(73107,73108).addRange(73461,73462).addRange(73524,73525).addRange(73534,73535).addRange(90410,90412).addRange(94033,94087).addRange(94192,94193).addRange(119141,119142).addRange(119149,119154),y0.characters=e,y0}var b0,v0={};function x0(){if(b0)return v0;b0=1;var e=_Y();return e.addRange(55296,57343),v0.characters=e,v0}var R0,j0={};function w0(){if(R0)return j0;R0=1;var e=_Y(36,43,94,96,124,126,172,180,184,215,247,749,885,1014,1154,1547,1758,1769,2038,2184,2801,2928,3199,3407,3449,3647,3859,3892,3894,3896,5741,6107,6464,8125,8260,8274,8468,8485,8487,8489,8494,8527,12292,12320,12783,12880,43867,64297,65122,65129,65284,65291,65342,65344,65372,65374,65952,68296,71487,92997,113820,119365,120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,123215,123647,126124,126128,126254,129008,129736,130042);return e.addRange(60,62).addRange(162,166).addRange(168,169).addRange(174,177).addRange(706,709).addRange(722,735).addRange(741,747).addRange(751,767).addRange(900,901).addRange(1421,1423).addRange(1542,1544).addRange(1550,1551).addRange(1789,1790).addRange(2046,2047).addRange(2546,2547).addRange(2554,2555).addRange(3059,3066).addRange(3841,3843).addRange(3861,3863).addRange(3866,3871).addRange(4030,4037).addRange(4039,4044).addRange(4046,4047).addRange(4053,4056).addRange(4254,4255).addRange(5008,5017).addRange(6622,6655).addRange(7009,7018).addRange(7028,7036).addRange(8127,8129).addRange(8141,8143).addRange(8157,8159).addRange(8173,8175).addRange(8189,8190).addRange(8314,8316).addRange(8330,8332).addRange(8352,8385).addRange(8448,8449).addRange(8451,8454).addRange(8456,8457).addRange(8470,8472).addRange(8478,8483).addRange(8506,8507).addRange(8512,8516).addRange(8522,8525).addRange(8586,8587).addRange(8592,8967).addRange(8972,9e3).addRange(9003,9257).addRange(9280,9290).addRange(9372,9449),e.addRange(9472,10087).addRange(10132,10180).addRange(10183,10213).addRange(10224,10626).addRange(10649,10711).addRange(10716,10747).addRange(10750,11123).addRange(11126,11263).addRange(11493,11498).addRange(11856,11857).addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12272,12287).addRange(12306,12307).addRange(12342,12343).addRange(12350,12351).addRange(12443,12444).addRange(12688,12689).addRange(12694,12703).addRange(12736,12773).addRange(12800,12830).addRange(12842,12871).addRange(12896,12927).addRange(12938,12976).addRange(12992,13311).addRange(19904,19967).addRange(42128,42182).addRange(42752,42774).addRange(42784,42785).addRange(42889,42890).addRange(43048,43051).addRange(43062,43065).addRange(43639,43641).addRange(43882,43883).addRange(64434,64466).addRange(64832,64847).addRange(64912,64913).addRange(64968,64975).addRange(65020,65023).addRange(65124,65126).addRange(65308,65310).addRange(65504,65510).addRange(65512,65518).addRange(65532,65533).addRange(65847,65855).addRange(65913,65929).addRange(65932,65934).addRange(65936,65948).addRange(66e3,66044).addRange(67703,67704),e.addRange(69006,69007).addRange(69329,69336).addRange(73685,73713).addRange(92988,92991).addRange(117760,117999).addRange(118010,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118512).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119140).addRange(119146,119148).addRange(119171,119172).addRange(119180,119209).addRange(119214,119274).addRange(119296,119361).addRange(119552,119638).addRange(120832,121343).addRange(121399,121402).addRange(121453,121460).addRange(121462,121475).addRange(121477,121478).addRange(126704,126705).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183).addRange(127185,127221).addRange(127245,127405).addRange(127462,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(127584,127589).addRange(127744,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129232,129240).addRange(129280,129623),e.addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130031),j0.characters=e,j0}var E0,S0={};function T0(){if(E0)return S0;E0=1;var e=_Y(453,456,459,498,8124,8140,8188);return e.addRange(8072,8079).addRange(8088,8095).addRange(8104,8111),S0.characters=e,S0}var P0,A0={};function k0(){if(P0)return A0;P0=1;var e=_Y(907,909,930,1328,1424,1806,2111,2143,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2816,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3085,3089,3113,3141,3145,3159,3163,3213,3217,3241,3252,3269,3273,3295,3312,3341,3345,3397,3401,3456,3460,3506,3516,3541,3543,3715,3717,3723,3748,3750,3781,3783,3791,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5997,6001,6431,6751,6989,8024,8026,8028,8030,8117,8133,8156,8181,8191,8293,8335,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12592,12687,12831,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65280,65511,65548,65575,65595,65598,65935,66462,66939,66955,66963,66966,66978,66994,67002,67462,67505,67593,67638,67670,67827,68100,68116,68120,69247,69290,69941,70112,70162,70279,70281,70286,70302,70404,70441,70449,70452,70458,70538,70543,70582,70593,70598,70603,70614,70748,71956,71959,71990,72713,72759,72872,72967,72970,73019,73022,73062,73065,73103,73106,73489,74863,92767,92863,93018,93026,110580,110588,110591,119893,119965,119981,119994,119996,120004,120070,120085,120093,120122,120127,120133,120145,121504,122887,122914,122917,124639,124903,124908,124911,124927,126468,126496,126499,126504,126515,126520,126522,126536,126538,126540,126544,126547,126552,126554,126556,126558,126560,126563,126571,126579,126584,126589,126591,126602,126628,126634,127168,127184,129735,129939);return e.addRange(888,889).addRange(896,899).addRange(1367,1368).addRange(1419,1420).addRange(1480,1487).addRange(1515,1518).addRange(1525,1535).addRange(1867,1868).addRange(1970,1983).addRange(2043,2044).addRange(2094,2095).addRange(2140,2141).addRange(2155,2159).addRange(2194,2198).addRange(2445,2446).addRange(2449,2450).addRange(2483,2485).addRange(2490,2491).addRange(2501,2502).addRange(2505,2506).addRange(2511,2518).addRange(2520,2523).addRange(2532,2533).addRange(2559,2560).addRange(2571,2574).addRange(2577,2578).addRange(2618,2619).addRange(2627,2630).addRange(2633,2634).addRange(2638,2640).addRange(2642,2648).addRange(2655,2661).addRange(2679,2688).addRange(2746,2747).addRange(2766,2767).addRange(2769,2783).addRange(2788,2789).addRange(2802,2808).addRange(2829,2830).addRange(2833,2834).addRange(2874,2875).addRange(2885,2886).addRange(2889,2890).addRange(2894,2900).addRange(2904,2907).addRange(2916,2917).addRange(2936,2945).addRange(2955,2957).addRange(2966,2968).addRange(2976,2978).addRange(2981,2983),e.addRange(2987,2989).addRange(3002,3005).addRange(3011,3013).addRange(3022,3023).addRange(3025,3030).addRange(3032,3045).addRange(3067,3071).addRange(3130,3131).addRange(3150,3156).addRange(3166,3167).addRange(3172,3173).addRange(3184,3190).addRange(3258,3259).addRange(3278,3284).addRange(3287,3291).addRange(3300,3301).addRange(3316,3327).addRange(3408,3411).addRange(3428,3429).addRange(3479,3481).addRange(3518,3519).addRange(3527,3529).addRange(3531,3534).addRange(3552,3557).addRange(3568,3569).addRange(3573,3584).addRange(3643,3646).addRange(3676,3712).addRange(3774,3775).addRange(3802,3803).addRange(3808,3839).addRange(3949,3952).addRange(4059,4095).addRange(4296,4300).addRange(4302,4303).addRange(4686,4687).addRange(4702,4703).addRange(4750,4751).addRange(4790,4791).addRange(4806,4807).addRange(4886,4887).addRange(4955,4956).addRange(4989,4991).addRange(5018,5023).addRange(5110,5111).addRange(5118,5119).addRange(5789,5791).addRange(5881,5887).addRange(5910,5918).addRange(5943,5951).addRange(5972,5983),e.addRange(6004,6015).addRange(6110,6111).addRange(6122,6127).addRange(6138,6143).addRange(6170,6175).addRange(6265,6271).addRange(6315,6319).addRange(6390,6399).addRange(6444,6447).addRange(6460,6463).addRange(6465,6467).addRange(6510,6511).addRange(6517,6527).addRange(6572,6575).addRange(6602,6607).addRange(6619,6621).addRange(6684,6685).addRange(6781,6782).addRange(6794,6799).addRange(6810,6815).addRange(6830,6831).addRange(6878,6879).addRange(6892,6911).addRange(7156,7163).addRange(7224,7226).addRange(7242,7244).addRange(7307,7311).addRange(7355,7356).addRange(7368,7375).addRange(7419,7423).addRange(7958,7959).addRange(7966,7967).addRange(8006,8007).addRange(8014,8015).addRange(8062,8063).addRange(8148,8149).addRange(8176,8177).addRange(8306,8307).addRange(8349,8351).addRange(8386,8399).addRange(8433,8447).addRange(8588,8591).addRange(9258,9279).addRange(9291,9311).addRange(11124,11125).addRange(11508,11512).addRange(11560,11564).addRange(11566,11567).addRange(11624,11630).addRange(11633,11646).addRange(11671,11679),e.addRange(11870,11903).addRange(12020,12031).addRange(12246,12271).addRange(12439,12440).addRange(12544,12548).addRange(12774,12782).addRange(42125,42127).addRange(42183,42191).addRange(42540,42559).addRange(42744,42751).addRange(42973,42992).addRange(43053,43055).addRange(43066,43071).addRange(43128,43135).addRange(43206,43213).addRange(43226,43231).addRange(43348,43358).addRange(43389,43391).addRange(43482,43485).addRange(43575,43583).addRange(43598,43599).addRange(43610,43611).addRange(43715,43738).addRange(43767,43776).addRange(43783,43784).addRange(43791,43792).addRange(43799,43807).addRange(43884,43887).addRange(44014,44015).addRange(44026,44031).addRange(55204,55215).addRange(55239,55242).addRange(55292,55295).addRange(64110,64111).addRange(64218,64255).addRange(64263,64274).addRange(64280,64284).addRange(64976,65007).addRange(65050,65055).addRange(65132,65135).addRange(65277,65278).addRange(65471,65473).addRange(65480,65481).addRange(65488,65489).addRange(65496,65497).addRange(65501,65503).addRange(65519,65528).addRange(65534,65535).addRange(65614,65615).addRange(65630,65663).addRange(65787,65791),e.addRange(65795,65798).addRange(65844,65846).addRange(65949,65951).addRange(65953,65999).addRange(66046,66175).addRange(66205,66207).addRange(66257,66271).addRange(66300,66303).addRange(66340,66348).addRange(66379,66383).addRange(66427,66431).addRange(66500,66503).addRange(66518,66559).addRange(66718,66719).addRange(66730,66735).addRange(66772,66775).addRange(66812,66815).addRange(66856,66863).addRange(66916,66926).addRange(67005,67007).addRange(67060,67071).addRange(67383,67391).addRange(67414,67423).addRange(67432,67455).addRange(67515,67583).addRange(67590,67591).addRange(67641,67643).addRange(67645,67646).addRange(67743,67750).addRange(67760,67807).addRange(67830,67834).addRange(67868,67870).addRange(67898,67902).addRange(67930,67967).addRange(68024,68027).addRange(68048,68049).addRange(68103,68107).addRange(68150,68151).addRange(68155,68158).addRange(68169,68175).addRange(68185,68191).addRange(68256,68287).addRange(68327,68330).addRange(68343,68351).addRange(68406,68408).addRange(68438,68439).addRange(68467,68471).addRange(68498,68504).addRange(68509,68520).addRange(68528,68607).addRange(68681,68735),e.addRange(68787,68799).addRange(68851,68857).addRange(68904,68911).addRange(68922,68927).addRange(68966,68968).addRange(68998,69005).addRange(69008,69215).addRange(69294,69295).addRange(69298,69313).addRange(69320,69327).addRange(69337,69369).addRange(69416,69423).addRange(69466,69487).addRange(69514,69551).addRange(69580,69599).addRange(69623,69631).addRange(69710,69713).addRange(69750,69758).addRange(69827,69836).addRange(69838,69839).addRange(69865,69871).addRange(69882,69887).addRange(69960,69967).addRange(70007,70015).addRange(70133,70143).addRange(70210,70271).addRange(70314,70319).addRange(70379,70383).addRange(70394,70399).addRange(70413,70414).addRange(70417,70418).addRange(70469,70470).addRange(70473,70474).addRange(70478,70479).addRange(70481,70486).addRange(70488,70492).addRange(70500,70501).addRange(70509,70511).addRange(70517,70527).addRange(70540,70541).addRange(70595,70596).addRange(70617,70624).addRange(70627,70655).addRange(70754,70783).addRange(70856,70863).addRange(70874,71039).addRange(71094,71095).addRange(71134,71167).addRange(71237,71247).addRange(71258,71263).addRange(71277,71295),e.addRange(71354,71359).addRange(71370,71375).addRange(71396,71423).addRange(71451,71452).addRange(71468,71471).addRange(71495,71679).addRange(71740,71839).addRange(71923,71934).addRange(71943,71944).addRange(71946,71947).addRange(71993,71994).addRange(72007,72015).addRange(72026,72095).addRange(72104,72105).addRange(72152,72153).addRange(72165,72191).addRange(72264,72271).addRange(72355,72367).addRange(72441,72447).addRange(72458,72543).addRange(72552,72639).addRange(72674,72687).addRange(72698,72703).addRange(72774,72783).addRange(72813,72815).addRange(72848,72849).addRange(72887,72959).addRange(73015,73017).addRange(73032,73039).addRange(73050,73055).addRange(73113,73119).addRange(73130,73135).addRange(73180,73183).addRange(73194,73439).addRange(73465,73471).addRange(73531,73533).addRange(73563,73647).addRange(73649,73663).addRange(73714,73726).addRange(74650,74751).addRange(74869,74879).addRange(75076,77711).addRange(77811,77823).addRange(78934,78943).addRange(82939,82943).addRange(83527,90367).addRange(90426,92159).addRange(92729,92735).addRange(92778,92781).addRange(92874,92879).addRange(92910,92911),e.addRange(92918,92927).addRange(92998,93007).addRange(93048,93052).addRange(93072,93503).addRange(93562,93759).addRange(93851,93855).addRange(93881,93882).addRange(93908,93951).addRange(94027,94030).addRange(94088,94094).addRange(94112,94175).addRange(94181,94191).addRange(94199,94207).addRange(101590,101630).addRange(101663,101759).addRange(101875,110575).addRange(110883,110897).addRange(110899,110927).addRange(110931,110932).addRange(110934,110947).addRange(110952,110959).addRange(111356,113663).addRange(113771,113775).addRange(113789,113791).addRange(113801,113807).addRange(113818,113819).addRange(113828,117759).addRange(118013,118015).addRange(118452,118457).addRange(118481,118495).addRange(118513,118527).addRange(118574,118575).addRange(118599,118607).addRange(118724,118783).addRange(119030,119039).addRange(119079,119080).addRange(119275,119295).addRange(119366,119487).addRange(119508,119519).addRange(119540,119551).addRange(119639,119647).addRange(119673,119807).addRange(119968,119969).addRange(119971,119972).addRange(119975,119976).addRange(120075,120076).addRange(120135,120137).addRange(120486,120487).addRange(120780,120781).addRange(121484,121498).addRange(121520,122623),e.addRange(122655,122660).addRange(122667,122879).addRange(122905,122906).addRange(122923,122927).addRange(122990,123022).addRange(123024,123135).addRange(123181,123183).addRange(123198,123199).addRange(123210,123213).addRange(123216,123535).addRange(123567,123583).addRange(123642,123646).addRange(123648,124111).addRange(124154,124367).addRange(124411,124414).addRange(124416,124607).addRange(124662,124669).addRange(124672,124895).addRange(125125,125126).addRange(125143,125183).addRange(125260,125263).addRange(125274,125277).addRange(125280,126064).addRange(126133,126208).addRange(126270,126463).addRange(126501,126502).addRange(126524,126529).addRange(126531,126534).addRange(126549,126550).addRange(126565,126566).addRange(126620,126624).addRange(126652,126703).addRange(126706,126975).addRange(127020,127023).addRange(127124,127135).addRange(127151,127152).addRange(127222,127231).addRange(127406,127461).addRange(127491,127503).addRange(127548,127551).addRange(127561,127567).addRange(127570,127583).addRange(127590,127743).addRange(128729,128731).addRange(128749,128751).addRange(128765,128767).addRange(128986,128991).addRange(129004,129007).addRange(129009,129023).addRange(129036,129039).addRange(129096,129103),e.addRange(129114,129119).addRange(129160,129167).addRange(129198,129199).addRange(129212,129215).addRange(129218,129231).addRange(129241,129279).addRange(129624,129631).addRange(129646,129647).addRange(129661,129663).addRange(129675,129677).addRange(129737,129740).addRange(129757,129758).addRange(129771,129774).addRange(129785,129791).addRange(130043,131071).addRange(173792,173823).addRange(178206,178207).addRange(183982,183983).addRange(191457,191471).addRange(192094,194559).addRange(195102,196607).addRange(201547,201551).addRange(210042,917504).addRange(917506,917535).addRange(917632,917759).addRange(918e3,983039).addRange(1048574,1048575).addRange(1114110,1114111),A0.characters=e,A0}var C0,_0,I0,D0={};function O0(){if(C0)return D0;C0=1;var e=_Y(256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,379,381,388,418,420,425,428,437,444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,577,584,586,588,590,880,882,886,895,902,908,975,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,4295,4301,7305,7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,8025,8027,8029,8031,8450,8455,8469,8484,8486,8488,8517,8579,11360,11367,11369,11371,11378,11381,11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,42934,42936,42938,42940,42942,42944,42946,42953,42958,42960,42962,42964,42966,42968,42970,42972,42997,119964,119970,120134,120778);return e.addRange(65,90).addRange(192,214).addRange(216,222).addRange(376,377).addRange(385,386).addRange(390,391).addRange(393,395).addRange(398,401).addRange(403,404).addRange(406,408).addRange(412,413).addRange(415,416).addRange(422,423).addRange(430,431).addRange(433,435).addRange(439,440).addRange(502,504).addRange(570,571).addRange(573,574).addRange(579,582).addRange(904,906).addRange(910,911).addRange(913,929).addRange(931,939).addRange(978,980).addRange(1017,1018).addRange(1021,1071).addRange(1216,1217).addRange(1329,1366).addRange(4256,4293).addRange(5024,5109).addRange(7312,7354).addRange(7357,7359).addRange(7944,7951).addRange(7960,7965).addRange(7976,7983).addRange(7992,7999).addRange(8008,8013).addRange(8040,8047).addRange(8120,8123).addRange(8136,8139).addRange(8152,8155).addRange(8168,8172).addRange(8184,8187).addRange(8459,8461).addRange(8464,8466).addRange(8473,8477).addRange(8490,8493).addRange(8496,8499).addRange(8510,8511).addRange(11264,11311),e.addRange(11362,11364).addRange(11373,11376).addRange(11390,11392).addRange(42877,42878).addRange(42922,42926).addRange(42928,42932).addRange(42948,42951).addRange(42955,42956).addRange(65313,65338).addRange(66560,66599).addRange(66736,66771).addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(68736,68786).addRange(68944,68965).addRange(71840,71871).addRange(93760,93791).addRange(93856,93880).addRange(119808,119833).addRange(119860,119885).addRange(119912,119937).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119989).addRange(120016,120041).addRange(120068,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120120,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120172,120197).addRange(120224,120249).addRange(120276,120301).addRange(120328,120353).addRange(120380,120405).addRange(120432,120457).addRange(120488,120512).addRange(120546,120570).addRange(120604,120628).addRange(120662,120686).addRange(120720,120744).addRange(125184,125217),D0.characters=e,D0}function N0(){return I0?_0:(I0=1,_0=new Map([["General_Category",["Cased_Letter","Close_Punctuation","Connector_Punctuation","Control","Currency_Symbol","Dash_Punctuation","Decimal_Number","Enclosing_Mark","Final_Punctuation","Format","Initial_Punctuation","Letter","Letter_Number","Line_Separator","Lowercase_Letter","Mark","Math_Symbol","Modifier_Letter","Modifier_Symbol","Nonspacing_Mark","Number","Open_Punctuation","Other","Other_Letter","Other_Number","Other_Punctuation","Other_Symbol","Paragraph_Separator","Private_Use","Punctuation","Separator","Space_Separator","Spacing_Mark","Surrogate","Symbol","Titlecase_Letter","Unassigned","Uppercase_Letter"]],["Script",["Adlam","Ahom","Anatolian_Hieroglyphs","Arabic","Armenian","Avestan","Balinese","Bamum","Bassa_Vah","Batak","Bengali","Beria_Erfe","Bhaiksuki","Bopomofo","Brahmi","Braille","Buginese","Buhid","Canadian_Aboriginal","Carian","Caucasian_Albanian","Chakma","Cham","Cherokee","Chorasmian","Common","Coptic","Cuneiform","Cypriot","Cypro_Minoan","Cyrillic","Deseret","Devanagari","Dives_Akuru","Dogra","Duployan","Egyptian_Hieroglyphs","Elbasan","Elymaic","Ethiopic","Garay","Georgian","Glagolitic","Gothic","Grantha","Greek","Gujarati","Gunjala_Gondi","Gurmukhi","Gurung_Khema","Han","Hangul","Hanifi_Rohingya","Hanunoo","Hatran","Hebrew","Hiragana","Imperial_Aramaic","Inherited","Inscriptional_Pahlavi","Inscriptional_Parthian","Javanese","Kaithi","Kannada","Katakana","Kawi","Kayah_Li","Kharoshthi","Khitan_Small_Script","Khmer","Khojki","Khudawadi","Kirat_Rai","Lao","Latin","Lepcha","Limbu","Linear_A","Linear_B","Lisu","Lycian","Lydian","Mahajani","Makasar","Malayalam","Mandaic","Manichaean","Marchen","Masaram_Gondi","Medefaidrin","Meetei_Mayek","Mende_Kikakui","Meroitic_Cursive","Meroitic_Hieroglyphs","Miao","Modi","Mongolian","Mro","Multani","Myanmar","Nabataean","Nag_Mundari","Nandinagari","New_Tai_Lue","Newa","Nko","Nushu","Nyiakeng_Puachue_Hmong","Ogham","Ol_Chiki","Ol_Onal","Old_Hungarian","Old_Italic","Old_North_Arabian","Old_Permic","Old_Persian","Old_Sogdian","Old_South_Arabian","Old_Turkic","Old_Uyghur","Oriya","Osage","Osmanya","Pahawh_Hmong","Palmyrene","Pau_Cin_Hau","Phags_Pa","Phoenician","Psalter_Pahlavi","Rejang","Runic","Samaritan","Saurashtra","Sharada","Shavian","Siddham","Sidetic","SignWriting","Sinhala","Sogdian","Sora_Sompeng","Soyombo","Sundanese","Sunuwar","Syloti_Nagri","Syriac","Tagalog","Tagbanwa","Tai_Le","Tai_Tham","Tai_Viet","Tai_Yo","Takri","Tamil","Tangsa","Tangut","Telugu","Thaana","Thai","Tibetan","Tifinagh","Tirhuta","Todhri","Tolong_Siki","Toto","Tulu_Tigalari","Ugaritic","Unknown","Vai","Vithkuqi","Wancho","Warang_Citi","Yezidi","Yi","Zanabazar_Square"]],["Script_Extensions",["Adlam","Ahom","Anatolian_Hieroglyphs","Arabic","Armenian","Avestan","Balinese","Bamum","Bassa_Vah","Batak","Bengali","Beria_Erfe","Bhaiksuki","Bopomofo","Brahmi","Braille","Buginese","Buhid","Canadian_Aboriginal","Carian","Caucasian_Albanian","Chakma","Cham","Cherokee","Chorasmian","Common","Coptic","Cuneiform","Cypriot","Cypro_Minoan","Cyrillic","Deseret","Devanagari","Dives_Akuru","Dogra","Duployan","Egyptian_Hieroglyphs","Elbasan","Elymaic","Ethiopic","Garay","Georgian","Glagolitic","Gothic","Grantha","Greek","Gujarati","Gunjala_Gondi","Gurmukhi","Gurung_Khema","Han","Hangul","Hanifi_Rohingya","Hanunoo","Hatran","Hebrew","Hiragana","Imperial_Aramaic","Inherited","Inscriptional_Pahlavi","Inscriptional_Parthian","Javanese","Kaithi","Kannada","Katakana","Kawi","Kayah_Li","Kharoshthi","Khitan_Small_Script","Khmer","Khojki","Khudawadi","Kirat_Rai","Lao","Latin","Lepcha","Limbu","Linear_A","Linear_B","Lisu","Lycian","Lydian","Mahajani","Makasar","Malayalam","Mandaic","Manichaean","Marchen","Masaram_Gondi","Medefaidrin","Meetei_Mayek","Mende_Kikakui","Meroitic_Cursive","Meroitic_Hieroglyphs","Miao","Modi","Mongolian","Mro","Multani","Myanmar","Nabataean","Nag_Mundari","Nandinagari","New_Tai_Lue","Newa","Nko","Nushu","Nyiakeng_Puachue_Hmong","Ogham","Ol_Chiki","Ol_Onal","Old_Hungarian","Old_Italic","Old_North_Arabian","Old_Permic","Old_Persian","Old_Sogdian","Old_South_Arabian","Old_Turkic","Old_Uyghur","Oriya","Osage","Osmanya","Pahawh_Hmong","Palmyrene","Pau_Cin_Hau","Phags_Pa","Phoenician","Psalter_Pahlavi","Rejang","Runic","Samaritan","Saurashtra","Sharada","Shavian","Siddham","Sidetic","SignWriting","Sinhala","Sogdian","Sora_Sompeng","Soyombo","Sundanese","Sunuwar","Syloti_Nagri","Syriac","Tagalog","Tagbanwa","Tai_Le","Tai_Tham","Tai_Viet","Tai_Yo","Takri","Tamil","Tangsa","Tangut","Telugu","Thaana","Thai","Tibetan","Tifinagh","Tirhuta","Todhri","Tolong_Siki","Toto","Tulu_Tigalari","Ugaritic","Unknown","Vai","Vithkuqi","Wancho","Warang_Citi","Yezidi","Yi","Zanabazar_Square"]],["Binary_Property",["ASCII","ASCII_Hex_Digit","Alphabetic","Any","Assigned","Bidi_Control","Bidi_Mirrored","Case_Ignorable","Cased","Changes_When_Casefolded","Changes_When_Casemapped","Changes_When_Lowercased","Changes_When_NFKC_Casefolded","Changes_When_Titlecased","Changes_When_Uppercased","Dash","Default_Ignorable_Code_Point","Deprecated","Diacritic","Emoji","Emoji_Component","Emoji_Modifier","Emoji_Modifier_Base","Emoji_Presentation","Extended_Pictographic","Extender","Grapheme_Base","Grapheme_Extend","Hex_Digit","IDS_Binary_Operator","IDS_Trinary_Operator","ID_Continue","ID_Start","Ideographic","Join_Control","Logical_Order_Exception","Lowercase","Math","Noncharacter_Code_Point","Pattern_Syntax","Pattern_White_Space","Quotation_Mark","Radical","Regional_Indicator","Sentence_Terminal","Soft_Dotted","Terminal_Punctuation","Unified_Ideograph","Uppercase","Variation_Selector","White_Space","XID_Continue","XID_Start"]],["Property_of_Strings",["Basic_Emoji","Emoji_Keycap_Sequence","RGI_Emoji","RGI_Emoji_Flag_Sequence","RGI_Emoji_Modifier_Sequence","RGI_Emoji_Tag_Sequence","RGI_Emoji_ZWJ_Sequence"]]]))}var B0,M0={};function F0(){if(B0)return M0;B0=1;var e=_Y(9200,9203,9855,9875,9889,9934,9940,9962,9973,9978,9981,9989,10024,10060,10062,10071,10160,10175,11088,11093,126980,127183,127374,127489,127514,127535,127988,128064,128378,128420,128716,129008,129736);return e.addRange(8986,8987).addRange(9193,9196).addRange(9725,9726).addRange(9748,9749).addRange(9800,9811).addRange(9898,9899).addRange(9917,9918).addRange(9924,9925).addRange(9970,9971).addRange(9994,9995).addRange(10067,10069).addRange(10133,10135).addRange(11035,11036).addRange(127377,127386).addRange(127538,127542).addRange(127544,127546).addRange(127568,127569).addRange(127744,127776).addRange(127789,127797).addRange(127799,127868).addRange(127870,127891).addRange(127904,127946).addRange(127951,127955).addRange(127968,127984).addRange(127992,128062).addRange(128066,128252).addRange(128255,128317).addRange(128331,128334).addRange(128336,128359).addRange(128405,128406).addRange(128507,128591).addRange(128640,128709).addRange(128720,128722).addRange(128725,128728).addRange(128732,128735).addRange(128747,128748).addRange(128756,128764).addRange(128992,129003).addRange(129292,129338).addRange(129340,129349).addRange(129351,129535).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784),M0.characters=e,M0.strings=["\xa9\ufe0f","\xae\ufe0f","\u203c\ufe0f","\u2049\ufe0f","\u2122\ufe0f","\u2139\ufe0f","\u2194\ufe0f","\u2195\ufe0f","\u2196\ufe0f","\u2197\ufe0f","\u2198\ufe0f","\u2199\ufe0f","\u21a9\ufe0f","\u21aa\ufe0f","\u2328\ufe0f","\u23cf\ufe0f","\u23ed\ufe0f","\u23ee\ufe0f","\u23ef\ufe0f","\u23f1\ufe0f","\u23f2\ufe0f","\u23f8\ufe0f","\u23f9\ufe0f","\u23fa\ufe0f","\u24c2\ufe0f","\u25aa\ufe0f","\u25ab\ufe0f","\u25b6\ufe0f","\u25c0\ufe0f","\u25fb\ufe0f","\u25fc\ufe0f","\u2600\ufe0f","\u2601\ufe0f","\u2602\ufe0f","\u2603\ufe0f","\u2604\ufe0f","\u260e\ufe0f","\u2611\ufe0f","\u2618\ufe0f","\u261d\ufe0f","\u2620\ufe0f","\u2622\ufe0f","\u2623\ufe0f","\u2626\ufe0f","\u262a\ufe0f","\u262e\ufe0f","\u262f\ufe0f","\u2638\ufe0f","\u2639\ufe0f","\u263a\ufe0f","\u2640\ufe0f","\u2642\ufe0f","\u265f\ufe0f","\u2660\ufe0f","\u2663\ufe0f","\u2665\ufe0f","\u2666\ufe0f","\u2668\ufe0f","\u267b\ufe0f","\u267e\ufe0f","\u2692\ufe0f","\u2694\ufe0f","\u2695\ufe0f","\u2696\ufe0f","\u2697\ufe0f","\u2699\ufe0f","\u269b\ufe0f","\u269c\ufe0f","\u26a0\ufe0f","\u26a7\ufe0f","\u26b0\ufe0f","\u26b1\ufe0f","\u26c8\ufe0f","\u26cf\ufe0f","\u26d1\ufe0f","\u26d3\ufe0f","\u26e9\ufe0f","\u26f0\ufe0f","\u26f1\ufe0f","\u26f4\ufe0f","\u26f7\ufe0f","\u26f8\ufe0f","\u26f9\ufe0f","\u2702\ufe0f","\u2708\ufe0f","\u2709\ufe0f","\u270c\ufe0f","\u270d\ufe0f","\u270f\ufe0f","\u2712\ufe0f","\u2714\ufe0f","\u2716\ufe0f","\u271d\ufe0f","\u2721\ufe0f","\u2733\ufe0f","\u2734\ufe0f","\u2744\ufe0f","\u2747\ufe0f","\u2763\ufe0f","\u2764\ufe0f","\u27a1\ufe0f","\u2934\ufe0f","\u2935\ufe0f","\u2b05\ufe0f","\u2b06\ufe0f","\u2b07\ufe0f","\u3030\ufe0f","\u303d\ufe0f","\u3297\ufe0f","\u3299\ufe0f","\ud83c\udd70\ufe0f","\ud83c\udd71\ufe0f","\ud83c\udd7e\ufe0f","\ud83c\udd7f\ufe0f","\ud83c\ude02\ufe0f","\ud83c\ude37\ufe0f","\ud83c\udf21\ufe0f","\ud83c\udf24\ufe0f","\ud83c\udf25\ufe0f","\ud83c\udf26\ufe0f","\ud83c\udf27\ufe0f","\ud83c\udf28\ufe0f","\ud83c\udf29\ufe0f","\ud83c\udf2a\ufe0f","\ud83c\udf2b\ufe0f","\ud83c\udf2c\ufe0f","\ud83c\udf36\ufe0f","\ud83c\udf7d\ufe0f","\ud83c\udf96\ufe0f","\ud83c\udf97\ufe0f","\ud83c\udf99\ufe0f","\ud83c\udf9a\ufe0f","\ud83c\udf9b\ufe0f","\ud83c\udf9e\ufe0f","\ud83c\udf9f\ufe0f","\ud83c\udfcb\ufe0f","\ud83c\udfcc\ufe0f","\ud83c\udfcd\ufe0f","\ud83c\udfce\ufe0f","\ud83c\udfd4\ufe0f","\ud83c\udfd5\ufe0f","\ud83c\udfd6\ufe0f","\ud83c\udfd7\ufe0f","\ud83c\udfd8\ufe0f","\ud83c\udfd9\ufe0f","\ud83c\udfda\ufe0f","\ud83c\udfdb\ufe0f","\ud83c\udfdc\ufe0f","\ud83c\udfdd\ufe0f","\ud83c\udfde\ufe0f","\ud83c\udfdf\ufe0f","\ud83c\udff3\ufe0f","\ud83c\udff5\ufe0f","\ud83c\udff7\ufe0f","\ud83d\udc3f\ufe0f","\ud83d\udc41\ufe0f","\ud83d\udcfd\ufe0f","\ud83d\udd49\ufe0f","\ud83d\udd4a\ufe0f","\ud83d\udd6f\ufe0f","\ud83d\udd70\ufe0f","\ud83d\udd73\ufe0f","\ud83d\udd74\ufe0f","\ud83d\udd75\ufe0f","\ud83d\udd76\ufe0f","\ud83d\udd77\ufe0f","\ud83d\udd78\ufe0f","\ud83d\udd79\ufe0f","\ud83d\udd87\ufe0f","\ud83d\udd8a\ufe0f","\ud83d\udd8b\ufe0f","\ud83d\udd8c\ufe0f","\ud83d\udd8d\ufe0f","\ud83d\udd90\ufe0f","\ud83d\udda5\ufe0f","\ud83d\udda8\ufe0f","\ud83d\uddb1\ufe0f","\ud83d\uddb2\ufe0f","\ud83d\uddbc\ufe0f","\ud83d\uddc2\ufe0f","\ud83d\uddc3\ufe0f","\ud83d\uddc4\ufe0f","\ud83d\uddd1\ufe0f","\ud83d\uddd2\ufe0f","\ud83d\uddd3\ufe0f","\ud83d\udddc\ufe0f","\ud83d\udddd\ufe0f","\ud83d\uddde\ufe0f","\ud83d\udde1\ufe0f","\ud83d\udde3\ufe0f","\ud83d\udde8\ufe0f","\ud83d\uddef\ufe0f","\ud83d\uddf3\ufe0f","\ud83d\uddfa\ufe0f","\ud83d\udecb\ufe0f","\ud83d\udecd\ufe0f","\ud83d\udece\ufe0f","\ud83d\udecf\ufe0f","\ud83d\udee0\ufe0f","\ud83d\udee1\ufe0f","\ud83d\udee2\ufe0f","\ud83d\udee3\ufe0f","\ud83d\udee4\ufe0f","\ud83d\udee5\ufe0f","\ud83d\udee9\ufe0f","\ud83d\udef0\ufe0f","\ud83d\udef3\ufe0f"],M0}var L0,U0={};function q0(){if(L0)return U0;L0=1;var e=_Y();return U0.characters=e,U0.strings=["#\ufe0f\u20e3","*\ufe0f\u20e3","0\ufe0f\u20e3","1\ufe0f\u20e3","2\ufe0f\u20e3","3\ufe0f\u20e3","4\ufe0f\u20e3","5\ufe0f\u20e3","6\ufe0f\u20e3","7\ufe0f\u20e3","8\ufe0f\u20e3","9\ufe0f\u20e3"],U0}var G0,W0={};function V0(){if(G0)return W0;G0=1;var e=_Y();return W0.characters=e,W0.strings=["\ud83c\udde6\ud83c\udde8","\ud83c\udde6\ud83c\udde9","\ud83c\udde6\ud83c\uddea","\ud83c\udde6\ud83c\uddeb","\ud83c\udde6\ud83c\uddec","\ud83c\udde6\ud83c\uddee","\ud83c\udde6\ud83c\uddf1","\ud83c\udde6\ud83c\uddf2","\ud83c\udde6\ud83c\uddf4","\ud83c\udde6\ud83c\uddf6","\ud83c\udde6\ud83c\uddf7","\ud83c\udde6\ud83c\uddf8","\ud83c\udde6\ud83c\uddf9","\ud83c\udde6\ud83c\uddfa","\ud83c\udde6\ud83c\uddfc","\ud83c\udde6\ud83c\uddfd","\ud83c\udde6\ud83c\uddff","\ud83c\udde7\ud83c\udde6","\ud83c\udde7\ud83c\udde7","\ud83c\udde7\ud83c\udde9","\ud83c\udde7\ud83c\uddea","\ud83c\udde7\ud83c\uddeb","\ud83c\udde7\ud83c\uddec","\ud83c\udde7\ud83c\udded","\ud83c\udde7\ud83c\uddee","\ud83c\udde7\ud83c\uddef","\ud83c\udde7\ud83c\uddf1","\ud83c\udde7\ud83c\uddf2","\ud83c\udde7\ud83c\uddf3","\ud83c\udde7\ud83c\uddf4","\ud83c\udde7\ud83c\uddf6","\ud83c\udde7\ud83c\uddf7","\ud83c\udde7\ud83c\uddf8","\ud83c\udde7\ud83c\uddf9","\ud83c\udde7\ud83c\uddfb","\ud83c\udde7\ud83c\uddfc","\ud83c\udde7\ud83c\uddfe","\ud83c\udde7\ud83c\uddff","\ud83c\udde8\ud83c\udde6","\ud83c\udde8\ud83c\udde8","\ud83c\udde8\ud83c\udde9","\ud83c\udde8\ud83c\uddeb","\ud83c\udde8\ud83c\uddec","\ud83c\udde8\ud83c\udded","\ud83c\udde8\ud83c\uddee","\ud83c\udde8\ud83c\uddf0","\ud83c\udde8\ud83c\uddf1","\ud83c\udde8\ud83c\uddf2","\ud83c\udde8\ud83c\uddf3","\ud83c\udde8\ud83c\uddf4","\ud83c\udde8\ud83c\uddf5","\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\ud83c\uddf7","\ud83c\udde8\ud83c\uddfa","\ud83c\udde8\ud83c\uddfb","\ud83c\udde8\ud83c\uddfc","\ud83c\udde8\ud83c\uddfd","\ud83c\udde8\ud83c\uddfe","\ud83c\udde8\ud83c\uddff","\ud83c\udde9\ud83c\uddea","\ud83c\udde9\ud83c\uddec","\ud83c\udde9\ud83c\uddef","\ud83c\udde9\ud83c\uddf0","\ud83c\udde9\ud83c\uddf2","\ud83c\udde9\ud83c\uddf4","\ud83c\udde9\ud83c\uddff","\ud83c\uddea\ud83c\udde6","\ud83c\uddea\ud83c\udde8","\ud83c\uddea\ud83c\uddea","\ud83c\uddea\ud83c\uddec","\ud83c\uddea\ud83c\udded","\ud83c\uddea\ud83c\uddf7","\ud83c\uddea\ud83c\uddf8","\ud83c\uddea\ud83c\uddf9","\ud83c\uddea\ud83c\uddfa","\ud83c\uddeb\ud83c\uddee","\ud83c\uddeb\ud83c\uddef","\ud83c\uddeb\ud83c\uddf0","\ud83c\uddeb\ud83c\uddf2","\ud83c\uddeb\ud83c\uddf4","\ud83c\uddeb\ud83c\uddf7","\ud83c\uddec\ud83c\udde6","\ud83c\uddec\ud83c\udde7","\ud83c\uddec\ud83c\udde9","\ud83c\uddec\ud83c\uddea","\ud83c\uddec\ud83c\uddeb","\ud83c\uddec\ud83c\uddec","\ud83c\uddec\ud83c\udded","\ud83c\uddec\ud83c\uddee","\ud83c\uddec\ud83c\uddf1","\ud83c\uddec\ud83c\uddf2","\ud83c\uddec\ud83c\uddf3","\ud83c\uddec\ud83c\uddf5","\ud83c\uddec\ud83c\uddf6","\ud83c\uddec\ud83c\uddf7","\ud83c\uddec\ud83c\uddf8","\ud83c\uddec\ud83c\uddf9","\ud83c\uddec\ud83c\uddfa","\ud83c\uddec\ud83c\uddfc","\ud83c\uddec\ud83c\uddfe","\ud83c\udded\ud83c\uddf0","\ud83c\udded\ud83c\uddf2","\ud83c\udded\ud83c\uddf3","\ud83c\udded\ud83c\uddf7","\ud83c\udded\ud83c\uddf9","\ud83c\udded\ud83c\uddfa","\ud83c\uddee\ud83c\udde8","\ud83c\uddee\ud83c\udde9","\ud83c\uddee\ud83c\uddea","\ud83c\uddee\ud83c\uddf1","\ud83c\uddee\ud83c\uddf2","\ud83c\uddee\ud83c\uddf3","\ud83c\uddee\ud83c\uddf4","\ud83c\uddee\ud83c\uddf6","\ud83c\uddee\ud83c\uddf7","\ud83c\uddee\ud83c\uddf8","\ud83c\uddee\ud83c\uddf9","\ud83c\uddef\ud83c\uddea","\ud83c\uddef\ud83c\uddf2","\ud83c\uddef\ud83c\uddf4","\ud83c\uddef\ud83c\uddf5","\ud83c\uddf0\ud83c\uddea","\ud83c\uddf0\ud83c\uddec","\ud83c\uddf0\ud83c\udded","\ud83c\uddf0\ud83c\uddee","\ud83c\uddf0\ud83c\uddf2","\ud83c\uddf0\ud83c\uddf3","\ud83c\uddf0\ud83c\uddf5","\ud83c\uddf0\ud83c\uddf7","\ud83c\uddf0\ud83c\uddfc","\ud83c\uddf0\ud83c\uddfe","\ud83c\uddf0\ud83c\uddff","\ud83c\uddf1\ud83c\udde6","\ud83c\uddf1\ud83c\udde7","\ud83c\uddf1\ud83c\udde8","\ud83c\uddf1\ud83c\uddee","\ud83c\uddf1\ud83c\uddf0","\ud83c\uddf1\ud83c\uddf7","\ud83c\uddf1\ud83c\uddf8","\ud83c\uddf1\ud83c\uddf9","\ud83c\uddf1\ud83c\uddfa","\ud83c\uddf1\ud83c\uddfb","\ud83c\uddf1\ud83c\uddfe","\ud83c\uddf2\ud83c\udde6","\ud83c\uddf2\ud83c\udde8","\ud83c\uddf2\ud83c\udde9","\ud83c\uddf2\ud83c\uddea","\ud83c\uddf2\ud83c\uddeb","\ud83c\uddf2\ud83c\uddec","\ud83c\uddf2\ud83c\udded","\ud83c\uddf2\ud83c\uddf0","\ud83c\uddf2\ud83c\uddf1","\ud83c\uddf2\ud83c\uddf2","\ud83c\uddf2\ud83c\uddf3","\ud83c\uddf2\ud83c\uddf4","\ud83c\uddf2\ud83c\uddf5","\ud83c\uddf2\ud83c\uddf6","\ud83c\uddf2\ud83c\uddf7","\ud83c\uddf2\ud83c\uddf8","\ud83c\uddf2\ud83c\uddf9","\ud83c\uddf2\ud83c\uddfa","\ud83c\uddf2\ud83c\uddfb","\ud83c\uddf2\ud83c\uddfc","\ud83c\uddf2\ud83c\uddfd","\ud83c\uddf2\ud83c\uddfe","\ud83c\uddf2\ud83c\uddff","\ud83c\uddf3\ud83c\udde6","\ud83c\uddf3\ud83c\udde8","\ud83c\uddf3\ud83c\uddea","\ud83c\uddf3\ud83c\uddeb","\ud83c\uddf3\ud83c\uddec","\ud83c\uddf3\ud83c\uddee","\ud83c\uddf3\ud83c\uddf1","\ud83c\uddf3\ud83c\uddf4","\ud83c\uddf3\ud83c\uddf5","\ud83c\uddf3\ud83c\uddf7","\ud83c\uddf3\ud83c\uddfa","\ud83c\uddf3\ud83c\uddff","\ud83c\uddf4\ud83c\uddf2","\ud83c\uddf5\ud83c\udde6","\ud83c\uddf5\ud83c\uddea","\ud83c\uddf5\ud83c\uddeb","\ud83c\uddf5\ud83c\uddec","\ud83c\uddf5\ud83c\udded","\ud83c\uddf5\ud83c\uddf0","\ud83c\uddf5\ud83c\uddf1","\ud83c\uddf5\ud83c\uddf2","\ud83c\uddf5\ud83c\uddf3","\ud83c\uddf5\ud83c\uddf7","\ud83c\uddf5\ud83c\uddf8","\ud83c\uddf5\ud83c\uddf9","\ud83c\uddf5\ud83c\uddfc","\ud83c\uddf5\ud83c\uddfe","\ud83c\uddf6\ud83c\udde6","\ud83c\uddf7\ud83c\uddea","\ud83c\uddf7\ud83c\uddf4","\ud83c\uddf7\ud83c\uddf8","\ud83c\uddf7\ud83c\uddfa","\ud83c\uddf7\ud83c\uddfc","\ud83c\uddf8\ud83c\udde6","\ud83c\uddf8\ud83c\udde7","\ud83c\uddf8\ud83c\udde8","\ud83c\uddf8\ud83c\udde9","\ud83c\uddf8\ud83c\uddea","\ud83c\uddf8\ud83c\uddec","\ud83c\uddf8\ud83c\udded","\ud83c\uddf8\ud83c\uddee","\ud83c\uddf8\ud83c\uddef","\ud83c\uddf8\ud83c\uddf0","\ud83c\uddf8\ud83c\uddf1","\ud83c\uddf8\ud83c\uddf2","\ud83c\uddf8\ud83c\uddf3","\ud83c\uddf8\ud83c\uddf4","\ud83c\uddf8\ud83c\uddf7","\ud83c\uddf8\ud83c\uddf8","\ud83c\uddf8\ud83c\uddf9","\ud83c\uddf8\ud83c\uddfb","\ud83c\uddf8\ud83c\uddfd","\ud83c\uddf8\ud83c\uddfe","\ud83c\uddf8\ud83c\uddff","\ud83c\uddf9\ud83c\udde6","\ud83c\uddf9\ud83c\udde8","\ud83c\uddf9\ud83c\udde9","\ud83c\uddf9\ud83c\uddeb","\ud83c\uddf9\ud83c\uddec","\ud83c\uddf9\ud83c\udded","\ud83c\uddf9\ud83c\uddef","\ud83c\uddf9\ud83c\uddf0","\ud83c\uddf9\ud83c\uddf1","\ud83c\uddf9\ud83c\uddf2","\ud83c\uddf9\ud83c\uddf3","\ud83c\uddf9\ud83c\uddf4","\ud83c\uddf9\ud83c\uddf7","\ud83c\uddf9\ud83c\uddf9","\ud83c\uddf9\ud83c\uddfb","\ud83c\uddf9\ud83c\uddfc","\ud83c\uddf9\ud83c\uddff","\ud83c\uddfa\ud83c\udde6","\ud83c\uddfa\ud83c\uddec","\ud83c\uddfa\ud83c\uddf2","\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\ud83c\uddf8","\ud83c\uddfa\ud83c\uddfe","\ud83c\uddfa\ud83c\uddff","\ud83c\uddfb\ud83c\udde6","\ud83c\uddfb\ud83c\udde8","\ud83c\uddfb\ud83c\uddea","\ud83c\uddfb\ud83c\uddec","\ud83c\uddfb\ud83c\uddee","\ud83c\uddfb\ud83c\uddf3","\ud83c\uddfb\ud83c\uddfa","\ud83c\uddfc\ud83c\uddeb","\ud83c\uddfc\ud83c\uddf8","\ud83c\uddfd\ud83c\uddf0","\ud83c\uddfe\ud83c\uddea","\ud83c\uddfe\ud83c\uddf9","\ud83c\uddff\ud83c\udde6","\ud83c\uddff\ud83c\uddf2","\ud83c\uddff\ud83c\uddfc"],W0}var H0,z0={};function K0(){if(H0)return z0;H0=1;var e=_Y();return z0.characters=e,z0.strings=["\u261d\ud83c\udffb","\u261d\ud83c\udffc","\u261d\ud83c\udffd","\u261d\ud83c\udffe","\u261d\ud83c\udfff","\u26f9\ud83c\udffb","\u26f9\ud83c\udffc","\u26f9\ud83c\udffd","\u26f9\ud83c\udffe","\u26f9\ud83c\udfff","\u270a\ud83c\udffb","\u270a\ud83c\udffc","\u270a\ud83c\udffd","\u270a\ud83c\udffe","\u270a\ud83c\udfff","\u270b\ud83c\udffb","\u270b\ud83c\udffc","\u270b\ud83c\udffd","\u270b\ud83c\udffe","\u270b\ud83c\udfff","\u270c\ud83c\udffb","\u270c\ud83c\udffc","\u270c\ud83c\udffd","\u270c\ud83c\udffe","\u270c\ud83c\udfff","\u270d\ud83c\udffb","\u270d\ud83c\udffc","\u270d\ud83c\udffd","\u270d\ud83c\udffe","\u270d\ud83c\udfff","\ud83c\udf85\ud83c\udffb","\ud83c\udf85\ud83c\udffc","\ud83c\udf85\ud83c\udffd","\ud83c\udf85\ud83c\udffe","\ud83c\udf85\ud83c\udfff","\ud83c\udfc2\ud83c\udffb","\ud83c\udfc2\ud83c\udffc","\ud83c\udfc2\ud83c\udffd","\ud83c\udfc2\ud83c\udffe","\ud83c\udfc2\ud83c\udfff","\ud83c\udfc3\ud83c\udffb","\ud83c\udfc3\ud83c\udffc","\ud83c\udfc3\ud83c\udffd","\ud83c\udfc3\ud83c\udffe","\ud83c\udfc3\ud83c\udfff","\ud83c\udfc4\ud83c\udffb","\ud83c\udfc4\ud83c\udffc","\ud83c\udfc4\ud83c\udffd","\ud83c\udfc4\ud83c\udffe","\ud83c\udfc4\ud83c\udfff","\ud83c\udfc7\ud83c\udffb","\ud83c\udfc7\ud83c\udffc","\ud83c\udfc7\ud83c\udffd","\ud83c\udfc7\ud83c\udffe","\ud83c\udfc7\ud83c\udfff","\ud83c\udfca\ud83c\udffb","\ud83c\udfca\ud83c\udffc","\ud83c\udfca\ud83c\udffd","\ud83c\udfca\ud83c\udffe","\ud83c\udfca\ud83c\udfff","\ud83c\udfcb\ud83c\udffb","\ud83c\udfcb\ud83c\udffc","\ud83c\udfcb\ud83c\udffd","\ud83c\udfcb\ud83c\udffe","\ud83c\udfcb\ud83c\udfff","\ud83c\udfcc\ud83c\udffb","\ud83c\udfcc\ud83c\udffc","\ud83c\udfcc\ud83c\udffd","\ud83c\udfcc\ud83c\udffe","\ud83c\udfcc\ud83c\udfff","\ud83d\udc42\ud83c\udffb","\ud83d\udc42\ud83c\udffc","\ud83d\udc42\ud83c\udffd","\ud83d\udc42\ud83c\udffe","\ud83d\udc42\ud83c\udfff","\ud83d\udc43\ud83c\udffb","\ud83d\udc43\ud83c\udffc","\ud83d\udc43\ud83c\udffd","\ud83d\udc43\ud83c\udffe","\ud83d\udc43\ud83c\udfff","\ud83d\udc46\ud83c\udffb","\ud83d\udc46\ud83c\udffc","\ud83d\udc46\ud83c\udffd","\ud83d\udc46\ud83c\udffe","\ud83d\udc46\ud83c\udfff","\ud83d\udc47\ud83c\udffb","\ud83d\udc47\ud83c\udffc","\ud83d\udc47\ud83c\udffd","\ud83d\udc47\ud83c\udffe","\ud83d\udc47\ud83c\udfff","\ud83d\udc48\ud83c\udffb","\ud83d\udc48\ud83c\udffc","\ud83d\udc48\ud83c\udffd","\ud83d\udc48\ud83c\udffe","\ud83d\udc48\ud83c\udfff","\ud83d\udc49\ud83c\udffb","\ud83d\udc49\ud83c\udffc","\ud83d\udc49\ud83c\udffd","\ud83d\udc49\ud83c\udffe","\ud83d\udc49\ud83c\udfff","\ud83d\udc4a\ud83c\udffb","\ud83d\udc4a\ud83c\udffc","\ud83d\udc4a\ud83c\udffd","\ud83d\udc4a\ud83c\udffe","\ud83d\udc4a\ud83c\udfff","\ud83d\udc4b\ud83c\udffb","\ud83d\udc4b\ud83c\udffc","\ud83d\udc4b\ud83c\udffd","\ud83d\udc4b\ud83c\udffe","\ud83d\udc4b\ud83c\udfff","\ud83d\udc4c\ud83c\udffb","\ud83d\udc4c\ud83c\udffc","\ud83d\udc4c\ud83c\udffd","\ud83d\udc4c\ud83c\udffe","\ud83d\udc4c\ud83c\udfff","\ud83d\udc4d\ud83c\udffb","\ud83d\udc4d\ud83c\udffc","\ud83d\udc4d\ud83c\udffd","\ud83d\udc4d\ud83c\udffe","\ud83d\udc4d\ud83c\udfff","\ud83d\udc4e\ud83c\udffb","\ud83d\udc4e\ud83c\udffc","\ud83d\udc4e\ud83c\udffd","\ud83d\udc4e\ud83c\udffe","\ud83d\udc4e\ud83c\udfff","\ud83d\udc4f\ud83c\udffb","\ud83d\udc4f\ud83c\udffc","\ud83d\udc4f\ud83c\udffd","\ud83d\udc4f\ud83c\udffe","\ud83d\udc4f\ud83c\udfff","\ud83d\udc50\ud83c\udffb","\ud83d\udc50\ud83c\udffc","\ud83d\udc50\ud83c\udffd","\ud83d\udc50\ud83c\udffe","\ud83d\udc50\ud83c\udfff","\ud83d\udc66\ud83c\udffb","\ud83d\udc66\ud83c\udffc","\ud83d\udc66\ud83c\udffd","\ud83d\udc66\ud83c\udffe","\ud83d\udc66\ud83c\udfff","\ud83d\udc67\ud83c\udffb","\ud83d\udc67\ud83c\udffc","\ud83d\udc67\ud83c\udffd","\ud83d\udc67\ud83c\udffe","\ud83d\udc67\ud83c\udfff","\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff","\ud83d\udc6b\ud83c\udffb","\ud83d\udc6b\ud83c\udffc","\ud83d\udc6b\ud83c\udffd","\ud83d\udc6b\ud83c\udffe","\ud83d\udc6b\ud83c\udfff","\ud83d\udc6c\ud83c\udffb","\ud83d\udc6c\ud83c\udffc","\ud83d\udc6c\ud83c\udffd","\ud83d\udc6c\ud83c\udffe","\ud83d\udc6c\ud83c\udfff","\ud83d\udc6d\ud83c\udffb","\ud83d\udc6d\ud83c\udffc","\ud83d\udc6d\ud83c\udffd","\ud83d\udc6d\ud83c\udffe","\ud83d\udc6d\ud83c\udfff","\ud83d\udc6e\ud83c\udffb","\ud83d\udc6e\ud83c\udffc","\ud83d\udc6e\ud83c\udffd","\ud83d\udc6e\ud83c\udffe","\ud83d\udc6e\ud83c\udfff","\ud83d\udc6f\ud83c\udffb","\ud83d\udc6f\ud83c\udffc","\ud83d\udc6f\ud83c\udffd","\ud83d\udc6f\ud83c\udffe","\ud83d\udc6f\ud83c\udfff","\ud83d\udc70\ud83c\udffb","\ud83d\udc70\ud83c\udffc","\ud83d\udc70\ud83c\udffd","\ud83d\udc70\ud83c\udffe","\ud83d\udc70\ud83c\udfff","\ud83d\udc71\ud83c\udffb","\ud83d\udc71\ud83c\udffc","\ud83d\udc71\ud83c\udffd","\ud83d\udc71\ud83c\udffe","\ud83d\udc71\ud83c\udfff","\ud83d\udc72\ud83c\udffb","\ud83d\udc72\ud83c\udffc","\ud83d\udc72\ud83c\udffd","\ud83d\udc72\ud83c\udffe","\ud83d\udc72\ud83c\udfff","\ud83d\udc73\ud83c\udffb","\ud83d\udc73\ud83c\udffc","\ud83d\udc73\ud83c\udffd","\ud83d\udc73\ud83c\udffe","\ud83d\udc73\ud83c\udfff","\ud83d\udc74\ud83c\udffb","\ud83d\udc74\ud83c\udffc","\ud83d\udc74\ud83c\udffd","\ud83d\udc74\ud83c\udffe","\ud83d\udc74\ud83c\udfff","\ud83d\udc75\ud83c\udffb","\ud83d\udc75\ud83c\udffc","\ud83d\udc75\ud83c\udffd","\ud83d\udc75\ud83c\udffe","\ud83d\udc75\ud83c\udfff","\ud83d\udc76\ud83c\udffb","\ud83d\udc76\ud83c\udffc","\ud83d\udc76\ud83c\udffd","\ud83d\udc76\ud83c\udffe","\ud83d\udc76\ud83c\udfff","\ud83d\udc77\ud83c\udffb","\ud83d\udc77\ud83c\udffc","\ud83d\udc77\ud83c\udffd","\ud83d\udc77\ud83c\udffe","\ud83d\udc77\ud83c\udfff","\ud83d\udc78\ud83c\udffb","\ud83d\udc78\ud83c\udffc","\ud83d\udc78\ud83c\udffd","\ud83d\udc78\ud83c\udffe","\ud83d\udc78\ud83c\udfff","\ud83d\udc7c\ud83c\udffb","\ud83d\udc7c\ud83c\udffc","\ud83d\udc7c\ud83c\udffd","\ud83d\udc7c\ud83c\udffe","\ud83d\udc7c\ud83c\udfff","\ud83d\udc81\ud83c\udffb","\ud83d\udc81\ud83c\udffc","\ud83d\udc81\ud83c\udffd","\ud83d\udc81\ud83c\udffe","\ud83d\udc81\ud83c\udfff","\ud83d\udc82\ud83c\udffb","\ud83d\udc82\ud83c\udffc","\ud83d\udc82\ud83c\udffd","\ud83d\udc82\ud83c\udffe","\ud83d\udc82\ud83c\udfff","\ud83d\udc83\ud83c\udffb","\ud83d\udc83\ud83c\udffc","\ud83d\udc83\ud83c\udffd","\ud83d\udc83\ud83c\udffe","\ud83d\udc83\ud83c\udfff","\ud83d\udc85\ud83c\udffb","\ud83d\udc85\ud83c\udffc","\ud83d\udc85\ud83c\udffd","\ud83d\udc85\ud83c\udffe","\ud83d\udc85\ud83c\udfff","\ud83d\udc86\ud83c\udffb","\ud83d\udc86\ud83c\udffc","\ud83d\udc86\ud83c\udffd","\ud83d\udc86\ud83c\udffe","\ud83d\udc86\ud83c\udfff","\ud83d\udc87\ud83c\udffb","\ud83d\udc87\ud83c\udffc","\ud83d\udc87\ud83c\udffd","\ud83d\udc87\ud83c\udffe","\ud83d\udc87\ud83c\udfff","\ud83d\udc8f\ud83c\udffb","\ud83d\udc8f\ud83c\udffc","\ud83d\udc8f\ud83c\udffd","\ud83d\udc8f\ud83c\udffe","\ud83d\udc8f\ud83c\udfff","\ud83d\udc91\ud83c\udffb","\ud83d\udc91\ud83c\udffc","\ud83d\udc91\ud83c\udffd","\ud83d\udc91\ud83c\udffe","\ud83d\udc91\ud83c\udfff","\ud83d\udcaa\ud83c\udffb","\ud83d\udcaa\ud83c\udffc","\ud83d\udcaa\ud83c\udffd","\ud83d\udcaa\ud83c\udffe","\ud83d\udcaa\ud83c\udfff","\ud83d\udd74\ud83c\udffb","\ud83d\udd74\ud83c\udffc","\ud83d\udd74\ud83c\udffd","\ud83d\udd74\ud83c\udffe","\ud83d\udd74\ud83c\udfff","\ud83d\udd75\ud83c\udffb","\ud83d\udd75\ud83c\udffc","\ud83d\udd75\ud83c\udffd","\ud83d\udd75\ud83c\udffe","\ud83d\udd75\ud83c\udfff","\ud83d\udd7a\ud83c\udffb","\ud83d\udd7a\ud83c\udffc","\ud83d\udd7a\ud83c\udffd","\ud83d\udd7a\ud83c\udffe","\ud83d\udd7a\ud83c\udfff","\ud83d\udd90\ud83c\udffb","\ud83d\udd90\ud83c\udffc","\ud83d\udd90\ud83c\udffd","\ud83d\udd90\ud83c\udffe","\ud83d\udd90\ud83c\udfff","\ud83d\udd95\ud83c\udffb","\ud83d\udd95\ud83c\udffc","\ud83d\udd95\ud83c\udffd","\ud83d\udd95\ud83c\udffe","\ud83d\udd95\ud83c\udfff","\ud83d\udd96\ud83c\udffb","\ud83d\udd96\ud83c\udffc","\ud83d\udd96\ud83c\udffd","\ud83d\udd96\ud83c\udffe","\ud83d\udd96\ud83c\udfff","\ud83d\ude45\ud83c\udffb","\ud83d\ude45\ud83c\udffc","\ud83d\ude45\ud83c\udffd","\ud83d\ude45\ud83c\udffe","\ud83d\ude45\ud83c\udfff","\ud83d\ude46\ud83c\udffb","\ud83d\ude46\ud83c\udffc","\ud83d\ude46\ud83c\udffd","\ud83d\ude46\ud83c\udffe","\ud83d\ude46\ud83c\udfff","\ud83d\ude47\ud83c\udffb","\ud83d\ude47\ud83c\udffc","\ud83d\ude47\ud83c\udffd","\ud83d\ude47\ud83c\udffe","\ud83d\ude47\ud83c\udfff","\ud83d\ude4b\ud83c\udffb","\ud83d\ude4b\ud83c\udffc","\ud83d\ude4b\ud83c\udffd","\ud83d\ude4b\ud83c\udffe","\ud83d\ude4b\ud83c\udfff","\ud83d\ude4c\ud83c\udffb","\ud83d\ude4c\ud83c\udffc","\ud83d\ude4c\ud83c\udffd","\ud83d\ude4c\ud83c\udffe","\ud83d\ude4c\ud83c\udfff","\ud83d\ude4d\ud83c\udffb","\ud83d\ude4d\ud83c\udffc","\ud83d\ude4d\ud83c\udffd","\ud83d\ude4d\ud83c\udffe","\ud83d\ude4d\ud83c\udfff","\ud83d\ude4e\ud83c\udffb","\ud83d\ude4e\ud83c\udffc","\ud83d\ude4e\ud83c\udffd","\ud83d\ude4e\ud83c\udffe","\ud83d\ude4e\ud83c\udfff","\ud83d\ude4f\ud83c\udffb","\ud83d\ude4f\ud83c\udffc","\ud83d\ude4f\ud83c\udffd","\ud83d\ude4f\ud83c\udffe","\ud83d\ude4f\ud83c\udfff","\ud83d\udea3\ud83c\udffb","\ud83d\udea3\ud83c\udffc","\ud83d\udea3\ud83c\udffd","\ud83d\udea3\ud83c\udffe","\ud83d\udea3\ud83c\udfff","\ud83d\udeb4\ud83c\udffb","\ud83d\udeb4\ud83c\udffc","\ud83d\udeb4\ud83c\udffd","\ud83d\udeb4\ud83c\udffe","\ud83d\udeb4\ud83c\udfff","\ud83d\udeb5\ud83c\udffb","\ud83d\udeb5\ud83c\udffc","\ud83d\udeb5\ud83c\udffd","\ud83d\udeb5\ud83c\udffe","\ud83d\udeb5\ud83c\udfff","\ud83d\udeb6\ud83c\udffb","\ud83d\udeb6\ud83c\udffc","\ud83d\udeb6\ud83c\udffd","\ud83d\udeb6\ud83c\udffe","\ud83d\udeb6\ud83c\udfff","\ud83d\udec0\ud83c\udffb","\ud83d\udec0\ud83c\udffc","\ud83d\udec0\ud83c\udffd","\ud83d\udec0\ud83c\udffe","\ud83d\udec0\ud83c\udfff","\ud83d\udecc\ud83c\udffb","\ud83d\udecc\ud83c\udffc","\ud83d\udecc\ud83c\udffd","\ud83d\udecc\ud83c\udffe","\ud83d\udecc\ud83c\udfff","\ud83e\udd0c\ud83c\udffb","\ud83e\udd0c\ud83c\udffc","\ud83e\udd0c\ud83c\udffd","\ud83e\udd0c\ud83c\udffe","\ud83e\udd0c\ud83c\udfff","\ud83e\udd0f\ud83c\udffb","\ud83e\udd0f\ud83c\udffc","\ud83e\udd0f\ud83c\udffd","\ud83e\udd0f\ud83c\udffe","\ud83e\udd0f\ud83c\udfff","\ud83e\udd18\ud83c\udffb","\ud83e\udd18\ud83c\udffc","\ud83e\udd18\ud83c\udffd","\ud83e\udd18\ud83c\udffe","\ud83e\udd18\ud83c\udfff","\ud83e\udd19\ud83c\udffb","\ud83e\udd19\ud83c\udffc","\ud83e\udd19\ud83c\udffd","\ud83e\udd19\ud83c\udffe","\ud83e\udd19\ud83c\udfff","\ud83e\udd1a\ud83c\udffb","\ud83e\udd1a\ud83c\udffc","\ud83e\udd1a\ud83c\udffd","\ud83e\udd1a\ud83c\udffe","\ud83e\udd1a\ud83c\udfff","\ud83e\udd1b\ud83c\udffb","\ud83e\udd1b\ud83c\udffc","\ud83e\udd1b\ud83c\udffd","\ud83e\udd1b\ud83c\udffe","\ud83e\udd1b\ud83c\udfff","\ud83e\udd1c\ud83c\udffb","\ud83e\udd1c\ud83c\udffc","\ud83e\udd1c\ud83c\udffd","\ud83e\udd1c\ud83c\udffe","\ud83e\udd1c\ud83c\udfff","\ud83e\udd1d\ud83c\udffb","\ud83e\udd1d\ud83c\udffc","\ud83e\udd1d\ud83c\udffd","\ud83e\udd1d\ud83c\udffe","\ud83e\udd1d\ud83c\udfff","\ud83e\udd1e\ud83c\udffb","\ud83e\udd1e\ud83c\udffc","\ud83e\udd1e\ud83c\udffd","\ud83e\udd1e\ud83c\udffe","\ud83e\udd1e\ud83c\udfff","\ud83e\udd1f\ud83c\udffb","\ud83e\udd1f\ud83c\udffc","\ud83e\udd1f\ud83c\udffd","\ud83e\udd1f\ud83c\udffe","\ud83e\udd1f\ud83c\udfff","\ud83e\udd26\ud83c\udffb","\ud83e\udd26\ud83c\udffc","\ud83e\udd26\ud83c\udffd","\ud83e\udd26\ud83c\udffe","\ud83e\udd26\ud83c\udfff","\ud83e\udd30\ud83c\udffb","\ud83e\udd30\ud83c\udffc","\ud83e\udd30\ud83c\udffd","\ud83e\udd30\ud83c\udffe","\ud83e\udd30\ud83c\udfff","\ud83e\udd31\ud83c\udffb","\ud83e\udd31\ud83c\udffc","\ud83e\udd31\ud83c\udffd","\ud83e\udd31\ud83c\udffe","\ud83e\udd31\ud83c\udfff","\ud83e\udd32\ud83c\udffb","\ud83e\udd32\ud83c\udffc","\ud83e\udd32\ud83c\udffd","\ud83e\udd32\ud83c\udffe","\ud83e\udd32\ud83c\udfff","\ud83e\udd33\ud83c\udffb","\ud83e\udd33\ud83c\udffc","\ud83e\udd33\ud83c\udffd","\ud83e\udd33\ud83c\udffe","\ud83e\udd33\ud83c\udfff","\ud83e\udd34\ud83c\udffb","\ud83e\udd34\ud83c\udffc","\ud83e\udd34\ud83c\udffd","\ud83e\udd34\ud83c\udffe","\ud83e\udd34\ud83c\udfff","\ud83e\udd35\ud83c\udffb","\ud83e\udd35\ud83c\udffc","\ud83e\udd35\ud83c\udffd","\ud83e\udd35\ud83c\udffe","\ud83e\udd35\ud83c\udfff","\ud83e\udd36\ud83c\udffb","\ud83e\udd36\ud83c\udffc","\ud83e\udd36\ud83c\udffd","\ud83e\udd36\ud83c\udffe","\ud83e\udd36\ud83c\udfff","\ud83e\udd37\ud83c\udffb","\ud83e\udd37\ud83c\udffc","\ud83e\udd37\ud83c\udffd","\ud83e\udd37\ud83c\udffe","\ud83e\udd37\ud83c\udfff","\ud83e\udd38\ud83c\udffb","\ud83e\udd38\ud83c\udffc","\ud83e\udd38\ud83c\udffd","\ud83e\udd38\ud83c\udffe","\ud83e\udd38\ud83c\udfff","\ud83e\udd39\ud83c\udffb","\ud83e\udd39\ud83c\udffc","\ud83e\udd39\ud83c\udffd","\ud83e\udd39\ud83c\udffe","\ud83e\udd39\ud83c\udfff","\ud83e\udd3c\ud83c\udffb","\ud83e\udd3c\ud83c\udffc","\ud83e\udd3c\ud83c\udffd","\ud83e\udd3c\ud83c\udffe","\ud83e\udd3c\ud83c\udfff","\ud83e\udd3d\ud83c\udffb","\ud83e\udd3d\ud83c\udffc","\ud83e\udd3d\ud83c\udffd","\ud83e\udd3d\ud83c\udffe","\ud83e\udd3d\ud83c\udfff","\ud83e\udd3e\ud83c\udffb","\ud83e\udd3e\ud83c\udffc","\ud83e\udd3e\ud83c\udffd","\ud83e\udd3e\ud83c\udffe","\ud83e\udd3e\ud83c\udfff","\ud83e\udd77\ud83c\udffb","\ud83e\udd77\ud83c\udffc","\ud83e\udd77\ud83c\udffd","\ud83e\udd77\ud83c\udffe","\ud83e\udd77\ud83c\udfff","\ud83e\uddb5\ud83c\udffb","\ud83e\uddb5\ud83c\udffc","\ud83e\uddb5\ud83c\udffd","\ud83e\uddb5\ud83c\udffe","\ud83e\uddb5\ud83c\udfff","\ud83e\uddb6\ud83c\udffb","\ud83e\uddb6\ud83c\udffc","\ud83e\uddb6\ud83c\udffd","\ud83e\uddb6\ud83c\udffe","\ud83e\uddb6\ud83c\udfff","\ud83e\uddb8\ud83c\udffb","\ud83e\uddb8\ud83c\udffc","\ud83e\uddb8\ud83c\udffd","\ud83e\uddb8\ud83c\udffe","\ud83e\uddb8\ud83c\udfff","\ud83e\uddb9\ud83c\udffb","\ud83e\uddb9\ud83c\udffc","\ud83e\uddb9\ud83c\udffd","\ud83e\uddb9\ud83c\udffe","\ud83e\uddb9\ud83c\udfff","\ud83e\uddbb\ud83c\udffb","\ud83e\uddbb\ud83c\udffc","\ud83e\uddbb\ud83c\udffd","\ud83e\uddbb\ud83c\udffe","\ud83e\uddbb\ud83c\udfff","\ud83e\uddcd\ud83c\udffb","\ud83e\uddcd\ud83c\udffc","\ud83e\uddcd\ud83c\udffd","\ud83e\uddcd\ud83c\udffe","\ud83e\uddcd\ud83c\udfff","\ud83e\uddce\ud83c\udffb","\ud83e\uddce\ud83c\udffc","\ud83e\uddce\ud83c\udffd","\ud83e\uddce\ud83c\udffe","\ud83e\uddce\ud83c\udfff","\ud83e\uddcf\ud83c\udffb","\ud83e\uddcf\ud83c\udffc","\ud83e\uddcf\ud83c\udffd","\ud83e\uddcf\ud83c\udffe","\ud83e\uddcf\ud83c\udfff","\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff","\ud83e\uddd2\ud83c\udffb","\ud83e\uddd2\ud83c\udffc","\ud83e\uddd2\ud83c\udffd","\ud83e\uddd2\ud83c\udffe","\ud83e\uddd2\ud83c\udfff","\ud83e\uddd3\ud83c\udffb","\ud83e\uddd3\ud83c\udffc","\ud83e\uddd3\ud83c\udffd","\ud83e\uddd3\ud83c\udffe","\ud83e\uddd3\ud83c\udfff","\ud83e\uddd4\ud83c\udffb","\ud83e\uddd4\ud83c\udffc","\ud83e\uddd4\ud83c\udffd","\ud83e\uddd4\ud83c\udffe","\ud83e\uddd4\ud83c\udfff","\ud83e\uddd5\ud83c\udffb","\ud83e\uddd5\ud83c\udffc","\ud83e\uddd5\ud83c\udffd","\ud83e\uddd5\ud83c\udffe","\ud83e\uddd5\ud83c\udfff","\ud83e\uddd6\ud83c\udffb","\ud83e\uddd6\ud83c\udffc","\ud83e\uddd6\ud83c\udffd","\ud83e\uddd6\ud83c\udffe","\ud83e\uddd6\ud83c\udfff","\ud83e\uddd7\ud83c\udffb","\ud83e\uddd7\ud83c\udffc","\ud83e\uddd7\ud83c\udffd","\ud83e\uddd7\ud83c\udffe","\ud83e\uddd7\ud83c\udfff","\ud83e\uddd8\ud83c\udffb","\ud83e\uddd8\ud83c\udffc","\ud83e\uddd8\ud83c\udffd","\ud83e\uddd8\ud83c\udffe","\ud83e\uddd8\ud83c\udfff","\ud83e\uddd9\ud83c\udffb","\ud83e\uddd9\ud83c\udffc","\ud83e\uddd9\ud83c\udffd","\ud83e\uddd9\ud83c\udffe","\ud83e\uddd9\ud83c\udfff","\ud83e\uddda\ud83c\udffb","\ud83e\uddda\ud83c\udffc","\ud83e\uddda\ud83c\udffd","\ud83e\uddda\ud83c\udffe","\ud83e\uddda\ud83c\udfff","\ud83e\udddb\ud83c\udffb","\ud83e\udddb\ud83c\udffc","\ud83e\udddb\ud83c\udffd","\ud83e\udddb\ud83c\udffe","\ud83e\udddb\ud83c\udfff","\ud83e\udddc\ud83c\udffb","\ud83e\udddc\ud83c\udffc","\ud83e\udddc\ud83c\udffd","\ud83e\udddc\ud83c\udffe","\ud83e\udddc\ud83c\udfff","\ud83e\udddd\ud83c\udffb","\ud83e\udddd\ud83c\udffc","\ud83e\udddd\ud83c\udffd","\ud83e\udddd\ud83c\udffe","\ud83e\udddd\ud83c\udfff","\ud83e\udec3\ud83c\udffb","\ud83e\udec3\ud83c\udffc","\ud83e\udec3\ud83c\udffd","\ud83e\udec3\ud83c\udffe","\ud83e\udec3\ud83c\udfff","\ud83e\udec4\ud83c\udffb","\ud83e\udec4\ud83c\udffc","\ud83e\udec4\ud83c\udffd","\ud83e\udec4\ud83c\udffe","\ud83e\udec4\ud83c\udfff","\ud83e\udec5\ud83c\udffb","\ud83e\udec5\ud83c\udffc","\ud83e\udec5\ud83c\udffd","\ud83e\udec5\ud83c\udffe","\ud83e\udec5\ud83c\udfff","\ud83e\udef0\ud83c\udffb","\ud83e\udef0\ud83c\udffc","\ud83e\udef0\ud83c\udffd","\ud83e\udef0\ud83c\udffe","\ud83e\udef0\ud83c\udfff","\ud83e\udef1\ud83c\udffb","\ud83e\udef1\ud83c\udffc","\ud83e\udef1\ud83c\udffd","\ud83e\udef1\ud83c\udffe","\ud83e\udef1\ud83c\udfff","\ud83e\udef2\ud83c\udffb","\ud83e\udef2\ud83c\udffc","\ud83e\udef2\ud83c\udffd","\ud83e\udef2\ud83c\udffe","\ud83e\udef2\ud83c\udfff","\ud83e\udef3\ud83c\udffb","\ud83e\udef3\ud83c\udffc","\ud83e\udef3\ud83c\udffd","\ud83e\udef3\ud83c\udffe","\ud83e\udef3\ud83c\udfff","\ud83e\udef4\ud83c\udffb","\ud83e\udef4\ud83c\udffc","\ud83e\udef4\ud83c\udffd","\ud83e\udef4\ud83c\udffe","\ud83e\udef4\ud83c\udfff","\ud83e\udef5\ud83c\udffb","\ud83e\udef5\ud83c\udffc","\ud83e\udef5\ud83c\udffd","\ud83e\udef5\ud83c\udffe","\ud83e\udef5\ud83c\udfff","\ud83e\udef6\ud83c\udffb","\ud83e\udef6\ud83c\udffc","\ud83e\udef6\ud83c\udffd","\ud83e\udef6\ud83c\udffe","\ud83e\udef6\ud83c\udfff","\ud83e\udef7\ud83c\udffb","\ud83e\udef7\ud83c\udffc","\ud83e\udef7\ud83c\udffd","\ud83e\udef7\ud83c\udffe","\ud83e\udef7\ud83c\udfff","\ud83e\udef8\ud83c\udffb","\ud83e\udef8\ud83c\udffc","\ud83e\udef8\ud83c\udffd","\ud83e\udef8\ud83c\udffe","\ud83e\udef8\ud83c\udfff"],z0}var X0,J0={};function Y0(){if(X0)return J0;X0=1;var e=_Y();return J0.characters=e,J0.strings=["\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc73\udb40\udc63\udb40\udc74\udb40\udc7f","\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc77\udb40\udc6c\udb40\udc73\udb40\udc7f"],J0}var $0,Q0={};function Z0(){if($0)return Q0;$0=1;var e=_Y();return Q0.characters=e,Q0.strings=["\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68","\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68","\ud83d\udc68\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc68","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc69","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69","\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1","\ud83e\uddd1\u200d\ud83e\uddd1\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd1\u200d\ud83e\uddd2\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd2\u200d\ud83e\uddd2","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffe","\ud83c\udfc3\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u27a1\ufe0f","\ud83d\udc68\u200d\u2695\ufe0f","\ud83d\udc68\u200d\u2696\ufe0f","\ud83d\udc68\u200d\u2708\ufe0f","\ud83d\udc68\u200d\ud83c\udf3e","\ud83d\udc68\u200d\ud83c\udf73","\ud83d\udc68\u200d\ud83c\udf7c","\ud83d\udc68\u200d\ud83c\udf93","\ud83d\udc68\u200d\ud83c\udfa4","\ud83d\udc68\u200d\ud83c\udfa8","\ud83d\udc68\u200d\ud83c\udfeb","\ud83d\udc68\u200d\ud83c\udfed","\ud83d\udc68\u200d\ud83d\udcbb","\ud83d\udc68\u200d\ud83d\udcbc","\ud83d\udc68\u200d\ud83d\udd27","\ud83d\udc68\u200d\ud83d\udd2c","\ud83d\udc68\u200d\ud83d\ude80","\ud83d\udc68\u200d\ud83d\ude92","\ud83d\udc68\u200d\ud83e\uddaf","\ud83d\udc68\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\u200d\ud83e\uddbc","\ud83d\udc68\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\u200d\ud83e\uddbd","\ud83d\udc68\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffb\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffb\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffc\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffc\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffd\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffd\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffe\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffe\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udfff\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udfff\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\u200d\u2695\ufe0f","\ud83d\udc69\u200d\u2696\ufe0f","\ud83d\udc69\u200d\u2708\ufe0f","\ud83d\udc69\u200d\ud83c\udf3e","\ud83d\udc69\u200d\ud83c\udf73","\ud83d\udc69\u200d\ud83c\udf7c","\ud83d\udc69\u200d\ud83c\udf93","\ud83d\udc69\u200d\ud83c\udfa4","\ud83d\udc69\u200d\ud83c\udfa8","\ud83d\udc69\u200d\ud83c\udfeb","\ud83d\udc69\u200d\ud83c\udfed","\ud83d\udc69\u200d\ud83d\udcbb","\ud83d\udc69\u200d\ud83d\udcbc","\ud83d\udc69\u200d\ud83d\udd27","\ud83d\udc69\u200d\ud83d\udd2c","\ud83d\udc69\u200d\ud83d\ude80","\ud83d\udc69\u200d\ud83d\ude92","\ud83d\udc69\u200d\ud83e\uddaf","\ud83d\udc69\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\u200d\ud83e\uddbc","\ud83d\udc69\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\u200d\ud83e\uddbd","\ud83d\udc69\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffb\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffb\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffc\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffc\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffd\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffd\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffe\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffe\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udfff\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udfff\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udeb6\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u27a1\ufe0f","\ud83e\uddce\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\u2695\ufe0f","\ud83e\uddd1\u200d\u2696\ufe0f","\ud83e\uddd1\u200d\u2708\ufe0f","\ud83e\uddd1\u200d\ud83c\udf3e","\ud83e\uddd1\u200d\ud83c\udf73","\ud83e\uddd1\u200d\ud83c\udf7c","\ud83e\uddd1\u200d\ud83c\udf84","\ud83e\uddd1\u200d\ud83c\udf93","\ud83e\uddd1\u200d\ud83c\udfa4","\ud83e\uddd1\u200d\ud83c\udfa8","\ud83e\uddd1\u200d\ud83c\udfeb","\ud83e\uddd1\u200d\ud83c\udfed","\ud83e\uddd1\u200d\ud83d\udcbb","\ud83e\uddd1\u200d\ud83d\udcbc","\ud83e\uddd1\u200d\ud83d\udd27","\ud83e\uddd1\u200d\ud83d\udd2c","\ud83e\uddd1\u200d\ud83d\ude80","\ud83e\uddd1\u200d\ud83d\ude92","\ud83e\uddd1\u200d\ud83e\uddaf","\ud83e\uddd1\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\ud83e\uddbc","\ud83e\uddd1\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\ud83e\uddbd","\ud83e\uddd1\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\u26f9\ud83c\udffb\u200d\u2640\ufe0f","\u26f9\ud83c\udffb\u200d\u2642\ufe0f","\u26f9\ud83c\udffc\u200d\u2640\ufe0f","\u26f9\ud83c\udffc\u200d\u2642\ufe0f","\u26f9\ud83c\udffd\u200d\u2640\ufe0f","\u26f9\ud83c\udffd\u200d\u2642\ufe0f","\u26f9\ud83c\udffe\u200d\u2640\ufe0f","\u26f9\ud83c\udffe\u200d\u2642\ufe0f","\u26f9\ud83c\udfff\u200d\u2640\ufe0f","\u26f9\ud83c\udfff\u200d\u2642\ufe0f","\u26f9\ufe0f\u200d\u2640\ufe0f","\u26f9\ufe0f\u200d\u2642\ufe0f","\ud83c\udfc3\u200d\u2640\ufe0f","\ud83c\udfc3\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\u200d\u2642\ufe0f","\ud83c\udfc3\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc4\u200d\u2640\ufe0f","\ud83c\udfc4\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfca\u200d\u2640\ufe0f","\ud83c\udfca\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcb\ufe0f\u200d\u2640\ufe0f","\ud83c\udfcb\ufe0f\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcc\ufe0f\u200d\u2640\ufe0f","\ud83c\udfcc\ufe0f\u200d\u2642\ufe0f","\ud83d\udc6e\u200d\u2640\ufe0f","\ud83d\udc6e\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc6f\u200d\u2640\ufe0f","\ud83d\udc6f\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc70\u200d\u2640\ufe0f","\ud83d\udc70\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc71\u200d\u2640\ufe0f","\ud83d\udc71\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc73\u200d\u2640\ufe0f","\ud83d\udc73\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc77\u200d\u2640\ufe0f","\ud83d\udc77\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc81\u200d\u2640\ufe0f","\ud83d\udc81\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc82\u200d\u2640\ufe0f","\ud83d\udc82\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc86\u200d\u2640\ufe0f","\ud83d\udc86\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc87\u200d\u2640\ufe0f","\ud83d\udc87\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udd75\ufe0f\u200d\u2640\ufe0f","\ud83d\udd75\ufe0f\u200d\u2642\ufe0f","\ud83d\ude45\u200d\u2640\ufe0f","\ud83d\ude45\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude46\u200d\u2640\ufe0f","\ud83d\ude46\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude47\u200d\u2640\ufe0f","\ud83d\ude47\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4b\u200d\u2640\ufe0f","\ud83d\ude4b\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4d\u200d\u2640\ufe0f","\ud83d\ude4d\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4e\u200d\u2640\ufe0f","\ud83d\ude4e\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udea3\u200d\u2640\ufe0f","\ud83d\udea3\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb4\u200d\u2640\ufe0f","\ud83d\udeb4\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb5\u200d\u2640\ufe0f","\ud83d\udeb5\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb6\u200d\u2640\ufe0f","\ud83d\udeb6\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\u200d\u2642\ufe0f","\ud83d\udeb6\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\udd26\u200d\u2640\ufe0f","\ud83e\udd26\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd35\u200d\u2640\ufe0f","\ud83e\udd35\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd37\u200d\u2640\ufe0f","\ud83e\udd37\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd38\u200d\u2640\ufe0f","\ud83e\udd38\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd39\u200d\u2640\ufe0f","\ud83e\udd39\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3c\u200d\u2640\ufe0f","\ud83e\udd3c\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3d\u200d\u2640\ufe0f","\ud83e\udd3d\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3e\u200d\u2640\ufe0f","\ud83e\udd3e\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddb8\u200d\u2640\ufe0f","\ud83e\uddb8\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddb9\u200d\u2640\ufe0f","\ud83e\uddb9\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddcd\u200d\u2640\ufe0f","\ud83e\uddcd\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddce\u200d\u2640\ufe0f","\ud83e\uddce\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\u200d\u2642\ufe0f","\ud83e\uddce\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddcf\u200d\u2640\ufe0f","\ud83e\uddcf\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd4\u200d\u2640\ufe0f","\ud83e\uddd4\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd6\u200d\u2640\ufe0f","\ud83e\uddd6\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd7\u200d\u2640\ufe0f","\ud83e\uddd7\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd8\u200d\u2640\ufe0f","\ud83e\uddd8\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd9\u200d\u2640\ufe0f","\ud83e\uddd9\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddda\u200d\u2640\ufe0f","\ud83e\uddda\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddb\u200d\u2640\ufe0f","\ud83e\udddb\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddc\u200d\u2640\ufe0f","\ud83e\udddc\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddd\u200d\u2640\ufe0f","\ud83e\udddd\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddde\u200d\u2640\ufe0f","\ud83e\uddde\u200d\u2642\ufe0f","\ud83e\udddf\u200d\u2640\ufe0f","\ud83e\udddf\u200d\u2642\ufe0f","\ud83d\udc68\u200d\ud83e\uddb0","\ud83d\udc68\u200d\ud83e\uddb1","\ud83d\udc68\u200d\ud83e\uddb2","\ud83d\udc68\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb3","\ud83d\udc69\u200d\ud83e\uddb0","\ud83d\udc69\u200d\ud83e\uddb1","\ud83d\udc69\u200d\ud83e\uddb2","\ud83d\udc69\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb3","\ud83e\uddd1\u200d\ud83e\uddb0","\ud83e\uddd1\u200d\ud83e\uddb1","\ud83e\uddd1\u200d\ud83e\uddb2","\ud83e\uddd1\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb3","\u26d3\ufe0f\u200d\ud83d\udca5","\u2764\ufe0f\u200d\ud83d\udd25","\u2764\ufe0f\u200d\ud83e\ude79","\ud83c\udf44\u200d\ud83d\udfeb","\ud83c\udf4b\u200d\ud83d\udfe9","\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200d\ud83c\udf08","\ud83c\udff4\u200d\u2620\ufe0f","\ud83d\udc08\u200d\u2b1b","\ud83d\udc15\u200d\ud83e\uddba","\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200d\ud83d\udd25","\ud83d\udc3b\u200d\u2744\ufe0f","\ud83d\udc41\ufe0f\u200d\ud83d\udde8\ufe0f","\ud83d\ude2e\u200d\ud83d\udca8","\ud83d\ude35\u200d\ud83d\udcab","\ud83d\ude36\u200d\ud83c\udf2b\ufe0f","\ud83d\ude42\u200d\u2194\ufe0f","\ud83d\ude42\u200d\u2195\ufe0f","\ud83e\uddd1\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe"],Q0}var e2,t2={};function r2(){if(e2)return t2;e2=1;var e=_Y(9200,9203,9855,9875,9889,9934,9940,9962,9973,9978,9981,9989,10024,10060,10062,10071,10160,10175,11088,11093,126980,127183,127374,127489,127514,127535,127988,128064,128378,128420,128716,129008,129736);return e.addRange(8986,8987).addRange(9193,9196).addRange(9725,9726).addRange(9748,9749).addRange(9800,9811).addRange(9898,9899).addRange(9917,9918).addRange(9924,9925).addRange(9970,9971).addRange(9994,9995).addRange(10067,10069).addRange(10133,10135).addRange(11035,11036).addRange(127377,127386).addRange(127538,127542).addRange(127544,127546).addRange(127568,127569).addRange(127744,127776).addRange(127789,127797).addRange(127799,127868).addRange(127870,127891).addRange(127904,127946).addRange(127951,127955).addRange(127968,127984).addRange(127992,128062).addRange(128066,128252).addRange(128255,128317).addRange(128331,128334).addRange(128336,128359).addRange(128405,128406).addRange(128507,128591).addRange(128640,128709).addRange(128720,128722).addRange(128725,128728).addRange(128732,128735).addRange(128747,128748).addRange(128756,128764).addRange(128992,129003).addRange(129292,129338).addRange(129340,129349).addRange(129351,129535).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784),t2.characters=e,t2.strings=["#\ufe0f\u20e3","*\ufe0f\u20e3","0\ufe0f\u20e3","1\ufe0f\u20e3","2\ufe0f\u20e3","3\ufe0f\u20e3","4\ufe0f\u20e3","5\ufe0f\u20e3","6\ufe0f\u20e3","7\ufe0f\u20e3","8\ufe0f\u20e3","9\ufe0f\u20e3","\xa9\ufe0f","\xae\ufe0f","\u203c\ufe0f","\u2049\ufe0f","\u2122\ufe0f","\u2139\ufe0f","\u2194\ufe0f","\u2195\ufe0f","\u2196\ufe0f","\u2197\ufe0f","\u2198\ufe0f","\u2199\ufe0f","\u21a9\ufe0f","\u21aa\ufe0f","\u2328\ufe0f","\u23cf\ufe0f","\u23ed\ufe0f","\u23ee\ufe0f","\u23ef\ufe0f","\u23f1\ufe0f","\u23f2\ufe0f","\u23f8\ufe0f","\u23f9\ufe0f","\u23fa\ufe0f","\u24c2\ufe0f","\u25aa\ufe0f","\u25ab\ufe0f","\u25b6\ufe0f","\u25c0\ufe0f","\u25fb\ufe0f","\u25fc\ufe0f","\u2600\ufe0f","\u2601\ufe0f","\u2602\ufe0f","\u2603\ufe0f","\u2604\ufe0f","\u260e\ufe0f","\u2611\ufe0f","\u2618\ufe0f","\u261d\ud83c\udffb","\u261d\ud83c\udffc","\u261d\ud83c\udffd","\u261d\ud83c\udffe","\u261d\ud83c\udfff","\u261d\ufe0f","\u2620\ufe0f","\u2622\ufe0f","\u2623\ufe0f","\u2626\ufe0f","\u262a\ufe0f","\u262e\ufe0f","\u262f\ufe0f","\u2638\ufe0f","\u2639\ufe0f","\u263a\ufe0f","\u2640\ufe0f","\u2642\ufe0f","\u265f\ufe0f","\u2660\ufe0f","\u2663\ufe0f","\u2665\ufe0f","\u2666\ufe0f","\u2668\ufe0f","\u267b\ufe0f","\u267e\ufe0f","\u2692\ufe0f","\u2694\ufe0f","\u2695\ufe0f","\u2696\ufe0f","\u2697\ufe0f","\u2699\ufe0f","\u269b\ufe0f","\u269c\ufe0f","\u26a0\ufe0f","\u26a7\ufe0f","\u26b0\ufe0f","\u26b1\ufe0f","\u26c8\ufe0f","\u26cf\ufe0f","\u26d1\ufe0f","\u26d3\ufe0f","\u26d3\ufe0f\u200d\ud83d\udca5","\u26e9\ufe0f","\u26f0\ufe0f","\u26f1\ufe0f","\u26f4\ufe0f","\u26f7\ufe0f","\u26f8\ufe0f","\u26f9\ud83c\udffb","\u26f9\ud83c\udffb\u200d\u2640\ufe0f","\u26f9\ud83c\udffb\u200d\u2642\ufe0f","\u26f9\ud83c\udffc","\u26f9\ud83c\udffc\u200d\u2640\ufe0f","\u26f9\ud83c\udffc\u200d\u2642\ufe0f","\u26f9\ud83c\udffd","\u26f9\ud83c\udffd\u200d\u2640\ufe0f","\u26f9\ud83c\udffd\u200d\u2642\ufe0f","\u26f9\ud83c\udffe","\u26f9\ud83c\udffe\u200d\u2640\ufe0f","\u26f9\ud83c\udffe\u200d\u2642\ufe0f","\u26f9\ud83c\udfff","\u26f9\ud83c\udfff\u200d\u2640\ufe0f","\u26f9\ud83c\udfff\u200d\u2642\ufe0f","\u26f9\ufe0f","\u26f9\ufe0f\u200d\u2640\ufe0f","\u26f9\ufe0f\u200d\u2642\ufe0f","\u2702\ufe0f","\u2708\ufe0f","\u2709\ufe0f","\u270a\ud83c\udffb","\u270a\ud83c\udffc","\u270a\ud83c\udffd","\u270a\ud83c\udffe","\u270a\ud83c\udfff","\u270b\ud83c\udffb","\u270b\ud83c\udffc","\u270b\ud83c\udffd","\u270b\ud83c\udffe","\u270b\ud83c\udfff","\u270c\ud83c\udffb","\u270c\ud83c\udffc","\u270c\ud83c\udffd","\u270c\ud83c\udffe","\u270c\ud83c\udfff","\u270c\ufe0f","\u270d\ud83c\udffb","\u270d\ud83c\udffc","\u270d\ud83c\udffd","\u270d\ud83c\udffe","\u270d\ud83c\udfff","\u270d\ufe0f","\u270f\ufe0f","\u2712\ufe0f","\u2714\ufe0f","\u2716\ufe0f","\u271d\ufe0f","\u2721\ufe0f","\u2733\ufe0f","\u2734\ufe0f","\u2744\ufe0f","\u2747\ufe0f","\u2763\ufe0f","\u2764\ufe0f","\u2764\ufe0f\u200d\ud83d\udd25","\u2764\ufe0f\u200d\ud83e\ude79","\u27a1\ufe0f","\u2934\ufe0f","\u2935\ufe0f","\u2b05\ufe0f","\u2b06\ufe0f","\u2b07\ufe0f","\u3030\ufe0f","\u303d\ufe0f","\u3297\ufe0f","\u3299\ufe0f","\ud83c\udd70\ufe0f","\ud83c\udd71\ufe0f","\ud83c\udd7e\ufe0f","\ud83c\udd7f\ufe0f","\ud83c\udde6\ud83c\udde8","\ud83c\udde6\ud83c\udde9","\ud83c\udde6\ud83c\uddea","\ud83c\udde6\ud83c\uddeb","\ud83c\udde6\ud83c\uddec","\ud83c\udde6\ud83c\uddee","\ud83c\udde6\ud83c\uddf1","\ud83c\udde6\ud83c\uddf2","\ud83c\udde6\ud83c\uddf4","\ud83c\udde6\ud83c\uddf6","\ud83c\udde6\ud83c\uddf7","\ud83c\udde6\ud83c\uddf8","\ud83c\udde6\ud83c\uddf9","\ud83c\udde6\ud83c\uddfa","\ud83c\udde6\ud83c\uddfc","\ud83c\udde6\ud83c\uddfd","\ud83c\udde6\ud83c\uddff","\ud83c\udde7\ud83c\udde6","\ud83c\udde7\ud83c\udde7","\ud83c\udde7\ud83c\udde9","\ud83c\udde7\ud83c\uddea","\ud83c\udde7\ud83c\uddeb","\ud83c\udde7\ud83c\uddec","\ud83c\udde7\ud83c\udded","\ud83c\udde7\ud83c\uddee","\ud83c\udde7\ud83c\uddef","\ud83c\udde7\ud83c\uddf1","\ud83c\udde7\ud83c\uddf2","\ud83c\udde7\ud83c\uddf3","\ud83c\udde7\ud83c\uddf4","\ud83c\udde7\ud83c\uddf6","\ud83c\udde7\ud83c\uddf7","\ud83c\udde7\ud83c\uddf8","\ud83c\udde7\ud83c\uddf9","\ud83c\udde7\ud83c\uddfb","\ud83c\udde7\ud83c\uddfc","\ud83c\udde7\ud83c\uddfe","\ud83c\udde7\ud83c\uddff","\ud83c\udde8\ud83c\udde6","\ud83c\udde8\ud83c\udde8","\ud83c\udde8\ud83c\udde9","\ud83c\udde8\ud83c\uddeb","\ud83c\udde8\ud83c\uddec","\ud83c\udde8\ud83c\udded","\ud83c\udde8\ud83c\uddee","\ud83c\udde8\ud83c\uddf0","\ud83c\udde8\ud83c\uddf1","\ud83c\udde8\ud83c\uddf2","\ud83c\udde8\ud83c\uddf3","\ud83c\udde8\ud83c\uddf4","\ud83c\udde8\ud83c\uddf5","\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\ud83c\uddf7","\ud83c\udde8\ud83c\uddfa","\ud83c\udde8\ud83c\uddfb","\ud83c\udde8\ud83c\uddfc","\ud83c\udde8\ud83c\uddfd","\ud83c\udde8\ud83c\uddfe","\ud83c\udde8\ud83c\uddff","\ud83c\udde9\ud83c\uddea","\ud83c\udde9\ud83c\uddec","\ud83c\udde9\ud83c\uddef","\ud83c\udde9\ud83c\uddf0","\ud83c\udde9\ud83c\uddf2","\ud83c\udde9\ud83c\uddf4","\ud83c\udde9\ud83c\uddff","\ud83c\uddea\ud83c\udde6","\ud83c\uddea\ud83c\udde8","\ud83c\uddea\ud83c\uddea","\ud83c\uddea\ud83c\uddec","\ud83c\uddea\ud83c\udded","\ud83c\uddea\ud83c\uddf7","\ud83c\uddea\ud83c\uddf8","\ud83c\uddea\ud83c\uddf9","\ud83c\uddea\ud83c\uddfa","\ud83c\uddeb\ud83c\uddee","\ud83c\uddeb\ud83c\uddef","\ud83c\uddeb\ud83c\uddf0","\ud83c\uddeb\ud83c\uddf2","\ud83c\uddeb\ud83c\uddf4","\ud83c\uddeb\ud83c\uddf7","\ud83c\uddec\ud83c\udde6","\ud83c\uddec\ud83c\udde7","\ud83c\uddec\ud83c\udde9","\ud83c\uddec\ud83c\uddea","\ud83c\uddec\ud83c\uddeb","\ud83c\uddec\ud83c\uddec","\ud83c\uddec\ud83c\udded","\ud83c\uddec\ud83c\uddee","\ud83c\uddec\ud83c\uddf1","\ud83c\uddec\ud83c\uddf2","\ud83c\uddec\ud83c\uddf3","\ud83c\uddec\ud83c\uddf5","\ud83c\uddec\ud83c\uddf6","\ud83c\uddec\ud83c\uddf7","\ud83c\uddec\ud83c\uddf8","\ud83c\uddec\ud83c\uddf9","\ud83c\uddec\ud83c\uddfa","\ud83c\uddec\ud83c\uddfc","\ud83c\uddec\ud83c\uddfe","\ud83c\udded\ud83c\uddf0","\ud83c\udded\ud83c\uddf2","\ud83c\udded\ud83c\uddf3","\ud83c\udded\ud83c\uddf7","\ud83c\udded\ud83c\uddf9","\ud83c\udded\ud83c\uddfa","\ud83c\uddee\ud83c\udde8","\ud83c\uddee\ud83c\udde9","\ud83c\uddee\ud83c\uddea","\ud83c\uddee\ud83c\uddf1","\ud83c\uddee\ud83c\uddf2","\ud83c\uddee\ud83c\uddf3","\ud83c\uddee\ud83c\uddf4","\ud83c\uddee\ud83c\uddf6","\ud83c\uddee\ud83c\uddf7","\ud83c\uddee\ud83c\uddf8","\ud83c\uddee\ud83c\uddf9","\ud83c\uddef\ud83c\uddea","\ud83c\uddef\ud83c\uddf2","\ud83c\uddef\ud83c\uddf4","\ud83c\uddef\ud83c\uddf5","\ud83c\uddf0\ud83c\uddea","\ud83c\uddf0\ud83c\uddec","\ud83c\uddf0\ud83c\udded","\ud83c\uddf0\ud83c\uddee","\ud83c\uddf0\ud83c\uddf2","\ud83c\uddf0\ud83c\uddf3","\ud83c\uddf0\ud83c\uddf5","\ud83c\uddf0\ud83c\uddf7","\ud83c\uddf0\ud83c\uddfc","\ud83c\uddf0\ud83c\uddfe","\ud83c\uddf0\ud83c\uddff","\ud83c\uddf1\ud83c\udde6","\ud83c\uddf1\ud83c\udde7","\ud83c\uddf1\ud83c\udde8","\ud83c\uddf1\ud83c\uddee","\ud83c\uddf1\ud83c\uddf0","\ud83c\uddf1\ud83c\uddf7","\ud83c\uddf1\ud83c\uddf8","\ud83c\uddf1\ud83c\uddf9","\ud83c\uddf1\ud83c\uddfa","\ud83c\uddf1\ud83c\uddfb","\ud83c\uddf1\ud83c\uddfe","\ud83c\uddf2\ud83c\udde6","\ud83c\uddf2\ud83c\udde8","\ud83c\uddf2\ud83c\udde9","\ud83c\uddf2\ud83c\uddea","\ud83c\uddf2\ud83c\uddeb","\ud83c\uddf2\ud83c\uddec","\ud83c\uddf2\ud83c\udded","\ud83c\uddf2\ud83c\uddf0","\ud83c\uddf2\ud83c\uddf1","\ud83c\uddf2\ud83c\uddf2","\ud83c\uddf2\ud83c\uddf3","\ud83c\uddf2\ud83c\uddf4","\ud83c\uddf2\ud83c\uddf5","\ud83c\uddf2\ud83c\uddf6","\ud83c\uddf2\ud83c\uddf7","\ud83c\uddf2\ud83c\uddf8","\ud83c\uddf2\ud83c\uddf9","\ud83c\uddf2\ud83c\uddfa","\ud83c\uddf2\ud83c\uddfb","\ud83c\uddf2\ud83c\uddfc","\ud83c\uddf2\ud83c\uddfd","\ud83c\uddf2\ud83c\uddfe","\ud83c\uddf2\ud83c\uddff","\ud83c\uddf3\ud83c\udde6","\ud83c\uddf3\ud83c\udde8","\ud83c\uddf3\ud83c\uddea","\ud83c\uddf3\ud83c\uddeb","\ud83c\uddf3\ud83c\uddec","\ud83c\uddf3\ud83c\uddee","\ud83c\uddf3\ud83c\uddf1","\ud83c\uddf3\ud83c\uddf4","\ud83c\uddf3\ud83c\uddf5","\ud83c\uddf3\ud83c\uddf7","\ud83c\uddf3\ud83c\uddfa","\ud83c\uddf3\ud83c\uddff","\ud83c\uddf4\ud83c\uddf2","\ud83c\uddf5\ud83c\udde6","\ud83c\uddf5\ud83c\uddea","\ud83c\uddf5\ud83c\uddeb","\ud83c\uddf5\ud83c\uddec","\ud83c\uddf5\ud83c\udded","\ud83c\uddf5\ud83c\uddf0","\ud83c\uddf5\ud83c\uddf1","\ud83c\uddf5\ud83c\uddf2","\ud83c\uddf5\ud83c\uddf3","\ud83c\uddf5\ud83c\uddf7","\ud83c\uddf5\ud83c\uddf8","\ud83c\uddf5\ud83c\uddf9","\ud83c\uddf5\ud83c\uddfc","\ud83c\uddf5\ud83c\uddfe","\ud83c\uddf6\ud83c\udde6","\ud83c\uddf7\ud83c\uddea","\ud83c\uddf7\ud83c\uddf4","\ud83c\uddf7\ud83c\uddf8","\ud83c\uddf7\ud83c\uddfa","\ud83c\uddf7\ud83c\uddfc","\ud83c\uddf8\ud83c\udde6","\ud83c\uddf8\ud83c\udde7","\ud83c\uddf8\ud83c\udde8","\ud83c\uddf8\ud83c\udde9","\ud83c\uddf8\ud83c\uddea","\ud83c\uddf8\ud83c\uddec","\ud83c\uddf8\ud83c\udded","\ud83c\uddf8\ud83c\uddee","\ud83c\uddf8\ud83c\uddef","\ud83c\uddf8\ud83c\uddf0","\ud83c\uddf8\ud83c\uddf1","\ud83c\uddf8\ud83c\uddf2","\ud83c\uddf8\ud83c\uddf3","\ud83c\uddf8\ud83c\uddf4","\ud83c\uddf8\ud83c\uddf7","\ud83c\uddf8\ud83c\uddf8","\ud83c\uddf8\ud83c\uddf9","\ud83c\uddf8\ud83c\uddfb","\ud83c\uddf8\ud83c\uddfd","\ud83c\uddf8\ud83c\uddfe","\ud83c\uddf8\ud83c\uddff","\ud83c\uddf9\ud83c\udde6","\ud83c\uddf9\ud83c\udde8","\ud83c\uddf9\ud83c\udde9","\ud83c\uddf9\ud83c\uddeb","\ud83c\uddf9\ud83c\uddec","\ud83c\uddf9\ud83c\udded","\ud83c\uddf9\ud83c\uddef","\ud83c\uddf9\ud83c\uddf0","\ud83c\uddf9\ud83c\uddf1","\ud83c\uddf9\ud83c\uddf2","\ud83c\uddf9\ud83c\uddf3","\ud83c\uddf9\ud83c\uddf4","\ud83c\uddf9\ud83c\uddf7","\ud83c\uddf9\ud83c\uddf9","\ud83c\uddf9\ud83c\uddfb","\ud83c\uddf9\ud83c\uddfc","\ud83c\uddf9\ud83c\uddff","\ud83c\uddfa\ud83c\udde6","\ud83c\uddfa\ud83c\uddec","\ud83c\uddfa\ud83c\uddf2","\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\ud83c\uddf8","\ud83c\uddfa\ud83c\uddfe","\ud83c\uddfa\ud83c\uddff","\ud83c\uddfb\ud83c\udde6","\ud83c\uddfb\ud83c\udde8","\ud83c\uddfb\ud83c\uddea","\ud83c\uddfb\ud83c\uddec","\ud83c\uddfb\ud83c\uddee","\ud83c\uddfb\ud83c\uddf3","\ud83c\uddfb\ud83c\uddfa","\ud83c\uddfc\ud83c\uddeb","\ud83c\uddfc\ud83c\uddf8","\ud83c\uddfd\ud83c\uddf0","\ud83c\uddfe\ud83c\uddea","\ud83c\uddfe\ud83c\uddf9","\ud83c\uddff\ud83c\udde6","\ud83c\uddff\ud83c\uddf2","\ud83c\uddff\ud83c\uddfc","\ud83c\ude02\ufe0f","\ud83c\ude37\ufe0f","\ud83c\udf21\ufe0f","\ud83c\udf24\ufe0f","\ud83c\udf25\ufe0f","\ud83c\udf26\ufe0f","\ud83c\udf27\ufe0f","\ud83c\udf28\ufe0f","\ud83c\udf29\ufe0f","\ud83c\udf2a\ufe0f","\ud83c\udf2b\ufe0f","\ud83c\udf2c\ufe0f","\ud83c\udf36\ufe0f","\ud83c\udf44\u200d\ud83d\udfeb","\ud83c\udf4b\u200d\ud83d\udfe9","\ud83c\udf7d\ufe0f","\ud83c\udf85\ud83c\udffb","\ud83c\udf85\ud83c\udffc","\ud83c\udf85\ud83c\udffd","\ud83c\udf85\ud83c\udffe","\ud83c\udf85\ud83c\udfff","\ud83c\udf96\ufe0f","\ud83c\udf97\ufe0f","\ud83c\udf99\ufe0f","\ud83c\udf9a\ufe0f","\ud83c\udf9b\ufe0f","\ud83c\udf9e\ufe0f","\ud83c\udf9f\ufe0f","\ud83c\udfc2\ud83c\udffb","\ud83c\udfc2\ud83c\udffc","\ud83c\udfc2\ud83c\udffd","\ud83c\udfc2\ud83c\udffe","\ud83c\udfc2\ud83c\udfff","\ud83c\udfc3\u200d\u2640\ufe0f","\ud83c\udfc3\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\u200d\u2642\ufe0f","\ud83c\udfc3\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb","\ud83c\udfc3\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffb\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc","\ud83c\udfc3\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffc\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd","\ud83c\udfc3\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffd\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe","\ud83c\udfc3\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udffe\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff","\ud83c\udfc3\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83c\udfc3\ud83c\udfff\u200d\u27a1\ufe0f","\ud83c\udfc4\u200d\u2640\ufe0f","\ud83c\udfc4\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffb","\ud83c\udfc4\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffc","\ud83c\udfc4\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffd","\ud83c\udfc4\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udffe","\ud83c\udfc4\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfc4\ud83c\udfff","\ud83c\udfc4\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfc4\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfc7\ud83c\udffb","\ud83c\udfc7\ud83c\udffc","\ud83c\udfc7\ud83c\udffd","\ud83c\udfc7\ud83c\udffe","\ud83c\udfc7\ud83c\udfff","\ud83c\udfca\u200d\u2640\ufe0f","\ud83c\udfca\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffb","\ud83c\udfca\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffc","\ud83c\udfca\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffd","\ud83c\udfca\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udffe","\ud83c\udfca\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfca\ud83c\udfff","\ud83c\udfca\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfca\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffb","\ud83c\udfcb\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffc","\ud83c\udfcb\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffd","\ud83c\udfcb\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udffe","\ud83c\udfcb\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfcb\ud83c\udfff","\ud83c\udfcb\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfcb\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcb\ufe0f","\ud83c\udfcb\ufe0f\u200d\u2640\ufe0f","\ud83c\udfcb\ufe0f\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffb","\ud83c\udfcc\ud83c\udffb\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffb\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffc","\ud83c\udfcc\ud83c\udffc\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffc\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffd","\ud83c\udfcc\ud83c\udffd\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffd\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udffe","\ud83c\udfcc\ud83c\udffe\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udffe\u200d\u2642\ufe0f","\ud83c\udfcc\ud83c\udfff","\ud83c\udfcc\ud83c\udfff\u200d\u2640\ufe0f","\ud83c\udfcc\ud83c\udfff\u200d\u2642\ufe0f","\ud83c\udfcc\ufe0f","\ud83c\udfcc\ufe0f\u200d\u2640\ufe0f","\ud83c\udfcc\ufe0f\u200d\u2642\ufe0f","\ud83c\udfcd\ufe0f","\ud83c\udfce\ufe0f","\ud83c\udfd4\ufe0f","\ud83c\udfd5\ufe0f","\ud83c\udfd6\ufe0f","\ud83c\udfd7\ufe0f","\ud83c\udfd8\ufe0f","\ud83c\udfd9\ufe0f","\ud83c\udfda\ufe0f","\ud83c\udfdb\ufe0f","\ud83c\udfdc\ufe0f","\ud83c\udfdd\ufe0f","\ud83c\udfde\ufe0f","\ud83c\udfdf\ufe0f","\ud83c\udff3\ufe0f","\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200d\ud83c\udf08","\ud83c\udff4\u200d\u2620\ufe0f","\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc73\udb40\udc63\udb40\udc74\udb40\udc7f","\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc77\udb40\udc6c\udb40\udc73\udb40\udc7f","\ud83c\udff5\ufe0f","\ud83c\udff7\ufe0f","\ud83d\udc08\u200d\u2b1b","\ud83d\udc15\u200d\ud83e\uddba","\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200d\ud83d\udd25","\ud83d\udc3b\u200d\u2744\ufe0f","\ud83d\udc3f\ufe0f","\ud83d\udc41\ufe0f","\ud83d\udc41\ufe0f\u200d\ud83d\udde8\ufe0f","\ud83d\udc42\ud83c\udffb","\ud83d\udc42\ud83c\udffc","\ud83d\udc42\ud83c\udffd","\ud83d\udc42\ud83c\udffe","\ud83d\udc42\ud83c\udfff","\ud83d\udc43\ud83c\udffb","\ud83d\udc43\ud83c\udffc","\ud83d\udc43\ud83c\udffd","\ud83d\udc43\ud83c\udffe","\ud83d\udc43\ud83c\udfff","\ud83d\udc46\ud83c\udffb","\ud83d\udc46\ud83c\udffc","\ud83d\udc46\ud83c\udffd","\ud83d\udc46\ud83c\udffe","\ud83d\udc46\ud83c\udfff","\ud83d\udc47\ud83c\udffb","\ud83d\udc47\ud83c\udffc","\ud83d\udc47\ud83c\udffd","\ud83d\udc47\ud83c\udffe","\ud83d\udc47\ud83c\udfff","\ud83d\udc48\ud83c\udffb","\ud83d\udc48\ud83c\udffc","\ud83d\udc48\ud83c\udffd","\ud83d\udc48\ud83c\udffe","\ud83d\udc48\ud83c\udfff","\ud83d\udc49\ud83c\udffb","\ud83d\udc49\ud83c\udffc","\ud83d\udc49\ud83c\udffd","\ud83d\udc49\ud83c\udffe","\ud83d\udc49\ud83c\udfff","\ud83d\udc4a\ud83c\udffb","\ud83d\udc4a\ud83c\udffc","\ud83d\udc4a\ud83c\udffd","\ud83d\udc4a\ud83c\udffe","\ud83d\udc4a\ud83c\udfff","\ud83d\udc4b\ud83c\udffb","\ud83d\udc4b\ud83c\udffc","\ud83d\udc4b\ud83c\udffd","\ud83d\udc4b\ud83c\udffe","\ud83d\udc4b\ud83c\udfff","\ud83d\udc4c\ud83c\udffb","\ud83d\udc4c\ud83c\udffc","\ud83d\udc4c\ud83c\udffd","\ud83d\udc4c\ud83c\udffe","\ud83d\udc4c\ud83c\udfff","\ud83d\udc4d\ud83c\udffb","\ud83d\udc4d\ud83c\udffc","\ud83d\udc4d\ud83c\udffd","\ud83d\udc4d\ud83c\udffe","\ud83d\udc4d\ud83c\udfff","\ud83d\udc4e\ud83c\udffb","\ud83d\udc4e\ud83c\udffc","\ud83d\udc4e\ud83c\udffd","\ud83d\udc4e\ud83c\udffe","\ud83d\udc4e\ud83c\udfff","\ud83d\udc4f\ud83c\udffb","\ud83d\udc4f\ud83c\udffc","\ud83d\udc4f\ud83c\udffd","\ud83d\udc4f\ud83c\udffe","\ud83d\udc4f\ud83c\udfff","\ud83d\udc50\ud83c\udffb","\ud83d\udc50\ud83c\udffc","\ud83d\udc50\ud83c\udffd","\ud83d\udc50\ud83c\udffe","\ud83d\udc50\ud83c\udfff","\ud83d\udc66\ud83c\udffb","\ud83d\udc66\ud83c\udffc","\ud83d\udc66\ud83c\udffd","\ud83d\udc66\ud83c\udffe","\ud83d\udc66\ud83c\udfff","\ud83d\udc67\ud83c\udffb","\ud83d\udc67\ud83c\udffc","\ud83d\udc67\ud83c\udffd","\ud83d\udc67\ud83c\udffe","\ud83d\udc67\ud83c\udfff","\ud83d\udc68\u200d\u2695\ufe0f","\ud83d\udc68\u200d\u2696\ufe0f","\ud83d\udc68\u200d\u2708\ufe0f","\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc68","\ud83d\udc68\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68","\ud83d\udc68\u200d\ud83c\udf3e","\ud83d\udc68\u200d\ud83c\udf73","\ud83d\udc68\u200d\ud83c\udf7c","\ud83d\udc68\u200d\ud83c\udf93","\ud83d\udc68\u200d\ud83c\udfa4","\ud83d\udc68\u200d\ud83c\udfa8","\ud83d\udc68\u200d\ud83c\udfeb","\ud83d\udc68\u200d\ud83c\udfed","\ud83d\udc68\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc68\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc68\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc68\u200d\ud83d\udcbb","\ud83d\udc68\u200d\ud83d\udcbc","\ud83d\udc68\u200d\ud83d\udd27","\ud83d\udc68\u200d\ud83d\udd2c","\ud83d\udc68\u200d\ud83d\ude80","\ud83d\udc68\u200d\ud83d\ude92","\ud83d\udc68\u200d\ud83e\uddaf","\ud83d\udc68\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\u200d\ud83e\uddb0","\ud83d\udc68\u200d\ud83e\uddb1","\ud83d\udc68\u200d\ud83e\uddb2","\ud83d\udc68\u200d\ud83e\uddb3","\ud83d\udc68\u200d\ud83e\uddbc","\ud83d\udc68\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\u200d\ud83e\uddbd","\ud83d\udc68\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffb\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffb\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffb\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffb\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffb\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffc\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffc\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffc\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffc\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffc\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffd\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffd\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffd\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffd\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffd\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffe\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udffe\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udffe\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udffe\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udffe\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\u2695\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2696\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2708\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf3e","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf73","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf7c","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udf93","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfa4","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfa8","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfeb","\ud83d\udc68\ud83c\udfff\u200d\ud83c\udfed","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udcbb","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udcbc","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udd27","\ud83d\udc68\ud83c\udfff\u200d\ud83d\udd2c","\ud83d\udc68\ud83c\udfff\u200d\ud83d\ude80","\ud83d\udc68\ud83c\udfff\u200d\ud83d\ude92","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddaf","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb0","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb1","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb2","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddb3","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc68\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\u200d\u2695\ufe0f","\ud83d\udc69\u200d\u2696\ufe0f","\ud83d\udc69\u200d\u2708\ufe0f","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc68","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc69","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68","\ud83d\udc69\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69","\ud83d\udc69\u200d\ud83c\udf3e","\ud83d\udc69\u200d\ud83c\udf73","\ud83d\udc69\u200d\ud83c\udf7c","\ud83d\udc69\u200d\ud83c\udf93","\ud83d\udc69\u200d\ud83c\udfa4","\ud83d\udc69\u200d\ud83c\udfa8","\ud83d\udc69\u200d\ud83c\udfeb","\ud83d\udc69\u200d\ud83c\udfed","\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc66\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc66","\ud83d\udc69\u200d\ud83d\udc69\u200d\ud83d\udc67\u200d\ud83d\udc67","\ud83d\udc69\u200d\ud83d\udcbb","\ud83d\udc69\u200d\ud83d\udcbc","\ud83d\udc69\u200d\ud83d\udd27","\ud83d\udc69\u200d\ud83d\udd2c","\ud83d\udc69\u200d\ud83d\ude80","\ud83d\udc69\u200d\ud83d\ude92","\ud83d\udc69\u200d\ud83e\uddaf","\ud83d\udc69\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\u200d\ud83e\uddb0","\ud83d\udc69\u200d\ud83e\uddb1","\ud83d\udc69\u200d\ud83e\uddb2","\ud83d\udc69\u200d\ud83e\uddb3","\ud83d\udc69\u200d\ud83e\uddbc","\ud83d\udc69\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\u200d\ud83e\uddbd","\ud83d\udc69\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffb\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffb\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffb\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffb\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffc\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffc\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffc\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffc\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffd\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffd\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffd\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffd\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udffe\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udffe\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udffe\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udffe\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2695\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2696\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2708\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc69\ud83c\udfff","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf3e","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf73","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf7c","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udf93","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfa4","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfa8","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfeb","\ud83d\udc69\ud83c\udfff\u200d\ud83c\udfed","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udcbb","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udcbc","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udd27","\ud83d\udc69\ud83c\udfff\u200d\ud83d\udd2c","\ud83d\udc69\ud83c\udfff\u200d\ud83d\ude80","\ud83d\udc69\ud83c\udfff\u200d\ud83d\ude92","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc68\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddaf","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb0","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb1","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb2","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddb3","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffb","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffc","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffd","\ud83d\udc69\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83d\udc69\ud83c\udffe","\ud83d\udc6b\ud83c\udffb","\ud83d\udc6b\ud83c\udffc","\ud83d\udc6b\ud83c\udffd","\ud83d\udc6b\ud83c\udffe","\ud83d\udc6b\ud83c\udfff","\ud83d\udc6c\ud83c\udffb","\ud83d\udc6c\ud83c\udffc","\ud83d\udc6c\ud83c\udffd","\ud83d\udc6c\ud83c\udffe","\ud83d\udc6c\ud83c\udfff","\ud83d\udc6d\ud83c\udffb","\ud83d\udc6d\ud83c\udffc","\ud83d\udc6d\ud83c\udffd","\ud83d\udc6d\ud83c\udffe","\ud83d\udc6d\ud83c\udfff","\ud83d\udc6e\u200d\u2640\ufe0f","\ud83d\udc6e\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffb","\ud83d\udc6e\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffc","\ud83d\udc6e\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffd","\ud83d\udc6e\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udffe","\ud83d\udc6e\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc6e\ud83c\udfff","\ud83d\udc6e\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc6e\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc6f\u200d\u2640\ufe0f","\ud83d\udc6f\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffb","\ud83d\udc6f\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffc","\ud83d\udc6f\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffd","\ud83d\udc6f\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udffe","\ud83d\udc6f\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc6f\ud83c\udfff","\ud83d\udc6f\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc6f\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc70\u200d\u2640\ufe0f","\ud83d\udc70\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffb","\ud83d\udc70\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffc","\ud83d\udc70\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffd","\ud83d\udc70\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udffe","\ud83d\udc70\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc70\ud83c\udfff","\ud83d\udc70\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc70\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc71\u200d\u2640\ufe0f","\ud83d\udc71\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffb","\ud83d\udc71\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffc","\ud83d\udc71\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffd","\ud83d\udc71\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udffe","\ud83d\udc71\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc71\ud83c\udfff","\ud83d\udc71\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc71\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc72\ud83c\udffb","\ud83d\udc72\ud83c\udffc","\ud83d\udc72\ud83c\udffd","\ud83d\udc72\ud83c\udffe","\ud83d\udc72\ud83c\udfff","\ud83d\udc73\u200d\u2640\ufe0f","\ud83d\udc73\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffb","\ud83d\udc73\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffc","\ud83d\udc73\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffd","\ud83d\udc73\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udffe","\ud83d\udc73\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc73\ud83c\udfff","\ud83d\udc73\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc73\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc74\ud83c\udffb","\ud83d\udc74\ud83c\udffc","\ud83d\udc74\ud83c\udffd","\ud83d\udc74\ud83c\udffe","\ud83d\udc74\ud83c\udfff","\ud83d\udc75\ud83c\udffb","\ud83d\udc75\ud83c\udffc","\ud83d\udc75\ud83c\udffd","\ud83d\udc75\ud83c\udffe","\ud83d\udc75\ud83c\udfff","\ud83d\udc76\ud83c\udffb","\ud83d\udc76\ud83c\udffc","\ud83d\udc76\ud83c\udffd","\ud83d\udc76\ud83c\udffe","\ud83d\udc76\ud83c\udfff","\ud83d\udc77\u200d\u2640\ufe0f","\ud83d\udc77\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffb","\ud83d\udc77\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffc","\ud83d\udc77\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffd","\ud83d\udc77\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udffe","\ud83d\udc77\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc77\ud83c\udfff","\ud83d\udc77\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc77\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc78\ud83c\udffb","\ud83d\udc78\ud83c\udffc","\ud83d\udc78\ud83c\udffd","\ud83d\udc78\ud83c\udffe","\ud83d\udc78\ud83c\udfff","\ud83d\udc7c\ud83c\udffb","\ud83d\udc7c\ud83c\udffc","\ud83d\udc7c\ud83c\udffd","\ud83d\udc7c\ud83c\udffe","\ud83d\udc7c\ud83c\udfff","\ud83d\udc81\u200d\u2640\ufe0f","\ud83d\udc81\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffb","\ud83d\udc81\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffc","\ud83d\udc81\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffd","\ud83d\udc81\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udffe","\ud83d\udc81\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc81\ud83c\udfff","\ud83d\udc81\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc81\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc82\u200d\u2640\ufe0f","\ud83d\udc82\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffb","\ud83d\udc82\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffc","\ud83d\udc82\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffd","\ud83d\udc82\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udffe","\ud83d\udc82\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc82\ud83c\udfff","\ud83d\udc82\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc82\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc83\ud83c\udffb","\ud83d\udc83\ud83c\udffc","\ud83d\udc83\ud83c\udffd","\ud83d\udc83\ud83c\udffe","\ud83d\udc83\ud83c\udfff","\ud83d\udc85\ud83c\udffb","\ud83d\udc85\ud83c\udffc","\ud83d\udc85\ud83c\udffd","\ud83d\udc85\ud83c\udffe","\ud83d\udc85\ud83c\udfff","\ud83d\udc86\u200d\u2640\ufe0f","\ud83d\udc86\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffb","\ud83d\udc86\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffc","\ud83d\udc86\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffd","\ud83d\udc86\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udffe","\ud83d\udc86\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc86\ud83c\udfff","\ud83d\udc86\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc86\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc87\u200d\u2640\ufe0f","\ud83d\udc87\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffb","\ud83d\udc87\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffc","\ud83d\udc87\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffd","\ud83d\udc87\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udffe","\ud83d\udc87\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udc87\ud83c\udfff","\ud83d\udc87\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udc87\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udc8f\ud83c\udffb","\ud83d\udc8f\ud83c\udffc","\ud83d\udc8f\ud83c\udffd","\ud83d\udc8f\ud83c\udffe","\ud83d\udc8f\ud83c\udfff","\ud83d\udc91\ud83c\udffb","\ud83d\udc91\ud83c\udffc","\ud83d\udc91\ud83c\udffd","\ud83d\udc91\ud83c\udffe","\ud83d\udc91\ud83c\udfff","\ud83d\udcaa\ud83c\udffb","\ud83d\udcaa\ud83c\udffc","\ud83d\udcaa\ud83c\udffd","\ud83d\udcaa\ud83c\udffe","\ud83d\udcaa\ud83c\udfff","\ud83d\udcfd\ufe0f","\ud83d\udd49\ufe0f","\ud83d\udd4a\ufe0f","\ud83d\udd6f\ufe0f","\ud83d\udd70\ufe0f","\ud83d\udd73\ufe0f","\ud83d\udd74\ud83c\udffb","\ud83d\udd74\ud83c\udffc","\ud83d\udd74\ud83c\udffd","\ud83d\udd74\ud83c\udffe","\ud83d\udd74\ud83c\udfff","\ud83d\udd74\ufe0f","\ud83d\udd75\ud83c\udffb","\ud83d\udd75\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffc","\ud83d\udd75\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffd","\ud83d\udd75\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udffe","\ud83d\udd75\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udd75\ud83c\udfff","\ud83d\udd75\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udd75\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udd75\ufe0f","\ud83d\udd75\ufe0f\u200d\u2640\ufe0f","\ud83d\udd75\ufe0f\u200d\u2642\ufe0f","\ud83d\udd76\ufe0f","\ud83d\udd77\ufe0f","\ud83d\udd78\ufe0f","\ud83d\udd79\ufe0f","\ud83d\udd7a\ud83c\udffb","\ud83d\udd7a\ud83c\udffc","\ud83d\udd7a\ud83c\udffd","\ud83d\udd7a\ud83c\udffe","\ud83d\udd7a\ud83c\udfff","\ud83d\udd87\ufe0f","\ud83d\udd8a\ufe0f","\ud83d\udd8b\ufe0f","\ud83d\udd8c\ufe0f","\ud83d\udd8d\ufe0f","\ud83d\udd90\ud83c\udffb","\ud83d\udd90\ud83c\udffc","\ud83d\udd90\ud83c\udffd","\ud83d\udd90\ud83c\udffe","\ud83d\udd90\ud83c\udfff","\ud83d\udd90\ufe0f","\ud83d\udd95\ud83c\udffb","\ud83d\udd95\ud83c\udffc","\ud83d\udd95\ud83c\udffd","\ud83d\udd95\ud83c\udffe","\ud83d\udd95\ud83c\udfff","\ud83d\udd96\ud83c\udffb","\ud83d\udd96\ud83c\udffc","\ud83d\udd96\ud83c\udffd","\ud83d\udd96\ud83c\udffe","\ud83d\udd96\ud83c\udfff","\ud83d\udda5\ufe0f","\ud83d\udda8\ufe0f","\ud83d\uddb1\ufe0f","\ud83d\uddb2\ufe0f","\ud83d\uddbc\ufe0f","\ud83d\uddc2\ufe0f","\ud83d\uddc3\ufe0f","\ud83d\uddc4\ufe0f","\ud83d\uddd1\ufe0f","\ud83d\uddd2\ufe0f","\ud83d\uddd3\ufe0f","\ud83d\udddc\ufe0f","\ud83d\udddd\ufe0f","\ud83d\uddde\ufe0f","\ud83d\udde1\ufe0f","\ud83d\udde3\ufe0f","\ud83d\udde8\ufe0f","\ud83d\uddef\ufe0f","\ud83d\uddf3\ufe0f","\ud83d\uddfa\ufe0f","\ud83d\ude2e\u200d\ud83d\udca8","\ud83d\ude35\u200d\ud83d\udcab","\ud83d\ude36\u200d\ud83c\udf2b\ufe0f","\ud83d\ude42\u200d\u2194\ufe0f","\ud83d\ude42\u200d\u2195\ufe0f","\ud83d\ude45\u200d\u2640\ufe0f","\ud83d\ude45\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffb","\ud83d\ude45\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffc","\ud83d\ude45\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffd","\ud83d\ude45\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udffe","\ud83d\ude45\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude45\ud83c\udfff","\ud83d\ude45\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude45\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude46\u200d\u2640\ufe0f","\ud83d\ude46\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffb","\ud83d\ude46\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffc","\ud83d\ude46\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffd","\ud83d\ude46\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udffe","\ud83d\ude46\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude46\ud83c\udfff","\ud83d\ude46\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude46\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude47\u200d\u2640\ufe0f","\ud83d\ude47\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffb","\ud83d\ude47\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffc","\ud83d\ude47\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffd","\ud83d\ude47\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udffe","\ud83d\ude47\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude47\ud83c\udfff","\ud83d\ude47\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude47\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4b\u200d\u2640\ufe0f","\ud83d\ude4b\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffb","\ud83d\ude4b\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffc","\ud83d\ude4b\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffd","\ud83d\ude4b\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udffe","\ud83d\ude4b\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4b\ud83c\udfff","\ud83d\ude4b\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4b\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4c\ud83c\udffb","\ud83d\ude4c\ud83c\udffc","\ud83d\ude4c\ud83c\udffd","\ud83d\ude4c\ud83c\udffe","\ud83d\ude4c\ud83c\udfff","\ud83d\ude4d\u200d\u2640\ufe0f","\ud83d\ude4d\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffb","\ud83d\ude4d\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffc","\ud83d\ude4d\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffd","\ud83d\ude4d\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udffe","\ud83d\ude4d\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4d\ud83c\udfff","\ud83d\ude4d\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4d\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4e\u200d\u2640\ufe0f","\ud83d\ude4e\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffb","\ud83d\ude4e\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffc","\ud83d\ude4e\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffd","\ud83d\ude4e\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udffe","\ud83d\ude4e\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\ude4e\ud83c\udfff","\ud83d\ude4e\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\ude4e\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\ude4f\ud83c\udffb","\ud83d\ude4f\ud83c\udffc","\ud83d\ude4f\ud83c\udffd","\ud83d\ude4f\ud83c\udffe","\ud83d\ude4f\ud83c\udfff","\ud83d\udea3\u200d\u2640\ufe0f","\ud83d\udea3\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffb","\ud83d\udea3\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffc","\ud83d\udea3\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffd","\ud83d\udea3\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udffe","\ud83d\udea3\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udea3\ud83c\udfff","\ud83d\udea3\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udea3\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb4\u200d\u2640\ufe0f","\ud83d\udeb4\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffb","\ud83d\udeb4\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffc","\ud83d\udeb4\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffd","\ud83d\udeb4\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udffe","\ud83d\udeb4\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb4\ud83c\udfff","\ud83d\udeb4\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb4\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb5\u200d\u2640\ufe0f","\ud83d\udeb5\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffb","\ud83d\udeb5\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffc","\ud83d\udeb5\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffd","\ud83d\udeb5\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udffe","\ud83d\udeb5\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb5\ud83c\udfff","\ud83d\udeb5\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb5\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb6\u200d\u2640\ufe0f","\ud83d\udeb6\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\u200d\u2642\ufe0f","\ud83d\udeb6\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb","\ud83d\udeb6\ud83c\udffb\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffb\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc","\ud83d\udeb6\ud83c\udffc\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffc\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd","\ud83d\udeb6\ud83c\udffd\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffd\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe","\ud83d\udeb6\ud83c\udffe\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udffe\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff","\ud83d\udeb6\ud83c\udfff\u200d\u2640\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2642\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83d\udeb6\ud83c\udfff\u200d\u27a1\ufe0f","\ud83d\udec0\ud83c\udffb","\ud83d\udec0\ud83c\udffc","\ud83d\udec0\ud83c\udffd","\ud83d\udec0\ud83c\udffe","\ud83d\udec0\ud83c\udfff","\ud83d\udecb\ufe0f","\ud83d\udecc\ud83c\udffb","\ud83d\udecc\ud83c\udffc","\ud83d\udecc\ud83c\udffd","\ud83d\udecc\ud83c\udffe","\ud83d\udecc\ud83c\udfff","\ud83d\udecd\ufe0f","\ud83d\udece\ufe0f","\ud83d\udecf\ufe0f","\ud83d\udee0\ufe0f","\ud83d\udee1\ufe0f","\ud83d\udee2\ufe0f","\ud83d\udee3\ufe0f","\ud83d\udee4\ufe0f","\ud83d\udee5\ufe0f","\ud83d\udee9\ufe0f","\ud83d\udef0\ufe0f","\ud83d\udef3\ufe0f","\ud83e\udd0c\ud83c\udffb","\ud83e\udd0c\ud83c\udffc","\ud83e\udd0c\ud83c\udffd","\ud83e\udd0c\ud83c\udffe","\ud83e\udd0c\ud83c\udfff","\ud83e\udd0f\ud83c\udffb","\ud83e\udd0f\ud83c\udffc","\ud83e\udd0f\ud83c\udffd","\ud83e\udd0f\ud83c\udffe","\ud83e\udd0f\ud83c\udfff","\ud83e\udd18\ud83c\udffb","\ud83e\udd18\ud83c\udffc","\ud83e\udd18\ud83c\udffd","\ud83e\udd18\ud83c\udffe","\ud83e\udd18\ud83c\udfff","\ud83e\udd19\ud83c\udffb","\ud83e\udd19\ud83c\udffc","\ud83e\udd19\ud83c\udffd","\ud83e\udd19\ud83c\udffe","\ud83e\udd19\ud83c\udfff","\ud83e\udd1a\ud83c\udffb","\ud83e\udd1a\ud83c\udffc","\ud83e\udd1a\ud83c\udffd","\ud83e\udd1a\ud83c\udffe","\ud83e\udd1a\ud83c\udfff","\ud83e\udd1b\ud83c\udffb","\ud83e\udd1b\ud83c\udffc","\ud83e\udd1b\ud83c\udffd","\ud83e\udd1b\ud83c\udffe","\ud83e\udd1b\ud83c\udfff","\ud83e\udd1c\ud83c\udffb","\ud83e\udd1c\ud83c\udffc","\ud83e\udd1c\ud83c\udffd","\ud83e\udd1c\ud83c\udffe","\ud83e\udd1c\ud83c\udfff","\ud83e\udd1d\ud83c\udffb","\ud83e\udd1d\ud83c\udffc","\ud83e\udd1d\ud83c\udffd","\ud83e\udd1d\ud83c\udffe","\ud83e\udd1d\ud83c\udfff","\ud83e\udd1e\ud83c\udffb","\ud83e\udd1e\ud83c\udffc","\ud83e\udd1e\ud83c\udffd","\ud83e\udd1e\ud83c\udffe","\ud83e\udd1e\ud83c\udfff","\ud83e\udd1f\ud83c\udffb","\ud83e\udd1f\ud83c\udffc","\ud83e\udd1f\ud83c\udffd","\ud83e\udd1f\ud83c\udffe","\ud83e\udd1f\ud83c\udfff","\ud83e\udd26\u200d\u2640\ufe0f","\ud83e\udd26\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffb","\ud83e\udd26\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffc","\ud83e\udd26\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffd","\ud83e\udd26\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udffe","\ud83e\udd26\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd26\ud83c\udfff","\ud83e\udd26\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd26\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd30\ud83c\udffb","\ud83e\udd30\ud83c\udffc","\ud83e\udd30\ud83c\udffd","\ud83e\udd30\ud83c\udffe","\ud83e\udd30\ud83c\udfff","\ud83e\udd31\ud83c\udffb","\ud83e\udd31\ud83c\udffc","\ud83e\udd31\ud83c\udffd","\ud83e\udd31\ud83c\udffe","\ud83e\udd31\ud83c\udfff","\ud83e\udd32\ud83c\udffb","\ud83e\udd32\ud83c\udffc","\ud83e\udd32\ud83c\udffd","\ud83e\udd32\ud83c\udffe","\ud83e\udd32\ud83c\udfff","\ud83e\udd33\ud83c\udffb","\ud83e\udd33\ud83c\udffc","\ud83e\udd33\ud83c\udffd","\ud83e\udd33\ud83c\udffe","\ud83e\udd33\ud83c\udfff","\ud83e\udd34\ud83c\udffb","\ud83e\udd34\ud83c\udffc","\ud83e\udd34\ud83c\udffd","\ud83e\udd34\ud83c\udffe","\ud83e\udd34\ud83c\udfff","\ud83e\udd35\u200d\u2640\ufe0f","\ud83e\udd35\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffb","\ud83e\udd35\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffc","\ud83e\udd35\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffd","\ud83e\udd35\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udffe","\ud83e\udd35\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd35\ud83c\udfff","\ud83e\udd35\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd35\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd36\ud83c\udffb","\ud83e\udd36\ud83c\udffc","\ud83e\udd36\ud83c\udffd","\ud83e\udd36\ud83c\udffe","\ud83e\udd36\ud83c\udfff","\ud83e\udd37\u200d\u2640\ufe0f","\ud83e\udd37\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffb","\ud83e\udd37\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffc","\ud83e\udd37\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffd","\ud83e\udd37\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udffe","\ud83e\udd37\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd37\ud83c\udfff","\ud83e\udd37\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd37\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd38\u200d\u2640\ufe0f","\ud83e\udd38\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffb","\ud83e\udd38\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffc","\ud83e\udd38\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffd","\ud83e\udd38\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udffe","\ud83e\udd38\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd38\ud83c\udfff","\ud83e\udd38\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd38\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd39\u200d\u2640\ufe0f","\ud83e\udd39\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffb","\ud83e\udd39\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffc","\ud83e\udd39\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffd","\ud83e\udd39\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udffe","\ud83e\udd39\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd39\ud83c\udfff","\ud83e\udd39\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd39\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3c\u200d\u2640\ufe0f","\ud83e\udd3c\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffb","\ud83e\udd3c\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffc","\ud83e\udd3c\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffd","\ud83e\udd3c\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udffe","\ud83e\udd3c\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3c\ud83c\udfff","\ud83e\udd3c\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3c\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3d\u200d\u2640\ufe0f","\ud83e\udd3d\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffb","\ud83e\udd3d\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffc","\ud83e\udd3d\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffd","\ud83e\udd3d\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udffe","\ud83e\udd3d\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3d\ud83c\udfff","\ud83e\udd3d\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3d\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd3e\u200d\u2640\ufe0f","\ud83e\udd3e\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffb","\ud83e\udd3e\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffc","\ud83e\udd3e\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffd","\ud83e\udd3e\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udffe","\ud83e\udd3e\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udd3e\ud83c\udfff","\ud83e\udd3e\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udd3e\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udd77\ud83c\udffb","\ud83e\udd77\ud83c\udffc","\ud83e\udd77\ud83c\udffd","\ud83e\udd77\ud83c\udffe","\ud83e\udd77\ud83c\udfff","\ud83e\uddb5\ud83c\udffb","\ud83e\uddb5\ud83c\udffc","\ud83e\uddb5\ud83c\udffd","\ud83e\uddb5\ud83c\udffe","\ud83e\uddb5\ud83c\udfff","\ud83e\uddb6\ud83c\udffb","\ud83e\uddb6\ud83c\udffc","\ud83e\uddb6\ud83c\udffd","\ud83e\uddb6\ud83c\udffe","\ud83e\uddb6\ud83c\udfff","\ud83e\uddb8\u200d\u2640\ufe0f","\ud83e\uddb8\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffb","\ud83e\uddb8\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffc","\ud83e\uddb8\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffd","\ud83e\uddb8\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udffe","\ud83e\uddb8\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddb8\ud83c\udfff","\ud83e\uddb8\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddb8\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddb9\u200d\u2640\ufe0f","\ud83e\uddb9\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffb","\ud83e\uddb9\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffc","\ud83e\uddb9\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffd","\ud83e\uddb9\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udffe","\ud83e\uddb9\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddb9\ud83c\udfff","\ud83e\uddb9\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddb9\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddbb\ud83c\udffb","\ud83e\uddbb\ud83c\udffc","\ud83e\uddbb\ud83c\udffd","\ud83e\uddbb\ud83c\udffe","\ud83e\uddbb\ud83c\udfff","\ud83e\uddcd\u200d\u2640\ufe0f","\ud83e\uddcd\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffb","\ud83e\uddcd\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffc","\ud83e\uddcd\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffd","\ud83e\uddcd\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udffe","\ud83e\uddcd\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddcd\ud83c\udfff","\ud83e\uddcd\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddcd\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddce\u200d\u2640\ufe0f","\ud83e\uddce\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\u200d\u2642\ufe0f","\ud83e\uddce\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb","\ud83e\uddce\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffb\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc","\ud83e\uddce\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffc\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd","\ud83e\uddce\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffd\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe","\ud83e\uddce\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udffe\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff","\ud83e\uddce\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2640\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u2642\ufe0f\u200d\u27a1\ufe0f","\ud83e\uddce\ud83c\udfff\u200d\u27a1\ufe0f","\ud83e\uddcf\u200d\u2640\ufe0f","\ud83e\uddcf\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffb","\ud83e\uddcf\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffc","\ud83e\uddcf\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffd","\ud83e\uddcf\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udffe","\ud83e\uddcf\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddcf\ud83c\udfff","\ud83e\uddcf\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddcf\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd1\u200d\u2695\ufe0f","\ud83e\uddd1\u200d\u2696\ufe0f","\ud83e\uddd1\u200d\u2708\ufe0f","\ud83e\uddd1\u200d\ud83c\udf3e","\ud83e\uddd1\u200d\ud83c\udf73","\ud83e\uddd1\u200d\ud83c\udf7c","\ud83e\uddd1\u200d\ud83c\udf84","\ud83e\uddd1\u200d\ud83c\udf93","\ud83e\uddd1\u200d\ud83c\udfa4","\ud83e\uddd1\u200d\ud83c\udfa8","\ud83e\uddd1\u200d\ud83c\udfeb","\ud83e\uddd1\u200d\ud83c\udfed","\ud83e\uddd1\u200d\ud83d\udcbb","\ud83e\uddd1\u200d\ud83d\udcbc","\ud83e\uddd1\u200d\ud83d\udd27","\ud83e\uddd1\u200d\ud83d\udd2c","\ud83e\uddd1\u200d\ud83d\ude80","\ud83e\uddd1\u200d\ud83d\ude92","\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1","\ud83e\uddd1\u200d\ud83e\uddaf","\ud83e\uddd1\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\ud83e\uddb0","\ud83e\uddd1\u200d\ud83e\uddb1","\ud83e\uddd1\u200d\ud83e\uddb2","\ud83e\uddd1\u200d\ud83e\uddb3","\ud83e\uddd1\u200d\ud83e\uddbc","\ud83e\uddd1\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\ud83e\uddbd","\ud83e\uddd1\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\u200d\ud83e\uddd1\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd1\u200d\ud83e\uddd2\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\uddd2\u200d\ud83e\uddd2","\ud83e\uddd1\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffb\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffb\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffb\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffb\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffc\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffc\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffc\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffc\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffd\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffd\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffd\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffd\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffe\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udffe\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udffe\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udffe\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udfff\u200d\u2695\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2696\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2708\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf3e","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf73","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf7c","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf84","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udf93","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfa4","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfa8","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfeb","\ud83e\uddd1\ud83c\udfff\u200d\ud83c\udfed","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udc30\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udcbb","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udcbc","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udd27","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\udd2c","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\ude80","\ud83e\uddd1\ud83c\udfff\u200d\ud83d\ude92","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udd1d\u200d\ud83e\uddd1\ud83c\udfff","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddaf","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddaf\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb0","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb1","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb2","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddb3","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbc\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\uddbd\u200d\u27a1\ufe0f","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\ude70","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffb","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffc","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffd","\ud83e\uddd1\ud83c\udfff\u200d\ud83e\udeef\u200d\ud83e\uddd1\ud83c\udffe","\ud83e\uddd2\ud83c\udffb","\ud83e\uddd2\ud83c\udffc","\ud83e\uddd2\ud83c\udffd","\ud83e\uddd2\ud83c\udffe","\ud83e\uddd2\ud83c\udfff","\ud83e\uddd3\ud83c\udffb","\ud83e\uddd3\ud83c\udffc","\ud83e\uddd3\ud83c\udffd","\ud83e\uddd3\ud83c\udffe","\ud83e\uddd3\ud83c\udfff","\ud83e\uddd4\u200d\u2640\ufe0f","\ud83e\uddd4\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffb","\ud83e\uddd4\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffc","\ud83e\uddd4\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffd","\ud83e\uddd4\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udffe","\ud83e\uddd4\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd4\ud83c\udfff","\ud83e\uddd4\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd4\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd5\ud83c\udffb","\ud83e\uddd5\ud83c\udffc","\ud83e\uddd5\ud83c\udffd","\ud83e\uddd5\ud83c\udffe","\ud83e\uddd5\ud83c\udfff","\ud83e\uddd6\u200d\u2640\ufe0f","\ud83e\uddd6\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffb","\ud83e\uddd6\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffc","\ud83e\uddd6\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffd","\ud83e\uddd6\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udffe","\ud83e\uddd6\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd6\ud83c\udfff","\ud83e\uddd6\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd6\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd7\u200d\u2640\ufe0f","\ud83e\uddd7\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffb","\ud83e\uddd7\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffc","\ud83e\uddd7\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffd","\ud83e\uddd7\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udffe","\ud83e\uddd7\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd7\ud83c\udfff","\ud83e\uddd7\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd7\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd8\u200d\u2640\ufe0f","\ud83e\uddd8\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffb","\ud83e\uddd8\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffc","\ud83e\uddd8\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffd","\ud83e\uddd8\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udffe","\ud83e\uddd8\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd8\ud83c\udfff","\ud83e\uddd8\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd8\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddd9\u200d\u2640\ufe0f","\ud83e\uddd9\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffb","\ud83e\uddd9\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffc","\ud83e\uddd9\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffd","\ud83e\uddd9\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udffe","\ud83e\uddd9\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddd9\ud83c\udfff","\ud83e\uddd9\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddd9\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddda\u200d\u2640\ufe0f","\ud83e\uddda\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffb","\ud83e\uddda\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffc","\ud83e\uddda\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffd","\ud83e\uddda\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udffe","\ud83e\uddda\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\uddda\ud83c\udfff","\ud83e\uddda\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\uddda\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddb\u200d\u2640\ufe0f","\ud83e\udddb\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffb","\ud83e\udddb\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffc","\ud83e\udddb\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffd","\ud83e\udddb\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udffe","\ud83e\udddb\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddb\ud83c\udfff","\ud83e\udddb\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddb\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddc\u200d\u2640\ufe0f","\ud83e\udddc\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffb","\ud83e\udddc\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffc","\ud83e\udddc\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffd","\ud83e\udddc\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udffe","\ud83e\udddc\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddc\ud83c\udfff","\ud83e\udddc\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddc\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\udddd\u200d\u2640\ufe0f","\ud83e\udddd\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffb","\ud83e\udddd\ud83c\udffb\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffb\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffc","\ud83e\udddd\ud83c\udffc\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffc\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffd","\ud83e\udddd\ud83c\udffd\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffd\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udffe","\ud83e\udddd\ud83c\udffe\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udffe\u200d\u2642\ufe0f","\ud83e\udddd\ud83c\udfff","\ud83e\udddd\ud83c\udfff\u200d\u2640\ufe0f","\ud83e\udddd\ud83c\udfff\u200d\u2642\ufe0f","\ud83e\uddde\u200d\u2640\ufe0f","\ud83e\uddde\u200d\u2642\ufe0f","\ud83e\udddf\u200d\u2640\ufe0f","\ud83e\udddf\u200d\u2642\ufe0f","\ud83e\udec3\ud83c\udffb","\ud83e\udec3\ud83c\udffc","\ud83e\udec3\ud83c\udffd","\ud83e\udec3\ud83c\udffe","\ud83e\udec3\ud83c\udfff","\ud83e\udec4\ud83c\udffb","\ud83e\udec4\ud83c\udffc","\ud83e\udec4\ud83c\udffd","\ud83e\udec4\ud83c\udffe","\ud83e\udec4\ud83c\udfff","\ud83e\udec5\ud83c\udffb","\ud83e\udec5\ud83c\udffc","\ud83e\udec5\ud83c\udffd","\ud83e\udec5\ud83c\udffe","\ud83e\udec5\ud83c\udfff","\ud83e\udef0\ud83c\udffb","\ud83e\udef0\ud83c\udffc","\ud83e\udef0\ud83c\udffd","\ud83e\udef0\ud83c\udffe","\ud83e\udef0\ud83c\udfff","\ud83e\udef1\ud83c\udffb","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffc","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffc\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffd","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef1\ud83c\udffd\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffe","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udffe\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udfff","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffb","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffc","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffd","\ud83e\udef1\ud83c\udfff\u200d\ud83e\udef2\ud83c\udffe","\ud83e\udef2\ud83c\udffb","\ud83e\udef2\ud83c\udffc","\ud83e\udef2\ud83c\udffd","\ud83e\udef2\ud83c\udffe","\ud83e\udef2\ud83c\udfff","\ud83e\udef3\ud83c\udffb","\ud83e\udef3\ud83c\udffc","\ud83e\udef3\ud83c\udffd","\ud83e\udef3\ud83c\udffe","\ud83e\udef3\ud83c\udfff","\ud83e\udef4\ud83c\udffb","\ud83e\udef4\ud83c\udffc","\ud83e\udef4\ud83c\udffd","\ud83e\udef4\ud83c\udffe","\ud83e\udef4\ud83c\udfff","\ud83e\udef5\ud83c\udffb","\ud83e\udef5\ud83c\udffc","\ud83e\udef5\ud83c\udffd","\ud83e\udef5\ud83c\udffe","\ud83e\udef5\ud83c\udfff","\ud83e\udef6\ud83c\udffb","\ud83e\udef6\ud83c\udffc","\ud83e\udef6\ud83c\udffd","\ud83e\udef6\ud83c\udffe","\ud83e\udef6\ud83c\udfff","\ud83e\udef7\ud83c\udffb","\ud83e\udef7\ud83c\udffc","\ud83e\udef7\ud83c\udffd","\ud83e\udef7\ud83c\udffe","\ud83e\udef7\ud83c\udfff","\ud83e\udef8\ud83c\udffb","\ud83e\udef8\ud83c\udffc","\ud83e\udef8\ud83c\udffd","\ud83e\udef8\ud83c\udffe","\ud83e\udef8\ud83c\udfff"],t2}var a2,n2={};function s2(){if(a2)return n2;a2=1;var e=_Y(1567,1600,8271,11841);return e.addRange(125184,125259).addRange(125264,125273).addRange(125278,125279),n2.characters=e,n2}var o2,i2={};function d2(){if(o2)return i2;o2=1;var e=_Y();return e.addRange(71424,71450).addRange(71453,71467).addRange(71472,71494),i2.characters=e,i2}var c2,l2={};function u2(){if(c2)return l2;c2=1;var e=_Y();return e.addRange(82944,83526),l2.characters=e,l2}var p2,f2={};function g2(){if(p2)return f2;p2=1;var e=_Y(8271,11841,126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(1536,1540).addRange(1542,1756).addRange(1758,1791).addRange(1872,1919).addRange(2160,2193).addRange(2199,2273).addRange(2275,2303).addRange(64336,64975).addRange(65008,65023).addRange(65136,65140).addRange(65142,65276).addRange(66272,66299).addRange(69216,69246).addRange(69314,69319).addRange(69328,69336).addRange(69370,69375).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(126704,126705),f2.characters=e,f2}var m2,y2={};function h2(){if(m2)return y2;m2=1;var e=_Y(776);return e.addRange(1329,1366).addRange(1369,1418).addRange(1421,1423).addRange(64275,64279),y2.characters=e,y2}var b2,v2={};function x2(){if(b2)return v2;b2=1;var e=_Y(183);return e.addRange(11824,11825).addRange(68352,68405).addRange(68409,68415),v2.characters=e,v2}var R2,j2={};function w2(){if(R2)return j2;R2=1;var e=_Y();return e.addRange(6912,6988).addRange(6990,7039),j2.characters=e,j2}var E2,S2={};function T2(){if(E2)return S2;E2=1;var e=_Y();return e.addRange(42656,42743).addRange(92160,92728),S2.characters=e,S2}var P2,A2={};function k2(){if(P2)return A2;P2=1;var e=_Y();return e.addRange(92880,92909).addRange(92912,92917),A2.characters=e,A2}var C2,_2={};function I2(){if(C2)return _2;C2=1;var e=_Y();return e.addRange(7104,7155).addRange(7164,7167),_2.characters=e,_2}var D2,O2={};function N2(){if(D2)return O2;D2=1;var e=_Y(700,2482,2519,7376,7378,7384,7393,7402,7405,7410,43249);return e.addRange(2385,2386).addRange(2404,2405).addRange(2432,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2492,2500).addRange(2503,2504).addRange(2507,2510).addRange(2524,2525).addRange(2527,2531).addRange(2534,2558).addRange(7381,7382).addRange(7413,7415),O2.characters=e,O2}var B2,M2={};function F2(){if(B2)return M2;B2=1;var e=_Y();return e.addRange(93856,93880).addRange(93883,93907),M2.characters=e,M2}var L2,U2={};function q2(){if(L2)return U2;L2=1;var e=_Y();return e.addRange(72704,72712).addRange(72714,72758).addRange(72760,72773).addRange(72784,72812),U2.characters=e,U2}var G2,W2={};function V2(){if(G2)return W2;G2=1;var e=_Y(711,729,12336,12343,12539);return e.addRange(713,715).addRange(746,747).addRange(12289,12291).addRange(12296,12305).addRange(12307,12319).addRange(12330,12333).addRange(12549,12591).addRange(12704,12735).addRange(65093,65094).addRange(65377,65381),W2.characters=e,W2}var H2,z2={};function K2(){if(H2)return z2;H2=1;var e=_Y(69759);return e.addRange(69632,69709).addRange(69714,69749),z2.characters=e,z2}var X2,J2={};function Y2(){if(X2)return J2;X2=1;var e=_Y();return e.addRange(10240,10495),J2.characters=e,J2}var $2,Q2={};function Z2(){if($2)return Q2;$2=1;var e=_Y(43471);return e.addRange(6656,6683).addRange(6686,6687),Q2.characters=e,Q2}var e6,t6={};function r6(){if(e6)return t6;e6=1;var e=_Y();return e.addRange(5941,5942).addRange(5952,5971),t6.characters=e,t6}var a6,n6={};function s6(){if(a6)return n6;a6=1;var e=_Y();return e.addRange(5120,5759).addRange(6320,6389).addRange(72368,72383),n6.characters=e,n6}var o6,i6={};function d6(){if(o6)return i6;o6=1;var e=_Y(183,8282,8285,11825);return e.addRange(66208,66256),i6.characters=e,i6}var c6,l6={};function u6(){if(c6)return l6;c6=1;var e=_Y(772,817,862,66927);return e.addRange(66864,66915),l6.characters=e,l6}var p6,f6={};function g6(){if(p6)return f6;p6=1;var e=_Y();return e.addRange(2534,2543).addRange(4160,4169).addRange(69888,69940).addRange(69942,69959),f6.characters=e,f6}var m6,y6={};function h6(){if(m6)return y6;m6=1;var e=_Y();return e.addRange(43520,43574).addRange(43584,43597).addRange(43600,43609).addRange(43612,43615),y6.characters=e,y6}var b6,v6={};function x6(){if(b6)return v6;b6=1;var e=_Y(772);return e.addRange(768,770).addRange(779,780).addRange(803,804).addRange(816,817).addRange(5024,5109).addRange(5112,5117).addRange(43888,43967),v6.characters=e,v6}var R6,j6={};function w6(){if(R6)return j6;R6=1;var e=_Y();return e.addRange(69552,69579),j6.characters=e,j6}var E6,S6={};function T6(){if(E6)return S6;E6=1;var e=_Y(215,247,712,716,728,894,901,903,1541,1757,2274,3647,11842,12288,12292,12306,12320,12342,12927,13311,43867,65279,119970,119995,120134,129008,129736,917505);return e.addRange(0,64).addRange(91,96).addRange(123,169).addRange(171,182).addRange(184,185).addRange(187,191).addRange(697,699).addRange(701,710).addRange(718,726).addRange(730,735).addRange(741,745).addRange(748,767).addRange(4053,4056).addRange(8192,8203).addRange(8206,8238).addRange(8240,8270).addRange(8272,8281).addRange(8283,8284).addRange(8286,8292).addRange(8294,8304).addRange(8308,8318).addRange(8320,8334).addRange(8352,8385).addRange(8448,8485).addRange(8487,8489).addRange(8492,8497).addRange(8499,8525).addRange(8527,8543).addRange(8585,8587).addRange(8592,9257).addRange(9280,9290).addRange(9312,10239).addRange(10496,11123).addRange(11126,11263).addRange(11776,11798).addRange(11800,11823).addRange(11826,11835).addRange(11837,11840).addRange(11844,11869).addRange(12872,12895).addRange(12977,12991).addRange(13004,13007).addRange(13169,13178).addRange(13184,13279).addRange(19904,19967).addRange(42760,42785).addRange(42888,42890).addRange(43882,43883).addRange(65040,65049).addRange(65072,65092).addRange(65095,65106),e.addRange(65108,65126).addRange(65128,65131).addRange(65281,65312).addRange(65339,65344).addRange(65371,65376).addRange(65504,65510).addRange(65512,65518).addRange(65529,65533).addRange(65936,65948).addRange(66e3,66044).addRange(117760,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118512).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119142).addRange(119146,119162).addRange(119171,119172).addRange(119180,119209).addRange(119214,119274).addRange(119488,119507).addRange(119520,119539).addRange(119552,119638).addRange(119666,119672).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779).addRange(120782,120831).addRange(126065,126132).addRange(126209,126269).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183),e.addRange(127185,127221).addRange(127232,127405).addRange(127462,127487).addRange(127489,127490).addRange(127504,127547).addRange(127552,127560).addRange(127584,127589).addRange(127744,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129232,129240).addRange(129280,129623).addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130042).addRange(917536,917631),S6.characters=e,S6}var P6,A6={};function k6(){if(P6)return A6;P6=1;var e=_Y(183,768,775,11799);return e.addRange(772,773).addRange(884,885).addRange(994,1007).addRange(11392,11507).addRange(11513,11519).addRange(66272,66299),A6.characters=e,A6}var C6,_6={};function I6(){if(C6)return _6;C6=1;var e=_Y();return e.addRange(73728,74649).addRange(74752,74862).addRange(74864,74868).addRange(74880,75075),_6.characters=e,_6}var D6,O6={};function N6(){if(D6)return O6;D6=1;var e=_Y(67592,67644,67647);return e.addRange(65792,65794).addRange(65799,65843).addRange(65847,65855).addRange(67584,67589).addRange(67594,67637).addRange(67639,67640),O6.characters=e,O6}var B6,M6={};function F6(){if(B6)return M6;B6=1;var e=_Y();return e.addRange(65792,65793).addRange(77712,77810),M6.characters=e,M6}var L6,U6={};function q6(){if(L6)return U6;L6=1;var e=_Y(700,772,774,776,779,785,7467,7544,7672,11843,123023);return e.addRange(768,770).addRange(1024,1327).addRange(7296,7306).addRange(11744,11775).addRange(42560,42655).addRange(65070,65071).addRange(122928,122989),U6.characters=e,U6}var G6,W6={};function V6(){if(G6)return W6;G6=1;var e=_Y();return e.addRange(66560,66639),W6.characters=e,W6}var H6,z6={};function K6(){if(H6)return z6;H6=1;var e=_Y(700,8432);return e.addRange(2304,2386).addRange(2389,2431).addRange(7376,7414).addRange(7416,7417).addRange(43056,43065).addRange(43232,43263).addRange(72448,72457),z6.characters=e,z6}var X6,J6={};function Y6(){if(X6)return J6;X6=1;var e=_Y(71945);return e.addRange(71936,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,72006).addRange(72016,72025),J6.characters=e,J6}var $6,Q6={};function Z6(){if($6)return Q6;$6=1;var e=_Y();return e.addRange(2404,2415).addRange(43056,43065).addRange(71680,71739),Q6.characters=e,Q6}var e4,t4={};function r4(){if(e4)return t4;e4=1;var e=_Y(183,778,11836);return e.addRange(775,776).addRange(803,804).addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(113820,113827),t4.characters=e,t4}var a4,n4={};function s4(){if(a4)return n4;a4=1;var e=_Y();return e.addRange(77824,78933).addRange(78944,82938),n4.characters=e,n4}var o4,i4={};function d4(){if(o4)return i4;o4=1;var e=_Y(183,773);return e.addRange(66816,66855),i4.characters=e,i4}var c4,l4={};function u4(){if(c4)return l4;c4=1;var e=_Y();return e.addRange(69600,69622),l4.characters=e,l4}var p4,f4={};function g4(){if(p4)return f4;p4=1;var e=_Y(782,4696,4800);return e.addRange(4608,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4957,4988).addRange(4992,5017).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926),f4.characters=e,f4}var m4,y4={};function h4(){if(m4)return y4;m4=1;var e=_Y(1548,1563,1567);return e.addRange(68928,68965).addRange(68969,68997).addRange(69006,69007),y4.characters=e,y4}var b4,v4={};function x4(){if(b4)return v4;b4=1;var e=_Y(183,1417,4295,4301,8282,11559,11565,11825);return e.addRange(4256,4293).addRange(4304,4351).addRange(7312,7354).addRange(7357,7359).addRange(11520,11557),v4.characters=e,v4}var R4,j4={};function w4(){if(R4)return j4;R4=1;var e=_Y(183,771,773,1156,1159,1417,4347,8282,11843,42607);return e.addRange(11264,11359).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922),j4.characters=e,j4}var E4,S4={};function T4(){if(E4)return S4;E4=1;var e=_Y(183,776,817);return e.addRange(772,773).addRange(66352,66378),S4.characters=e,S4}var P4,A4={};function k4(){if(P4)return A4;P4=1;var e=_Y(7376,8432,70480,70487,73683);return e.addRange(2385,2386).addRange(2404,2405).addRange(3046,3059).addRange(7378,7379).addRange(7410,7412).addRange(7416,7417).addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70459,70468).addRange(70471,70472).addRange(70475,70477).addRange(70493,70499).addRange(70502,70508).addRange(70512,70516).addRange(73680,73681),A4.characters=e,A4}var C4,_4={};function I4(){if(C4)return _4;C4=1;var e=_Y(183,772,774,776,787,834,837,895,900,902,908,8025,8027,8029,8285,8486,43877,65952);return e.addRange(768,769).addRange(880,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,993).addRange(1008,1023).addRange(7462,7466).addRange(7517,7521).addRange(7526,7530).addRange(7615,7617).addRange(7936,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8132).addRange(8134,8147).addRange(8150,8155).addRange(8157,8175).addRange(8178,8180).addRange(8182,8190).addRange(65856,65934).addRange(119296,119365),_4.characters=e,_4}var D4,O4={};function N4(){if(D4)return O4;D4=1;var e=_Y(2768);return e.addRange(2385,2386).addRange(2404,2405).addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2748,2757).addRange(2759,2761).addRange(2763,2765).addRange(2784,2787).addRange(2790,2801).addRange(2809,2815).addRange(43056,43065),O4.characters=e,O4}var B4,M4={};function F4(){if(B4)return M4;B4=1;var e=_Y(183);return e.addRange(2404,2405).addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73104,73105).addRange(73107,73112).addRange(73120,73129),M4.characters=e,M4}var L4,U4={};function q4(){if(L4)return U4;L4=1;var e=_Y(2620,2641,2654);return e.addRange(2385,2386).addRange(2404,2405).addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2649,2652).addRange(2662,2678).addRange(43056,43065),U4.characters=e,U4}var G4,W4={};function V4(){if(G4)return W4;G4=1;var e=_Y(2405);return e.addRange(90368,90425),W4.characters=e,W4}var H4,z4={};function K4(){if(H4)return z4;H4=1;var e=_Y(183,12336,12539,12783,13055);return e.addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12272,12287).addRange(12289,12291).addRange(12293,12305).addRange(12307,12319).addRange(12321,12333).addRange(12343,12351).addRange(12688,12703).addRange(12736,12773).addRange(12832,12871).addRange(12928,12976).addRange(12992,13003).addRange(13144,13168).addRange(13179,13183).addRange(13280,13310).addRange(13312,19903).addRange(19968,40959).addRange(42752,42759).addRange(63744,64109).addRange(64112,64217).addRange(65093,65094).addRange(65377,65381).addRange(94178,94179).addRange(94192,94198).addRange(119648,119665).addRange(127568,127569).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),z4.characters=e,z4}var X4,J4={};function Y4(){if(X4)return J4;X4=1;var e=_Y(12343,12539);return e.addRange(4352,4607).addRange(12289,12291).addRange(12296,12305).addRange(12307,12319).addRange(12334,12336).addRange(12593,12686).addRange(12800,12830).addRange(12896,12926).addRange(43360,43388).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(65093,65094).addRange(65377,65381).addRange(65440,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500),J4.characters=e,J4}var $4,Q4={};function Z4(){if($4)return Q4;$4=1;var e=_Y(1548,1563,1567,1600,1748);return e.addRange(68864,68903).addRange(68912,68921),Q4.characters=e,Q4}var e7,t7={};function r7(){if(e7)return t7;e7=1;var e=_Y();return e.addRange(5920,5942),t7.characters=e,t7}var a7,n7={};function s7(){if(a7)return n7;a7=1;var e=_Y();return e.addRange(67808,67826).addRange(67828,67829).addRange(67835,67839),n7.characters=e,n7}var o7,i7={};function d7(){if(o7)return i7;o7=1;var e=_Y(64318);return e.addRange(775,776).addRange(1425,1479).addRange(1488,1514).addRange(1519,1524).addRange(64285,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64335),i7.characters=e,i7}var c7,l7={};function u7(){if(c7)return l7;c7=1;var e=_Y(12343,65392,110898,127488);return e.addRange(12289,12291).addRange(12296,12305).addRange(12307,12319).addRange(12336,12341).addRange(12348,12349).addRange(12353,12438).addRange(12441,12448).addRange(12539,12540).addRange(65093,65094).addRange(65377,65381).addRange(65438,65439).addRange(110593,110879).addRange(110928,110930),l7.characters=e,l7}var p7,f7={};function g7(){if(p7)return f7;p7=1;var e=_Y();return e.addRange(67648,67669).addRange(67671,67679),f7.characters=e,f7}var m7,y7={};function h7(){if(m7)return y7;m7=1;var e=_Y(783,786,815,7673,66045);return e.addRange(788,802).addRange(806,812).addRange(818,833).addRange(835,836).addRange(838,855).addRange(857,861).addRange(863,866).addRange(2387,2388).addRange(6832,6877).addRange(6880,6891).addRange(7618,7671).addRange(7675,7679).addRange(8204,8205).addRange(8400,8431).addRange(65024,65039).addRange(65056,65069).addRange(118528,118573).addRange(118576,118598).addRange(119143,119145).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(917760,917999),y7.characters=e,y7}var b7,v7={};function x7(){if(b7)return v7;b7=1;var e=_Y();return e.addRange(68448,68466).addRange(68472,68479),v7.characters=e,v7}var R7,j7={};function w7(){if(R7)return j7;R7=1;var e=_Y();return e.addRange(68416,68437).addRange(68440,68447),j7.characters=e,j7}var E7,S7={};function T7(){if(E7)return S7;E7=1;var e=_Y();return e.addRange(43392,43469).addRange(43471,43481).addRange(43486,43487),S7.characters=e,S7}var P7,A7={};function k7(){if(P7)return A7;P7=1;var e=_Y(11825,69837);return e.addRange(2406,2415).addRange(43056,43065).addRange(69760,69826),A7.characters=e,A7}var C7,_7={};function I7(){if(C7)return _7;C7=1;var e=_Y(7376,7386,7410,7412);return e.addRange(2385,2386).addRange(2404,2405).addRange(3200,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3260,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3302,3311).addRange(3313,3315).addRange(7378,7379).addRange(43056,43061),_7.characters=e,_7}var D7,O7={};function N7(){if(D7)return O7;D7=1;var e=_Y(773,803,12343,110592,110933);return e.addRange(12289,12291).addRange(12296,12305).addRange(12307,12319).addRange(12336,12341).addRange(12348,12349).addRange(12441,12444).addRange(12448,12543).addRange(12784,12799).addRange(13008,13054).addRange(13056,13143).addRange(65093,65094).addRange(65377,65439).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110880,110882).addRange(110948,110951),O7.characters=e,O7}var B7,M7={};function F7(){if(B7)return M7;B7=1;var e=_Y();return e.addRange(73472,73488).addRange(73490,73530).addRange(73534,73562),M7.characters=e,M7}var L7,U7={};function q7(){if(L7)return U7;L7=1;var e=_Y();return e.addRange(43264,43311),U7.characters=e,U7}var G7,W7={};function V7(){if(G7)return W7;G7=1;var e=_Y();return e.addRange(68096,68099).addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68152,68154).addRange(68159,68168).addRange(68176,68184),W7.characters=e,W7}var H7,z7={};function K7(){if(H7)return z7;H7=1;var e=_Y(94180,101631);return e.addRange(101120,101589),z7.characters=e,z7}var X7,J7={};function Y7(){if(X7)return J7;X7=1;var e=_Y();return e.addRange(6016,6109).addRange(6112,6121).addRange(6128,6137).addRange(6624,6655),J7.characters=e,J7}var $7,Q7={};function Z7(){if($7)return Q7;$7=1;var e=_Y();return e.addRange(2790,2799).addRange(43056,43065).addRange(70144,70161).addRange(70163,70209),Q7.characters=e,Q7}var e3,t3={};function r3(){if(e3)return t3;e3=1;var e=_Y();return e.addRange(2404,2405).addRange(43056,43065).addRange(70320,70378).addRange(70384,70393),t3.characters=e,t3}var a3,n3={};function s3(){if(a3)return n3;a3=1;var e=_Y();return e.addRange(93504,93561),n3.characters=e,n3}var o3,i3={};function d3(){if(o3)return i3;o3=1;var e=_Y(3716,3749,3782);return e.addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3773).addRange(3776,3780).addRange(3784,3790).addRange(3792,3801).addRange(3804,3807),i3.characters=e,i3}var c3,l3={};function u3(){if(c3)return l3;c3=1;var e=_Y(170,183,186,700,711,717,727,729,787,856,862,4347,7672,8239,8305,8319,8432,8498,8526,11799,43310);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,696).addRange(713,715).addRange(736,740).addRange(768,782).addRange(784,785).addRange(803,805).addRange(813,814).addRange(816,817).addRange(867,879).addRange(1157,1158).addRange(2385,2386).addRange(7424,7461).addRange(7468,7516).addRange(7522,7525).addRange(7531,7543).addRange(7545,7614).addRange(7680,7935).addRange(8336,8348).addRange(8490,8491).addRange(8544,8584).addRange(11360,11391).addRange(42752,42759).addRange(42786,42887).addRange(42891,42972).addRange(42993,43007).addRange(43824,43866).addRange(43868,43876).addRange(43878,43881).addRange(64256,64262).addRange(65313,65338).addRange(65345,65370).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(122624,122654).addRange(122661,122666),l3.characters=e,l3}var p3,f3={};function g3(){if(p3)return f3;p3=1;var e=_Y();return e.addRange(7168,7223).addRange(7227,7241).addRange(7245,7247),f3.characters=e,f3}var m3,y3={};function h3(){if(m3)return y3;m3=1;var e=_Y(2405,6464);return e.addRange(6400,6430).addRange(6432,6443).addRange(6448,6459).addRange(6468,6479),y3.characters=e,y3}var b3,v3={};function x3(){if(b3)return v3;b3=1;var e=_Y();return e.addRange(65799,65843).addRange(67072,67382).addRange(67392,67413).addRange(67424,67431),v3.characters=e,v3}var R3,j3={};function w3(){if(R3)return j3;R3=1;var e=_Y();return e.addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786).addRange(65792,65794).addRange(65799,65843).addRange(65847,65855),j3.characters=e,j3}var E3,S3={};function T3(){if(E3)return S3;E3=1;var e=_Y(700,717,73648);return e.addRange(12298,12299).addRange(42192,42239),S3.characters=e,S3}var P3,A3={};function k3(){if(P3)return A3;P3=1;var e=_Y(8282);return e.addRange(66176,66204),A3.characters=e,A3}var C3,_3={};function I3(){if(C3)return _3;C3=1;var e=_Y(183,11825,67903);return e.addRange(67872,67897),_3.characters=e,_3}var D3,O3={};function N3(){if(D3)return O3;D3=1;var e=_Y(183);return e.addRange(2404,2415).addRange(43056,43065).addRange(69968,70006),O3.characters=e,O3}var B3,M3={};function F3(){if(B3)return M3;B3=1;var e=_Y();return e.addRange(73440,73464),M3.characters=e,M3}var L3,U3={};function q3(){if(L3)return U3;L3=1;var e=_Y(7386,7410);return e.addRange(2385,2386).addRange(2404,2405).addRange(3328,3340).addRange(3342,3344).addRange(3346,3396).addRange(3398,3400).addRange(3402,3407).addRange(3412,3427).addRange(3430,3455).addRange(43056,43058),U3.characters=e,U3}var G3,W3={};function V3(){if(G3)return W3;G3=1;var e=_Y(1600,2142);return e.addRange(2112,2139),W3.characters=e,W3}var H3,z3={};function K3(){if(H3)return z3;H3=1;var e=_Y(1600);return e.addRange(68288,68326).addRange(68331,68342),z3.characters=e,z3}var X3,J3={};function Y3(){if(X3)return J3;X3=1;var e=_Y();return e.addRange(72816,72847).addRange(72850,72871).addRange(72873,72886),J3.characters=e,J3}var $3,Q3={};function Z3(){if($3)return Q3;$3=1;var e=_Y(73018);return e.addRange(2404,2405).addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73031).addRange(73040,73049),Q3.characters=e,Q3}var e8,t8={};function r8(){if(e8)return t8;e8=1;var e=_Y();return e.addRange(93760,93850),t8.characters=e,t8}var a8,n8={};function s8(){if(a8)return n8;a8=1;var e=_Y();return e.addRange(43744,43766).addRange(43968,44013).addRange(44016,44025),n8.characters=e,n8}var o8,i8={};function d8(){if(o8)return i8;o8=1;var e=_Y();return e.addRange(124928,125124).addRange(125127,125142),i8.characters=e,i8}var c8,l8={};function u8(){if(c8)return l8;c8=1;var e=_Y();return e.addRange(68e3,68023).addRange(68028,68047).addRange(68050,68095),l8.characters=e,l8}var p8,f8={};function g8(){if(p8)return f8;p8=1;var e=_Y(8285);return e.addRange(67968,67999),f8.characters=e,f8}var m8,y8={};function h8(){if(m8)return y8;m8=1;var e=_Y();return e.addRange(93952,94026).addRange(94031,94087).addRange(94095,94111),y8.characters=e,y8}var b8,v8={};function x8(){if(b8)return v8;b8=1;var e=_Y();return e.addRange(43056,43065).addRange(71168,71236).addRange(71248,71257),v8.characters=e,v8}var R8,j8={};function w8(){if(R8)return j8;R8=1;var e=_Y(8239);return e.addRange(6144,6169).addRange(6176,6264).addRange(6272,6314).addRange(12289,12290).addRange(12296,12299).addRange(71264,71276),j8.characters=e,j8}var E8,S8={};function T8(){if(E8)return S8;E8=1;var e=_Y();return e.addRange(92736,92766).addRange(92768,92777).addRange(92782,92783),S8.characters=e,S8}var P8,A8={};function k8(){if(P8)return A8;P8=1;var e=_Y(70280);return e.addRange(2662,2671).addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70313),A8.characters=e,A8}var C8,_8={};function I8(){if(C8)return _8;C8=1;var e=_Y(43310);return e.addRange(4096,4255).addRange(43488,43518).addRange(43616,43647).addRange(71376,71395),_8.characters=e,_8}var D8,O8={};function N8(){if(D8)return O8;D8=1;var e=_Y();return e.addRange(67712,67742).addRange(67751,67759),O8.characters=e,O8}var B8,M8={};function F8(){if(B8)return M8;B8=1;var e=_Y();return e.addRange(124112,124153),M8.characters=e,M8}var L8,U8={};function q8(){if(L8)return U8;L8=1;var e=_Y(2385,7401,7410,7418);return e.addRange(2404,2405).addRange(3302,3311).addRange(43056,43061).addRange(72096,72103).addRange(72106,72151).addRange(72154,72164),U8.characters=e,U8}var G8,W8={};function V8(){if(G8)return W8;G8=1;var e=_Y();return e.addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6622,6623),W8.characters=e,W8}var H8,z8={};function K8(){if(H8)return z8;H8=1;var e=_Y(7381,7394,7401,7403,7405);return e.addRange(2385,2386).addRange(7383,7384).addRange(70656,70747).addRange(70749,70753),z8.characters=e,z8}var X8,J8={};function Y8(){if(X8)return J8;X8=1;var e=_Y(1548,1563,1567);return e.addRange(1984,2042).addRange(2045,2047).addRange(64830,64831),J8.characters=e,J8}var $8,Q8={};function Z8(){if($8)return Q8;$8=1;var e=_Y(94177);return e.addRange(110960,111355),Q8.characters=e,Q8}var e9,t9={};function r9(){if(e9)return t9;e9=1;var e=_Y();return e.addRange(123136,123180).addRange(123184,123197).addRange(123200,123209).addRange(123214,123215),t9.characters=e,t9}var a9,n9={};function s9(){if(a9)return n9;a9=1;var e=_Y();return e.addRange(5760,5788),n9.characters=e,n9}var o9,i9={};function d9(){if(o9)return i9;o9=1;var e=_Y();return e.addRange(7248,7295),i9.characters=e,i9}var c9,l9={};function u9(){if(c9)return l9;c9=1;var e=_Y(124415);return e.addRange(2404,2405).addRange(124368,124410),l9.characters=e,l9}var p9,f9={};function g9(){if(p9)return f9;p9=1;var e=_Y(8282,8285,11825,11841);return e.addRange(68736,68786).addRange(68800,68850).addRange(68858,68863),f9.characters=e,f9}var m9,y9={};function h9(){if(m9)return y9;m9=1;var e=_Y();return e.addRange(66304,66339).addRange(66349,66351),y9.characters=e,y9}var b9,v9={};function x9(){if(b9)return v9;b9=1;var e=_Y();return e.addRange(68224,68255),v9.characters=e,v9}var R9,j9={};function w9(){if(R9)return j9;R9=1;var e=_Y(183,768,787,1155);return e.addRange(774,776).addRange(66384,66426),j9.characters=e,j9}var E9,S9={};function T9(){if(E9)return S9;E9=1;var e=_Y();return e.addRange(66464,66499).addRange(66504,66517),S9.characters=e,S9}var P9,A9={};function k9(){if(P9)return A9;P9=1;var e=_Y();return e.addRange(69376,69415),A9.characters=e,A9}var C9,_9={};function I9(){if(C9)return _9;C9=1;var e=_Y();return e.addRange(68192,68223),_9.characters=e,_9}var D9,O9={};function N9(){if(D9)return O9;D9=1;var e=_Y(8282,11824);return e.addRange(68608,68680),O9.characters=e,O9}var B9,M9={};function F9(){if(B9)return M9;B9=1;var e=_Y(1600,68338);return e.addRange(69488,69513),M9.characters=e,M9}var L9,U9={};function q9(){if(L9)return U9;L9=1;var e=_Y(7386,7410);return e.addRange(2385,2386).addRange(2404,2405).addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2876,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2908,2909).addRange(2911,2915).addRange(2918,2935),U9.characters=e,U9}var G9,W9={};function V9(){if(G9)return W9;G9=1;var e=_Y(769,772,779,856);return e.addRange(66736,66771).addRange(66776,66811),W9.characters=e,W9}var H9,z9={};function K9(){if(H9)return z9;H9=1;var e=_Y();return e.addRange(66688,66717).addRange(66720,66729),z9.characters=e,z9}var X9,J9={};function Y9(){if(X9)return J9;X9=1;var e=_Y();return e.addRange(92928,92997).addRange(93008,93017).addRange(93019,93025).addRange(93027,93047).addRange(93053,93071),J9.characters=e,J9}var $9,Q9={};function Z9(){if($9)return Q9;$9=1;var e=_Y();return e.addRange(67680,67711),Q9.characters=e,Q9}var e5,t5={};function r5(){if(e5)return t5;e5=1;var e=_Y();return e.addRange(72384,72440),t5.characters=e,t5}var a5,n5={};function s5(){if(a5)return n5;a5=1;var e=_Y(6149,8239,12290);return e.addRange(6146,6147).addRange(43072,43127),n5.characters=e,n5}var o5,i5={};function d5(){if(o5)return i5;o5=1;var e=_Y(67871);return e.addRange(67840,67867),i5.characters=e,i5}var c5,l5={};function u5(){if(c5)return l5;c5=1;var e=_Y(1600);return e.addRange(68480,68497).addRange(68505,68508).addRange(68521,68527),l5.characters=e,l5}var p5,f5={};function g5(){if(p5)return f5;p5=1;var e=_Y(43359);return e.addRange(43312,43347),f5.characters=e,f5}var m5,y5={};function h5(){if(m5)return y5;m5=1;var e=_Y();return e.addRange(5792,5880),y5.characters=e,y5}var b5,v5={};function x5(){if(b5)return v5;b5=1;var e=_Y(11825);return e.addRange(2048,2093).addRange(2096,2110),v5.characters=e,v5}var R5,j5={};function w5(){if(R5)return j5;R5=1;var e=_Y();return e.addRange(43136,43205).addRange(43214,43225),j5.characters=e,j5}var E5,S5={};function T5(){if(E5)return S5;E5=1;var e=_Y(2385,7383,7385,7392,7402,7405,43064);return e.addRange(7388,7389).addRange(43056,43061).addRange(70016,70111).addRange(72544,72551),S5.characters=e,S5}var P5,A5={};function k5(){if(P5)return A5;P5=1;var e=_Y(183);return e.addRange(66640,66687),A5.characters=e,A5}var C5,_5={};function I5(){if(C5)return _5;C5=1;var e=_Y();return e.addRange(71040,71093).addRange(71096,71133),_5.characters=e,_5}var D5,O5={};function N5(){if(D5)return O5;D5=1;var e=_Y();return e.addRange(67904,67929),O5.characters=e,O5}var B5,M5={};function F5(){if(B5)return M5;B5=1;var e=_Y();return e.addRange(120832,121483).addRange(121499,121503).addRange(121505,121519),M5.characters=e,M5}var L5,U5={};function q5(){if(L5)return U5;L5=1;var e=_Y(3517,3530,3542,7410);return e.addRange(2404,2405).addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3558,3567).addRange(3570,3572).addRange(70113,70132),U5.characters=e,U5}var G5,W5={};function V5(){if(G5)return W5;G5=1;var e=_Y(1600);return e.addRange(69424,69465),W5.characters=e,W5}var H5,z5={};function K5(){if(H5)return z5;H5=1;var e=_Y();return e.addRange(69840,69864).addRange(69872,69881),z5.characters=e,z5}var X5,J5={};function Y5(){if(X5)return J5;X5=1;var e=_Y();return e.addRange(72272,72354),J5.characters=e,J5}var $5,Q5={};function Z5(){if($5)return Q5;$5=1;var e=_Y();return e.addRange(7040,7103).addRange(7360,7367),Q5.characters=e,Q5}var eee,tee={};function ree(){if(eee)return tee;eee=1;var e=_Y(771,781,784,813,817);return e.addRange(768,769).addRange(72640,72673).addRange(72688,72697),tee.characters=e,tee}var aee,nee={};function see(){if(aee)return nee;aee=1;var e=_Y();return e.addRange(2404,2405).addRange(2534,2543).addRange(43008,43052),nee.characters=e,nee}var oee,iee={};function dee(){if(oee)return iee;oee=1;var e=_Y(778,1548,1567,1600,1648,7672,7674);return e.addRange(771,772).addRange(775,776).addRange(803,805).addRange(813,814).addRange(816,817).addRange(1563,1564).addRange(1611,1621).addRange(1792,1805).addRange(1807,1866).addRange(1869,1871).addRange(2144,2154),iee.characters=e,iee}var cee,lee={};function uee(){if(cee)return lee;cee=1;var e=_Y(5919);return e.addRange(5888,5909).addRange(5941,5942),lee.characters=e,lee}var pee,fee={};function gee(){if(pee)return fee;pee=1;var e=_Y();return e.addRange(5941,5942).addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003),fee.characters=e,fee}var mee,yee={};function hee(){if(mee)return yee;mee=1;var e=_Y(780);return e.addRange(768,769).addRange(775,776).addRange(4160,4169).addRange(6480,6509).addRange(6512,6516),yee.characters=e,yee}var bee,vee={};function xee(){if(bee)return vee;bee=1;var e=_Y();return e.addRange(6688,6750).addRange(6752,6780).addRange(6783,6793).addRange(6800,6809).addRange(6816,6829),vee.characters=e,vee}var Ree,jee={};function wee(){if(Ree)return jee;Ree=1;var e=_Y();return e.addRange(43648,43714).addRange(43739,43743),jee.characters=e,jee}var Eee,See={};function Tee(){if(Eee)return See;Eee=1;var e=_Y();return e.addRange(124608,124638).addRange(124640,124661).addRange(124670,124671),See.characters=e,See}var Pee,Aee={};function kee(){if(Pee)return Aee;Pee=1;var e=_Y();return e.addRange(2404,2405).addRange(43056,43065).addRange(71296,71353).addRange(71360,71369),Aee.characters=e,Aee}var Cee,_ee={};function Iee(){if(Cee)return _ee;Cee=1;var e=_Y(2972,3024,3031,7386,43251,70401,70403,73727);return e.addRange(2385,2386).addRange(2404,2405).addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3006,3010).addRange(3014,3016).addRange(3018,3021).addRange(3046,3066).addRange(70459,70460).addRange(73664,73713),_ee.characters=e,_ee}var Dee,Oee={};function Nee(){if(Dee)return Oee;Dee=1;var e=_Y();return e.addRange(92784,92862).addRange(92864,92873),Oee.characters=e,Oee}var Bee,Mee={};function Fee(){if(Bee)return Mee;Bee=1;var e=_Y(12783,94176);return e.addRange(12272,12287).addRange(94208,101119).addRange(101632,101662).addRange(101760,101874),Mee.characters=e,Mee}var Lee,Uee={};function qee(){if(Lee)return Uee;Lee=1;var e=_Y(7384,7386,7410);return e.addRange(2385,2386).addRange(2404,2405).addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3132,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3174,3183).addRange(3191,3199).addRange(7381,7382),Uee.characters=e,Uee}var Gee,Wee={};function Vee(){if(Gee)return Wee;Gee=1;var e=_Y(1548,1567,65010,65021);return e.addRange(1563,1564).addRange(1632,1641).addRange(1920,1969),Wee.characters=e,Wee}var Hee,zee={};function Kee(){if(Hee)return zee;Hee=1;var e=_Y(700,727,771,817);return e.addRange(3585,3642).addRange(3648,3675),zee.characters=e,zee}var Xee,Jee={};function Yee(){if(Xee)return Jee;Xee=1;var e=_Y();return e.addRange(3840,3911).addRange(3913,3948).addRange(3953,3991).addRange(3993,4028).addRange(4030,4044).addRange(4046,4052).addRange(4057,4058).addRange(12296,12299),Jee.characters=e,Jee}var $ee,Qee={};function Zee(){if($ee)return Qee;$ee=1;var e=_Y(770,772,803,11647);return e.addRange(774,777).addRange(11568,11623).addRange(11631,11632),Qee.characters=e,Qee}var ete,tte={};function rte(){if(ete)return tte;ete=1;var e=_Y(7381,7394,7410);return e.addRange(2385,2386).addRange(2404,2405).addRange(43056,43065).addRange(70784,70855).addRange(70864,70873),tte.characters=e,tte}var ate,nte={};function ste(){if(ate)return nte;ate=1;var e=_Y(769,772,775,785,787,862);return e.addRange(67008,67059),nte.characters=e,nte}var ote,ite={};function dte(){if(ote)return ite;ote=1;var e=_Y();return e.addRange(73136,73179).addRange(73184,73193),ite.characters=e,ite}var cte,lte={};function ute(){if(cte)return lte;cte=1;var e=_Y(700);return e.addRange(123536,123566),lte.characters=e,lte}var pte,fte={};function gte(){if(pte)return fte;pte=1;var e=_Y(7410,7412,43249,70539,70542,70594,70597);return e.addRange(3302,3311).addRange(43056,43061).addRange(70528,70537).addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70613).addRange(70615,70616).addRange(70625,70626),fte.characters=e,fte}var mte,yte={};function hte(){if(mte)return yte;mte=1;var e=_Y(66463);return e.addRange(66432,66461),yte.characters=e,yte}var bte,vte={};function xte(){if(bte)return vte;bte=1;var e=_Y(907,909,930,1328,1424,1806,2111,2143,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2816,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3085,3089,3113,3141,3145,3159,3163,3213,3217,3241,3252,3269,3273,3295,3312,3341,3345,3397,3401,3456,3460,3506,3516,3541,3543,3715,3717,3723,3748,3750,3781,3783,3791,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5997,6001,6431,6751,6989,8024,8026,8028,8030,8117,8133,8156,8181,8191,8293,8335,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12592,12687,12831,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65280,65511,65548,65575,65595,65598,65935,66462,66939,66955,66963,66966,66978,66994,67002,67462,67505,67593,67638,67670,67827,68100,68116,68120,69247,69290,69941,70112,70162,70279,70281,70286,70302,70404,70441,70449,70452,70458,70538,70543,70582,70593,70598,70603,70614,70748,71956,71959,71990,72713,72759,72872,72967,72970,73019,73022,73062,73065,73103,73106,73489,74863,92767,92863,93018,93026,110580,110588,110591,119893,119965,119981,119994,119996,120004,120070,120085,120093,120122,120127,120133,120145,121504,122887,122914,122917,124639,124903,124908,124911,124927,126468,126496,126499,126504,126515,126520,126522,126536,126538,126540,126544,126547,126552,126554,126556,126558,126560,126563,126571,126579,126584,126589,126591,126602,126628,126634,127168,127184,129735,129939);return e.addRange(888,889).addRange(896,899).addRange(1367,1368).addRange(1419,1420).addRange(1480,1487).addRange(1515,1518).addRange(1525,1535).addRange(1867,1868).addRange(1970,1983).addRange(2043,2044).addRange(2094,2095).addRange(2140,2141).addRange(2155,2159).addRange(2194,2198).addRange(2445,2446).addRange(2449,2450).addRange(2483,2485).addRange(2490,2491).addRange(2501,2502).addRange(2505,2506).addRange(2511,2518).addRange(2520,2523).addRange(2532,2533).addRange(2559,2560).addRange(2571,2574).addRange(2577,2578).addRange(2618,2619).addRange(2627,2630).addRange(2633,2634).addRange(2638,2640).addRange(2642,2648).addRange(2655,2661).addRange(2679,2688).addRange(2746,2747).addRange(2766,2767).addRange(2769,2783).addRange(2788,2789).addRange(2802,2808).addRange(2829,2830).addRange(2833,2834).addRange(2874,2875).addRange(2885,2886).addRange(2889,2890).addRange(2894,2900).addRange(2904,2907).addRange(2916,2917).addRange(2936,2945).addRange(2955,2957).addRange(2966,2968).addRange(2976,2978).addRange(2981,2983),e.addRange(2987,2989).addRange(3002,3005).addRange(3011,3013).addRange(3022,3023).addRange(3025,3030).addRange(3032,3045).addRange(3067,3071).addRange(3130,3131).addRange(3150,3156).addRange(3166,3167).addRange(3172,3173).addRange(3184,3190).addRange(3258,3259).addRange(3278,3284).addRange(3287,3291).addRange(3300,3301).addRange(3316,3327).addRange(3408,3411).addRange(3428,3429).addRange(3479,3481).addRange(3518,3519).addRange(3527,3529).addRange(3531,3534).addRange(3552,3557).addRange(3568,3569).addRange(3573,3584).addRange(3643,3646).addRange(3676,3712).addRange(3774,3775).addRange(3802,3803).addRange(3808,3839).addRange(3949,3952).addRange(4059,4095).addRange(4296,4300).addRange(4302,4303).addRange(4686,4687).addRange(4702,4703).addRange(4750,4751).addRange(4790,4791).addRange(4806,4807).addRange(4886,4887).addRange(4955,4956).addRange(4989,4991).addRange(5018,5023).addRange(5110,5111).addRange(5118,5119).addRange(5789,5791).addRange(5881,5887).addRange(5910,5918).addRange(5943,5951).addRange(5972,5983),e.addRange(6004,6015).addRange(6110,6111).addRange(6122,6127).addRange(6138,6143).addRange(6170,6175).addRange(6265,6271).addRange(6315,6319).addRange(6390,6399).addRange(6444,6447).addRange(6460,6463).addRange(6465,6467).addRange(6510,6511).addRange(6517,6527).addRange(6572,6575).addRange(6602,6607).addRange(6619,6621).addRange(6684,6685).addRange(6781,6782).addRange(6794,6799).addRange(6810,6815).addRange(6830,6831).addRange(6878,6879).addRange(6892,6911).addRange(7156,7163).addRange(7224,7226).addRange(7242,7244).addRange(7307,7311).addRange(7355,7356).addRange(7368,7375).addRange(7419,7423).addRange(7958,7959).addRange(7966,7967).addRange(8006,8007).addRange(8014,8015).addRange(8062,8063).addRange(8148,8149).addRange(8176,8177).addRange(8306,8307).addRange(8349,8351).addRange(8386,8399).addRange(8433,8447).addRange(8588,8591).addRange(9258,9279).addRange(9291,9311).addRange(11124,11125).addRange(11508,11512).addRange(11560,11564).addRange(11566,11567).addRange(11624,11630).addRange(11633,11646).addRange(11671,11679),e.addRange(11870,11903).addRange(12020,12031).addRange(12246,12271).addRange(12439,12440).addRange(12544,12548).addRange(12774,12782).addRange(42125,42127).addRange(42183,42191).addRange(42540,42559).addRange(42744,42751).addRange(42973,42992).addRange(43053,43055).addRange(43066,43071).addRange(43128,43135).addRange(43206,43213).addRange(43226,43231).addRange(43348,43358).addRange(43389,43391).addRange(43482,43485).addRange(43575,43583).addRange(43598,43599).addRange(43610,43611).addRange(43715,43738).addRange(43767,43776).addRange(43783,43784).addRange(43791,43792).addRange(43799,43807).addRange(43884,43887).addRange(44014,44015).addRange(44026,44031).addRange(55204,55215).addRange(55239,55242).addRange(55292,63743).addRange(64110,64111).addRange(64218,64255).addRange(64263,64274).addRange(64280,64284).addRange(64976,65007).addRange(65050,65055).addRange(65132,65135).addRange(65277,65278).addRange(65471,65473).addRange(65480,65481).addRange(65488,65489).addRange(65496,65497).addRange(65501,65503).addRange(65519,65528).addRange(65534,65535).addRange(65614,65615).addRange(65630,65663).addRange(65787,65791),e.addRange(65795,65798).addRange(65844,65846).addRange(65949,65951).addRange(65953,65999).addRange(66046,66175).addRange(66205,66207).addRange(66257,66271).addRange(66300,66303).addRange(66340,66348).addRange(66379,66383).addRange(66427,66431).addRange(66500,66503).addRange(66518,66559).addRange(66718,66719).addRange(66730,66735).addRange(66772,66775).addRange(66812,66815).addRange(66856,66863).addRange(66916,66926).addRange(67005,67007).addRange(67060,67071).addRange(67383,67391).addRange(67414,67423).addRange(67432,67455).addRange(67515,67583).addRange(67590,67591).addRange(67641,67643).addRange(67645,67646).addRange(67743,67750).addRange(67760,67807).addRange(67830,67834).addRange(67868,67870).addRange(67898,67902).addRange(67930,67967).addRange(68024,68027).addRange(68048,68049).addRange(68103,68107).addRange(68150,68151).addRange(68155,68158).addRange(68169,68175).addRange(68185,68191).addRange(68256,68287).addRange(68327,68330).addRange(68343,68351).addRange(68406,68408).addRange(68438,68439).addRange(68467,68471).addRange(68498,68504).addRange(68509,68520).addRange(68528,68607).addRange(68681,68735),e.addRange(68787,68799).addRange(68851,68857).addRange(68904,68911).addRange(68922,68927).addRange(68966,68968).addRange(68998,69005).addRange(69008,69215).addRange(69294,69295).addRange(69298,69313).addRange(69320,69327).addRange(69337,69369).addRange(69416,69423).addRange(69466,69487).addRange(69514,69551).addRange(69580,69599).addRange(69623,69631).addRange(69710,69713).addRange(69750,69758).addRange(69827,69836).addRange(69838,69839).addRange(69865,69871).addRange(69882,69887).addRange(69960,69967).addRange(70007,70015).addRange(70133,70143).addRange(70210,70271).addRange(70314,70319).addRange(70379,70383).addRange(70394,70399).addRange(70413,70414).addRange(70417,70418).addRange(70469,70470).addRange(70473,70474).addRange(70478,70479).addRange(70481,70486).addRange(70488,70492).addRange(70500,70501).addRange(70509,70511).addRange(70517,70527).addRange(70540,70541).addRange(70595,70596).addRange(70617,70624).addRange(70627,70655).addRange(70754,70783).addRange(70856,70863).addRange(70874,71039).addRange(71094,71095).addRange(71134,71167).addRange(71237,71247).addRange(71258,71263).addRange(71277,71295),e.addRange(71354,71359).addRange(71370,71375).addRange(71396,71423).addRange(71451,71452).addRange(71468,71471).addRange(71495,71679).addRange(71740,71839).addRange(71923,71934).addRange(71943,71944).addRange(71946,71947).addRange(71993,71994).addRange(72007,72015).addRange(72026,72095).addRange(72104,72105).addRange(72152,72153).addRange(72165,72191).addRange(72264,72271).addRange(72355,72367).addRange(72441,72447).addRange(72458,72543).addRange(72552,72639).addRange(72674,72687).addRange(72698,72703).addRange(72774,72783).addRange(72813,72815).addRange(72848,72849).addRange(72887,72959).addRange(73015,73017).addRange(73032,73039).addRange(73050,73055).addRange(73113,73119).addRange(73130,73135).addRange(73180,73183).addRange(73194,73439).addRange(73465,73471).addRange(73531,73533).addRange(73563,73647).addRange(73649,73663).addRange(73714,73726).addRange(74650,74751).addRange(74869,74879).addRange(75076,77711).addRange(77811,77823).addRange(78934,78943).addRange(82939,82943).addRange(83527,90367).addRange(90426,92159).addRange(92729,92735).addRange(92778,92781).addRange(92874,92879).addRange(92910,92911),e.addRange(92918,92927).addRange(92998,93007).addRange(93048,93052).addRange(93072,93503).addRange(93562,93759).addRange(93851,93855).addRange(93881,93882).addRange(93908,93951).addRange(94027,94030).addRange(94088,94094).addRange(94112,94175).addRange(94181,94191).addRange(94199,94207).addRange(101590,101630).addRange(101663,101759).addRange(101875,110575).addRange(110883,110897).addRange(110899,110927).addRange(110931,110932).addRange(110934,110947).addRange(110952,110959).addRange(111356,113663).addRange(113771,113775).addRange(113789,113791).addRange(113801,113807).addRange(113818,113819).addRange(113828,117759).addRange(118013,118015).addRange(118452,118457).addRange(118481,118495).addRange(118513,118527).addRange(118574,118575).addRange(118599,118607).addRange(118724,118783).addRange(119030,119039).addRange(119079,119080).addRange(119275,119295).addRange(119366,119487).addRange(119508,119519).addRange(119540,119551).addRange(119639,119647).addRange(119673,119807).addRange(119968,119969).addRange(119971,119972).addRange(119975,119976).addRange(120075,120076).addRange(120135,120137).addRange(120486,120487).addRange(120780,120781).addRange(121484,121498).addRange(121520,122623),e.addRange(122655,122660).addRange(122667,122879).addRange(122905,122906).addRange(122923,122927).addRange(122990,123022).addRange(123024,123135).addRange(123181,123183).addRange(123198,123199).addRange(123210,123213).addRange(123216,123535).addRange(123567,123583).addRange(123642,123646).addRange(123648,124111).addRange(124154,124367).addRange(124411,124414).addRange(124416,124607).addRange(124662,124669).addRange(124672,124895).addRange(125125,125126).addRange(125143,125183).addRange(125260,125263).addRange(125274,125277).addRange(125280,126064).addRange(126133,126208).addRange(126270,126463).addRange(126501,126502).addRange(126524,126529).addRange(126531,126534).addRange(126549,126550).addRange(126565,126566).addRange(126620,126624).addRange(126652,126703).addRange(126706,126975).addRange(127020,127023).addRange(127124,127135).addRange(127151,127152).addRange(127222,127231).addRange(127406,127461).addRange(127491,127503).addRange(127548,127551).addRange(127561,127567).addRange(127570,127583).addRange(127590,127743).addRange(128729,128731).addRange(128749,128751).addRange(128765,128767).addRange(128986,128991).addRange(129004,129007).addRange(129009,129023).addRange(129036,129039).addRange(129096,129103),e.addRange(129114,129119).addRange(129160,129167).addRange(129198,129199).addRange(129212,129215).addRange(129218,129231).addRange(129241,129279).addRange(129624,129631).addRange(129646,129647).addRange(129661,129663).addRange(129675,129677).addRange(129737,129740).addRange(129757,129758).addRange(129771,129774).addRange(129785,129791).addRange(130043,131071).addRange(173792,173823).addRange(178206,178207).addRange(183982,183983).addRange(191457,191471).addRange(192094,194559).addRange(195102,196607).addRange(201547,201551).addRange(210042,917504).addRange(917506,917535).addRange(917632,917759).addRange(918e3,1114111),vte.characters=e,vte}var Rte,jte={};function wte(){if(Rte)return jte;Rte=1;var e=_Y();return e.addRange(42240,42539),jte.characters=e,jte}var Ete,Ste={};function Tte(){if(Ete)return Ste;Ete=1;var e=_Y();return e.addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004),Ste.characters=e,Ste}var Pte,Ate={};function kte(){if(Pte)return Ate;Pte=1;var e=_Y(123647);return e.addRange(123584,123641),Ate.characters=e,Ate}var Cte,_te={};function Ite(){if(Cte)return _te;Cte=1;var e=_Y(71935);return e.addRange(71840,71922),_te.characters=e,_te}var Dte,Ote={};function Nte(){if(Dte)return Ote;Dte=1;var e=_Y(1548,1563,1567);return e.addRange(1632,1641).addRange(69248,69289).addRange(69291,69293).addRange(69296,69297),Ote.characters=e,Ote}var Bte,Mte={};function Fte(){if(Bte)return Mte;Bte=1;var e=_Y(12539);return e.addRange(12289,12290).addRange(12296,12305).addRange(12308,12315).addRange(40960,42124).addRange(42128,42182).addRange(65377,65381),Mte.characters=e,Mte}var Lte,Ute={};function qte(){if(Lte)return Ute;Lte=1;var e=_Y();return e.addRange(72192,72263),Ute.characters=e,Ute}var Gte,Wte={};function Vte(){if(Gte)return Wte;Gte=1;var e=_Y();return e.addRange(125184,125259).addRange(125264,125273).addRange(125278,125279),Wte.characters=e,Wte}var Hte,zte={};function Kte(){if(Hte)return zte;Hte=1;var e=_Y();return e.addRange(71424,71450).addRange(71453,71467).addRange(71472,71494),zte.characters=e,zte}var Xte,Jte={};function Yte(){if(Xte)return Jte;Xte=1;var e=_Y();return e.addRange(82944,83526),Jte.characters=e,Jte}var $te,Qte={};function Zte(){if($te)return Qte;$te=1;var e=_Y(126500,126503,126521,126523,126530,126535,126537,126539,126548,126551,126553,126555,126557,126559,126564,126590);return e.addRange(1536,1540).addRange(1542,1547).addRange(1549,1562).addRange(1564,1566).addRange(1568,1599).addRange(1601,1610).addRange(1622,1647).addRange(1649,1756).addRange(1758,1791).addRange(1872,1919).addRange(2160,2193).addRange(2199,2273).addRange(2275,2303).addRange(64336,64829).addRange(64832,64975).addRange(65008,65023).addRange(65136,65140).addRange(65142,65276).addRange(69216,69246).addRange(69314,69319).addRange(69328,69336).addRange(69370,69375).addRange(126464,126467).addRange(126469,126495).addRange(126497,126498).addRange(126505,126514).addRange(126516,126519).addRange(126541,126543).addRange(126545,126546).addRange(126561,126562).addRange(126567,126570).addRange(126572,126578).addRange(126580,126583).addRange(126585,126588).addRange(126592,126601).addRange(126603,126619).addRange(126625,126627).addRange(126629,126633).addRange(126635,126651).addRange(126704,126705),Qte.characters=e,Qte}var ere,tre={};function rre(){if(ere)return tre;ere=1;var e=_Y();return e.addRange(1329,1366).addRange(1369,1418).addRange(1421,1423).addRange(64275,64279),tre.characters=e,tre}var are,nre={};function sre(){if(are)return nre;are=1;var e=_Y();return e.addRange(68352,68405).addRange(68409,68415),nre.characters=e,nre}var ore,ire={};function dre(){if(ore)return ire;ore=1;var e=_Y();return e.addRange(6912,6988).addRange(6990,7039),ire.characters=e,ire}var cre,lre={};function ure(){if(cre)return lre;cre=1;var e=_Y();return e.addRange(42656,42743).addRange(92160,92728),lre.characters=e,lre}var pre,fre={};function gre(){if(pre)return fre;pre=1;var e=_Y();return e.addRange(92880,92909).addRange(92912,92917),fre.characters=e,fre}var mre,yre={};function hre(){if(mre)return yre;mre=1;var e=_Y();return e.addRange(7104,7155).addRange(7164,7167),yre.characters=e,yre}var bre,vre={};function xre(){if(bre)return vre;bre=1;var e=_Y(2482,2519);return e.addRange(2432,2435).addRange(2437,2444).addRange(2447,2448).addRange(2451,2472).addRange(2474,2480).addRange(2486,2489).addRange(2492,2500).addRange(2503,2504).addRange(2507,2510).addRange(2524,2525).addRange(2527,2531).addRange(2534,2558),vre.characters=e,vre}var Rre,jre={};function wre(){if(Rre)return jre;Rre=1;var e=_Y();return e.addRange(93856,93880).addRange(93883,93907),jre.characters=e,jre}var Ere,Sre={};function Tre(){if(Ere)return Sre;Ere=1;var e=_Y();return e.addRange(72704,72712).addRange(72714,72758).addRange(72760,72773).addRange(72784,72812),Sre.characters=e,Sre}var Pre,Are={};function kre(){if(Pre)return Are;Pre=1;var e=_Y();return e.addRange(746,747).addRange(12549,12591).addRange(12704,12735),Are.characters=e,Are}var Cre,_re={};function Ire(){if(Cre)return _re;Cre=1;var e=_Y(69759);return e.addRange(69632,69709).addRange(69714,69749),_re.characters=e,_re}var Dre,Ore={};function Nre(){if(Dre)return Ore;Dre=1;var e=_Y();return e.addRange(10240,10495),Ore.characters=e,Ore}var Bre,Mre={};function Fre(){if(Bre)return Mre;Bre=1;var e=_Y();return e.addRange(6656,6683).addRange(6686,6687),Mre.characters=e,Mre}var Lre,Ure={};function qre(){if(Lre)return Ure;Lre=1;var e=_Y();return e.addRange(5952,5971),Ure.characters=e,Ure}var Gre,Wre={};function Vre(){if(Gre)return Wre;Gre=1;var e=_Y();return e.addRange(5120,5759).addRange(6320,6389).addRange(72368,72383),Wre.characters=e,Wre}var Hre,zre={};function Kre(){if(Hre)return zre;Hre=1;var e=_Y();return e.addRange(66208,66256),zre.characters=e,zre}var Xre,Jre={};function Yre(){if(Xre)return Jre;Xre=1;var e=_Y(66927);return e.addRange(66864,66915),Jre.characters=e,Jre}var $re,Qre={};function Zre(){if($re)return Qre;$re=1;var e=_Y();return e.addRange(69888,69940).addRange(69942,69959),Qre.characters=e,Qre}var eae,tae={};function rae(){if(eae)return tae;eae=1;var e=_Y();return e.addRange(43520,43574).addRange(43584,43597).addRange(43600,43609).addRange(43612,43615),tae.characters=e,tae}var aae,nae={};function sae(){if(aae)return nae;aae=1;var e=_Y();return e.addRange(5024,5109).addRange(5112,5117).addRange(43888,43967),nae.characters=e,nae}var oae,iae={};function dae(){if(oae)return iae;oae=1;var e=_Y();return e.addRange(69552,69579),iae.characters=e,iae}var cae,lae={};function uae(){if(cae)return lae;cae=1;var e=_Y(215,247,884,894,901,903,1541,1548,1563,1567,1600,1757,2274,3647,4347,6149,7379,7393,7418,12294,12448,12783,13055,43310,43471,43867,65279,65392,119970,119995,120134,129008,129736,917505);return e.addRange(0,64).addRange(91,96).addRange(123,169).addRange(171,185).addRange(187,191).addRange(697,735).addRange(741,745).addRange(748,767).addRange(2404,2405).addRange(4053,4056).addRange(5867,5869).addRange(5941,5942).addRange(6146,6147).addRange(7401,7404).addRange(7406,7411).addRange(7413,7415).addRange(8192,8203).addRange(8206,8292).addRange(8294,8304).addRange(8308,8318).addRange(8320,8334).addRange(8352,8385).addRange(8448,8485).addRange(8487,8489).addRange(8492,8497).addRange(8499,8525).addRange(8527,8543).addRange(8585,8587).addRange(8592,9257).addRange(9280,9290).addRange(9312,10239).addRange(10496,11123).addRange(11126,11263).addRange(11776,11869).addRange(12272,12292).addRange(12296,12320).addRange(12336,12343).addRange(12348,12351).addRange(12443,12444).addRange(12539,12540).addRange(12688,12703).addRange(12736,12773).addRange(12832,12895).addRange(12927,13007).addRange(13144,13311).addRange(19904,19967).addRange(42752,42785).addRange(42888,42890).addRange(43056,43065).addRange(43882,43883).addRange(64830,64831),e.addRange(65040,65049).addRange(65072,65106).addRange(65108,65126).addRange(65128,65131).addRange(65281,65312).addRange(65339,65344).addRange(65371,65381).addRange(65438,65439).addRange(65504,65510).addRange(65512,65518).addRange(65529,65533).addRange(65792,65794).addRange(65799,65843).addRange(65847,65855).addRange(65936,65948).addRange(66e3,66044).addRange(66273,66299).addRange(113824,113827).addRange(117760,118012).addRange(118016,118451).addRange(118458,118480).addRange(118496,118512).addRange(118608,118723).addRange(118784,119029).addRange(119040,119078).addRange(119081,119142).addRange(119146,119162).addRange(119171,119172).addRange(119180,119209).addRange(119214,119274).addRange(119488,119507).addRange(119520,119539).addRange(119552,119638).addRange(119648,119672).addRange(119808,119892).addRange(119894,119964).addRange(119966,119967).addRange(119973,119974).addRange(119977,119980).addRange(119982,119993).addRange(119997,120003).addRange(120005,120069).addRange(120071,120074).addRange(120077,120084).addRange(120086,120092).addRange(120094,120121).addRange(120123,120126).addRange(120128,120132).addRange(120138,120144).addRange(120146,120485).addRange(120488,120779),e.addRange(120782,120831).addRange(126065,126132).addRange(126209,126269).addRange(126976,127019).addRange(127024,127123).addRange(127136,127150).addRange(127153,127167).addRange(127169,127183).addRange(127185,127221).addRange(127232,127405).addRange(127462,127487).addRange(127489,127490).addRange(127504,127547).addRange(127552,127560).addRange(127568,127569).addRange(127584,127589).addRange(127744,128728).addRange(128732,128748).addRange(128752,128764).addRange(128768,128985).addRange(128992,129003).addRange(129024,129035).addRange(129040,129095).addRange(129104,129113).addRange(129120,129159).addRange(129168,129197).addRange(129200,129211).addRange(129216,129217).addRange(129232,129240).addRange(129280,129623).addRange(129632,129645).addRange(129648,129660).addRange(129664,129674).addRange(129678,129734).addRange(129741,129756).addRange(129759,129770).addRange(129775,129784).addRange(129792,129938).addRange(129940,130042).addRange(917536,917631),lae.characters=e,lae}var pae,fae={};function gae(){if(pae)return fae;pae=1;var e=_Y();return e.addRange(994,1007).addRange(11392,11507).addRange(11513,11519),fae.characters=e,fae}var mae,yae={};function hae(){if(mae)return yae;mae=1;var e=_Y();return e.addRange(73728,74649).addRange(74752,74862).addRange(74864,74868).addRange(74880,75075),yae.characters=e,yae}var bae,vae={};function xae(){if(bae)return vae;bae=1;var e=_Y(67592,67644,67647);return e.addRange(67584,67589).addRange(67594,67637).addRange(67639,67640),vae.characters=e,vae}var Rae,jae={};function wae(){if(Rae)return jae;Rae=1;var e=_Y();return e.addRange(77712,77810),jae.characters=e,jae}var Eae,Sae={};function Tae(){if(Eae)return Sae;Eae=1;var e=_Y(7467,7544,123023);return e.addRange(1024,1156).addRange(1159,1327).addRange(7296,7306).addRange(11744,11775).addRange(42560,42655).addRange(65070,65071).addRange(122928,122989),Sae.characters=e,Sae}var Pae,Aae={};function kae(){if(Pae)return Aae;Pae=1;var e=_Y();return e.addRange(66560,66639),Aae.characters=e,Aae}var Cae,_ae={};function Iae(){if(Cae)return _ae;Cae=1;var e=_Y();return e.addRange(2304,2384).addRange(2389,2403).addRange(2406,2431).addRange(43232,43263).addRange(72448,72457),_ae.characters=e,_ae}var Dae,Oae={};function Nae(){if(Dae)return Oae;Dae=1;var e=_Y(71945);return e.addRange(71936,71942).addRange(71948,71955).addRange(71957,71958).addRange(71960,71989).addRange(71991,71992).addRange(71995,72006).addRange(72016,72025),Oae.characters=e,Oae}var Bae,Mae={};function Fae(){if(Bae)return Mae;Bae=1;var e=_Y();return e.addRange(71680,71739),Mae.characters=e,Mae}var Lae,Uae={};function qae(){if(Lae)return Uae;Lae=1;var e=_Y();return e.addRange(113664,113770).addRange(113776,113788).addRange(113792,113800).addRange(113808,113817).addRange(113820,113823),Uae.characters=e,Uae}var Gae,Wae={};function Vae(){if(Gae)return Wae;Gae=1;var e=_Y();return e.addRange(77824,78933).addRange(78944,82938),Wae.characters=e,Wae}var Hae,zae={};function Kae(){if(Hae)return zae;Hae=1;var e=_Y();return e.addRange(66816,66855),zae.characters=e,zae}var Xae,Jae={};function Yae(){if(Xae)return Jae;Xae=1;var e=_Y();return e.addRange(69600,69622),Jae.characters=e,Jae}var $ae,Qae={};function Zae(){if($ae)return Qae;$ae=1;var e=_Y(4696,4800);return e.addRange(4608,4680).addRange(4682,4685).addRange(4688,4694).addRange(4698,4701).addRange(4704,4744).addRange(4746,4749).addRange(4752,4784).addRange(4786,4789).addRange(4792,4798).addRange(4802,4805).addRange(4808,4822).addRange(4824,4880).addRange(4882,4885).addRange(4888,4954).addRange(4957,4988).addRange(4992,5017).addRange(11648,11670).addRange(11680,11686).addRange(11688,11694).addRange(11696,11702).addRange(11704,11710).addRange(11712,11718).addRange(11720,11726).addRange(11728,11734).addRange(11736,11742).addRange(43777,43782).addRange(43785,43790).addRange(43793,43798).addRange(43808,43814).addRange(43816,43822).addRange(124896,124902).addRange(124904,124907).addRange(124909,124910).addRange(124912,124926),Qae.characters=e,Qae}var ene,tne={};function rne(){if(ene)return tne;ene=1;var e=_Y();return e.addRange(68928,68965).addRange(68969,68997).addRange(69006,69007),tne.characters=e,tne}var ane,nne={};function sne(){if(ane)return nne;ane=1;var e=_Y(4295,4301,11559,11565);return e.addRange(4256,4293).addRange(4304,4346).addRange(4348,4351).addRange(7312,7354).addRange(7357,7359).addRange(11520,11557),nne.characters=e,nne}var one,ine={};function dne(){if(one)return ine;one=1;var e=_Y();return e.addRange(11264,11359).addRange(122880,122886).addRange(122888,122904).addRange(122907,122913).addRange(122915,122916).addRange(122918,122922),ine.characters=e,ine}var cne,lne={};function une(){if(cne)return lne;cne=1;var e=_Y();return e.addRange(66352,66378),lne.characters=e,lne}var pne,fne={};function gne(){if(pne)return fne;pne=1;var e=_Y(70480,70487);return e.addRange(70400,70403).addRange(70405,70412).addRange(70415,70416).addRange(70419,70440).addRange(70442,70448).addRange(70450,70451).addRange(70453,70457).addRange(70460,70468).addRange(70471,70472).addRange(70475,70477).addRange(70493,70499).addRange(70502,70508).addRange(70512,70516),fne.characters=e,fne}var mne,yne={};function hne(){if(mne)return yne;mne=1;var e=_Y(895,900,902,908,7615,8025,8027,8029,8486,43877,65952);return e.addRange(880,883).addRange(885,887).addRange(890,893).addRange(904,906).addRange(910,929).addRange(931,993).addRange(1008,1023).addRange(7462,7466).addRange(7517,7521).addRange(7526,7530).addRange(7936,7957).addRange(7960,7965).addRange(7968,8005).addRange(8008,8013).addRange(8016,8023).addRange(8031,8061).addRange(8064,8116).addRange(8118,8132).addRange(8134,8147).addRange(8150,8155).addRange(8157,8175).addRange(8178,8180).addRange(8182,8190).addRange(65856,65934).addRange(119296,119365),yne.characters=e,yne}var bne,vne={};function xne(){if(bne)return vne;bne=1;var e=_Y(2768);return e.addRange(2689,2691).addRange(2693,2701).addRange(2703,2705).addRange(2707,2728).addRange(2730,2736).addRange(2738,2739).addRange(2741,2745).addRange(2748,2757).addRange(2759,2761).addRange(2763,2765).addRange(2784,2787).addRange(2790,2801).addRange(2809,2815),vne.characters=e,vne}var Rne,jne={};function wne(){if(Rne)return jne;Rne=1;var e=_Y();return e.addRange(73056,73061).addRange(73063,73064).addRange(73066,73102).addRange(73104,73105).addRange(73107,73112).addRange(73120,73129),jne.characters=e,jne}var Ene,Sne={};function Tne(){if(Ene)return Sne;Ene=1;var e=_Y(2620,2641,2654);return e.addRange(2561,2563).addRange(2565,2570).addRange(2575,2576).addRange(2579,2600).addRange(2602,2608).addRange(2610,2611).addRange(2613,2614).addRange(2616,2617).addRange(2622,2626).addRange(2631,2632).addRange(2635,2637).addRange(2649,2652).addRange(2662,2678),Sne.characters=e,Sne}var Pne,Ane={};function kne(){if(Pne)return Ane;Pne=1;var e=_Y();return e.addRange(90368,90425),Ane.characters=e,Ane}var Cne,_ne={};function Ine(){if(Cne)return _ne;Cne=1;var e=_Y(12293,12295);return e.addRange(11904,11929).addRange(11931,12019).addRange(12032,12245).addRange(12321,12329).addRange(12344,12347).addRange(13312,19903).addRange(19968,40959).addRange(63744,64109).addRange(64112,64217).addRange(94178,94179).addRange(94192,94198).addRange(131072,173791).addRange(173824,178205).addRange(178208,183981).addRange(183984,191456).addRange(191472,192093).addRange(194560,195101).addRange(196608,201546).addRange(201552,210041),_ne.characters=e,_ne}var Dne,One={};function Nne(){if(Dne)return One;Dne=1;var e=_Y();return e.addRange(4352,4607).addRange(12334,12335).addRange(12593,12686).addRange(12800,12830).addRange(12896,12926).addRange(43360,43388).addRange(44032,55203).addRange(55216,55238).addRange(55243,55291).addRange(65440,65470).addRange(65474,65479).addRange(65482,65487).addRange(65490,65495).addRange(65498,65500),One.characters=e,One}var Bne,Mne={};function Fne(){if(Bne)return Mne;Bne=1;var e=_Y();return e.addRange(68864,68903).addRange(68912,68921),Mne.characters=e,Mne}var Lne,Une={};function qne(){if(Lne)return Une;Lne=1;var e=_Y();return e.addRange(5920,5940),Une.characters=e,Une}var Gne,Wne={};function Vne(){if(Gne)return Wne;Gne=1;var e=_Y();return e.addRange(67808,67826).addRange(67828,67829).addRange(67835,67839),Wne.characters=e,Wne}var Hne,zne={};function Kne(){if(Hne)return zne;Hne=1;var e=_Y(64318);return e.addRange(1425,1479).addRange(1488,1514).addRange(1519,1524).addRange(64285,64310).addRange(64312,64316).addRange(64320,64321).addRange(64323,64324).addRange(64326,64335),zne.characters=e,zne}var Xne,Jne={};function Yne(){if(Xne)return Jne;Xne=1;var e=_Y(110898,127488);return e.addRange(12353,12438).addRange(12445,12447).addRange(110593,110879).addRange(110928,110930),Jne.characters=e,Jne}var $ne,Qne={};function Zne(){if($ne)return Qne;$ne=1;var e=_Y();return e.addRange(67648,67669).addRange(67671,67679),Qne.characters=e,Qne}var ese,tse={};function rse(){if(ese)return tse;ese=1;var e=_Y(1648,7405,7412,66045,66272,70459);return e.addRange(768,879).addRange(1157,1158).addRange(1611,1621).addRange(2385,2388).addRange(6832,6877).addRange(6880,6891).addRange(7376,7378).addRange(7380,7392).addRange(7394,7400).addRange(7416,7417).addRange(7616,7679).addRange(8204,8205).addRange(8400,8432).addRange(12330,12333).addRange(12441,12442).addRange(65024,65039).addRange(65056,65069).addRange(118528,118573).addRange(118576,118598).addRange(119143,119145).addRange(119163,119170).addRange(119173,119179).addRange(119210,119213).addRange(917760,917999),tse.characters=e,tse}var ase,nse={};function sse(){if(ase)return nse;ase=1;var e=_Y();return e.addRange(68448,68466).addRange(68472,68479),nse.characters=e,nse}var ose,ise={};function dse(){if(ose)return ise;ose=1;var e=_Y();return e.addRange(68416,68437).addRange(68440,68447),ise.characters=e,ise}var cse,lse={};function use(){if(cse)return lse;cse=1;var e=_Y();return e.addRange(43392,43469).addRange(43472,43481).addRange(43486,43487),lse.characters=e,lse}var pse,fse={};function gse(){if(pse)return fse;pse=1;var e=_Y(69837);return e.addRange(69760,69826),fse.characters=e,fse}var mse,yse={};function hse(){if(mse)return yse;mse=1;var e=_Y();return e.addRange(3200,3212).addRange(3214,3216).addRange(3218,3240).addRange(3242,3251).addRange(3253,3257).addRange(3260,3268).addRange(3270,3272).addRange(3274,3277).addRange(3285,3286).addRange(3292,3294).addRange(3296,3299).addRange(3302,3311).addRange(3313,3315),yse.characters=e,yse}var bse,vse={};function xse(){if(bse)return vse;bse=1;var e=_Y(110592,110933);return e.addRange(12449,12538).addRange(12541,12543).addRange(12784,12799).addRange(13008,13054).addRange(13056,13143).addRange(65382,65391).addRange(65393,65437).addRange(110576,110579).addRange(110581,110587).addRange(110589,110590).addRange(110880,110882).addRange(110948,110951),vse.characters=e,vse}var Rse,jse={};function wse(){if(Rse)return jse;Rse=1;var e=_Y();return e.addRange(73472,73488).addRange(73490,73530).addRange(73534,73562),jse.characters=e,jse}var Ese,Sse={};function Tse(){if(Ese)return Sse;Ese=1;var e=_Y(43311);return e.addRange(43264,43309),Sse.characters=e,Sse}var Pse,Ase={};function kse(){if(Pse)return Ase;Pse=1;var e=_Y();return e.addRange(68096,68099).addRange(68101,68102).addRange(68108,68115).addRange(68117,68119).addRange(68121,68149).addRange(68152,68154).addRange(68159,68168).addRange(68176,68184),Ase.characters=e,Ase}var Cse,_se={};function Ise(){if(Cse)return _se;Cse=1;var e=_Y(94180,101631);return e.addRange(101120,101589),_se.characters=e,_se}var Dse,Ose={};function Nse(){if(Dse)return Ose;Dse=1;var e=_Y();return e.addRange(6016,6109).addRange(6112,6121).addRange(6128,6137).addRange(6624,6655),Ose.characters=e,Ose}var Bse,Mse={};function Fse(){if(Bse)return Mse;Bse=1;var e=_Y();return e.addRange(70144,70161).addRange(70163,70209),Mse.characters=e,Mse}var Lse,Use={};function qse(){if(Lse)return Use;Lse=1;var e=_Y();return e.addRange(70320,70378).addRange(70384,70393),Use.characters=e,Use}var Gse,Wse={};function Vse(){if(Gse)return Wse;Gse=1;var e=_Y();return e.addRange(93504,93561),Wse.characters=e,Wse}var Hse,zse={};function Kse(){if(Hse)return zse;Hse=1;var e=_Y(3716,3749,3782);return e.addRange(3713,3714).addRange(3718,3722).addRange(3724,3747).addRange(3751,3773).addRange(3776,3780).addRange(3784,3790).addRange(3792,3801).addRange(3804,3807),zse.characters=e,zse}var Xse,Jse={};function Yse(){if(Xse)return Jse;Xse=1;var e=_Y(170,186,8305,8319,8498,8526);return e.addRange(65,90).addRange(97,122).addRange(192,214).addRange(216,246).addRange(248,696).addRange(736,740).addRange(7424,7461).addRange(7468,7516).addRange(7522,7525).addRange(7531,7543).addRange(7545,7614).addRange(7680,7935).addRange(8336,8348).addRange(8490,8491).addRange(8544,8584).addRange(11360,11391).addRange(42786,42887).addRange(42891,42972).addRange(42993,43007).addRange(43824,43866).addRange(43868,43876).addRange(43878,43881).addRange(64256,64262).addRange(65313,65338).addRange(65345,65370).addRange(67456,67461).addRange(67463,67504).addRange(67506,67514).addRange(122624,122654).addRange(122661,122666),Jse.characters=e,Jse}var $se,Qse={};function Zse(){if($se)return Qse;$se=1;var e=_Y();return e.addRange(7168,7223).addRange(7227,7241).addRange(7245,7247),Qse.characters=e,Qse}var eoe,toe={};function roe(){if(eoe)return toe;eoe=1;var e=_Y(6464);return e.addRange(6400,6430).addRange(6432,6443).addRange(6448,6459).addRange(6468,6479),toe.characters=e,toe}var aoe,noe={};function soe(){if(aoe)return noe;aoe=1;var e=_Y();return e.addRange(67072,67382).addRange(67392,67413).addRange(67424,67431),noe.characters=e,noe}var ooe,ioe={};function doe(){if(ooe)return ioe;ooe=1;var e=_Y();return e.addRange(65536,65547).addRange(65549,65574).addRange(65576,65594).addRange(65596,65597).addRange(65599,65613).addRange(65616,65629).addRange(65664,65786),ioe.characters=e,ioe}var coe,loe={};function uoe(){if(coe)return loe;coe=1;var e=_Y(73648);return e.addRange(42192,42239),loe.characters=e,loe}var poe,foe={};function goe(){if(poe)return foe;poe=1;var e=_Y();return e.addRange(66176,66204),foe.characters=e,foe}var moe,yoe={};function hoe(){if(moe)return yoe;moe=1;var e=_Y(67903);return e.addRange(67872,67897),yoe.characters=e,yoe}var boe,voe={};function xoe(){if(boe)return voe;boe=1;var e=_Y();return e.addRange(69968,70006),voe.characters=e,voe}var Roe,joe={};function woe(){if(Roe)return joe;Roe=1;var e=_Y();return e.addRange(73440,73464),joe.characters=e,joe}var Eoe,Soe={};function Toe(){if(Eoe)return Soe;Eoe=1;var e=_Y();return e.addRange(3328,3340).addRange(3342,3344).addRange(3346,3396).addRange(3398,3400).addRange(3402,3407).addRange(3412,3427).addRange(3430,3455),Soe.characters=e,Soe}var Poe,Aoe={};function koe(){if(Poe)return Aoe;Poe=1;var e=_Y(2142);return e.addRange(2112,2139),Aoe.characters=e,Aoe}var Coe,_oe={};function Ioe(){if(Coe)return _oe;Coe=1;var e=_Y();return e.addRange(68288,68326).addRange(68331,68342),_oe.characters=e,_oe}var Doe,Ooe={};function Noe(){if(Doe)return Ooe;Doe=1;var e=_Y();return e.addRange(72816,72847).addRange(72850,72871).addRange(72873,72886),Ooe.characters=e,Ooe}var Boe,Moe={};function Foe(){if(Boe)return Moe;Boe=1;var e=_Y(73018);return e.addRange(72960,72966).addRange(72968,72969).addRange(72971,73014).addRange(73020,73021).addRange(73023,73031).addRange(73040,73049),Moe.characters=e,Moe}var Loe,Uoe={};function qoe(){if(Loe)return Uoe;Loe=1;var e=_Y();return e.addRange(93760,93850),Uoe.characters=e,Uoe}var Goe,Woe={};function Voe(){if(Goe)return Woe;Goe=1;var e=_Y();return e.addRange(43744,43766).addRange(43968,44013).addRange(44016,44025),Woe.characters=e,Woe}var Hoe,zoe={};function Koe(){if(Hoe)return zoe;Hoe=1;var e=_Y();return e.addRange(124928,125124).addRange(125127,125142),zoe.characters=e,zoe}var Xoe,Joe={};function Yoe(){if(Xoe)return Joe;Xoe=1;var e=_Y();return e.addRange(68e3,68023).addRange(68028,68047).addRange(68050,68095),Joe.characters=e,Joe}var $oe,Qoe={};function Zoe(){if($oe)return Qoe;$oe=1;var e=_Y();return e.addRange(67968,67999),Qoe.characters=e,Qoe}var eie,tie={};function rie(){if(eie)return tie;eie=1;var e=_Y();return e.addRange(93952,94026).addRange(94031,94087).addRange(94095,94111),tie.characters=e,tie}var aie,nie={};function sie(){if(aie)return nie;aie=1;var e=_Y();return e.addRange(71168,71236).addRange(71248,71257),nie.characters=e,nie}var oie,iie={};function die(){if(oie)return iie;oie=1;var e=_Y(6148);return e.addRange(6144,6145).addRange(6150,6169).addRange(6176,6264).addRange(6272,6314).addRange(71264,71276),iie.characters=e,iie}var cie,lie={};function uie(){if(cie)return lie;cie=1;var e=_Y();return e.addRange(92736,92766).addRange(92768,92777).addRange(92782,92783),lie.characters=e,lie}var pie,fie={};function gie(){if(pie)return fie;pie=1;var e=_Y(70280);return e.addRange(70272,70278).addRange(70282,70285).addRange(70287,70301).addRange(70303,70313),fie.characters=e,fie}var mie,yie={};function hie(){if(mie)return yie;mie=1;var e=_Y();return e.addRange(4096,4255).addRange(43488,43518).addRange(43616,43647).addRange(71376,71395),yie.characters=e,yie}var bie,vie={};function xie(){if(bie)return vie;bie=1;var e=_Y();return e.addRange(67712,67742).addRange(67751,67759),vie.characters=e,vie}var Rie,jie={};function wie(){if(Rie)return jie;Rie=1;var e=_Y();return e.addRange(124112,124153),jie.characters=e,jie}var Eie,Sie={};function Tie(){if(Eie)return Sie;Eie=1;var e=_Y();return e.addRange(72096,72103).addRange(72106,72151).addRange(72154,72164),Sie.characters=e,Sie}var Pie,Aie={};function kie(){if(Pie)return Aie;Pie=1;var e=_Y();return e.addRange(6528,6571).addRange(6576,6601).addRange(6608,6618).addRange(6622,6623),Aie.characters=e,Aie}var Cie,_ie={};function Iie(){if(Cie)return _ie;Cie=1;var e=_Y();return e.addRange(70656,70747).addRange(70749,70753),_ie.characters=e,_ie}var Die,Oie={};function Nie(){if(Die)return Oie;Die=1;var e=_Y();return e.addRange(1984,2042).addRange(2045,2047),Oie.characters=e,Oie}var Bie,Mie={};function Fie(){if(Bie)return Mie;Bie=1;var e=_Y(94177);return e.addRange(110960,111355),Mie.characters=e,Mie}var Lie,Uie={};function qie(){if(Lie)return Uie;Lie=1;var e=_Y();return e.addRange(123136,123180).addRange(123184,123197).addRange(123200,123209).addRange(123214,123215),Uie.characters=e,Uie}var Gie,Wie={};function Vie(){if(Gie)return Wie;Gie=1;var e=_Y();return e.addRange(5760,5788),Wie.characters=e,Wie}var Hie,zie={};function Kie(){if(Hie)return zie;Hie=1;var e=_Y();return e.addRange(7248,7295),zie.characters=e,zie}var Xie,Jie={};function Yie(){if(Xie)return Jie;Xie=1;var e=_Y(124415);return e.addRange(124368,124410),Jie.characters=e,Jie}var $ie,Qie={};function Zie(){if($ie)return Qie;$ie=1;var e=_Y();return e.addRange(68736,68786).addRange(68800,68850).addRange(68858,68863),Qie.characters=e,Qie}var ede,tde={};function rde(){if(ede)return tde;ede=1;var e=_Y();return e.addRange(66304,66339).addRange(66349,66351),tde.characters=e,tde}var ade,nde={};function sde(){if(ade)return nde;ade=1;var e=_Y();return e.addRange(68224,68255),nde.characters=e,nde}var ode,ide={};function dde(){if(ode)return ide;ode=1;var e=_Y();return e.addRange(66384,66426),ide.characters=e,ide}var cde,lde={};function ude(){if(cde)return lde;cde=1;var e=_Y();return e.addRange(66464,66499).addRange(66504,66517),lde.characters=e,lde}var pde,fde={};function gde(){if(pde)return fde;pde=1;var e=_Y();return e.addRange(69376,69415),fde.characters=e,fde}var mde,yde={};function hde(){if(mde)return yde;mde=1;var e=_Y();return e.addRange(68192,68223),yde.characters=e,yde}var bde,vde={};function xde(){if(bde)return vde;bde=1;var e=_Y();return e.addRange(68608,68680),vde.characters=e,vde}var Rde,jde={};function wde(){if(Rde)return jde;Rde=1;var e=_Y();return e.addRange(69488,69513),jde.characters=e,jde}var Ede,Sde={};function Tde(){if(Ede)return Sde;Ede=1;var e=_Y();return e.addRange(2817,2819).addRange(2821,2828).addRange(2831,2832).addRange(2835,2856).addRange(2858,2864).addRange(2866,2867).addRange(2869,2873).addRange(2876,2884).addRange(2887,2888).addRange(2891,2893).addRange(2901,2903).addRange(2908,2909).addRange(2911,2915).addRange(2918,2935),Sde.characters=e,Sde}var Pde,Ade={};function kde(){if(Pde)return Ade;Pde=1;var e=_Y();return e.addRange(66736,66771).addRange(66776,66811),Ade.characters=e,Ade}var Cde,_de={};function Ide(){if(Cde)return _de;Cde=1;var e=_Y();return e.addRange(66688,66717).addRange(66720,66729),_de.characters=e,_de}var Dde,Ode={};function Nde(){if(Dde)return Ode;Dde=1;var e=_Y();return e.addRange(92928,92997).addRange(93008,93017).addRange(93019,93025).addRange(93027,93047).addRange(93053,93071),Ode.characters=e,Ode}var Bde,Mde={};function Fde(){if(Bde)return Mde;Bde=1;var e=_Y();return e.addRange(67680,67711),Mde.characters=e,Mde}var Lde,Ude={};function qde(){if(Lde)return Ude;Lde=1;var e=_Y();return e.addRange(72384,72440),Ude.characters=e,Ude}var Gde,Wde={};function Vde(){if(Gde)return Wde;Gde=1;var e=_Y();return e.addRange(43072,43127),Wde.characters=e,Wde}var Hde,zde={};function Kde(){if(Hde)return zde;Hde=1;var e=_Y(67871);return e.addRange(67840,67867),zde.characters=e,zde}var Xde,Jde={};function Yde(){if(Xde)return Jde;Xde=1;var e=_Y();return e.addRange(68480,68497).addRange(68505,68508).addRange(68521,68527),Jde.characters=e,Jde}var $de,Qde={};function Zde(){if($de)return Qde;$de=1;var e=_Y(43359);return e.addRange(43312,43347),Qde.characters=e,Qde}var ece,tce={};function rce(){if(ece)return tce;ece=1;var e=_Y();return e.addRange(5792,5866).addRange(5870,5880),tce.characters=e,tce}var ace,nce={};function sce(){if(ace)return nce;ace=1;var e=_Y();return e.addRange(2048,2093).addRange(2096,2110),nce.characters=e,nce}var oce,ice={};function dce(){if(oce)return ice;oce=1;var e=_Y();return e.addRange(43136,43205).addRange(43214,43225),ice.characters=e,ice}var cce,lce={};function uce(){if(cce)return lce;cce=1;var e=_Y();return e.addRange(70016,70111).addRange(72544,72551),lce.characters=e,lce}var pce,fce={};function gce(){if(pce)return fce;pce=1;var e=_Y();return e.addRange(66640,66687),fce.characters=e,fce}var mce,yce={};function hce(){if(mce)return yce;mce=1;var e=_Y();return e.addRange(71040,71093).addRange(71096,71133),yce.characters=e,yce}var bce,vce={};function xce(){if(bce)return vce;bce=1;var e=_Y();return e.addRange(67904,67929),vce.characters=e,vce}var Rce,jce={};function wce(){if(Rce)return jce;Rce=1;var e=_Y();return e.addRange(120832,121483).addRange(121499,121503).addRange(121505,121519),jce.characters=e,jce}var Ece,Sce={};function Tce(){if(Ece)return Sce;Ece=1;var e=_Y(3517,3530,3542);return e.addRange(3457,3459).addRange(3461,3478).addRange(3482,3505).addRange(3507,3515).addRange(3520,3526).addRange(3535,3540).addRange(3544,3551).addRange(3558,3567).addRange(3570,3572).addRange(70113,70132),Sce.characters=e,Sce}var Pce,Ace={};function kce(){if(Pce)return Ace;Pce=1;var e=_Y();return e.addRange(69424,69465),Ace.characters=e,Ace}var Cce,_ce={};function Ice(){if(Cce)return _ce;Cce=1;var e=_Y();return e.addRange(69840,69864).addRange(69872,69881),_ce.characters=e,_ce}var Dce,Oce={};function Nce(){if(Dce)return Oce;Dce=1;var e=_Y();return e.addRange(72272,72354),Oce.characters=e,Oce}var Bce,Mce={};function Fce(){if(Bce)return Mce;Bce=1;var e=_Y();return e.addRange(7040,7103).addRange(7360,7367),Mce.characters=e,Mce}var Lce,Uce={};function qce(){if(Lce)return Uce;Lce=1;var e=_Y();return e.addRange(72640,72673).addRange(72688,72697),Uce.characters=e,Uce}var Gce,Wce={};function Vce(){if(Gce)return Wce;Gce=1;var e=_Y();return e.addRange(43008,43052),Wce.characters=e,Wce}var Hce,zce={};function Kce(){if(Hce)return zce;Hce=1;var e=_Y();return e.addRange(1792,1805).addRange(1807,1866).addRange(1869,1871).addRange(2144,2154),zce.characters=e,zce}var Xce,Jce={};function Yce(){if(Xce)return Jce;Xce=1;var e=_Y(5919);return e.addRange(5888,5909),Jce.characters=e,Jce}var $ce,Qce={};function Zce(){if($ce)return Qce;$ce=1;var e=_Y();return e.addRange(5984,5996).addRange(5998,6e3).addRange(6002,6003),Qce.characters=e,Qce}var ele,tle={};function rle(){if(ele)return tle;ele=1;var e=_Y();return e.addRange(6480,6509).addRange(6512,6516),tle.characters=e,tle}var ale,nle={};function sle(){if(ale)return nle;ale=1;var e=_Y();return e.addRange(6688,6750).addRange(6752,6780).addRange(6783,6793).addRange(6800,6809).addRange(6816,6829),nle.characters=e,nle}var ole,ile={};function dle(){if(ole)return ile;ole=1;var e=_Y();return e.addRange(43648,43714).addRange(43739,43743),ile.characters=e,ile}var cle,lle={};function ule(){if(cle)return lle;cle=1;var e=_Y();return e.addRange(124608,124638).addRange(124640,124661).addRange(124670,124671),lle.characters=e,lle}var ple,fle={};function gle(){if(ple)return fle;ple=1;var e=_Y();return e.addRange(71296,71353).addRange(71360,71369),fle.characters=e,fle}var mle,yle={};function hle(){if(mle)return yle;mle=1;var e=_Y(2972,3024,3031,73727);return e.addRange(2946,2947).addRange(2949,2954).addRange(2958,2960).addRange(2962,2965).addRange(2969,2970).addRange(2974,2975).addRange(2979,2980).addRange(2984,2986).addRange(2990,3001).addRange(3006,3010).addRange(3014,3016).addRange(3018,3021).addRange(3046,3066).addRange(73664,73713),yle.characters=e,yle}var ble,vle={};function xle(){if(ble)return vle;ble=1;var e=_Y();return e.addRange(92784,92862).addRange(92864,92873),vle.characters=e,vle}var Rle,jle={};function wle(){if(Rle)return jle;Rle=1;var e=_Y(94176);return e.addRange(94208,101119).addRange(101632,101662).addRange(101760,101874),jle.characters=e,jle}var Ele,Sle={};function Tle(){if(Ele)return Sle;Ele=1;var e=_Y();return e.addRange(3072,3084).addRange(3086,3088).addRange(3090,3112).addRange(3114,3129).addRange(3132,3140).addRange(3142,3144).addRange(3146,3149).addRange(3157,3158).addRange(3160,3162).addRange(3164,3165).addRange(3168,3171).addRange(3174,3183).addRange(3191,3199),Sle.characters=e,Sle}var Ple,Ale={};function kle(){if(Ple)return Ale;Ple=1;var e=_Y();return e.addRange(1920,1969),Ale.characters=e,Ale}var Cle,_le={};function Ile(){if(Cle)return _le;Cle=1;var e=_Y();return e.addRange(3585,3642).addRange(3648,3675),_le.characters=e,_le}var Dle,Ole={};function Nle(){if(Dle)return Ole;Dle=1;var e=_Y();return e.addRange(3840,3911).addRange(3913,3948).addRange(3953,3991).addRange(3993,4028).addRange(4030,4044).addRange(4046,4052).addRange(4057,4058),Ole.characters=e,Ole}var Ble,Mle={};function Fle(){if(Ble)return Mle;Ble=1;var e=_Y(11647);return e.addRange(11568,11623).addRange(11631,11632),Mle.characters=e,Mle}var Lle,Ule={};function qle(){if(Lle)return Ule;Lle=1;var e=_Y();return e.addRange(70784,70855).addRange(70864,70873),Ule.characters=e,Ule}var Gle,Wle={};function Vle(){if(Gle)return Wle;Gle=1;var e=_Y();return e.addRange(67008,67059),Wle.characters=e,Wle}var Hle,zle={};function Kle(){if(Hle)return zle;Hle=1;var e=_Y();return e.addRange(73136,73179).addRange(73184,73193),zle.characters=e,zle}var Xle,Jle={};function Yle(){if(Xle)return Jle;Xle=1;var e=_Y();return e.addRange(123536,123566),Jle.characters=e,Jle}var $le,Qle={};function Zle(){if($le)return Qle;$le=1;var e=_Y(70539,70542,70594,70597);return e.addRange(70528,70537).addRange(70544,70581).addRange(70583,70592).addRange(70599,70602).addRange(70604,70613).addRange(70615,70616).addRange(70625,70626),Qle.characters=e,Qle}var eue,tue={};function rue(){if(eue)return tue;eue=1;var e=_Y(66463);return e.addRange(66432,66461),tue.characters=e,tue}var aue,nue={};function sue(){if(aue)return nue;aue=1;var e=_Y(907,909,930,1328,1424,1806,2111,2143,2436,2473,2481,2526,2564,2601,2609,2612,2615,2621,2653,2692,2702,2706,2729,2737,2740,2758,2762,2816,2820,2857,2865,2868,2910,2948,2961,2971,2973,3017,3085,3089,3113,3141,3145,3159,3163,3213,3217,3241,3252,3269,3273,3295,3312,3341,3345,3397,3401,3456,3460,3506,3516,3541,3543,3715,3717,3723,3748,3750,3781,3783,3791,3912,3992,4029,4045,4294,4681,4695,4697,4745,4785,4799,4801,4823,4881,5997,6001,6431,6751,6989,8024,8026,8028,8030,8117,8133,8156,8181,8191,8293,8335,11558,11687,11695,11703,11711,11719,11727,11735,11743,11930,12352,12592,12687,12831,43470,43519,43815,43823,64311,64317,64319,64322,64325,65107,65127,65141,65280,65511,65548,65575,65595,65598,65935,66462,66939,66955,66963,66966,66978,66994,67002,67462,67505,67593,67638,67670,67827,68100,68116,68120,69247,69290,69941,70112,70162,70279,70281,70286,70302,70404,70441,70449,70452,70458,70538,70543,70582,70593,70598,70603,70614,70748,71956,71959,71990,72713,72759,72872,72967,72970,73019,73022,73062,73065,73103,73106,73489,74863,92767,92863,93018,93026,110580,110588,110591,119893,119965,119981,119994,119996,120004,120070,120085,120093,120122,120127,120133,120145,121504,122887,122914,122917,124639,124903,124908,124911,124927,126468,126496,126499,126504,126515,126520,126522,126536,126538,126540,126544,126547,126552,126554,126556,126558,126560,126563,126571,126579,126584,126589,126591,126602,126628,126634,127168,127184,129735,129939);return e.addRange(888,889).addRange(896,899).addRange(1367,1368).addRange(1419,1420).addRange(1480,1487).addRange(1515,1518).addRange(1525,1535).addRange(1867,1868).addRange(1970,1983).addRange(2043,2044).addRange(2094,2095).addRange(2140,2141).addRange(2155,2159).addRange(2194,2198).addRange(2445,2446).addRange(2449,2450).addRange(2483,2485).addRange(2490,2491).addRange(2501,2502).addRange(2505,2506).addRange(2511,2518).addRange(2520,2523).addRange(2532,2533).addRange(2559,2560).addRange(2571,2574).addRange(2577,2578).addRange(2618,2619).addRange(2627,2630).addRange(2633,2634).addRange(2638,2640).addRange(2642,2648).addRange(2655,2661).addRange(2679,2688).addRange(2746,2747).addRange(2766,2767).addRange(2769,2783).addRange(2788,2789).addRange(2802,2808).addRange(2829,2830).addRange(2833,2834).addRange(2874,2875).addRange(2885,2886).addRange(2889,2890).addRange(2894,2900).addRange(2904,2907).addRange(2916,2917).addRange(2936,2945).addRange(2955,2957).addRange(2966,2968).addRange(2976,2978).addRange(2981,2983),e.addRange(2987,2989).addRange(3002,3005).addRange(3011,3013).addRange(3022,3023).addRange(3025,3030).addRange(3032,3045).addRange(3067,3071).addRange(3130,3131).addRange(3150,3156).addRange(3166,3167).addRange(3172,3173).addRange(3184,3190).addRange(3258,3259).addRange(3278,3284).addRange(3287,3291).addRange(3300,3301).addRange(3316,3327).addRange(3408,3411).addRange(3428,3429).addRange(3479,3481).addRange(3518,3519).addRange(3527,3529).addRange(3531,3534).addRange(3552,3557).addRange(3568,3569).addRange(3573,3584).addRange(3643,3646).addRange(3676,3712).addRange(3774,3775).addRange(3802,3803).addRange(3808,3839).addRange(3949,3952).addRange(4059,4095).addRange(4296,4300).addRange(4302,4303).addRange(4686,4687).addRange(4702,4703).addRange(4750,4751).addRange(4790,4791).addRange(4806,4807).addRange(4886,4887).addRange(4955,4956).addRange(4989,4991).addRange(5018,5023).addRange(5110,5111).addRange(5118,5119).addRange(5789,5791).addRange(5881,5887).addRange(5910,5918).addRange(5943,5951).addRange(5972,5983),e.addRange(6004,6015).addRange(6110,6111).addRange(6122,6127).addRange(6138,6143).addRange(6170,6175).addRange(6265,6271).addRange(6315,6319).addRange(6390,6399).addRange(6444,6447).addRange(6460,6463).addRange(6465,6467).addRange(6510,6511).addRange(6517,6527).addRange(6572,6575).addRange(6602,6607).addRange(6619,6621).addRange(6684,6685).addRange(6781,6782).addRange(6794,6799).addRange(6810,6815).addRange(6830,6831).addRange(6878,6879).addRange(6892,6911).addRange(7156,7163).addRange(7224,7226).addRange(7242,7244).addRange(7307,7311).addRange(7355,7356).addRange(7368,7375).addRange(7419,7423).addRange(7958,7959).addRange(7966,7967).addRange(8006,8007).addRange(8014,8015).addRange(8062,8063).addRange(8148,8149).addRange(8176,8177).addRange(8306,8307).addRange(8349,8351).addRange(8386,8399).addRange(8433,8447).addRange(8588,8591).addRange(9258,9279).addRange(9291,9311).addRange(11124,11125).addRange(11508,11512).addRange(11560,11564).addRange(11566,11567).addRange(11624,11630).addRange(11633,11646).addRange(11671,11679),e.addRange(11870,11903).addRange(12020,12031).addRange(12246,12271).addRange(12439,12440).addRange(12544,12548).addRange(12774,12782).addRange(42125,42127).addRange(42183,42191).addRange(42540,42559).addRange(42744,42751).addRange(42973,42992).addRange(43053,43055).addRange(43066,43071).addRange(43128,43135).addRange(43206,43213).addRange(43226,43231).addRange(43348,43358).addRange(43389,43391).addRange(43482,43485).addRange(43575,43583).addRange(43598,43599).addRange(43610,43611).addRange(43715,43738).addRange(43767,43776).addRange(43783,43784).addRange(43791,43792).addRange(43799,43807).addRange(43884,43887).addRange(44014,44015).addRange(44026,44031).addRange(55204,55215).addRange(55239,55242).addRange(55292,63743).addRange(64110,64111).addRange(64218,64255).addRange(64263,64274).addRange(64280,64284).addRange(64976,65007).addRange(65050,65055).addRange(65132,65135).addRange(65277,65278).addRange(65471,65473).addRange(65480,65481).addRange(65488,65489).addRange(65496,65497).addRange(65501,65503).addRange(65519,65528).addRange(65534,65535).addRange(65614,65615).addRange(65630,65663).addRange(65787,65791),e.addRange(65795,65798).addRange(65844,65846).addRange(65949,65951).addRange(65953,65999).addRange(66046,66175).addRange(66205,66207).addRange(66257,66271).addRange(66300,66303).addRange(66340,66348).addRange(66379,66383).addRange(66427,66431).addRange(66500,66503).addRange(66518,66559).addRange(66718,66719).addRange(66730,66735).addRange(66772,66775).addRange(66812,66815).addRange(66856,66863).addRange(66916,66926).addRange(67005,67007).addRange(67060,67071).addRange(67383,67391).addRange(67414,67423).addRange(67432,67455).addRange(67515,67583).addRange(67590,67591).addRange(67641,67643).addRange(67645,67646).addRange(67743,67750).addRange(67760,67807).addRange(67830,67834).addRange(67868,67870).addRange(67898,67902).addRange(67930,67967).addRange(68024,68027).addRange(68048,68049).addRange(68103,68107).addRange(68150,68151).addRange(68155,68158).addRange(68169,68175).addRange(68185,68191).addRange(68256,68287).addRange(68327,68330).addRange(68343,68351).addRange(68406,68408).addRange(68438,68439).addRange(68467,68471).addRange(68498,68504).addRange(68509,68520).addRange(68528,68607).addRange(68681,68735),e.addRange(68787,68799).addRange(68851,68857).addRange(68904,68911).addRange(68922,68927).addRange(68966,68968).addRange(68998,69005).addRange(69008,69215).addRange(69294,69295).addRange(69298,69313).addRange(69320,69327).addRange(69337,69369).addRange(69416,69423).addRange(69466,69487).addRange(69514,69551).addRange(69580,69599).addRange(69623,69631).addRange(69710,69713).addRange(69750,69758).addRange(69827,69836).addRange(69838,69839).addRange(69865,69871).addRange(69882,69887).addRange(69960,69967).addRange(70007,70015).addRange(70133,70143).addRange(70210,70271).addRange(70314,70319).addRange(70379,70383).addRange(70394,70399).addRange(70413,70414).addRange(70417,70418).addRange(70469,70470).addRange(70473,70474).addRange(70478,70479).addRange(70481,70486).addRange(70488,70492).addRange(70500,70501).addRange(70509,70511).addRange(70517,70527).addRange(70540,70541).addRange(70595,70596).addRange(70617,70624).addRange(70627,70655).addRange(70754,70783).addRange(70856,70863).addRange(70874,71039).addRange(71094,71095).addRange(71134,71167).addRange(71237,71247).addRange(71258,71263).addRange(71277,71295),e.addRange(71354,71359).addRange(71370,71375).addRange(71396,71423).addRange(71451,71452).addRange(71468,71471).addRange(71495,71679).addRange(71740,71839).addRange(71923,71934).addRange(71943,71944).addRange(71946,71947).addRange(71993,71994).addRange(72007,72015).addRange(72026,72095).addRange(72104,72105).addRange(72152,72153).addRange(72165,72191).addRange(72264,72271).addRange(72355,72367).addRange(72441,72447).addRange(72458,72543).addRange(72552,72639).addRange(72674,72687).addRange(72698,72703).addRange(72774,72783).addRange(72813,72815).addRange(72848,72849).addRange(72887,72959).addRange(73015,73017).addRange(73032,73039).addRange(73050,73055).addRange(73113,73119).addRange(73130,73135).addRange(73180,73183).addRange(73194,73439).addRange(73465,73471).addRange(73531,73533).addRange(73563,73647).addRange(73649,73663).addRange(73714,73726).addRange(74650,74751).addRange(74869,74879).addRange(75076,77711).addRange(77811,77823).addRange(78934,78943).addRange(82939,82943).addRange(83527,90367).addRange(90426,92159).addRange(92729,92735).addRange(92778,92781).addRange(92874,92879).addRange(92910,92911),e.addRange(92918,92927).addRange(92998,93007).addRange(93048,93052).addRange(93072,93503).addRange(93562,93759).addRange(93851,93855).addRange(93881,93882).addRange(93908,93951).addRange(94027,94030).addRange(94088,94094).addRange(94112,94175).addRange(94181,94191).addRange(94199,94207).addRange(101590,101630).addRange(101663,101759).addRange(101875,110575).addRange(110883,110897).addRange(110899,110927).addRange(110931,110932).addRange(110934,110947).addRange(110952,110959).addRange(111356,113663).addRange(113771,113775).addRange(113789,113791).addRange(113801,113807).addRange(113818,113819).addRange(113828,117759).addRange(118013,118015).addRange(118452,118457).addRange(118481,118495).addRange(118513,118527).addRange(118574,118575).addRange(118599,118607).addRange(118724,118783).addRange(119030,119039).addRange(119079,119080).addRange(119275,119295).addRange(119366,119487).addRange(119508,119519).addRange(119540,119551).addRange(119639,119647).addRange(119673,119807).addRange(119968,119969).addRange(119971,119972).addRange(119975,119976).addRange(120075,120076).addRange(120135,120137).addRange(120486,120487).addRange(120780,120781).addRange(121484,121498).addRange(121520,122623),e.addRange(122655,122660).addRange(122667,122879).addRange(122905,122906).addRange(122923,122927).addRange(122990,123022).addRange(123024,123135).addRange(123181,123183).addRange(123198,123199).addRange(123210,123213).addRange(123216,123535).addRange(123567,123583).addRange(123642,123646).addRange(123648,124111).addRange(124154,124367).addRange(124411,124414).addRange(124416,124607).addRange(124662,124669).addRange(124672,124895).addRange(125125,125126).addRange(125143,125183).addRange(125260,125263).addRange(125274,125277).addRange(125280,126064).addRange(126133,126208).addRange(126270,126463).addRange(126501,126502).addRange(126524,126529).addRange(126531,126534).addRange(126549,126550).addRange(126565,126566).addRange(126620,126624).addRange(126652,126703).addRange(126706,126975).addRange(127020,127023).addRange(127124,127135).addRange(127151,127152).addRange(127222,127231).addRange(127406,127461).addRange(127491,127503).addRange(127548,127551).addRange(127561,127567).addRange(127570,127583).addRange(127590,127743).addRange(128729,128731).addRange(128749,128751).addRange(128765,128767).addRange(128986,128991).addRange(129004,129007).addRange(129009,129023).addRange(129036,129039).addRange(129096,129103),e.addRange(129114,129119).addRange(129160,129167).addRange(129198,129199).addRange(129212,129215).addRange(129218,129231).addRange(129241,129279).addRange(129624,129631).addRange(129646,129647).addRange(129661,129663).addRange(129675,129677).addRange(129737,129740).addRange(129757,129758).addRange(129771,129774).addRange(129785,129791).addRange(130043,131071).addRange(173792,173823).addRange(178206,178207).addRange(183982,183983).addRange(191457,191471).addRange(192094,194559).addRange(195102,196607).addRange(201547,201551).addRange(210042,917504).addRange(917506,917535).addRange(917632,917759).addRange(918e3,1114111),nue.characters=e,nue}var oue,iue={};function due(){if(oue)return iue;oue=1;var e=_Y();return e.addRange(42240,42539),iue.characters=e,iue}var cue,lue={};function uue(){if(cue)return lue;cue=1;var e=_Y();return e.addRange(66928,66938).addRange(66940,66954).addRange(66956,66962).addRange(66964,66965).addRange(66967,66977).addRange(66979,66993).addRange(66995,67001).addRange(67003,67004),lue.characters=e,lue}var pue,fue={};function gue(){if(pue)return fue;pue=1;var e=_Y(123647);return e.addRange(123584,123641),fue.characters=e,fue}var mue,yue={};function hue(){if(mue)return yue;mue=1;var e=_Y(71935);return e.addRange(71840,71922),yue.characters=e,yue}var bue,vue={};function xue(){if(bue)return vue;bue=1;var e=_Y();return e.addRange(69248,69289).addRange(69291,69293).addRange(69296,69297),vue.characters=e,vue}var Rue,jue={};function wue(){if(Rue)return jue;Rue=1;var e=_Y();return e.addRange(40960,42124).addRange(42128,42182),jue.characters=e,jue}var Eue,Sue,Tue,Pue,Aue={};function kue(){if(Eue)return Aue;Eue=1;var e=_Y();return e.addRange(72192,72263),Aue.characters=e,Aue}function Cue(){return Tue?Sue:(Tue=1,Sue="17.0.0")}function _ue(){return Pue||(Pue={"/node_modules/regenerate-unicode-properties/Binary_Property/Alphabetic.js":IY,"/node_modules/regenerate-unicode-properties/Binary_Property/Any.js":NY,"/node_modules/regenerate-unicode-properties/Binary_Property/ASCII_Hex_Digit.js":FY,"/node_modules/regenerate-unicode-properties/Binary_Property/ASCII.js":qY,"/node_modules/regenerate-unicode-properties/Binary_Property/Assigned.js":VY,"/node_modules/regenerate-unicode-properties/Binary_Property/Bidi_Control.js":KY,"/node_modules/regenerate-unicode-properties/Binary_Property/Bidi_Mirrored.js":YY,"/node_modules/regenerate-unicode-properties/Binary_Property/Case_Ignorable.js":ZY,"/node_modules/regenerate-unicode-properties/Binary_Property/Cased.js":r$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Casefolded.js":s$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Casemapped.js":d$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Lowercased.js":u$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_NFKC_Casefolded.js":g$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Titlecased.js":h$,"/node_modules/regenerate-unicode-properties/Binary_Property/Changes_When_Uppercased.js":x$,"/node_modules/regenerate-unicode-properties/Binary_Property/Dash.js":w$,"/node_modules/regenerate-unicode-properties/Binary_Property/Default_Ignorable_Code_Point.js":T$,"/node_modules/regenerate-unicode-properties/Binary_Property/Deprecated.js":k$,"/node_modules/regenerate-unicode-properties/Binary_Property/Diacritic.js":I$,"/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Component.js":N$,"/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Modifier_Base.js":F$,"/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Modifier.js":q$,"/node_modules/regenerate-unicode-properties/Binary_Property/Emoji_Presentation.js":V$,"/node_modules/regenerate-unicode-properties/Binary_Property/Emoji.js":K$,"/node_modules/regenerate-unicode-properties/Binary_Property/Extended_Pictographic.js":Y$,"/node_modules/regenerate-unicode-properties/Binary_Property/Extender.js":Z$,"/node_modules/regenerate-unicode-properties/Binary_Property/Grapheme_Base.js":rQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Grapheme_Extend.js":sQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Hex_Digit.js":dQ,"/node_modules/regenerate-unicode-properties/Binary_Property/ID_Continue.js":uQ,"/node_modules/regenerate-unicode-properties/Binary_Property/ID_Start.js":gQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Ideographic.js":hQ,"/node_modules/regenerate-unicode-properties/Binary_Property/IDS_Binary_Operator.js":xQ,"/node_modules/regenerate-unicode-properties/Binary_Property/IDS_Trinary_Operator.js":wQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Join_Control.js":TQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Logical_Order_Exception.js":kQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Lowercase.js":IQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Math.js":NQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Noncharacter_Code_Point.js":FQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Pattern_Syntax.js":qQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Pattern_White_Space.js":VQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Quotation_Mark.js":KQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Radical.js":YQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Regional_Indicator.js":ZQ,"/node_modules/regenerate-unicode-properties/Binary_Property/Sentence_Terminal.js":rZ,"/node_modules/regenerate-unicode-properties/Binary_Property/Soft_Dotted.js":sZ,"/node_modules/regenerate-unicode-properties/Binary_Property/Terminal_Punctuation.js":dZ,"/node_modules/regenerate-unicode-properties/Binary_Property/Unified_Ideograph.js":uZ,"/node_modules/regenerate-unicode-properties/Binary_Property/Uppercase.js":gZ,"/node_modules/regenerate-unicode-properties/Binary_Property/Variation_Selector.js":hZ,"/node_modules/regenerate-unicode-properties/Binary_Property/White_Space.js":xZ,"/node_modules/regenerate-unicode-properties/Binary_Property/XID_Continue.js":wZ,"/node_modules/regenerate-unicode-properties/Binary_Property/XID_Start.js":TZ,"/node_modules/regenerate-unicode-properties/General_Category/Cased_Letter.js":kZ,"/node_modules/regenerate-unicode-properties/General_Category/Close_Punctuation.js":IZ,"/node_modules/regenerate-unicode-properties/General_Category/Connector_Punctuation.js":NZ,"/node_modules/regenerate-unicode-properties/General_Category/Control.js":FZ,"/node_modules/regenerate-unicode-properties/General_Category/Currency_Symbol.js":qZ,"/node_modules/regenerate-unicode-properties/General_Category/Dash_Punctuation.js":VZ,"/node_modules/regenerate-unicode-properties/General_Category/Decimal_Number.js":KZ,"/node_modules/regenerate-unicode-properties/General_Category/Enclosing_Mark.js":YZ,"/node_modules/regenerate-unicode-properties/General_Category/Final_Punctuation.js":ZZ,"/node_modules/regenerate-unicode-properties/General_Category/Format.js":r1,"/node_modules/regenerate-unicode-properties/General_Category/Initial_Punctuation.js":s1,"/node_modules/regenerate-unicode-properties/General_Category/Letter_Number.js":d1,"/node_modules/regenerate-unicode-properties/General_Category/Letter.js":u1,"/node_modules/regenerate-unicode-properties/General_Category/Line_Separator.js":g1,"/node_modules/regenerate-unicode-properties/General_Category/Lowercase_Letter.js":h1,"/node_modules/regenerate-unicode-properties/General_Category/Mark.js":x1,"/node_modules/regenerate-unicode-properties/General_Category/Math_Symbol.js":w1,"/node_modules/regenerate-unicode-properties/General_Category/Modifier_Letter.js":T1,"/node_modules/regenerate-unicode-properties/General_Category/Modifier_Symbol.js":k1,"/node_modules/regenerate-unicode-properties/General_Category/Nonspacing_Mark.js":I1,"/node_modules/regenerate-unicode-properties/General_Category/Number.js":N1,"/node_modules/regenerate-unicode-properties/General_Category/Open_Punctuation.js":F1,"/node_modules/regenerate-unicode-properties/General_Category/Other_Letter.js":q1,"/node_modules/regenerate-unicode-properties/General_Category/Other_Number.js":V1,"/node_modules/regenerate-unicode-properties/General_Category/Other_Punctuation.js":K1,"/node_modules/regenerate-unicode-properties/General_Category/Other_Symbol.js":Y1,"/node_modules/regenerate-unicode-properties/General_Category/Other.js":Z1,"/node_modules/regenerate-unicode-properties/General_Category/Paragraph_Separator.js":r0,"/node_modules/regenerate-unicode-properties/General_Category/Private_Use.js":s0,"/node_modules/regenerate-unicode-properties/General_Category/Punctuation.js":d0,"/node_modules/regenerate-unicode-properties/General_Category/Separator.js":u0,"/node_modules/regenerate-unicode-properties/General_Category/Space_Separator.js":g0,"/node_modules/regenerate-unicode-properties/General_Category/Spacing_Mark.js":h0,"/node_modules/regenerate-unicode-properties/General_Category/Surrogate.js":x0,"/node_modules/regenerate-unicode-properties/General_Category/Symbol.js":w0,"/node_modules/regenerate-unicode-properties/General_Category/Titlecase_Letter.js":T0,"/node_modules/regenerate-unicode-properties/General_Category/Unassigned.js":k0,"/node_modules/regenerate-unicode-properties/General_Category/Uppercase_Letter.js":O0,"/node_modules/regenerate-unicode-properties/index.js":N0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/Basic_Emoji.js":F0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/Emoji_Keycap_Sequence.js":q0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/RGI_Emoji_Flag_Sequence.js":V0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/RGI_Emoji_Modifier_Sequence.js":K0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/RGI_Emoji_Tag_Sequence.js":Y0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/RGI_Emoji_ZWJ_Sequence.js":Z0,"/node_modules/regenerate-unicode-properties/Property_of_Strings/RGI_Emoji.js":r2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Adlam.js":s2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ahom.js":d2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Anatolian_Hieroglyphs.js":u2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Arabic.js":g2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Armenian.js":h2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Avestan.js":x2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Balinese.js":w2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Bamum.js":T2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Bassa_Vah.js":k2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Batak.js":I2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Bengali.js":N2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Beria_Erfe.js":F2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Bhaiksuki.js":q2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Bopomofo.js":V2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Brahmi.js":K2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Braille.js":Y2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Buginese.js":Z2,"/node_modules/regenerate-unicode-properties/Script_Extensions/Buhid.js":r6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Canadian_Aboriginal.js":s6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Carian.js":d6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Caucasian_Albanian.js":u6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Chakma.js":g6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cham.js":h6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cherokee.js":x6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Chorasmian.js":w6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Common.js":T6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Coptic.js":k6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cuneiform.js":I6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cypriot.js":N6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cypro_Minoan.js":F6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Cyrillic.js":q6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Deseret.js":V6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Devanagari.js":K6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Dives_Akuru.js":Y6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Dogra.js":Z6,"/node_modules/regenerate-unicode-properties/Script_Extensions/Duployan.js":r4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Egyptian_Hieroglyphs.js":s4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Elbasan.js":d4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Elymaic.js":u4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ethiopic.js":g4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Garay.js":h4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Georgian.js":x4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Glagolitic.js":w4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Gothic.js":T4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Grantha.js":k4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Greek.js":I4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Gujarati.js":N4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Gunjala_Gondi.js":F4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Gurmukhi.js":q4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Gurung_Khema.js":V4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Han.js":K4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hangul.js":Y4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hanifi_Rohingya.js":Z4,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hanunoo.js":r7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hatran.js":s7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hebrew.js":d7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Hiragana.js":u7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Imperial_Aramaic.js":g7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Inherited.js":h7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Inscriptional_Pahlavi.js":x7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Inscriptional_Parthian.js":w7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Javanese.js":T7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kaithi.js":k7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kannada.js":I7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Katakana.js":N7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kawi.js":F7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kayah_Li.js":q7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kharoshthi.js":V7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Khitan_Small_Script.js":K7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Khmer.js":Y7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Khojki.js":Z7,"/node_modules/regenerate-unicode-properties/Script_Extensions/Khudawadi.js":r3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Kirat_Rai.js":s3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Lao.js":d3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Latin.js":u3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Lepcha.js":g3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Limbu.js":h3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Linear_A.js":x3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Linear_B.js":w3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Lisu.js":T3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Lycian.js":k3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Lydian.js":I3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Mahajani.js":N3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Makasar.js":F3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Malayalam.js":q3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Mandaic.js":V3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Manichaean.js":K3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Marchen.js":Y3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Masaram_Gondi.js":Z3,"/node_modules/regenerate-unicode-properties/Script_Extensions/Medefaidrin.js":r8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Meetei_Mayek.js":s8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Mende_Kikakui.js":d8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Meroitic_Cursive.js":u8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Meroitic_Hieroglyphs.js":g8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Miao.js":h8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Modi.js":x8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Mongolian.js":w8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Mro.js":T8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Multani.js":k8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Myanmar.js":I8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nabataean.js":N8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nag_Mundari.js":F8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nandinagari.js":q8,"/node_modules/regenerate-unicode-properties/Script_Extensions/New_Tai_Lue.js":V8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Newa.js":K8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nko.js":Y8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nushu.js":Z8,"/node_modules/regenerate-unicode-properties/Script_Extensions/Nyiakeng_Puachue_Hmong.js":r9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ogham.js":s9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ol_Chiki.js":d9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ol_Onal.js":u9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Hungarian.js":g9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Italic.js":h9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_North_Arabian.js":x9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Permic.js":w9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Persian.js":T9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Sogdian.js":k9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_South_Arabian.js":I9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Turkic.js":N9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Old_Uyghur.js":F9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Oriya.js":q9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Osage.js":V9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Osmanya.js":K9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Pahawh_Hmong.js":Y9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Palmyrene.js":Z9,"/node_modules/regenerate-unicode-properties/Script_Extensions/Pau_Cin_Hau.js":r5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Phags_Pa.js":s5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Phoenician.js":d5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Psalter_Pahlavi.js":u5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Rejang.js":g5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Runic.js":h5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Samaritan.js":x5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Saurashtra.js":w5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sharada.js":T5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Shavian.js":k5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Siddham.js":I5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sidetic.js":N5,"/node_modules/regenerate-unicode-properties/Script_Extensions/SignWriting.js":F5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sinhala.js":q5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sogdian.js":V5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sora_Sompeng.js":K5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Soyombo.js":Y5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sundanese.js":Z5,"/node_modules/regenerate-unicode-properties/Script_Extensions/Sunuwar.js":ree,"/node_modules/regenerate-unicode-properties/Script_Extensions/Syloti_Nagri.js":see,"/node_modules/regenerate-unicode-properties/Script_Extensions/Syriac.js":dee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tagalog.js":uee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tagbanwa.js":gee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tai_Le.js":hee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tai_Tham.js":xee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tai_Viet.js":wee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tai_Yo.js":Tee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Takri.js":kee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tamil.js":Iee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tangsa.js":Nee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tangut.js":Fee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Telugu.js":qee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Thaana.js":Vee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Thai.js":Kee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tibetan.js":Yee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tifinagh.js":Zee,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tirhuta.js":rte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Todhri.js":ste,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tolong_Siki.js":dte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Toto.js":ute,"/node_modules/regenerate-unicode-properties/Script_Extensions/Tulu_Tigalari.js":gte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Ugaritic.js":hte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Unknown.js":xte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Vai.js":wte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Vithkuqi.js":Tte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Wancho.js":kte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Warang_Citi.js":Ite,"/node_modules/regenerate-unicode-properties/Script_Extensions/Yezidi.js":Nte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Yi.js":Fte,"/node_modules/regenerate-unicode-properties/Script_Extensions/Zanabazar_Square.js":qte,"/node_modules/regenerate-unicode-properties/Script/Adlam.js":Vte,"/node_modules/regenerate-unicode-properties/Script/Ahom.js":Kte,"/node_modules/regenerate-unicode-properties/Script/Anatolian_Hieroglyphs.js":Yte,"/node_modules/regenerate-unicode-properties/Script/Arabic.js":Zte,"/node_modules/regenerate-unicode-properties/Script/Armenian.js":rre,"/node_modules/regenerate-unicode-properties/Script/Avestan.js":sre,"/node_modules/regenerate-unicode-properties/Script/Balinese.js":dre,"/node_modules/regenerate-unicode-properties/Script/Bamum.js":ure,"/node_modules/regenerate-unicode-properties/Script/Bassa_Vah.js":gre,"/node_modules/regenerate-unicode-properties/Script/Batak.js":hre,"/node_modules/regenerate-unicode-properties/Script/Bengali.js":xre,"/node_modules/regenerate-unicode-properties/Script/Beria_Erfe.js":wre,"/node_modules/regenerate-unicode-properties/Script/Bhaiksuki.js":Tre,"/node_modules/regenerate-unicode-properties/Script/Bopomofo.js":kre,"/node_modules/regenerate-unicode-properties/Script/Brahmi.js":Ire,"/node_modules/regenerate-unicode-properties/Script/Braille.js":Nre,"/node_modules/regenerate-unicode-properties/Script/Buginese.js":Fre,"/node_modules/regenerate-unicode-properties/Script/Buhid.js":qre,"/node_modules/regenerate-unicode-properties/Script/Canadian_Aboriginal.js":Vre,"/node_modules/regenerate-unicode-properties/Script/Carian.js":Kre,"/node_modules/regenerate-unicode-properties/Script/Caucasian_Albanian.js":Yre,"/node_modules/regenerate-unicode-properties/Script/Chakma.js":Zre,"/node_modules/regenerate-unicode-properties/Script/Cham.js":rae,"/node_modules/regenerate-unicode-properties/Script/Cherokee.js":sae,"/node_modules/regenerate-unicode-properties/Script/Chorasmian.js":dae,"/node_modules/regenerate-unicode-properties/Script/Common.js":uae,"/node_modules/regenerate-unicode-properties/Script/Coptic.js":gae,"/node_modules/regenerate-unicode-properties/Script/Cuneiform.js":hae,"/node_modules/regenerate-unicode-properties/Script/Cypriot.js":xae,"/node_modules/regenerate-unicode-properties/Script/Cypro_Minoan.js":wae,"/node_modules/regenerate-unicode-properties/Script/Cyrillic.js":Tae,"/node_modules/regenerate-unicode-properties/Script/Deseret.js":kae,"/node_modules/regenerate-unicode-properties/Script/Devanagari.js":Iae,"/node_modules/regenerate-unicode-properties/Script/Dives_Akuru.js":Nae,"/node_modules/regenerate-unicode-properties/Script/Dogra.js":Fae,"/node_modules/regenerate-unicode-properties/Script/Duployan.js":qae,"/node_modules/regenerate-unicode-properties/Script/Egyptian_Hieroglyphs.js":Vae,"/node_modules/regenerate-unicode-properties/Script/Elbasan.js":Kae,"/node_modules/regenerate-unicode-properties/Script/Elymaic.js":Yae,"/node_modules/regenerate-unicode-properties/Script/Ethiopic.js":Zae,"/node_modules/regenerate-unicode-properties/Script/Garay.js":rne,"/node_modules/regenerate-unicode-properties/Script/Georgian.js":sne,"/node_modules/regenerate-unicode-properties/Script/Glagolitic.js":dne,"/node_modules/regenerate-unicode-properties/Script/Gothic.js":une,"/node_modules/regenerate-unicode-properties/Script/Grantha.js":gne,"/node_modules/regenerate-unicode-properties/Script/Greek.js":hne,"/node_modules/regenerate-unicode-properties/Script/Gujarati.js":xne,"/node_modules/regenerate-unicode-properties/Script/Gunjala_Gondi.js":wne,"/node_modules/regenerate-unicode-properties/Script/Gurmukhi.js":Tne,"/node_modules/regenerate-unicode-properties/Script/Gurung_Khema.js":kne,"/node_modules/regenerate-unicode-properties/Script/Han.js":Ine,"/node_modules/regenerate-unicode-properties/Script/Hangul.js":Nne,"/node_modules/regenerate-unicode-properties/Script/Hanifi_Rohingya.js":Fne,"/node_modules/regenerate-unicode-properties/Script/Hanunoo.js":qne,"/node_modules/regenerate-unicode-properties/Script/Hatran.js":Vne,"/node_modules/regenerate-unicode-properties/Script/Hebrew.js":Kne,"/node_modules/regenerate-unicode-properties/Script/Hiragana.js":Yne,"/node_modules/regenerate-unicode-properties/Script/Imperial_Aramaic.js":Zne,"/node_modules/regenerate-unicode-properties/Script/Inherited.js":rse,"/node_modules/regenerate-unicode-properties/Script/Inscriptional_Pahlavi.js":sse,"/node_modules/regenerate-unicode-properties/Script/Inscriptional_Parthian.js":dse,"/node_modules/regenerate-unicode-properties/Script/Javanese.js":use,"/node_modules/regenerate-unicode-properties/Script/Kaithi.js":gse,"/node_modules/regenerate-unicode-properties/Script/Kannada.js":hse,"/node_modules/regenerate-unicode-properties/Script/Katakana.js":xse,"/node_modules/regenerate-unicode-properties/Script/Kawi.js":wse,"/node_modules/regenerate-unicode-properties/Script/Kayah_Li.js":Tse,"/node_modules/regenerate-unicode-properties/Script/Kharoshthi.js":kse,"/node_modules/regenerate-unicode-properties/Script/Khitan_Small_Script.js":Ise,"/node_modules/regenerate-unicode-properties/Script/Khmer.js":Nse,"/node_modules/regenerate-unicode-properties/Script/Khojki.js":Fse,"/node_modules/regenerate-unicode-properties/Script/Khudawadi.js":qse,"/node_modules/regenerate-unicode-properties/Script/Kirat_Rai.js":Vse,"/node_modules/regenerate-unicode-properties/Script/Lao.js":Kse,"/node_modules/regenerate-unicode-properties/Script/Latin.js":Yse,"/node_modules/regenerate-unicode-properties/Script/Lepcha.js":Zse,"/node_modules/regenerate-unicode-properties/Script/Limbu.js":roe,"/node_modules/regenerate-unicode-properties/Script/Linear_A.js":soe,"/node_modules/regenerate-unicode-properties/Script/Linear_B.js":doe,"/node_modules/regenerate-unicode-properties/Script/Lisu.js":uoe,"/node_modules/regenerate-unicode-properties/Script/Lycian.js":goe,"/node_modules/regenerate-unicode-properties/Script/Lydian.js":hoe,"/node_modules/regenerate-unicode-properties/Script/Mahajani.js":xoe,"/node_modules/regenerate-unicode-properties/Script/Makasar.js":woe,"/node_modules/regenerate-unicode-properties/Script/Malayalam.js":Toe,"/node_modules/regenerate-unicode-properties/Script/Mandaic.js":koe,"/node_modules/regenerate-unicode-properties/Script/Manichaean.js":Ioe,"/node_modules/regenerate-unicode-properties/Script/Marchen.js":Noe,"/node_modules/regenerate-unicode-properties/Script/Masaram_Gondi.js":Foe,"/node_modules/regenerate-unicode-properties/Script/Medefaidrin.js":qoe,"/node_modules/regenerate-unicode-properties/Script/Meetei_Mayek.js":Voe,"/node_modules/regenerate-unicode-properties/Script/Mende_Kikakui.js":Koe,"/node_modules/regenerate-unicode-properties/Script/Meroitic_Cursive.js":Yoe,"/node_modules/regenerate-unicode-properties/Script/Meroitic_Hieroglyphs.js":Zoe,"/node_modules/regenerate-unicode-properties/Script/Miao.js":rie,"/node_modules/regenerate-unicode-properties/Script/Modi.js":sie,"/node_modules/regenerate-unicode-properties/Script/Mongolian.js":die,"/node_modules/regenerate-unicode-properties/Script/Mro.js":uie,"/node_modules/regenerate-unicode-properties/Script/Multani.js":gie,"/node_modules/regenerate-unicode-properties/Script/Myanmar.js":hie,"/node_modules/regenerate-unicode-properties/Script/Nabataean.js":xie,"/node_modules/regenerate-unicode-properties/Script/Nag_Mundari.js":wie,"/node_modules/regenerate-unicode-properties/Script/Nandinagari.js":Tie,"/node_modules/regenerate-unicode-properties/Script/New_Tai_Lue.js":kie,"/node_modules/regenerate-unicode-properties/Script/Newa.js":Iie,"/node_modules/regenerate-unicode-properties/Script/Nko.js":Nie,"/node_modules/regenerate-unicode-properties/Script/Nushu.js":Fie,"/node_modules/regenerate-unicode-properties/Script/Nyiakeng_Puachue_Hmong.js":qie,"/node_modules/regenerate-unicode-properties/Script/Ogham.js":Vie,"/node_modules/regenerate-unicode-properties/Script/Ol_Chiki.js":Kie,"/node_modules/regenerate-unicode-properties/Script/Ol_Onal.js":Yie,"/node_modules/regenerate-unicode-properties/Script/Old_Hungarian.js":Zie,"/node_modules/regenerate-unicode-properties/Script/Old_Italic.js":rde,"/node_modules/regenerate-unicode-properties/Script/Old_North_Arabian.js":sde,"/node_modules/regenerate-unicode-properties/Script/Old_Permic.js":dde,"/node_modules/regenerate-unicode-properties/Script/Old_Persian.js":ude,"/node_modules/regenerate-unicode-properties/Script/Old_Sogdian.js":gde,"/node_modules/regenerate-unicode-properties/Script/Old_South_Arabian.js":hde,"/node_modules/regenerate-unicode-properties/Script/Old_Turkic.js":xde,"/node_modules/regenerate-unicode-properties/Script/Old_Uyghur.js":wde,"/node_modules/regenerate-unicode-properties/Script/Oriya.js":Tde,"/node_modules/regenerate-unicode-properties/Script/Osage.js":kde,"/node_modules/regenerate-unicode-properties/Script/Osmanya.js":Ide,"/node_modules/regenerate-unicode-properties/Script/Pahawh_Hmong.js":Nde,"/node_modules/regenerate-unicode-properties/Script/Palmyrene.js":Fde,"/node_modules/regenerate-unicode-properties/Script/Pau_Cin_Hau.js":qde,"/node_modules/regenerate-unicode-properties/Script/Phags_Pa.js":Vde,"/node_modules/regenerate-unicode-properties/Script/Phoenician.js":Kde,"/node_modules/regenerate-unicode-properties/Script/Psalter_Pahlavi.js":Yde,"/node_modules/regenerate-unicode-properties/Script/Rejang.js":Zde,"/node_modules/regenerate-unicode-properties/Script/Runic.js":rce,"/node_modules/regenerate-unicode-properties/Script/Samaritan.js":sce,"/node_modules/regenerate-unicode-properties/Script/Saurashtra.js":dce,"/node_modules/regenerate-unicode-properties/Script/Sharada.js":uce,"/node_modules/regenerate-unicode-properties/Script/Shavian.js":gce,"/node_modules/regenerate-unicode-properties/Script/Siddham.js":hce,"/node_modules/regenerate-unicode-properties/Script/Sidetic.js":xce,"/node_modules/regenerate-unicode-properties/Script/SignWriting.js":wce,"/node_modules/regenerate-unicode-properties/Script/Sinhala.js":Tce,"/node_modules/regenerate-unicode-properties/Script/Sogdian.js":kce,"/node_modules/regenerate-unicode-properties/Script/Sora_Sompeng.js":Ice,"/node_modules/regenerate-unicode-properties/Script/Soyombo.js":Nce,"/node_modules/regenerate-unicode-properties/Script/Sundanese.js":Fce,"/node_modules/regenerate-unicode-properties/Script/Sunuwar.js":qce,"/node_modules/regenerate-unicode-properties/Script/Syloti_Nagri.js":Vce,"/node_modules/regenerate-unicode-properties/Script/Syriac.js":Kce,"/node_modules/regenerate-unicode-properties/Script/Tagalog.js":Yce,"/node_modules/regenerate-unicode-properties/Script/Tagbanwa.js":Zce,"/node_modules/regenerate-unicode-properties/Script/Tai_Le.js":rle,"/node_modules/regenerate-unicode-properties/Script/Tai_Tham.js":sle,"/node_modules/regenerate-unicode-properties/Script/Tai_Viet.js":dle,"/node_modules/regenerate-unicode-properties/Script/Tai_Yo.js":ule,"/node_modules/regenerate-unicode-properties/Script/Takri.js":gle,"/node_modules/regenerate-unicode-properties/Script/Tamil.js":hle,"/node_modules/regenerate-unicode-properties/Script/Tangsa.js":xle,"/node_modules/regenerate-unicode-properties/Script/Tangut.js":wle,"/node_modules/regenerate-unicode-properties/Script/Telugu.js":Tle,"/node_modules/regenerate-unicode-properties/Script/Thaana.js":kle,"/node_modules/regenerate-unicode-properties/Script/Thai.js":Ile,"/node_modules/regenerate-unicode-properties/Script/Tibetan.js":Nle,"/node_modules/regenerate-unicode-properties/Script/Tifinagh.js":Fle,"/node_modules/regenerate-unicode-properties/Script/Tirhuta.js":qle,"/node_modules/regenerate-unicode-properties/Script/Todhri.js":Vle,"/node_modules/regenerate-unicode-properties/Script/Tolong_Siki.js":Kle,"/node_modules/regenerate-unicode-properties/Script/Toto.js":Yle,"/node_modules/regenerate-unicode-properties/Script/Tulu_Tigalari.js":Zle,"/node_modules/regenerate-unicode-properties/Script/Ugaritic.js":rue,"/node_modules/regenerate-unicode-properties/Script/Unknown.js":sue,"/node_modules/regenerate-unicode-properties/Script/Vai.js":due,"/node_modules/regenerate-unicode-properties/Script/Vithkuqi.js":uue,"/node_modules/regenerate-unicode-properties/Script/Wancho.js":gue,"/node_modules/regenerate-unicode-properties/Script/Warang_Citi.js":hue,"/node_modules/regenerate-unicode-properties/Script/Yezidi.js":xue,"/node_modules/regenerate-unicode-properties/Script/Yi.js":wue,"/node_modules/regenerate-unicode-properties/Script/Zanabazar_Square.js":kue,"/node_modules/regenerate-unicode-properties/unicode-version.js":Cue})}function Iue(e,t){var r,a=function(e){var t=e[0];if("/"===t||"\\"===t)return!1;var r=e[1],a=e[2];return!(!("."!==t||r&&"/"!==r&&"\\"!==r)||!("."!==t||"."!==r||a&&"/"!==a&&"\\"!==a))&&(":"!==r||"/"!==a&&"\\"!==a)}(e);"/"===(e=Due(e))[0]&&(t="");for(var n=_ue(),s=["",".js",".json"];!(r=Due(a?t+"/node_modules/"+e:t+"/"+e)).endsWith("/..");){for(var o=0;o<s.length;o++){var i=r+s[o];if(n[i])return i}if(!a)break;var d=Due(t+"/..");if(d===t)break;t=d}return null}function Due(e){for(var t=(e=e.replace(/\\/g,"/")).split("/"),r=""===t[0],a=1;a<t.length;a++)"."!==t[a]&&""!==t[a]||t.splice(a--,1);for(a=1;a<t.length;a++)".."===t[a]&&a>0&&".."!==t[a-1]&&"."!==t[a-1]&&(t.splice(--a,2),a--);return e=t.join("/"),r&&"/"!==e[0]?e="/"+e:0===e.length&&(e="."),e}var Oue={exports:{}};!function(e,t){(function(){var r={function:!0,object:!0}[typeof window]&&window||this,a=t&&!t.nodeType&&t,n=e&&!e.nodeType,s=a&&n&&"object"==typeof dR&&dR;!s||s.global!==s&&s.window!==s&&s.self!==s||(r=s);var o=Object.prototype.hasOwnProperty;function i(){var e=Number(arguments[0]);if(!isFinite(e)||e<0||e>1114111||Math.floor(e)!=e)throw RangeError("Invalid code point: "+e);if(e<=65535)return String.fromCharCode(e);var t=55296+((e-=65536)>>10),r=e%1024+56320;return String.fromCharCode(t,r)}var d={};function c(e,t){if(-1==t.indexOf("|")){if(e==t)return;throw Error("Invalid node type: "+e+"; expected type: "+t)}if(!(t=o.call(d,t)?d[t]:d[t]=RegExp("^(?:"+t+")$")).test(e))throw Error("Invalid node type: "+e+"; expected types: "+t)}function l(e){var t=e.type;if(o.call(h,t))return h[t](e);throw Error("Invalid node type: "+t)}function u(e,t,r){for(var a,n=-1,s=t.length,o="";++n<s;)a=t[n],r&&n>0&&(o+=r),n+1<s&&"value"==t[n].type&&"null"==t[n].kind&&"value"==t[n+1].type&&"symbol"==t[n+1].kind&&t[n+1].codePoint>=48&&t[n+1].codePoint<=57?o+="\\000":o+=e(a);return o}var p="anchor|characterClass|characterClassEscape|dot|group|reference|unicodePropertyEscape|value";function f(e){return c(e.type,"anchor|characterClass|characterClassEscape|characterClassRange|dot|value|unicodePropertyEscape|classStrings"),l(e)}function g(e){return c(e.type,"classString"),u(l,e.characters)}function m(e){return c(e.type,"identifier"),e.value}function y(e){return c(e.type,p+"|empty|quantifier"),l(e)}var h={alternative:function(e){return c(e.type,"alternative"),u(y,e.body)},anchor:function(e){switch(c(e.type,"anchor"),e.kind){case"start":return"^";case"end":return"$";case"boundary":return"\\b";case"not-boundary":return"\\B";default:throw Error("Invalid assertion")}},characterClass:function(e){c(e.type,"characterClass");var t=e.kind,r="intersection"===t?"&&":"subtraction"===t?"--":"";return"["+(e.negative?"^":"")+u(f,e.body,r)+"]"},characterClassEscape:function(e){return c(e.type,"characterClassEscape"),"\\"+e.value},characterClassRange:function(e){c(e.type,"characterClassRange");var t=e.min,r=e.max;if("characterClassRange"==t.type||"characterClassRange"==r.type)throw Error("Invalid character class range");return f(t)+"-"+f(r)},classStrings:function(e){return c(e.type,"classStrings"),"\\q{"+u(g,e.strings,"|")+"}"},disjunction:function(e){return c(e.type,"disjunction"),u(l,e.body,"|")},dot:function(e){return c(e.type,"dot"),"."},group:function(e){c(e.type,"group");var t="";switch(e.behavior){case"normal":e.name&&(t+="?<"+m(e.name)+">");break;case"ignore":e.modifierFlags?(t+="?",e.modifierFlags.enabling&&(t+=e.modifierFlags.enabling),e.modifierFlags.disabling&&(t+="-"+e.modifierFlags.disabling),t+=":"):t+="?:";break;case"lookahead":t+="?=";break;case"negativeLookahead":t+="?!";break;case"lookbehind":t+="?<=";break;case"negativeLookbehind":t+="?<!";break;default:throw Error("Invalid behaviour: "+e.behaviour)}return"("+(t+=u(l,e.body))+")"},quantifier:function(e){c(e.type,"quantifier");var t="",r=e.min,a=e.max;return t=null==a?0==r?"*":1==r?"+":"{"+r+",}":r==a?"{"+r+"}":0==r&&1==a?"?":"{"+r+","+a+"}",e.greedy||(t+="?"),function(e){return c(e.type,p),l(e)}(e.body[0])+t},reference:function(e){if(c(e.type,"reference"),e.matchIndex)return"\\"+e.matchIndex;if(e.name)return"\\k<"+m(e.name)+">";throw new Error("Unknown reference type")},unicodePropertyEscape:function(e){return c(e.type,"unicodePropertyEscape"),"\\"+(e.negative?"P":"p")+"{"+e.value+"}"},value:function(e){c(e.type,"value");var t=e.kind,r=e.codePoint;if("number"!=typeof r)throw new Error("Invalid code point: "+r);switch(t){case"controlLetter":return"\\c"+i(r+64);case"hexadecimalEscape":return"\\x"+("00"+r.toString(16).toUpperCase()).slice(-2);case"identifier":return"\\"+i(r);case"null":return"\\"+r;case"octal":return"\\"+("000"+r.toString(8)).slice(-3);case"singleEscape":switch(r){case 8:return"\\b";case 9:return"\\t";case 10:return"\\n";case 11:return"\\v";case 12:return"\\f";case 13:return"\\r";case 45:return"\\-";default:throw Error("Invalid code point: "+r)}case"symbol":return i(r);case"unicodeEscape":return"\\u"+("0000"+r.toString(16).toUpperCase()).slice(-4);case"unicodeCodePointEscape":return"\\u{"+r.toString(16).toUpperCase()+"}";default:throw Error("Unsupported node kind: "+t)}}},b={generate:l};a&&n?a.generate=l:r.regjsgen=b}).call(dR)}(Oue,Oue.exports);var Nue=Oue.exports,Bue={exports:{}};!function(e){var t,r,a,n;a=String.fromCodePoint||(t=String.fromCharCode,r=Math.floor,function(){var e,a,n=[],s=-1,o=arguments.length;if(!o)return"";for(var i="";++s<o;){var d=Number(arguments[s]);if(!isFinite(d)||d<0||d>1114111||r(d)!=d)throw RangeError("Invalid code point: "+d);d<=65535?n.push(d):(e=55296+((d-=65536)>>10),a=d%1024+56320,n.push(e,a)),(s+1==o||n.length>16384)&&(i+=t.apply(null,n),n.length=0)}return i}),n={parse:function(e,t,r){function n(t,r){return t.range[0]=r,t.raw=e.substring(r,t.range[1]),t}function s(t,r){return{type:"anchor",kind:t,range:[te-r,te],raw:e.substring(te-r,te)}}function o(t,r,a,n){return{type:"value",kind:t,codePoint:r,range:[a,n],raw:e.substring(a,n)}}function i(e,t,r,a){return a=a||0,o(e,t,te-(r.length+a),te)}function d(e){var t,r=e[0],a=r.charCodeAt(0);return ee&&1===r.length&&a>=55296&&a<=56319&&(t=h().charCodeAt(0))>=56320&&t<=57343?o("symbol",1024*(a-55296)+t-56320+65536,++te-2,te):o("symbol",a,te-1,te)}function c(t,r,a,n,s){return null==n&&(a=te-1,n=te),{type:"quantifier",min:t,max:r,greedy:!0,body:null,symbol:s,range:[a,n],raw:e.substring(a,n)}}function l(t,r,a,n){return{type:"characterClass",kind:t.kind,body:t.body,negative:r,range:[a,n],raw:e.substring(a,n)}}function u(t,r,a,n){return t.codePoint>r.codePoint&&K("invalid range in character class",t.raw+"-"+r.raw,a,n),{type:"characterClassRange",min:t,max:r,range:[a,n],raw:e.substring(a,n)}}function p(e){return"alternative"===e.type?e.body:[e]}function f(e){te+=e=e||1}function g(e){m(e)||K("character",e)}function m(t){var r=t.length;if(e.substring(te,te+r)===t)return f(r),t}function y(t){if(e[te]===t)return te++,t}function h(){return e[te]}function b(t){return e[te]===t}function v(t){return e[te+1]===t}function x(t){var r=e.substring(te).match(t);return r&&(te+=r[0].length),r}function R(){var t=[],r=te;for(t.push(j());y("|");)t.push(j());return 1===t.length?t[0]:function(t,r,a){return{type:"disjunction",body:t,range:[r,a],raw:e.substring(r,a)}}(t,r,te)}function j(){for(var t,r=[],a=te;t=w();)r.push(t);return 1===r.length?r[0]:function(t,r,a){return{type:"alternative",body:t,range:[r,a],raw:e.substring(r,a)}}(r,a,te)}function w(){if(te>=e.length||b("|")||b(")"))return null;var t,a=function(){switch(h()){case"^":return f(),s("start",1);case"$":return f(),s("end",1);case"\\":if(v("b"))return f(2),s("boundary",2);if(v("B"))return f(2),s("not-boundary",2);break;case"(":return E("(?=","lookahead","(?!","negativeLookahead");default:return}}();if(a){var i=te;if(t=T()||!1){if(!ee&&"group"===a.type)return t.body=p(a),n(t,a.range[0]),t;te=i,K("Expected atom")}return a}var c=function(){var t;switch(t=h()){case".":return f(),{type:"dot",range:[te-1,te],raw:"."};case"\\":if(f(),!(t=k())){if(!ee&&"c"==h())return o("symbol",92,te-1,te);K("atomEscape")}return t;case"[":return F();case"(":if(r.lookbehind&&(t=E("(?<=","lookbehind","(?<!","negativeLookbehind")))return t;if(r.namedGroups&&m("(?<")){var a=O();g(">");var n=S("normal",a.range[0]-3);return n.name=a,n}return r.modifiers&&function(t){var r=t.length;return e.substring(te,te+r)===t}("(?")&&":"!=e[te+2]?function(){function e(e){for(var t=0;t<e.length;){if(-1!=e.indexOf(e[t],t+1))return!0;t++}return!1}var t=te;f(2);var r,a=x(/^[sim]+/);y("-")&&":"!==h()?(r=x(/^[sim]+/))||K("Invalid flags for modifiers group"):a||K("Invalid flags for modifiers group"),a=a?a[0]:"",r=r?r[0]:"";var n=a+r;(n.length>3||e(n))&&K("flags cannot be duplicated for modifiers group"),y(":")||K("Invalid flags for modifiers group");var s=S("ignore",t);return s.modifierFlags={enabling:a,disabling:r},s}():E("(?:","ignore","(","normal");case"]":case"}":if(!ee)return f(),d(t);break;case"^":case"$":case"*":case"+":case"?":case"{":case")":case"|":break;default:return f(),d(t)}}();if(c||(i=te,(t=T()||!1)&&(te=i,K("Expected atom")),!ee&&y("{")?c=d("{"):K("Expected atom")),t=T()||!1){var l=c.type,u=c.behavior;return"group"!==l||"negativeLookbehind"!==u&&"lookbehind"!==u||K("Invalid quantifier","",t.range[0],t.range[1]),t.body=p(c),n(t,c.range[0]),t}return c}function E(e,t,r,a){var n=null,s=te;if(m(e))n=t;else{if(!m(r))return!1;n=a}return S(n,s)}function S(t,r){var a=R();a||K("Expected disjunction"),g(")");var n=function(t,r,a,n){return{type:"group",behavior:t,body:r,range:[a,n],raw:e.substring(a,n)}}(t,p(a),r,te);return"normal"==t&&Y&&J++,n}function T(){var e,t,r,a,n=te;switch(h()){case"*":f(),t=c(0,void 0,void 0,void 0,"*");break;case"+":f(),t=c(1,void 0,void 0,void 0,"+");break;case"?":f(),t=c(0,1,void 0,void 0,"?");break;case"{":(e=x(/^\{(\d+)\}/))?t=c(r=parseInt(e[1],10),r,n,te):(e=x(/^\{(\d+),\}/))?t=c(r=parseInt(e[1],10),void 0,n,te):(e=x(/^\{(\d+),(\d+)\}/))&&((r=parseInt(e[1],10))>(a=parseInt(e[2],10))&&K("numbers out of order in {} quantifier","",n,te),t=c(r,a,n,te)),(r&&!Number.isSafeInteger(r)||a&&!Number.isSafeInteger(a))&&K("iterations outside JS safe integer range in quantifier","",n,te)}return t&&y("?")&&(t.greedy=!1,t.range[1]+=1),t}function P(t,r){var a,n;if(r&&"unicodeEscape"==t.kind&&(a=t.codePoint)>=55296&&a<=56319&&b("\\")&&v("u")){var s=te;te++;var o=A();"unicodeEscape"==o.kind&&(n=o.codePoint)>=56320&&n<=57343?(t.kind="unicodeCodePointEscape",t.codePoint=1024*(a-55296)+n-56320+65536,t.range[1]=te,t.raw=e.substring(t.range[0],te)):te=s}return t}function A(){return k(!0)}function k(t){var a,s,o=te;switch(s=h()){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return function(t){var r,a,s=te;if(r=x(/^(?!0)\d+/)){a=r[0];var o=parseInt(r[0],10);if(o<=J&&!t)return function(t){var r=te-1-t.length;return{type:"reference",matchIndex:parseInt(t,10),range:[r,te],raw:e.substring(r,te)}}(r[0]);if(X.push(o),Y?$=!0:C(s,te),f(-r[0].length),r=x(/^[0-7]{1,3}/))return i("octal",parseInt(r[0],8),r[0],1);var c=te;return n(r=d(x(/^[89]/)),c-1)}return!!(r=x(/^[0-7]{1,3}/))&&("0"!==(a=r[0])&&C(s,te),/^0{1,3}$/.test(a)?i("null",0,"0",a.length):i("octal",parseInt(a,8),a,1))}(t);case"B":if(t){K("\\B not possible inside of CharacterClass","",o);break}return M();case"b":return t?(f(),i("singleEscape",8,"\\b")):M();case"c":if(t){if(!ee&&(a=x(/^c(\d)/)))return i("controlLetter",a[1]+16,a[1],2);if(!ee&&m("c_"))return i("controlLetter",31,"_",2)}return I();case"d":case"D":case"w":case"W":case"s":case"S":return f(),function(t){return{type:"characterClassEscape",value:t,range:[te-2,te],raw:e.substring(te-2,te)}}(s);case"k":return function(){if(r.namedGroups&&x(/^k<(?=.*?>)/)){var t=O();return g(">"),function(t){var r=t.range[0]-3;return{type:"reference",name:t,range:[r,te],raw:e.substring(r,te)}}(t)}}()||M();case"p":case"P":return function(){var t,a=te;return!!(r.unicodePropertyEscape&&ee&&(t=x(/^([pP])\{([^}]+)\}/)))&&{type:"unicodePropertyEscape",negative:"P"===t[1],value:t[2],range:[a-1,te],raw:e.substring(a-1,te)}}()||M();case"-":return t&&ee?(f(),i("singleEscape",45,"\\-")):M();default:return I()}}function C(e,t){ee&&K("Invalid decimal escape in unicode mode",null,e,t)}function _(e){var t;return(t=x(/^u([0-9a-fA-F]{4})/))?P(i("unicodeEscape",parseInt(t[1],16),t[1],2),e):e&&(t=x(/^u\{([0-9a-fA-F]+)\}/))?i("unicodeCodePointEscape",parseInt(t[1],16),t[1],4):void 0}function I(){var e,t=te;switch(h()){case"t":return f(),i("singleEscape",9,"\\t");case"n":return f(),i("singleEscape",10,"\\n");case"v":return f(),i("singleEscape",11,"\\v");case"f":return f(),i("singleEscape",12,"\\f");case"r":return f(),i("singleEscape",13,"\\r");case"c":if(e=x(/^c([a-zA-Z])/))return i("controlLetter",e[1].charCodeAt(0)%32,e[1],2);break;case"x":if(e=x(/^x([0-9a-fA-F]{2})/))return i("hexadecimalEscape",parseInt(e[1],16),e[1],2);break;case"u":if(e=_(ee))return(!e||e.codePoint>1114111)&&K("Invalid escape sequence",null,t,te),e}return M()}function D(t){var r=h(),n=te;if("\\"===r){f();var s=_(!0);return s&&t(s.codePoint)||K("Invalid escape sequence",null,n,te),a(s.codePoint)}var o=r.charCodeAt(0);if(o>=55296&&o<=56319){var i=(r+=e[te+1]).charCodeAt(1);i>=56320&&i<=57343&&(o=1024*(o-55296)+i-56320+65536)}if(t(o))return f(),o>65535&&f(),r}function O(){var t,r=te,a=D(N);for(a||K("Invalid identifier");t=D(B);)a+=t;return{type:"identifier",value:a,range:[r,te],raw:e.substring(r,te)}}function N(e){return 36===e||95===e||e>=65&&e<=90||e>=97&&e<=122||e>=128&&/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDDC0-\uDDF3\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDD4A-\uDD65\uDD6F-\uDD85\uDE80-\uDEA9\uDEB0\uDEB1\uDEC2-\uDEC4\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE3F\uDE40\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61\uDF80-\uDF89\uDF8B\uDF8E\uDF90-\uDFB5\uDFB7\uDFD1\uDFD3]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8\uDFC0-\uDFE0]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDF02\uDF04-\uDF10\uDF12-\uDF33\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD80E\uD80F\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883\uD885-\uD887][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2F\uDC41-\uDC46\uDC60-\uDFFF]|\uD810[\uDC00-\uDFFA]|\uD811[\uDC00-\uDE46]|\uD818[\uDD00-\uDD1D]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDD40-\uDD6C\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDCFF-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD32\uDD50-\uDD52\uDD55\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E\uDF25-\uDF2A]|\uD838[\uDC30-\uDC6D\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDCD0-\uDCEB\uDDD0-\uDDED\uDDF0\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF39\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0\uDFF0-\uDFFF]|\uD87B[\uDC00-\uDE5D]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A\uDF50-\uDFFF]|\uD888[\uDC00-\uDFAF]/.test(a(e))}function B(e){return N(e)||e>=48&&e<=57||e>=128&&/[\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDD30-\uDD39\uDD40-\uDD49\uDD69-\uDD6D\uDEAB\uDEAC\uDEFC-\uDEFF\uDF46-\uDF50\uDF82-\uDF85]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC66-\uDC70\uDC73\uDC74\uDC7F-\uDC82\uDCB0-\uDCBA\uDCC2\uDCF0-\uDCF9\uDD00-\uDD02\uDD27-\uDD34\uDD36-\uDD3F\uDD45\uDD46\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDC9-\uDDCC\uDDCE-\uDDD9\uDE2C-\uDE37\uDE3E\uDE41\uDEDF-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF3B\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74\uDFB8-\uDFC0\uDFC2\uDFC5\uDFC7-\uDFCA\uDFCC-\uDFD0\uDFD2\uDFE1\uDFE2]|\uD805[\uDC35-\uDC46\uDC50-\uDC59\uDC5E\uDCB0-\uDCC3\uDCD0-\uDCD9\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDE50-\uDE59\uDEAB-\uDEB7\uDEC0-\uDEC9\uDED0-\uDEE3\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDC2C-\uDC3A\uDCE0-\uDCE9\uDD30-\uDD35\uDD37\uDD38\uDD3B-\uDD3E\uDD40\uDD42\uDD43\uDD50-\uDD59\uDDD1-\uDDD7\uDDDA-\uDDE0\uDDE4\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE3E\uDE47\uDE51-\uDE5B\uDE8A-\uDE99\uDFF0-\uDFF9]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC50-\uDC59\uDC92-\uDCA7\uDCA9-\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD50-\uDD59\uDD8A-\uDD8E\uDD90\uDD91\uDD93-\uDD97\uDDA0-\uDDA9\uDEF3-\uDEF6\uDF00\uDF01\uDF03\uDF34-\uDF3A\uDF3E-\uDF42\uDF50-\uDF5A]|\uD80D[\uDC40\uDC47-\uDC55]|\uD818[\uDD1E-\uDD39]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDEF0-\uDEF4\uDF30-\uDF36\uDF50-\uDF59]|\uD81B[\uDD70-\uDD79\uDF4F\uDF51-\uDF87\uDF8F-\uDF92\uDFE4\uDFF0\uDFF1]|\uD82F[\uDC9D\uDC9E]|\uD833[\uDCF0-\uDCF9\uDF00-\uDF2D\uDF30-\uDF46]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDC8F\uDD30-\uDD36\uDD40-\uDD49\uDEAE\uDEEC-\uDEF9]|\uD839[\uDCEC-\uDCF9\uDDEE\uDDEF\uDDF1-\uDDFA]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A\uDD50-\uDD59]|\uD83E[\uDFF0-\uDFF9]|\uDB40[\uDD00-\uDDEF]/.test(a(e))}function M(){var t,a,n=h();return ee&&/[\^$.*+?()\\[\]{}|/]/.test(n)||!ee&&"c"!==n?"k"===n&&r.lookbehind?null:(a=1,i("identifier",(t=e.substring(te,te+=a)).charCodeAt(0),t,1)):null}function F(){var e,t=te;return(e=m("[^"))?(e=L(),g("]"),l(e,!0,t,te)):y("[")?(e=L(),g("]"),l(e,!1,t,te)):null}function L(){var e,t;return b("]")?{kind:"union",body:[]}:Z?function(){var e,t=[],r=G(!0);for(t.push(r),e="classRange"===r.type?"union":b("&")?"intersection":b("-")?"subtraction":"union";!b("]");)"intersection"===e?(g("&"),g("&"),b("&")&&K("&& cannot be followed by &. Wrap it in brackets: &&[&].")):"subtraction"===e&&(g("-"),g("-")),r=G("union"===e),t.push(r);return{kind:e,body:t}}():((t=q())||K("classAtom"),(e=b("]")?[t]:U(t))||K("nonEmptyClassRanges"),{kind:"union",body:e})}function U(e){var t,r,a,n,s;if(b("-")&&!v("]")){t=e.range[0],f(),s=d("-"),(n=q())||K("classAtom"),r=te;var o=L();return o||K("classContents"),"codePoint"in e&&"codePoint"in n?a=[u(e,n,t,r)]:ee?K("invalid character class"):a=[e,s,n],"empty"===o.type?a:a.concat(o.body)}return(a=function(){var e=q();return e||K("classAtom"),b("]")?e:U(e)}())||K("nonEmptyClassRangesNoDash"),[e].concat(a)}function q(){return y("-")?d("-"):function(){var e;switch(e=h()){case"\\":if(f(),!(e=A())){if(!ee&&"c"==h())return d("\\");K("classEscape")}return P(e,ee);case"]":case"-":break;default:return f(),d(e)}}()}function G(t){var r,a,n=te;if(y("\\")){if(m("q{"))return function(){var t=te-3,r=[];do{r.push(z())}while(y("|"));return g("}"),function(t,r,a){return{type:"classStrings",strings:t,range:[r,a],raw:e.substring(r,a)}}(r,t,te)}();if(a=A())r=a;else{if(a=H())return a;K("Invalid escape","\\"+h(),n)}}else if(a=V())r=a;else{if(a=F())return a;K("Invalid character",h())}if(t&&b("-")&&!v("-")){if(f(),a=W())return u(r,a,n,te);K("Invalid range end",h())}return r}function W(){if(y("\\")){var e,t=te;if(e=H())return e;K("Invalid escape","\\"+h(),t)}return V()}function V(){var e;if(x(/^(?:&&|!!|##|\$\$|%%|\*\*|\+\+|,,|\.\.|::|;;|<<|==|>>|\?\?|@@|\^\^|``|~~)/)&&K("Invalid set operation in character class"),e=x(/^[^()[\]{}/\-\\|]/))return d(e)}function H(){var e;return y("b")?i("singleEscape",8,"\\b"):y("B")?void K("\\B not possible inside of ClassContents","",te-2):(e=x(/^[&\-!#%,:;<=>@`~]/))?i("identifier",e[0].codePointAt(0),e[0]):(e=I())?e:null}function z(){for(var t,r=[],a=te;t=W();)r.push(t);return function(t,r,a){return{type:"classString",characters:t,range:[r,a],raw:e.substring(r,a)}}(r,a,te)}function K(t,r,a,n){a=null==a?te:a,n=null==n?a:n;var s=Math.max(0,a-10),o=Math.min(n+10,e.length),i=" "+e.substring(s,o),d=" "+new Array(a-s+1).join(" ")+"^";throw SyntaxError(t+" at position "+a+(r?": "+r:"")+"\n"+i+"\n"+d)}r||(r={});var X=[],J=0,Y=!0,$=!1,Q=-1!==(t||"").indexOf("u"),Z=-1!==(t||"").indexOf("v"),ee=Q||Z,te=0;if(Z&&!r.unicodeSet)throw new Error('The "v" flag is only supported when the .unicodeSet option is enabled.');if(Q&&Z)throw new Error('The "u" and "v" flags are mutually exclusive.');""===(e=String(e))&&(e="(?:)");var re=R();return re.range[1]!==e.length&&K("Could not parse entire input - got stuck","",re.range[1]),($=$||X.some(function(e){return e<=J}))?(te=0,Y=!1,R()):re}},e.exports?e.exports=n:window.regjsparser=n}(Bue);var Mue=Bue.exports,Fue=new Set(["General_Category","Script","Script_Extensions","Alphabetic","Any","ASCII","ASCII_Hex_Digit","Assigned","Bidi_Control","Bidi_Mirrored","Case_Ignorable","Cased","Changes_When_Casefolded","Changes_When_Casemapped","Changes_When_Lowercased","Changes_When_NFKC_Casefolded","Changes_When_Titlecased","Changes_When_Uppercased","Dash","Default_Ignorable_Code_Point","Deprecated","Diacritic","Emoji","Emoji_Component","Emoji_Modifier","Emoji_Modifier_Base","Emoji_Presentation","Extended_Pictographic","Extender","Grapheme_Base","Grapheme_Extend","Hex_Digit","ID_Continue","ID_Start","Ideographic","IDS_Binary_Operator","IDS_Trinary_Operator","Join_Control","Logical_Order_Exception","Lowercase","Math","Noncharacter_Code_Point","Pattern_Syntax","Pattern_White_Space","Quotation_Mark","Radical","Regional_Indicator","Sentence_Terminal","Soft_Dotted","Terminal_Punctuation","Unified_Ideograph","Uppercase","Variation_Selector","White_Space","XID_Continue","XID_Start"]),Lue=new Map([["scx","Script_Extensions"],["sc","Script"],["gc","General_Category"],["AHex","ASCII_Hex_Digit"],["Alpha","Alphabetic"],["Bidi_C","Bidi_Control"],["Bidi_M","Bidi_Mirrored"],["Cased","Cased"],["CI","Case_Ignorable"],["CWCF","Changes_When_Casefolded"],["CWCM","Changes_When_Casemapped"],["CWKCF","Changes_When_NFKC_Casefolded"],["CWL","Changes_When_Lowercased"],["CWT","Changes_When_Titlecased"],["CWU","Changes_When_Uppercased"],["Dash","Dash"],["Dep","Deprecated"],["DI","Default_Ignorable_Code_Point"],["Dia","Diacritic"],["EBase","Emoji_Modifier_Base"],["EComp","Emoji_Component"],["EMod","Emoji_Modifier"],["Emoji","Emoji"],["EPres","Emoji_Presentation"],["Ext","Extender"],["ExtPict","Extended_Pictographic"],["Gr_Base","Grapheme_Base"],["Gr_Ext","Grapheme_Extend"],["Hex","Hex_Digit"],["IDC","ID_Continue"],["Ideo","Ideographic"],["IDS","ID_Start"],["IDSB","IDS_Binary_Operator"],["IDST","IDS_Trinary_Operator"],["Join_C","Join_Control"],["LOE","Logical_Order_Exception"],["Lower","Lowercase"],["Math","Math"],["NChar","Noncharacter_Code_Point"],["Pat_Syn","Pattern_Syntax"],["Pat_WS","Pattern_White_Space"],["QMark","Quotation_Mark"],["Radical","Radical"],["RI","Regional_Indicator"],["SD","Soft_Dotted"],["STerm","Sentence_Terminal"],["Term","Terminal_Punctuation"],["UIdeo","Unified_Ideograph"],["Upper","Uppercase"],["VS","Variation_Selector"],["WSpace","White_Space"],["space","White_Space"],["XIDC","XID_Continue"],["XIDS","XID_Start"]]),Uue=Fue,que=Lue,Gue=function(e){if(Uue.has(e))return e;if(que.has(e))return que.get(e);throw new Error("Unknown property: "+e)},Wue=new Map([["General_Category",new Map([["C","Other"],["Cc","Control"],["cntrl","Control"],["Cf","Format"],["Cn","Unassigned"],["Co","Private_Use"],["Cs","Surrogate"],["L","Letter"],["LC","Cased_Letter"],["Ll","Lowercase_Letter"],["Lm","Modifier_Letter"],["Lo","Other_Letter"],["Lt","Titlecase_Letter"],["Lu","Uppercase_Letter"],["M","Mark"],["Combining_Mark","Mark"],["Mc","Spacing_Mark"],["Me","Enclosing_Mark"],["Mn","Nonspacing_Mark"],["N","Number"],["Nd","Decimal_Number"],["digit","Decimal_Number"],["Nl","Letter_Number"],["No","Other_Number"],["P","Punctuation"],["punct","Punctuation"],["Pc","Connector_Punctuation"],["Pd","Dash_Punctuation"],["Pe","Close_Punctuation"],["Pf","Final_Punctuation"],["Pi","Initial_Punctuation"],["Po","Other_Punctuation"],["Ps","Open_Punctuation"],["S","Symbol"],["Sc","Currency_Symbol"],["Sk","Modifier_Symbol"],["Sm","Math_Symbol"],["So","Other_Symbol"],["Z","Separator"],["Zl","Line_Separator"],["Zp","Paragraph_Separator"],["Zs","Space_Separator"],["Other","Other"],["Control","Control"],["Format","Format"],["Unassigned","Unassigned"],["Private_Use","Private_Use"],["Surrogate","Surrogate"],["Letter","Letter"],["Cased_Letter","Cased_Letter"],["Lowercase_Letter","Lowercase_Letter"],["Modifier_Letter","Modifier_Letter"],["Other_Letter","Other_Letter"],["Titlecase_Letter","Titlecase_Letter"],["Uppercase_Letter","Uppercase_Letter"],["Mark","Mark"],["Spacing_Mark","Spacing_Mark"],["Enclosing_Mark","Enclosing_Mark"],["Nonspacing_Mark","Nonspacing_Mark"],["Number","Number"],["Decimal_Number","Decimal_Number"],["Letter_Number","Letter_Number"],["Other_Number","Other_Number"],["Punctuation","Punctuation"],["Connector_Punctuation","Connector_Punctuation"],["Dash_Punctuation","Dash_Punctuation"],["Close_Punctuation","Close_Punctuation"],["Final_Punctuation","Final_Punctuation"],["Initial_Punctuation","Initial_Punctuation"],["Other_Punctuation","Other_Punctuation"],["Open_Punctuation","Open_Punctuation"],["Symbol","Symbol"],["Currency_Symbol","Currency_Symbol"],["Modifier_Symbol","Modifier_Symbol"],["Math_Symbol","Math_Symbol"],["Other_Symbol","Other_Symbol"],["Separator","Separator"],["Line_Separator","Line_Separator"],["Paragraph_Separator","Paragraph_Separator"],["Space_Separator","Space_Separator"]])],["Script",new Map([["Adlm","Adlam"],["Aghb","Caucasian_Albanian"],["Ahom","Ahom"],["Arab","Arabic"],["Armi","Imperial_Aramaic"],["Armn","Armenian"],["Avst","Avestan"],["Bali","Balinese"],["Bamu","Bamum"],["Bass","Bassa_Vah"],["Batk","Batak"],["Beng","Bengali"],["Berf","Beria_Erfe"],["Bhks","Bhaiksuki"],["Bopo","Bopomofo"],["Brah","Brahmi"],["Brai","Braille"],["Bugi","Buginese"],["Buhd","Buhid"],["Cakm","Chakma"],["Cans","Canadian_Aboriginal"],["Cari","Carian"],["Cham","Cham"],["Cher","Cherokee"],["Chrs","Chorasmian"],["Copt","Coptic"],["Qaac","Coptic"],["Cpmn","Cypro_Minoan"],["Cprt","Cypriot"],["Cyrl","Cyrillic"],["Deva","Devanagari"],["Diak","Dives_Akuru"],["Dogr","Dogra"],["Dsrt","Deseret"],["Dupl","Duployan"],["Egyp","Egyptian_Hieroglyphs"],["Elba","Elbasan"],["Elym","Elymaic"],["Ethi","Ethiopic"],["Gara","Garay"],["Geor","Georgian"],["Glag","Glagolitic"],["Gong","Gunjala_Gondi"],["Gonm","Masaram_Gondi"],["Goth","Gothic"],["Gran","Grantha"],["Grek","Greek"],["Gujr","Gujarati"],["Gukh","Gurung_Khema"],["Guru","Gurmukhi"],["Hang","Hangul"],["Hani","Han"],["Hano","Hanunoo"],["Hatr","Hatran"],["Hebr","Hebrew"],["Hira","Hiragana"],["Hluw","Anatolian_Hieroglyphs"],["Hmng","Pahawh_Hmong"],["Hmnp","Nyiakeng_Puachue_Hmong"],["Hrkt","Katakana_Or_Hiragana"],["Hung","Old_Hungarian"],["Ital","Old_Italic"],["Java","Javanese"],["Kali","Kayah_Li"],["Kana","Katakana"],["Kawi","Kawi"],["Khar","Kharoshthi"],["Khmr","Khmer"],["Khoj","Khojki"],["Kits","Khitan_Small_Script"],["Knda","Kannada"],["Krai","Kirat_Rai"],["Kthi","Kaithi"],["Lana","Tai_Tham"],["Laoo","Lao"],["Latn","Latin"],["Lepc","Lepcha"],["Limb","Limbu"],["Lina","Linear_A"],["Linb","Linear_B"],["Lisu","Lisu"],["Lyci","Lycian"],["Lydi","Lydian"],["Mahj","Mahajani"],["Maka","Makasar"],["Mand","Mandaic"],["Mani","Manichaean"],["Marc","Marchen"],["Medf","Medefaidrin"],["Mend","Mende_Kikakui"],["Merc","Meroitic_Cursive"],["Mero","Meroitic_Hieroglyphs"],["Mlym","Malayalam"],["Modi","Modi"],["Mong","Mongolian"],["Mroo","Mro"],["Mtei","Meetei_Mayek"],["Mult","Multani"],["Mymr","Myanmar"],["Nagm","Nag_Mundari"],["Nand","Nandinagari"],["Narb","Old_North_Arabian"],["Nbat","Nabataean"],["Newa","Newa"],["Nkoo","Nko"],["Nshu","Nushu"],["Ogam","Ogham"],["Olck","Ol_Chiki"],["Onao","Ol_Onal"],["Orkh","Old_Turkic"],["Orya","Oriya"],["Osge","Osage"],["Osma","Osmanya"],["Ougr","Old_Uyghur"],["Palm","Palmyrene"],["Pauc","Pau_Cin_Hau"],["Perm","Old_Permic"],["Phag","Phags_Pa"],["Phli","Inscriptional_Pahlavi"],["Phlp","Psalter_Pahlavi"],["Phnx","Phoenician"],["Plrd","Miao"],["Prti","Inscriptional_Parthian"],["Rjng","Rejang"],["Rohg","Hanifi_Rohingya"],["Runr","Runic"],["Samr","Samaritan"],["Sarb","Old_South_Arabian"],["Saur","Saurashtra"],["Sgnw","SignWriting"],["Shaw","Shavian"],["Shrd","Sharada"],["Sidd","Siddham"],["Sidt","Sidetic"],["Sind","Khudawadi"],["Sinh","Sinhala"],["Sogd","Sogdian"],["Sogo","Old_Sogdian"],["Sora","Sora_Sompeng"],["Soyo","Soyombo"],["Sund","Sundanese"],["Sunu","Sunuwar"],["Sylo","Syloti_Nagri"],["Syrc","Syriac"],["Tagb","Tagbanwa"],["Takr","Takri"],["Tale","Tai_Le"],["Talu","New_Tai_Lue"],["Taml","Tamil"],["Tang","Tangut"],["Tavt","Tai_Viet"],["Tayo","Tai_Yo"],["Telu","Telugu"],["Tfng","Tifinagh"],["Tglg","Tagalog"],["Thaa","Thaana"],["Thai","Thai"],["Tibt","Tibetan"],["Tirh","Tirhuta"],["Tnsa","Tangsa"],["Todr","Todhri"],["Tols","Tolong_Siki"],["Toto","Toto"],["Tutg","Tulu_Tigalari"],["Ugar","Ugaritic"],["Vaii","Vai"],["Vith","Vithkuqi"],["Wara","Warang_Citi"],["Wcho","Wancho"],["Xpeo","Old_Persian"],["Xsux","Cuneiform"],["Yezi","Yezidi"],["Yiii","Yi"],["Zanb","Zanabazar_Square"],["Zinh","Inherited"],["Qaai","Inherited"],["Zyyy","Common"],["Zzzz","Unknown"],["Adlam","Adlam"],["Caucasian_Albanian","Caucasian_Albanian"],["Arabic","Arabic"],["Imperial_Aramaic","Imperial_Aramaic"],["Armenian","Armenian"],["Avestan","Avestan"],["Balinese","Balinese"],["Bamum","Bamum"],["Bassa_Vah","Bassa_Vah"],["Batak","Batak"],["Bengali","Bengali"],["Beria_Erfe","Beria_Erfe"],["Bhaiksuki","Bhaiksuki"],["Bopomofo","Bopomofo"],["Brahmi","Brahmi"],["Braille","Braille"],["Buginese","Buginese"],["Buhid","Buhid"],["Chakma","Chakma"],["Canadian_Aboriginal","Canadian_Aboriginal"],["Carian","Carian"],["Cherokee","Cherokee"],["Chorasmian","Chorasmian"],["Coptic","Coptic"],["Cypro_Minoan","Cypro_Minoan"],["Cypriot","Cypriot"],["Cyrillic","Cyrillic"],["Devanagari","Devanagari"],["Dives_Akuru","Dives_Akuru"],["Dogra","Dogra"],["Deseret","Deseret"],["Duployan","Duployan"],["Egyptian_Hieroglyphs","Egyptian_Hieroglyphs"],["Elbasan","Elbasan"],["Elymaic","Elymaic"],["Ethiopic","Ethiopic"],["Garay","Garay"],["Georgian","Georgian"],["Glagolitic","Glagolitic"],["Gunjala_Gondi","Gunjala_Gondi"],["Masaram_Gondi","Masaram_Gondi"],["Gothic","Gothic"],["Grantha","Grantha"],["Greek","Greek"],["Gujarati","Gujarati"],["Gurung_Khema","Gurung_Khema"],["Gurmukhi","Gurmukhi"],["Hangul","Hangul"],["Han","Han"],["Hanunoo","Hanunoo"],["Hatran","Hatran"],["Hebrew","Hebrew"],["Hiragana","Hiragana"],["Anatolian_Hieroglyphs","Anatolian_Hieroglyphs"],["Pahawh_Hmong","Pahawh_Hmong"],["Nyiakeng_Puachue_Hmong","Nyiakeng_Puachue_Hmong"],["Katakana_Or_Hiragana","Katakana_Or_Hiragana"],["Old_Hungarian","Old_Hungarian"],["Old_Italic","Old_Italic"],["Javanese","Javanese"],["Kayah_Li","Kayah_Li"],["Katakana","Katakana"],["Kharoshthi","Kharoshthi"],["Khmer","Khmer"],["Khojki","Khojki"],["Khitan_Small_Script","Khitan_Small_Script"],["Kannada","Kannada"],["Kirat_Rai","Kirat_Rai"],["Kaithi","Kaithi"],["Tai_Tham","Tai_Tham"],["Lao","Lao"],["Latin","Latin"],["Lepcha","Lepcha"],["Limbu","Limbu"],["Linear_A","Linear_A"],["Linear_B","Linear_B"],["Lycian","Lycian"],["Lydian","Lydian"],["Mahajani","Mahajani"],["Makasar","Makasar"],["Mandaic","Mandaic"],["Manichaean","Manichaean"],["Marchen","Marchen"],["Medefaidrin","Medefaidrin"],["Mende_Kikakui","Mende_Kikakui"],["Meroitic_Cursive","Meroitic_Cursive"],["Meroitic_Hieroglyphs","Meroitic_Hieroglyphs"],["Malayalam","Malayalam"],["Mongolian","Mongolian"],["Mro","Mro"],["Meetei_Mayek","Meetei_Mayek"],["Multani","Multani"],["Myanmar","Myanmar"],["Nag_Mundari","Nag_Mundari"],["Nandinagari","Nandinagari"],["Old_North_Arabian","Old_North_Arabian"],["Nabataean","Nabataean"],["Nko","Nko"],["Nushu","Nushu"],["Ogham","Ogham"],["Ol_Chiki","Ol_Chiki"],["Ol_Onal","Ol_Onal"],["Old_Turkic","Old_Turkic"],["Oriya","Oriya"],["Osage","Osage"],["Osmanya","Osmanya"],["Old_Uyghur","Old_Uyghur"],["Palmyrene","Palmyrene"],["Pau_Cin_Hau","Pau_Cin_Hau"],["Old_Permic","Old_Permic"],["Phags_Pa","Phags_Pa"],["Inscriptional_Pahlavi","Inscriptional_Pahlavi"],["Psalter_Pahlavi","Psalter_Pahlavi"],["Phoenician","Phoenician"],["Miao","Miao"],["Inscriptional_Parthian","Inscriptional_Parthian"],["Rejang","Rejang"],["Hanifi_Rohingya","Hanifi_Rohingya"],["Runic","Runic"],["Samaritan","Samaritan"],["Old_South_Arabian","Old_South_Arabian"],["Saurashtra","Saurashtra"],["SignWriting","SignWriting"],["Shavian","Shavian"],["Sharada","Sharada"],["Siddham","Siddham"],["Sidetic","Sidetic"],["Khudawadi","Khudawadi"],["Sinhala","Sinhala"],["Sogdian","Sogdian"],["Old_Sogdian","Old_Sogdian"],["Sora_Sompeng","Sora_Sompeng"],["Soyombo","Soyombo"],["Sundanese","Sundanese"],["Sunuwar","Sunuwar"],["Syloti_Nagri","Syloti_Nagri"],["Syriac","Syriac"],["Tagbanwa","Tagbanwa"],["Takri","Takri"],["Tai_Le","Tai_Le"],["New_Tai_Lue","New_Tai_Lue"],["Tamil","Tamil"],["Tangut","Tangut"],["Tai_Viet","Tai_Viet"],["Tai_Yo","Tai_Yo"],["Telugu","Telugu"],["Tifinagh","Tifinagh"],["Tagalog","Tagalog"],["Thaana","Thaana"],["Tibetan","Tibetan"],["Tirhuta","Tirhuta"],["Tangsa","Tangsa"],["Todhri","Todhri"],["Tolong_Siki","Tolong_Siki"],["Tulu_Tigalari","Tulu_Tigalari"],["Ugaritic","Ugaritic"],["Vai","Vai"],["Vithkuqi","Vithkuqi"],["Warang_Citi","Warang_Citi"],["Wancho","Wancho"],["Old_Persian","Old_Persian"],["Cuneiform","Cuneiform"],["Yezidi","Yezidi"],["Yi","Yi"],["Zanabazar_Square","Zanabazar_Square"],["Inherited","Inherited"],["Common","Common"],["Unknown","Unknown"]])],["Script_Extensions",new Map([["Adlm","Adlam"],["Aghb","Caucasian_Albanian"],["Ahom","Ahom"],["Arab","Arabic"],["Armi","Imperial_Aramaic"],["Armn","Armenian"],["Avst","Avestan"],["Bali","Balinese"],["Bamu","Bamum"],["Bass","Bassa_Vah"],["Batk","Batak"],["Beng","Bengali"],["Berf","Beria_Erfe"],["Bhks","Bhaiksuki"],["Bopo","Bopomofo"],["Brah","Brahmi"],["Brai","Braille"],["Bugi","Buginese"],["Buhd","Buhid"],["Cakm","Chakma"],["Cans","Canadian_Aboriginal"],["Cari","Carian"],["Cham","Cham"],["Cher","Cherokee"],["Chrs","Chorasmian"],["Copt","Coptic"],["Qaac","Coptic"],["Cpmn","Cypro_Minoan"],["Cprt","Cypriot"],["Cyrl","Cyrillic"],["Deva","Devanagari"],["Diak","Dives_Akuru"],["Dogr","Dogra"],["Dsrt","Deseret"],["Dupl","Duployan"],["Egyp","Egyptian_Hieroglyphs"],["Elba","Elbasan"],["Elym","Elymaic"],["Ethi","Ethiopic"],["Gara","Garay"],["Geor","Georgian"],["Glag","Glagolitic"],["Gong","Gunjala_Gondi"],["Gonm","Masaram_Gondi"],["Goth","Gothic"],["Gran","Grantha"],["Grek","Greek"],["Gujr","Gujarati"],["Gukh","Gurung_Khema"],["Guru","Gurmukhi"],["Hang","Hangul"],["Hani","Han"],["Hano","Hanunoo"],["Hatr","Hatran"],["Hebr","Hebrew"],["Hira","Hiragana"],["Hluw","Anatolian_Hieroglyphs"],["Hmng","Pahawh_Hmong"],["Hmnp","Nyiakeng_Puachue_Hmong"],["Hrkt","Katakana_Or_Hiragana"],["Hung","Old_Hungarian"],["Ital","Old_Italic"],["Java","Javanese"],["Kali","Kayah_Li"],["Kana","Katakana"],["Kawi","Kawi"],["Khar","Kharoshthi"],["Khmr","Khmer"],["Khoj","Khojki"],["Kits","Khitan_Small_Script"],["Knda","Kannada"],["Krai","Kirat_Rai"],["Kthi","Kaithi"],["Lana","Tai_Tham"],["Laoo","Lao"],["Latn","Latin"],["Lepc","Lepcha"],["Limb","Limbu"],["Lina","Linear_A"],["Linb","Linear_B"],["Lisu","Lisu"],["Lyci","Lycian"],["Lydi","Lydian"],["Mahj","Mahajani"],["Maka","Makasar"],["Mand","Mandaic"],["Mani","Manichaean"],["Marc","Marchen"],["Medf","Medefaidrin"],["Mend","Mende_Kikakui"],["Merc","Meroitic_Cursive"],["Mero","Meroitic_Hieroglyphs"],["Mlym","Malayalam"],["Modi","Modi"],["Mong","Mongolian"],["Mroo","Mro"],["Mtei","Meetei_Mayek"],["Mult","Multani"],["Mymr","Myanmar"],["Nagm","Nag_Mundari"],["Nand","Nandinagari"],["Narb","Old_North_Arabian"],["Nbat","Nabataean"],["Newa","Newa"],["Nkoo","Nko"],["Nshu","Nushu"],["Ogam","Ogham"],["Olck","Ol_Chiki"],["Onao","Ol_Onal"],["Orkh","Old_Turkic"],["Orya","Oriya"],["Osge","Osage"],["Osma","Osmanya"],["Ougr","Old_Uyghur"],["Palm","Palmyrene"],["Pauc","Pau_Cin_Hau"],["Perm","Old_Permic"],["Phag","Phags_Pa"],["Phli","Inscriptional_Pahlavi"],["Phlp","Psalter_Pahlavi"],["Phnx","Phoenician"],["Plrd","Miao"],["Prti","Inscriptional_Parthian"],["Rjng","Rejang"],["Rohg","Hanifi_Rohingya"],["Runr","Runic"],["Samr","Samaritan"],["Sarb","Old_South_Arabian"],["Saur","Saurashtra"],["Sgnw","SignWriting"],["Shaw","Shavian"],["Shrd","Sharada"],["Sidd","Siddham"],["Sidt","Sidetic"],["Sind","Khudawadi"],["Sinh","Sinhala"],["Sogd","Sogdian"],["Sogo","Old_Sogdian"],["Sora","Sora_Sompeng"],["Soyo","Soyombo"],["Sund","Sundanese"],["Sunu","Sunuwar"],["Sylo","Syloti_Nagri"],["Syrc","Syriac"],["Tagb","Tagbanwa"],["Takr","Takri"],["Tale","Tai_Le"],["Talu","New_Tai_Lue"],["Taml","Tamil"],["Tang","Tangut"],["Tavt","Tai_Viet"],["Tayo","Tai_Yo"],["Telu","Telugu"],["Tfng","Tifinagh"],["Tglg","Tagalog"],["Thaa","Thaana"],["Thai","Thai"],["Tibt","Tibetan"],["Tirh","Tirhuta"],["Tnsa","Tangsa"],["Todr","Todhri"],["Tols","Tolong_Siki"],["Toto","Toto"],["Tutg","Tulu_Tigalari"],["Ugar","Ugaritic"],["Vaii","Vai"],["Vith","Vithkuqi"],["Wara","Warang_Citi"],["Wcho","Wancho"],["Xpeo","Old_Persian"],["Xsux","Cuneiform"],["Yezi","Yezidi"],["Yiii","Yi"],["Zanb","Zanabazar_Square"],["Zinh","Inherited"],["Qaai","Inherited"],["Zyyy","Common"],["Zzzz","Unknown"],["Adlam","Adlam"],["Caucasian_Albanian","Caucasian_Albanian"],["Arabic","Arabic"],["Imperial_Aramaic","Imperial_Aramaic"],["Armenian","Armenian"],["Avestan","Avestan"],["Balinese","Balinese"],["Bamum","Bamum"],["Bassa_Vah","Bassa_Vah"],["Batak","Batak"],["Bengali","Bengali"],["Beria_Erfe","Beria_Erfe"],["Bhaiksuki","Bhaiksuki"],["Bopomofo","Bopomofo"],["Brahmi","Brahmi"],["Braille","Braille"],["Buginese","Buginese"],["Buhid","Buhid"],["Chakma","Chakma"],["Canadian_Aboriginal","Canadian_Aboriginal"],["Carian","Carian"],["Cherokee","Cherokee"],["Chorasmian","Chorasmian"],["Coptic","Coptic"],["Cypro_Minoan","Cypro_Minoan"],["Cypriot","Cypriot"],["Cyrillic","Cyrillic"],["Devanagari","Devanagari"],["Dives_Akuru","Dives_Akuru"],["Dogra","Dogra"],["Deseret","Deseret"],["Duployan","Duployan"],["Egyptian_Hieroglyphs","Egyptian_Hieroglyphs"],["Elbasan","Elbasan"],["Elymaic","Elymaic"],["Ethiopic","Ethiopic"],["Garay","Garay"],["Georgian","Georgian"],["Glagolitic","Glagolitic"],["Gunjala_Gondi","Gunjala_Gondi"],["Masaram_Gondi","Masaram_Gondi"],["Gothic","Gothic"],["Grantha","Grantha"],["Greek","Greek"],["Gujarati","Gujarati"],["Gurung_Khema","Gurung_Khema"],["Gurmukhi","Gurmukhi"],["Hangul","Hangul"],["Han","Han"],["Hanunoo","Hanunoo"],["Hatran","Hatran"],["Hebrew","Hebrew"],["Hiragana","Hiragana"],["Anatolian_Hieroglyphs","Anatolian_Hieroglyphs"],["Pahawh_Hmong","Pahawh_Hmong"],["Nyiakeng_Puachue_Hmong","Nyiakeng_Puachue_Hmong"],["Katakana_Or_Hiragana","Katakana_Or_Hiragana"],["Old_Hungarian","Old_Hungarian"],["Old_Italic","Old_Italic"],["Javanese","Javanese"],["Kayah_Li","Kayah_Li"],["Katakana","Katakana"],["Kharoshthi","Kharoshthi"],["Khmer","Khmer"],["Khojki","Khojki"],["Khitan_Small_Script","Khitan_Small_Script"],["Kannada","Kannada"],["Kirat_Rai","Kirat_Rai"],["Kaithi","Kaithi"],["Tai_Tham","Tai_Tham"],["Lao","Lao"],["Latin","Latin"],["Lepcha","Lepcha"],["Limbu","Limbu"],["Linear_A","Linear_A"],["Linear_B","Linear_B"],["Lycian","Lycian"],["Lydian","Lydian"],["Mahajani","Mahajani"],["Makasar","Makasar"],["Mandaic","Mandaic"],["Manichaean","Manichaean"],["Marchen","Marchen"],["Medefaidrin","Medefaidrin"],["Mende_Kikakui","Mende_Kikakui"],["Meroitic_Cursive","Meroitic_Cursive"],["Meroitic_Hieroglyphs","Meroitic_Hieroglyphs"],["Malayalam","Malayalam"],["Mongolian","Mongolian"],["Mro","Mro"],["Meetei_Mayek","Meetei_Mayek"],["Multani","Multani"],["Myanmar","Myanmar"],["Nag_Mundari","Nag_Mundari"],["Nandinagari","Nandinagari"],["Old_North_Arabian","Old_North_Arabian"],["Nabataean","Nabataean"],["Nko","Nko"],["Nushu","Nushu"],["Ogham","Ogham"],["Ol_Chiki","Ol_Chiki"],["Ol_Onal","Ol_Onal"],["Old_Turkic","Old_Turkic"],["Oriya","Oriya"],["Osage","Osage"],["Osmanya","Osmanya"],["Old_Uyghur","Old_Uyghur"],["Palmyrene","Palmyrene"],["Pau_Cin_Hau","Pau_Cin_Hau"],["Old_Permic","Old_Permic"],["Phags_Pa","Phags_Pa"],["Inscriptional_Pahlavi","Inscriptional_Pahlavi"],["Psalter_Pahlavi","Psalter_Pahlavi"],["Phoenician","Phoenician"],["Miao","Miao"],["Inscriptional_Parthian","Inscriptional_Parthian"],["Rejang","Rejang"],["Hanifi_Rohingya","Hanifi_Rohingya"],["Runic","Runic"],["Samaritan","Samaritan"],["Old_South_Arabian","Old_South_Arabian"],["Saurashtra","Saurashtra"],["SignWriting","SignWriting"],["Shavian","Shavian"],["Sharada","Sharada"],["Siddham","Siddham"],["Sidetic","Sidetic"],["Khudawadi","Khudawadi"],["Sinhala","Sinhala"],["Sogdian","Sogdian"],["Old_Sogdian","Old_Sogdian"],["Sora_Sompeng","Sora_Sompeng"],["Soyombo","Soyombo"],["Sundanese","Sundanese"],["Sunuwar","Sunuwar"],["Syloti_Nagri","Syloti_Nagri"],["Syriac","Syriac"],["Tagbanwa","Tagbanwa"],["Takri","Takri"],["Tai_Le","Tai_Le"],["New_Tai_Lue","New_Tai_Lue"],["Tamil","Tamil"],["Tangut","Tangut"],["Tai_Viet","Tai_Viet"],["Tai_Yo","Tai_Yo"],["Telugu","Telugu"],["Tifinagh","Tifinagh"],["Tagalog","Tagalog"],["Thaana","Thaana"],["Tibetan","Tibetan"],["Tirhuta","Tirhuta"],["Tangsa","Tangsa"],["Todhri","Todhri"],["Tolong_Siki","Tolong_Siki"],["Tulu_Tigalari","Tulu_Tigalari"],["Ugaritic","Ugaritic"],["Vai","Vai"],["Vithkuqi","Vithkuqi"],["Warang_Citi","Warang_Citi"],["Wancho","Wancho"],["Old_Persian","Old_Persian"],["Cuneiform","Cuneiform"],["Yezidi","Yezidi"],["Yi","Yi"],["Zanabazar_Square","Zanabazar_Square"],["Inherited","Inherited"],["Common","Common"],["Unknown","Unknown"]])]]),Vue=function(e,t){var r=Wue.get(e);if(!r)throw new Error("Unknown property `"+e+"`.");var a=r.get(t);if(a)return a;throw new Error("Unknown value `"+t+"` for property `"+e+"`.")},Hue=new Map([[75,8490],[83,383],[107,8490],[115,383],[181,924],[197,8491],[223,7838],[229,8491],[383,83],[452,453],[453,452],[455,456],[456,455],[458,459],[459,458],[497,498],[498,497],[837,8126],[912,8147],[914,976],[917,1013],[920,1012],[921,8126],[922,1008],[924,181],[928,982],[929,1009],[931,962],[934,981],[937,8486],[944,8163],[952,1012],[962,931],[969,8486],[976,914],[977,1012],[981,934],[982,928],[1008,922],[1009,929],[1012,[920,977,952]],[1013,917],[1042,7296],[1044,7297],[1054,7298],[1057,7299],[1058,7301],[1066,7302],[1122,7303],[7296,1042],[7297,1044],[7298,1054],[7299,1057],[7300,7301],[7301,[1058,7300]],[7302,1066],[7303,1122],[7304,42570],[7776,7835],[7835,7776],[7838,223],[8064,8072],[8065,8073],[8066,8074],[8067,8075],[8068,8076],[8069,8077],[8070,8078],[8071,8079],[8072,8064],[8073,8065],[8074,8066],[8075,8067],[8076,8068],[8077,8069],[8078,8070],[8079,8071],[8080,8088],[8081,8089],[8082,8090],[8083,8091],[8084,8092],[8085,8093],[8086,8094],[8087,8095],[8088,8080],[8089,8081],[8090,8082],[8091,8083],[8092,8084],[8093,8085],[8094,8086],[8095,8087],[8096,8104],[8097,8105],[8098,8106],[8099,8107],[8100,8108],[8101,8109],[8102,8110],[8103,8111],[8104,8096],[8105,8097],[8106,8098],[8107,8099],[8108,8100],[8109,8101],[8110,8102],[8111,8103],[8115,8124],[8124,8115],[8126,[837,921]],[8131,8140],[8140,8131],[8147,912],[8163,944],[8179,8188],[8188,8179],[8486,[937,969]],[8490,75],[8491,[197,229]],[42570,7304],[64261,64262],[64262,64261],[66560,66600],[66561,66601],[66562,66602],[66563,66603],[66564,66604],[66565,66605],[66566,66606],[66567,66607],[66568,66608],[66569,66609],[66570,66610],[66571,66611],[66572,66612],[66573,66613],[66574,66614],[66575,66615],[66576,66616],[66577,66617],[66578,66618],[66579,66619],[66580,66620],[66581,66621],[66582,66622],[66583,66623],[66584,66624],[66585,66625],[66586,66626],[66587,66627],[66588,66628],[66589,66629],[66590,66630],[66591,66631],[66592,66632],[66593,66633],[66594,66634],[66595,66635],[66596,66636],[66597,66637],[66598,66638],[66599,66639],[66600,66560],[66601,66561],[66602,66562],[66603,66563],[66604,66564],[66605,66565],[66606,66566],[66607,66567],[66608,66568],[66609,66569],[66610,66570],[66611,66571],[66612,66572],[66613,66573],[66614,66574],[66615,66575],[66616,66576],[66617,66577],[66618,66578],[66619,66579],[66620,66580],[66621,66581],[66622,66582],[66623,66583],[66624,66584],[66625,66585],[66626,66586],[66627,66587],[66628,66588],[66629,66589],[66630,66590],[66631,66591],[66632,66592],[66633,66593],[66634,66594],[66635,66595],[66636,66596],[66637,66597],[66638,66598],[66639,66599],[66736,66776],[66737,66777],[66738,66778],[66739,66779],[66740,66780],[66741,66781],[66742,66782],[66743,66783],[66744,66784],[66745,66785],[66746,66786],[66747,66787],[66748,66788],[66749,66789],[66750,66790],[66751,66791],[66752,66792],[66753,66793],[66754,66794],[66755,66795],[66756,66796],[66757,66797],[66758,66798],[66759,66799],[66760,66800],[66761,66801],[66762,66802],[66763,66803],[66764,66804],[66765,66805],[66766,66806],[66767,66807],[66768,66808],[66769,66809],[66770,66810],[66771,66811],[66776,66736],[66777,66737],[66778,66738],[66779,66739],[66780,66740],[66781,66741],[66782,66742],[66783,66743],[66784,66744],[66785,66745],[66786,66746],[66787,66747],[66788,66748],[66789,66749],[66790,66750],[66791,66751],[66792,66752],[66793,66753],[66794,66754],[66795,66755],[66796,66756],[66797,66757],[66798,66758],[66799,66759],[66800,66760],[66801,66761],[66802,66762],[66803,66763],[66804,66764],[66805,66765],[66806,66766],[66807,66767],[66808,66768],[66809,66769],[66810,66770],[66811,66771],[66928,66967],[66929,66968],[66930,66969],[66931,66970],[66932,66971],[66933,66972],[66934,66973],[66935,66974],[66936,66975],[66937,66976],[66938,66977],[66940,66979],[66941,66980],[66942,66981],[66943,66982],[66944,66983],[66945,66984],[66946,66985],[66947,66986],[66948,66987],[66949,66988],[66950,66989],[66951,66990],[66952,66991],[66953,66992],[66954,66993],[66956,66995],[66957,66996],[66958,66997],[66959,66998],[66960,66999],[66961,67e3],[66962,67001],[66964,67003],[66965,67004],[66967,66928],[66968,66929],[66969,66930],[66970,66931],[66971,66932],[66972,66933],[66973,66934],[66974,66935],[66975,66936],[66976,66937],[66977,66938],[66979,66940],[66980,66941],[66981,66942],[66982,66943],[66983,66944],[66984,66945],[66985,66946],[66986,66947],[66987,66948],[66988,66949],[66989,66950],[66990,66951],[66991,66952],[66992,66953],[66993,66954],[66995,66956],[66996,66957],[66997,66958],[66998,66959],[66999,66960],[67e3,66961],[67001,66962],[67003,66964],[67004,66965],[68736,68800],[68737,68801],[68738,68802],[68739,68803],[68740,68804],[68741,68805],[68742,68806],[68743,68807],[68744,68808],[68745,68809],[68746,68810],[68747,68811],[68748,68812],[68749,68813],[68750,68814],[68751,68815],[68752,68816],[68753,68817],[68754,68818],[68755,68819],[68756,68820],[68757,68821],[68758,68822],[68759,68823],[68760,68824],[68761,68825],[68762,68826],[68763,68827],[68764,68828],[68765,68829],[68766,68830],[68767,68831],[68768,68832],[68769,68833],[68770,68834],[68771,68835],[68772,68836],[68773,68837],[68774,68838],[68775,68839],[68776,68840],[68777,68841],[68778,68842],[68779,68843],[68780,68844],[68781,68845],[68782,68846],[68783,68847],[68784,68848],[68785,68849],[68786,68850],[68800,68736],[68801,68737],[68802,68738],[68803,68739],[68804,68740],[68805,68741],[68806,68742],[68807,68743],[68808,68744],[68809,68745],[68810,68746],[68811,68747],[68812,68748],[68813,68749],[68814,68750],[68815,68751],[68816,68752],[68817,68753],[68818,68754],[68819,68755],[68820,68756],[68821,68757],[68822,68758],[68823,68759],[68824,68760],[68825,68761],[68826,68762],[68827,68763],[68828,68764],[68829,68765],[68830,68766],[68831,68767],[68832,68768],[68833,68769],[68834,68770],[68835,68771],[68836,68772],[68837,68773],[68838,68774],[68839,68775],[68840,68776],[68841,68777],[68842,68778],[68843,68779],[68844,68780],[68845,68781],[68846,68782],[68847,68783],[68848,68784],[68849,68785],[68850,68786],[68944,68976],[68945,68977],[68946,68978],[68947,68979],[68948,68980],[68949,68981],[68950,68982],[68951,68983],[68952,68984],[68953,68985],[68954,68986],[68955,68987],[68956,68988],[68957,68989],[68958,68990],[68959,68991],[68960,68992],[68961,68993],[68962,68994],[68963,68995],[68964,68996],[68965,68997],[68976,68944],[68977,68945],[68978,68946],[68979,68947],[68980,68948],[68981,68949],[68982,68950],[68983,68951],[68984,68952],[68985,68953],[68986,68954],[68987,68955],[68988,68956],[68989,68957],[68990,68958],[68991,68959],[68992,68960],[68993,68961],[68994,68962],[68995,68963],[68996,68964],[68997,68965],[71840,71872],[71841,71873],[71842,71874],[71843,71875],[71844,71876],[71845,71877],[71846,71878],[71847,71879],[71848,71880],[71849,71881],[71850,71882],[71851,71883],[71852,71884],[71853,71885],[71854,71886],[71855,71887],[71856,71888],[71857,71889],[71858,71890],[71859,71891],[71860,71892],[71861,71893],[71862,71894],[71863,71895],[71864,71896],[71865,71897],[71866,71898],[71867,71899],[71868,71900],[71869,71901],[71870,71902],[71871,71903],[71872,71840],[71873,71841],[71874,71842],[71875,71843],[71876,71844],[71877,71845],[71878,71846],[71879,71847],[71880,71848],[71881,71849],[71882,71850],[71883,71851],[71884,71852],[71885,71853],[71886,71854],[71887,71855],[71888,71856],[71889,71857],[71890,71858],[71891,71859],[71892,71860],[71893,71861],[71894,71862],[71895,71863],[71896,71864],[71897,71865],[71898,71866],[71899,71867],[71900,71868],[71901,71869],[71902,71870],[71903,71871],[93760,93792],[93761,93793],[93762,93794],[93763,93795],[93764,93796],[93765,93797],[93766,93798],[93767,93799],[93768,93800],[93769,93801],[93770,93802],[93771,93803],[93772,93804],[93773,93805],[93774,93806],[93775,93807],[93776,93808],[93777,93809],[93778,93810],[93779,93811],[93780,93812],[93781,93813],[93782,93814],[93783,93815],[93784,93816],[93785,93817],[93786,93818],[93787,93819],[93788,93820],[93789,93821],[93790,93822],[93791,93823],[93792,93760],[93793,93761],[93794,93762],[93795,93763],[93796,93764],[93797,93765],[93798,93766],[93799,93767],[93800,93768],[93801,93769],[93802,93770],[93803,93771],[93804,93772],[93805,93773],[93806,93774],[93807,93775],[93808,93776],[93809,93777],[93810,93778],[93811,93779],[93812,93780],[93813,93781],[93814,93782],[93815,93783],[93816,93784],[93817,93785],[93818,93786],[93819,93787],[93820,93788],[93821,93789],[93822,93790],[93823,93791],[93856,93883],[93857,93884],[93858,93885],[93859,93886],[93860,93887],[93861,93888],[93862,93889],[93863,93890],[93864,93891],[93865,93892],[93866,93893],[93867,93894],[93868,93895],[93869,93896],[93870,93897],[93871,93898],[93872,93899],[93873,93900],[93874,93901],[93875,93902],[93876,93903],[93877,93904],[93878,93905],[93879,93906],[93880,93907],[93883,93856],[93884,93857],[93885,93858],[93886,93859],[93887,93860],[93888,93861],[93889,93862],[93890,93863],[93891,93864],[93892,93865],[93893,93866],[93894,93867],[93895,93868],[93896,93869],[93897,93870],[93898,93871],[93899,93872],[93900,93873],[93901,93874],[93902,93875],[93903,93876],[93904,93877],[93905,93878],[93906,93879],[93907,93880],[125184,125218],[125185,125219],[125186,125220],[125187,125221],[125188,125222],[125189,125223],[125190,125224],[125191,125225],[125192,125226],[125193,125227],[125194,125228],[125195,125229],[125196,125230],[125197,125231],[125198,125232],[125199,125233],[125200,125234],[125201,125235],[125202,125236],[125203,125237],[125204,125238],[125205,125239],[125206,125240],[125207,125241],[125208,125242],[125209,125243],[125210,125244],[125211,125245],[125212,125246],[125213,125247],[125214,125248],[125215,125249],[125216,125250],[125217,125251],[125218,125184],[125219,125185],[125220,125186],[125221,125187],[125222,125188],[125223,125189],[125224,125190],[125225,125191],[125226,125192],[125227,125193],[125228,125194],[125229,125195],[125230,125196],[125231,125197],[125232,125198],[125233,125199],[125234,125200],[125235,125201],[125236,125202],[125237,125203],[125238,125204],[125239,125205],[125240,125206],[125241,125207],[125242,125208],[125243,125209],[125244,125210],[125245,125211],[125246,125212],[125247,125213],[125248,125214],[125249,125215],[125250,125216],[125251,125217]]),zue=new Map([[181,956],[192,224],[193,225],[194,226],[195,227],[196,228],[197,229],[198,230],[199,231],[200,232],[201,233],[202,234],[203,235],[204,236],[205,237],[206,238],[207,239],[208,240],[209,241],[210,242],[211,243],[212,244],[213,245],[214,246],[216,248],[217,249],[218,250],[219,251],[220,252],[221,253],[222,254],[224,192],[225,193],[226,194],[227,195],[228,196],[229,197],[230,198],[231,199],[232,200],[233,201],[234,202],[235,203],[236,204],[237,205],[238,206],[239,207],[240,208],[241,209],[242,210],[243,211],[244,212],[245,213],[246,214],[248,216],[249,217],[250,218],[251,219],[252,220],[253,221],[254,222],[255,376],[256,257],[257,256],[258,259],[259,258],[260,261],[261,260],[262,263],[263,262],[264,265],[265,264],[266,267],[267,266],[268,269],[269,268],[270,271],[271,270],[272,273],[273,272],[274,275],[275,274],[276,277],[277,276],[278,279],[279,278],[280,281],[281,280],[282,283],[283,282],[284,285],[285,284],[286,287],[287,286],[288,289],[289,288],[290,291],[291,290],[292,293],[293,292],[294,295],[295,294],[296,297],[297,296],[298,299],[299,298],[300,301],[301,300],[302,303],[303,302],[306,307],[307,306],[308,309],[309,308],[310,311],[311,310],[313,314],[314,313],[315,316],[316,315],[317,318],[318,317],[319,320],[320,319],[321,322],[322,321],[323,324],[324,323],[325,326],[326,325],[327,328],[328,327],[330,331],[331,330],[332,333],[333,332],[334,335],[335,334],[336,337],[337,336],[338,339],[339,338],[340,341],[341,340],[342,343],[343,342],[344,345],[345,344],[346,347],[347,346],[348,349],[349,348],[350,351],[351,350],[352,353],[353,352],[354,355],[355,354],[356,357],[357,356],[358,359],[359,358],[360,361],[361,360],[362,363],[363,362],[364,365],[365,364],[366,367],[367,366],[368,369],[369,368],[370,371],[371,370],[372,373],[373,372],[374,375],[375,374],[376,255],[377,378],[378,377],[379,380],[380,379],[381,382],[382,381],[384,579],[385,595],[386,387],[387,386],[388,389],[389,388],[390,596],[391,392],[392,391],[393,598],[394,599],[395,396],[396,395],[398,477],[399,601],[400,603],[401,402],[402,401],[403,608],[404,611],[405,502],[406,617],[407,616],[408,409],[409,408],[410,573],[411,42972],[412,623],[413,626],[414,544],[415,629],[416,417],[417,416],[418,419],[419,418],[420,421],[421,420],[422,640],[423,424],[424,423],[425,643],[428,429],[429,428],[430,648],[431,432],[432,431],[433,650],[434,651],[435,436],[436,435],[437,438],[438,437],[439,658],[440,441],[441,440],[444,445],[445,444],[447,503],[452,454],[453,454],[454,[452,453]],[455,457],[456,457],[457,[455,456]],[458,460],[459,460],[460,[458,459]],[461,462],[462,461],[463,464],[464,463],[465,466],[466,465],[467,468],[468,467],[469,470],[470,469],[471,472],[472,471],[473,474],[474,473],[475,476],[476,475],[477,398],[478,479],[479,478],[480,481],[481,480],[482,483],[483,482],[484,485],[485,484],[486,487],[487,486],[488,489],[489,488],[490,491],[491,490],[492,493],[493,492],[494,495],[495,494],[497,499],[498,499],[499,[497,498]],[500,501],[501,500],[502,405],[503,447],[504,505],[505,504],[506,507],[507,506],[508,509],[509,508],[510,511],[511,510],[512,513],[513,512],[514,515],[515,514],[516,517],[517,516],[518,519],[519,518],[520,521],[521,520],[522,523],[523,522],[524,525],[525,524],[526,527],[527,526],[528,529],[529,528],[530,531],[531,530],[532,533],[533,532],[534,535],[535,534],[536,537],[537,536],[538,539],[539,538],[540,541],[541,540],[542,543],[543,542],[544,414],[546,547],[547,546],[548,549],[549,548],[550,551],[551,550],[552,553],[553,552],[554,555],[555,554],[556,557],[557,556],[558,559],[559,558],[560,561],[561,560],[562,563],[563,562],[570,11365],[571,572],[572,571],[573,410],[574,11366],[575,11390],[576,11391],[577,578],[578,577],[579,384],[580,649],[581,652],[582,583],[583,582],[584,585],[585,584],[586,587],[587,586],[588,589],[589,588],[590,591],[591,590],[592,11375],[593,11373],[594,11376],[595,385],[596,390],[598,393],[599,394],[601,399],[603,400],[604,42923],[608,403],[609,42924],[611,404],[612,42955],[613,42893],[614,42922],[616,407],[617,406],[618,42926],[619,11362],[620,42925],[623,412],[625,11374],[626,413],[629,415],[637,11364],[640,422],[642,42949],[643,425],[647,42929],[648,430],[649,580],[650,433],[651,434],[652,581],[658,439],[669,42930],[670,42928],[837,953],[880,881],[881,880],[882,883],[883,882],[886,887],[887,886],[891,1021],[892,1022],[893,1023],[895,1011],[902,940],[904,941],[905,942],[906,943],[908,972],[910,973],[911,974],[913,945],[914,946],[915,947],[916,948],[917,949],[918,950],[919,951],[920,952],[921,953],[922,954],[923,955],[924,956],[925,957],[926,958],[927,959],[928,960],[929,961],[931,963],[932,964],[933,965],[934,966],[935,967],[936,968],[937,969],[938,970],[939,971],[940,902],[941,904],[942,905],[943,906],[945,913],[946,[914,976]],[947,915],[948,916],[949,[917,1013]],[950,918],[951,919],[952,[920,977]],[953,[837,921,8126]],[954,[922,1008]],[955,923],[956,[181,924]],[957,925],[958,926],[959,927],[960,[928,982]],[961,[929,1009]],[962,963],[963,[931,962]],[964,932],[965,933],[966,[934,981]],[967,935],[968,936],[969,937],[970,938],[971,939],[972,908],[973,910],[974,911],[975,983],[976,946],[977,952],[981,966],[982,960],[983,975],[984,985],[985,984],[986,987],[987,986],[988,989],[989,988],[990,991],[991,990],[992,993],[993,992],[994,995],[995,994],[996,997],[997,996],[998,999],[999,998],[1e3,1001],[1001,1e3],[1002,1003],[1003,1002],[1004,1005],[1005,1004],[1006,1007],[1007,1006],[1008,954],[1009,961],[1010,1017],[1011,895],[1013,949],[1015,1016],[1016,1015],[1017,1010],[1018,1019],[1019,1018],[1021,891],[1022,892],[1023,893],[1024,1104],[1025,1105],[1026,1106],[1027,1107],[1028,1108],[1029,1109],[1030,1110],[1031,1111],[1032,1112],[1033,1113],[1034,1114],[1035,1115],[1036,1116],[1037,1117],[1038,1118],[1039,1119],[1040,1072],[1041,1073],[1042,1074],[1043,1075],[1044,1076],[1045,1077],[1046,1078],[1047,1079],[1048,1080],[1049,1081],[1050,1082],[1051,1083],[1052,1084],[1053,1085],[1054,1086],[1055,1087],[1056,1088],[1057,1089],[1058,1090],[1059,1091],[1060,1092],[1061,1093],[1062,1094],[1063,1095],[1064,1096],[1065,1097],[1066,1098],[1067,1099],[1068,1100],[1069,1101],[1070,1102],[1071,1103],[1072,1040],[1073,1041],[1074,[1042,7296]],[1075,1043],[1076,[1044,7297]],[1077,1045],[1078,1046],[1079,1047],[1080,1048],[1081,1049],[1082,1050],[1083,1051],[1084,1052],[1085,1053],[1086,[1054,7298]],[1087,1055],[1088,1056],[1089,[1057,7299]],[1090,[1058,7300,7301]],[1091,1059],[1092,1060],[1093,1061],[1094,1062],[1095,1063],[1096,1064],[1097,1065],[1098,[1066,7302]],[1099,1067],[1100,1068],[1101,1069],[1102,1070],[1103,1071],[1104,1024],[1105,1025],[1106,1026],[1107,1027],[1108,1028],[1109,1029],[1110,1030],[1111,1031],[1112,1032],[1113,1033],[1114,1034],[1115,1035],[1116,1036],[1117,1037],[1118,1038],[1119,1039],[1120,1121],[1121,1120],[1122,1123],[1123,[1122,7303]],[1124,1125],[1125,1124],[1126,1127],[1127,1126],[1128,1129],[1129,1128],[1130,1131],[1131,1130],[1132,1133],[1133,1132],[1134,1135],[1135,1134],[1136,1137],[1137,1136],[1138,1139],[1139,1138],[1140,1141],[1141,1140],[1142,1143],[1143,1142],[1144,1145],[1145,1144],[1146,1147],[1147,1146],[1148,1149],[1149,1148],[1150,1151],[1151,1150],[1152,1153],[1153,1152],[1162,1163],[1163,1162],[1164,1165],[1165,1164],[1166,1167],[1167,1166],[1168,1169],[1169,1168],[1170,1171],[1171,1170],[1172,1173],[1173,1172],[1174,1175],[1175,1174],[1176,1177],[1177,1176],[1178,1179],[1179,1178],[1180,1181],[1181,1180],[1182,1183],[1183,1182],[1184,1185],[1185,1184],[1186,1187],[1187,1186],[1188,1189],[1189,1188],[1190,1191],[1191,1190],[1192,1193],[1193,1192],[1194,1195],[1195,1194],[1196,1197],[1197,1196],[1198,1199],[1199,1198],[1200,1201],[1201,1200],[1202,1203],[1203,1202],[1204,1205],[1205,1204],[1206,1207],[1207,1206],[1208,1209],[1209,1208],[1210,1211],[1211,1210],[1212,1213],[1213,1212],[1214,1215],[1215,1214],[1216,1231],[1217,1218],[1218,1217],[1219,1220],[1220,1219],[1221,1222],[1222,1221],[1223,1224],[1224,1223],[1225,1226],[1226,1225],[1227,1228],[1228,1227],[1229,1230],[1230,1229],[1231,1216],[1232,1233],[1233,1232],[1234,1235],[1235,1234],[1236,1237],[1237,1236],[1238,1239],[1239,1238],[1240,1241],[1241,1240],[1242,1243],[1243,1242],[1244,1245],[1245,1244],[1246,1247],[1247,1246],[1248,1249],[1249,1248],[1250,1251],[1251,1250],[1252,1253],[1253,1252],[1254,1255],[1255,1254],[1256,1257],[1257,1256],[1258,1259],[1259,1258],[1260,1261],[1261,1260],[1262,1263],[1263,1262],[1264,1265],[1265,1264],[1266,1267],[1267,1266],[1268,1269],[1269,1268],[1270,1271],[1271,1270],[1272,1273],[1273,1272],[1274,1275],[1275,1274],[1276,1277],[1277,1276],[1278,1279],[1279,1278],[1280,1281],[1281,1280],[1282,1283],[1283,1282],[1284,1285],[1285,1284],[1286,1287],[1287,1286],[1288,1289],[1289,1288],[1290,1291],[1291,1290],[1292,1293],[1293,1292],[1294,1295],[1295,1294],[1296,1297],[1297,1296],[1298,1299],[1299,1298],[1300,1301],[1301,1300],[1302,1303],[1303,1302],[1304,1305],[1305,1304],[1306,1307],[1307,1306],[1308,1309],[1309,1308],[1310,1311],[1311,1310],[1312,1313],[1313,1312],[1314,1315],[1315,1314],[1316,1317],[1317,1316],[1318,1319],[1319,1318],[1320,1321],[1321,1320],[1322,1323],[1323,1322],[1324,1325],[1325,1324],[1326,1327],[1327,1326],[1329,1377],[1330,1378],[1331,1379],[1332,1380],[1333,1381],[1334,1382],[1335,1383],[1336,1384],[1337,1385],[1338,1386],[1339,1387],[1340,1388],[1341,1389],[1342,1390],[1343,1391],[1344,1392],[1345,1393],[1346,1394],[1347,1395],[1348,1396],[1349,1397],[1350,1398],[1351,1399],[1352,1400],[1353,1401],[1354,1402],[1355,1403],[1356,1404],[1357,1405],[1358,1406],[1359,1407],[1360,1408],[1361,1409],[1362,1410],[1363,1411],[1364,1412],[1365,1413],[1366,1414],[1377,1329],[1378,1330],[1379,1331],[1380,1332],[1381,1333],[1382,1334],[1383,1335],[1384,1336],[1385,1337],[1386,1338],[1387,1339],[1388,1340],[1389,1341],[1390,1342],[1391,1343],[1392,1344],[1393,1345],[1394,1346],[1395,1347],[1396,1348],[1397,1349],[1398,1350],[1399,1351],[1400,1352],[1401,1353],[1402,1354],[1403,1355],[1404,1356],[1405,1357],[1406,1358],[1407,1359],[1408,1360],[1409,1361],[1410,1362],[1411,1363],[1412,1364],[1413,1365],[1414,1366],[4256,11520],[4257,11521],[4258,11522],[4259,11523],[4260,11524],[4261,11525],[4262,11526],[4263,11527],[4264,11528],[4265,11529],[4266,11530],[4267,11531],[4268,11532],[4269,11533],[4270,11534],[4271,11535],[4272,11536],[4273,11537],[4274,11538],[4275,11539],[4276,11540],[4277,11541],[4278,11542],[4279,11543],[4280,11544],[4281,11545],[4282,11546],[4283,11547],[4284,11548],[4285,11549],[4286,11550],[4287,11551],[4288,11552],[4289,11553],[4290,11554],[4291,11555],[4292,11556],[4293,11557],[4295,11559],[4301,11565],[4304,7312],[4305,7313],[4306,7314],[4307,7315],[4308,7316],[4309,7317],[4310,7318],[4311,7319],[4312,7320],[4313,7321],[4314,7322],[4315,7323],[4316,7324],[4317,7325],[4318,7326],[4319,7327],[4320,7328],[4321,7329],[4322,7330],[4323,7331],[4324,7332],[4325,7333],[4326,7334],[4327,7335],[4328,7336],[4329,7337],[4330,7338],[4331,7339],[4332,7340],[4333,7341],[4334,7342],[4335,7343],[4336,7344],[4337,7345],[4338,7346],[4339,7347],[4340,7348],[4341,7349],[4342,7350],[4343,7351],[4344,7352],[4345,7353],[4346,7354],[4349,7357],[4350,7358],[4351,7359],[5024,43888],[5025,43889],[5026,43890],[5027,43891],[5028,43892],[5029,43893],[5030,43894],[5031,43895],[5032,43896],[5033,43897],[5034,43898],[5035,43899],[5036,43900],[5037,43901],[5038,43902],[5039,43903],[5040,43904],[5041,43905],[5042,43906],[5043,43907],[5044,43908],[5045,43909],[5046,43910],[5047,43911],[5048,43912],[5049,43913],[5050,43914],[5051,43915],[5052,43916],[5053,43917],[5054,43918],[5055,43919],[5056,43920],[5057,43921],[5058,43922],[5059,43923],[5060,43924],[5061,43925],[5062,43926],[5063,43927],[5064,43928],[5065,43929],[5066,43930],[5067,43931],[5068,43932],[5069,43933],[5070,43934],[5071,43935],[5072,43936],[5073,43937],[5074,43938],[5075,43939],[5076,43940],[5077,43941],[5078,43942],[5079,43943],[5080,43944],[5081,43945],[5082,43946],[5083,43947],[5084,43948],[5085,43949],[5086,43950],[5087,43951],[5088,43952],[5089,43953],[5090,43954],[5091,43955],[5092,43956],[5093,43957],[5094,43958],[5095,43959],[5096,43960],[5097,43961],[5098,43962],[5099,43963],[5100,43964],[5101,43965],[5102,43966],[5103,43967],[5104,5112],[5105,5113],[5106,5114],[5107,5115],[5108,5116],[5109,5117],[5112,5104],[5113,5105],[5114,5106],[5115,5107],[5116,5108],[5117,5109],[7296,1074],[7297,1076],[7298,1086],[7299,1089],[7300,1090],[7301,1090],[7302,1098],[7303,1123],[7304,42571],[7305,7306],[7306,7305],[7312,4304],[7313,4305],[7314,4306],[7315,4307],[7316,4308],[7317,4309],[7318,4310],[7319,4311],[7320,4312],[7321,4313],[7322,4314],[7323,4315],[7324,4316],[7325,4317],[7326,4318],[7327,4319],[7328,4320],[7329,4321],[7330,4322],[7331,4323],[7332,4324],[7333,4325],[7334,4326],[7335,4327],[7336,4328],[7337,4329],[7338,4330],[7339,4331],[7340,4332],[7341,4333],[7342,4334],[7343,4335],[7344,4336],[7345,4337],[7346,4338],[7347,4339],[7348,4340],[7349,4341],[7350,4342],[7351,4343],[7352,4344],[7353,4345],[7354,4346],[7357,4349],[7358,4350],[7359,4351],[7545,42877],[7549,11363],[7566,42950],[7680,7681],[7681,7680],[7682,7683],[7683,7682],[7684,7685],[7685,7684],[7686,7687],[7687,7686],[7688,7689],[7689,7688],[7690,7691],[7691,7690],[7692,7693],[7693,7692],[7694,7695],[7695,7694],[7696,7697],[7697,7696],[7698,7699],[7699,7698],[7700,7701],[7701,7700],[7702,7703],[7703,7702],[7704,7705],[7705,7704],[7706,7707],[7707,7706],[7708,7709],[7709,7708],[7710,7711],[7711,7710],[7712,7713],[7713,7712],[7714,7715],[7715,7714],[7716,7717],[7717,7716],[7718,7719],[7719,7718],[7720,7721],[7721,7720],[7722,7723],[7723,7722],[7724,7725],[7725,7724],[7726,7727],[7727,7726],[7728,7729],[7729,7728],[7730,7731],[7731,7730],[7732,7733],[7733,7732],[7734,7735],[7735,7734],[7736,7737],[7737,7736],[7738,7739],[7739,7738],[7740,7741],[7741,7740],[7742,7743],[7743,7742],[7744,7745],[7745,7744],[7746,7747],[7747,7746],[7748,7749],[7749,7748],[7750,7751],[7751,7750],[7752,7753],[7753,7752],[7754,7755],[7755,7754],[7756,7757],[7757,7756],[7758,7759],[7759,7758],[7760,7761],[7761,7760],[7762,7763],[7763,7762],[7764,7765],[7765,7764],[7766,7767],[7767,7766],[7768,7769],[7769,7768],[7770,7771],[7771,7770],[7772,7773],[7773,7772],[7774,7775],[7775,7774],[7776,7777],[7777,[7776,7835]],[7778,7779],[7779,7778],[7780,7781],[7781,7780],[7782,7783],[7783,7782],[7784,7785],[7785,7784],[7786,7787],[7787,7786],[7788,7789],[7789,7788],[7790,7791],[7791,7790],[7792,7793],[7793,7792],[7794,7795],[7795,7794],[7796,7797],[7797,7796],[7798,7799],[7799,7798],[7800,7801],[7801,7800],[7802,7803],[7803,7802],[7804,7805],[7805,7804],[7806,7807],[7807,7806],[7808,7809],[7809,7808],[7810,7811],[7811,7810],[7812,7813],[7813,7812],[7814,7815],[7815,7814],[7816,7817],[7817,7816],[7818,7819],[7819,7818],[7820,7821],[7821,7820],[7822,7823],[7823,7822],[7824,7825],[7825,7824],[7826,7827],[7827,7826],[7828,7829],[7829,7828],[7835,7777],[7840,7841],[7841,7840],[7842,7843],[7843,7842],[7844,7845],[7845,7844],[7846,7847],[7847,7846],[7848,7849],[7849,7848],[7850,7851],[7851,7850],[7852,7853],[7853,7852],[7854,7855],[7855,7854],[7856,7857],[7857,7856],[7858,7859],[7859,7858],[7860,7861],[7861,7860],[7862,7863],[7863,7862],[7864,7865],[7865,7864],[7866,7867],[7867,7866],[7868,7869],[7869,7868],[7870,7871],[7871,7870],[7872,7873],[7873,7872],[7874,7875],[7875,7874],[7876,7877],[7877,7876],[7878,7879],[7879,7878],[7880,7881],[7881,7880],[7882,7883],[7883,7882],[7884,7885],[7885,7884],[7886,7887],[7887,7886],[7888,7889],[7889,7888],[7890,7891],[7891,7890],[7892,7893],[7893,7892],[7894,7895],[7895,7894],[7896,7897],[7897,7896],[7898,7899],[7899,7898],[7900,7901],[7901,7900],[7902,7903],[7903,7902],[7904,7905],[7905,7904],[7906,7907],[7907,7906],[7908,7909],[7909,7908],[7910,7911],[7911,7910],[7912,7913],[7913,7912],[7914,7915],[7915,7914],[7916,7917],[7917,7916],[7918,7919],[7919,7918],[7920,7921],[7921,7920],[7922,7923],[7923,7922],[7924,7925],[7925,7924],[7926,7927],[7927,7926],[7928,7929],[7929,7928],[7930,7931],[7931,7930],[7932,7933],[7933,7932],[7934,7935],[7935,7934],[7936,7944],[7937,7945],[7938,7946],[7939,7947],[7940,7948],[7941,7949],[7942,7950],[7943,7951],[7944,7936],[7945,7937],[7946,7938],[7947,7939],[7948,7940],[7949,7941],[7950,7942],[7951,7943],[7952,7960],[7953,7961],[7954,7962],[7955,7963],[7956,7964],[7957,7965],[7960,7952],[7961,7953],[7962,7954],[7963,7955],[7964,7956],[7965,7957],[7968,7976],[7969,7977],[7970,7978],[7971,7979],[7972,7980],[7973,7981],[7974,7982],[7975,7983],[7976,7968],[7977,7969],[7978,7970],[7979,7971],[7980,7972],[7981,7973],[7982,7974],[7983,7975],[7984,7992],[7985,7993],[7986,7994],[7987,7995],[7988,7996],[7989,7997],[7990,7998],[7991,7999],[7992,7984],[7993,7985],[7994,7986],[7995,7987],[7996,7988],[7997,7989],[7998,7990],[7999,7991],[8e3,8008],[8001,8009],[8002,8010],[8003,8011],[8004,8012],[8005,8013],[8008,8e3],[8009,8001],[8010,8002],[8011,8003],[8012,8004],[8013,8005],[8017,8025],[8019,8027],[8021,8029],[8023,8031],[8025,8017],[8027,8019],[8029,8021],[8031,8023],[8032,8040],[8033,8041],[8034,8042],[8035,8043],[8036,8044],[8037,8045],[8038,8046],[8039,8047],[8040,8032],[8041,8033],[8042,8034],[8043,8035],[8044,8036],[8045,8037],[8046,8038],[8047,8039],[8048,8122],[8049,8123],[8050,8136],[8051,8137],[8052,8138],[8053,8139],[8054,8154],[8055,8155],[8056,8184],[8057,8185],[8058,8170],[8059,8171],[8060,8186],[8061,8187],[8112,8120],[8113,8121],[8120,8112],[8121,8113],[8122,8048],[8123,8049],[8126,953],[8136,8050],[8137,8051],[8138,8052],[8139,8053],[8144,8152],[8145,8153],[8152,8144],[8153,8145],[8154,8054],[8155,8055],[8160,8168],[8161,8169],[8165,8172],[8168,8160],[8169,8161],[8170,8058],[8171,8059],[8172,8165],[8184,8056],[8185,8057],[8186,8060],[8187,8061],[8498,8526],[8526,8498],[8544,8560],[8545,8561],[8546,8562],[8547,8563],[8548,8564],[8549,8565],[8550,8566],[8551,8567],[8552,8568],[8553,8569],[8554,8570],[8555,8571],[8556,8572],[8557,8573],[8558,8574],[8559,8575],[8560,8544],[8561,8545],[8562,8546],[8563,8547],[8564,8548],[8565,8549],[8566,8550],[8567,8551],[8568,8552],[8569,8553],[8570,8554],[8571,8555],[8572,8556],[8573,8557],[8574,8558],[8575,8559],[8579,8580],[8580,8579],[9398,9424],[9399,9425],[9400,9426],[9401,9427],[9402,9428],[9403,9429],[9404,9430],[9405,9431],[9406,9432],[9407,9433],[9408,9434],[9409,9435],[9410,9436],[9411,9437],[9412,9438],[9413,9439],[9414,9440],[9415,9441],[9416,9442],[9417,9443],[9418,9444],[9419,9445],[9420,9446],[9421,9447],[9422,9448],[9423,9449],[9424,9398],[9425,9399],[9426,9400],[9427,9401],[9428,9402],[9429,9403],[9430,9404],[9431,9405],[9432,9406],[9433,9407],[9434,9408],[9435,9409],[9436,9410],[9437,9411],[9438,9412],[9439,9413],[9440,9414],[9441,9415],[9442,9416],[9443,9417],[9444,9418],[9445,9419],[9446,9420],[9447,9421],[9448,9422],[9449,9423],[11264,11312],[11265,11313],[11266,11314],[11267,11315],[11268,11316],[11269,11317],[11270,11318],[11271,11319],[11272,11320],[11273,11321],[11274,11322],[11275,11323],[11276,11324],[11277,11325],[11278,11326],[11279,11327],[11280,11328],[11281,11329],[11282,11330],[11283,11331],[11284,11332],[11285,11333],[11286,11334],[11287,11335],[11288,11336],[11289,11337],[11290,11338],[11291,11339],[11292,11340],[11293,11341],[11294,11342],[11295,11343],[11296,11344],[11297,11345],[11298,11346],[11299,11347],[11300,11348],[11301,11349],[11302,11350],[11303,11351],[11304,11352],[11305,11353],[11306,11354],[11307,11355],[11308,11356],[11309,11357],[11310,11358],[11311,11359],[11312,11264],[11313,11265],[11314,11266],[11315,11267],[11316,11268],[11317,11269],[11318,11270],[11319,11271],[11320,11272],[11321,11273],[11322,11274],[11323,11275],[11324,11276],[11325,11277],[11326,11278],[11327,11279],[11328,11280],[11329,11281],[11330,11282],[11331,11283],[11332,11284],[11333,11285],[11334,11286],[11335,11287],[11336,11288],[11337,11289],[11338,11290],[11339,11291],[11340,11292],[11341,11293],[11342,11294],[11343,11295],[11344,11296],[11345,11297],[11346,11298],[11347,11299],[11348,11300],[11349,11301],[11350,11302],[11351,11303],[11352,11304],[11353,11305],[11354,11306],[11355,11307],[11356,11308],[11357,11309],[11358,11310],[11359,11311],[11360,11361],[11361,11360],[11362,619],[11363,7549],[11364,637],[11365,570],[11366,574],[11367,11368],[11368,11367],[11369,11370],[11370,11369],[11371,11372],[11372,11371],[11373,593],[11374,625],[11375,592],[11376,594],[11378,11379],[11379,11378],[11381,11382],[11382,11381],[11390,575],[11391,576],[11392,11393],[11393,11392],[11394,11395],[11395,11394],[11396,11397],[11397,11396],[11398,11399],[11399,11398],[11400,11401],[11401,11400],[11402,11403],[11403,11402],[11404,11405],[11405,11404],[11406,11407],[11407,11406],[11408,11409],[11409,11408],[11410,11411],[11411,11410],[11412,11413],[11413,11412],[11414,11415],[11415,11414],[11416,11417],[11417,11416],[11418,11419],[11419,11418],[11420,11421],[11421,11420],[11422,11423],[11423,11422],[11424,11425],[11425,11424],[11426,11427],[11427,11426],[11428,11429],[11429,11428],[11430,11431],[11431,11430],[11432,11433],[11433,11432],[11434,11435],[11435,11434],[11436,11437],[11437,11436],[11438,11439],[11439,11438],[11440,11441],[11441,11440],[11442,11443],[11443,11442],[11444,11445],[11445,11444],[11446,11447],[11447,11446],[11448,11449],[11449,11448],[11450,11451],[11451,11450],[11452,11453],[11453,11452],[11454,11455],[11455,11454],[11456,11457],[11457,11456],[11458,11459],[11459,11458],[11460,11461],[11461,11460],[11462,11463],[11463,11462],[11464,11465],[11465,11464],[11466,11467],[11467,11466],[11468,11469],[11469,11468],[11470,11471],[11471,11470],[11472,11473],[11473,11472],[11474,11475],[11475,11474],[11476,11477],[11477,11476],[11478,11479],[11479,11478],[11480,11481],[11481,11480],[11482,11483],[11483,11482],[11484,11485],[11485,11484],[11486,11487],[11487,11486],[11488,11489],[11489,11488],[11490,11491],[11491,11490],[11499,11500],[11500,11499],[11501,11502],[11502,11501],[11506,11507],[11507,11506],[11520,4256],[11521,4257],[11522,4258],[11523,4259],[11524,4260],[11525,4261],[11526,4262],[11527,4263],[11528,4264],[11529,4265],[11530,4266],[11531,4267],[11532,4268],[11533,4269],[11534,4270],[11535,4271],[11536,4272],[11537,4273],[11538,4274],[11539,4275],[11540,4276],[11541,4277],[11542,4278],[11543,4279],[11544,4280],[11545,4281],[11546,4282],[11547,4283],[11548,4284],[11549,4285],[11550,4286],[11551,4287],[11552,4288],[11553,4289],[11554,4290],[11555,4291],[11556,4292],[11557,4293],[11559,4295],[11565,4301],[42560,42561],[42561,42560],[42562,42563],[42563,42562],[42564,42565],[42565,42564],[42566,42567],[42567,42566],[42568,42569],[42569,42568],[42570,42571],[42571,[7304,42570]],[42572,42573],[42573,42572],[42574,42575],[42575,42574],[42576,42577],[42577,42576],[42578,42579],[42579,42578],[42580,42581],[42581,42580],[42582,42583],[42583,42582],[42584,42585],[42585,42584],[42586,42587],[42587,42586],[42588,42589],[42589,42588],[42590,42591],[42591,42590],[42592,42593],[42593,42592],[42594,42595],[42595,42594],[42596,42597],[42597,42596],[42598,42599],[42599,42598],[42600,42601],[42601,42600],[42602,42603],[42603,42602],[42604,42605],[42605,42604],[42624,42625],[42625,42624],[42626,42627],[42627,42626],[42628,42629],[42629,42628],[42630,42631],[42631,42630],[42632,42633],[42633,42632],[42634,42635],[42635,42634],[42636,42637],[42637,42636],[42638,42639],[42639,42638],[42640,42641],[42641,42640],[42642,42643],[42643,42642],[42644,42645],[42645,42644],[42646,42647],[42647,42646],[42648,42649],[42649,42648],[42650,42651],[42651,42650],[42786,42787],[42787,42786],[42788,42789],[42789,42788],[42790,42791],[42791,42790],[42792,42793],[42793,42792],[42794,42795],[42795,42794],[42796,42797],[42797,42796],[42798,42799],[42799,42798],[42802,42803],[42803,42802],[42804,42805],[42805,42804],[42806,42807],[42807,42806],[42808,42809],[42809,42808],[42810,42811],[42811,42810],[42812,42813],[42813,42812],[42814,42815],[42815,42814],[42816,42817],[42817,42816],[42818,42819],[42819,42818],[42820,42821],[42821,42820],[42822,42823],[42823,42822],[42824,42825],[42825,42824],[42826,42827],[42827,42826],[42828,42829],[42829,42828],[42830,42831],[42831,42830],[42832,42833],[42833,42832],[42834,42835],[42835,42834],[42836,42837],[42837,42836],[42838,42839],[42839,42838],[42840,42841],[42841,42840],[42842,42843],[42843,42842],[42844,42845],[42845,42844],[42846,42847],[42847,42846],[42848,42849],[42849,42848],[42850,42851],[42851,42850],[42852,42853],[42853,42852],[42854,42855],[42855,42854],[42856,42857],[42857,42856],[42858,42859],[42859,42858],[42860,42861],[42861,42860],[42862,42863],[42863,42862],[42873,42874],[42874,42873],[42875,42876],[42876,42875],[42877,7545],[42878,42879],[42879,42878],[42880,42881],[42881,42880],[42882,42883],[42883,42882],[42884,42885],[42885,42884],[42886,42887],[42887,42886],[42891,42892],[42892,42891],[42893,613],[42896,42897],[42897,42896],[42898,42899],[42899,42898],[42900,42948],[42902,42903],[42903,42902],[42904,42905],[42905,42904],[42906,42907],[42907,42906],[42908,42909],[42909,42908],[42910,42911],[42911,42910],[42912,42913],[42913,42912],[42914,42915],[42915,42914],[42916,42917],[42917,42916],[42918,42919],[42919,42918],[42920,42921],[42921,42920],[42922,614],[42923,604],[42924,609],[42925,620],[42926,618],[42928,670],[42929,647],[42930,669],[42931,43859],[42932,42933],[42933,42932],[42934,42935],[42935,42934],[42936,42937],[42937,42936],[42938,42939],[42939,42938],[42940,42941],[42941,42940],[42942,42943],[42943,42942],[42944,42945],[42945,42944],[42946,42947],[42947,42946],[42948,42900],[42949,642],[42950,7566],[42951,42952],[42952,42951],[42953,42954],[42954,42953],[42955,612],[42956,42957],[42957,42956],[42958,42959],[42959,42958],[42960,42961],[42961,42960],[42962,42963],[42963,42962],[42964,42965],[42965,42964],[42966,42967],[42967,42966],[42968,42969],[42969,42968],[42970,42971],[42971,42970],[42972,411],[42997,42998],[42998,42997],[43859,42931],[43888,5024],[43889,5025],[43890,5026],[43891,5027],[43892,5028],[43893,5029],[43894,5030],[43895,5031],[43896,5032],[43897,5033],[43898,5034],[43899,5035],[43900,5036],[43901,5037],[43902,5038],[43903,5039],[43904,5040],[43905,5041],[43906,5042],[43907,5043],[43908,5044],[43909,5045],[43910,5046],[43911,5047],[43912,5048],[43913,5049],[43914,5050],[43915,5051],[43916,5052],[43917,5053],[43918,5054],[43919,5055],[43920,5056],[43921,5057],[43922,5058],[43923,5059],[43924,5060],[43925,5061],[43926,5062],[43927,5063],[43928,5064],[43929,5065],[43930,5066],[43931,5067],[43932,5068],[43933,5069],[43934,5070],[43935,5071],[43936,5072],[43937,5073],[43938,5074],[43939,5075],[43940,5076],[43941,5077],[43942,5078],[43943,5079],[43944,5080],[43945,5081],[43946,5082],[43947,5083],[43948,5084],[43949,5085],[43950,5086],[43951,5087],[43952,5088],[43953,5089],[43954,5090],[43955,5091],[43956,5092],[43957,5093],[43958,5094],[43959,5095],[43960,5096],[43961,5097],[43962,5098],[43963,5099],[43964,5100],[43965,5101],[43966,5102],[43967,5103],[65313,65345],[65314,65346],[65315,65347],[65316,65348],[65317,65349],[65318,65350],[65319,65351],[65320,65352],[65321,65353],[65322,65354],[65323,65355],[65324,65356],[65325,65357],[65326,65358],[65327,65359],[65328,65360],[65329,65361],[65330,65362],[65331,65363],[65332,65364],[65333,65365],[65334,65366],[65335,65367],[65336,65368],[65337,65369],[65338,65370],[65345,65313],[65346,65314],[65347,65315],[65348,65316],[65349,65317],[65350,65318],[65351,65319],[65352,65320],[65353,65321],[65354,65322],[65355,65323],[65356,65324],[65357,65325],[65358,65326],[65359,65327],[65360,65328],[65361,65329],[65362,65330],[65363,65331],[65364,65332],[65365,65333],[65366,65334],[65367,65335],[65368,65336],[65369,65337],[65370,65338]]),Kue=new Map([[65,97],[66,98],[67,99],[68,100],[69,101],[70,102],[71,103],[72,104],[73,105],[74,106],[75,107],[76,108],[77,109],[78,110],[79,111],[80,112],[81,113],[82,114],[83,115],[84,116],[85,117],[86,118],[87,119],[88,120],[89,121],[90,122],[181,956],[192,224],[193,225],[194,226],[195,227],[196,228],[197,229],[198,230],[199,231],[200,232],[201,233],[202,234],[203,235],[204,236],[205,237],[206,238],[207,239],[208,240],[209,241],[210,242],[211,243],[212,244],[213,245],[214,246],[216,248],[217,249],[218,250],[219,251],[220,252],[221,253],[222,254],[256,257],[258,259],[260,261],[262,263],[264,265],[266,267],[268,269],[270,271],[272,273],[274,275],[276,277],[278,279],[280,281],[282,283],[284,285],[286,287],[288,289],[290,291],[292,293],[294,295],[296,297],[298,299],[300,301],[302,303],[306,307],[308,309],[310,311],[313,314],[315,316],[317,318],[319,320],[321,322],[323,324],[325,326],[327,328],[330,331],[332,333],[334,335],[336,337],[338,339],[340,341],[342,343],[344,345],[346,347],[348,349],[350,351],[352,353],[354,355],[356,357],[358,359],[360,361],[362,363],[364,365],[366,367],[368,369],[370,371],[372,373],[374,375],[376,255],[377,378],[379,380],[381,382],[383,115],[385,595],[386,387],[388,389],[390,596],[391,392],[393,598],[394,599],[395,396],[398,477],[399,601],[400,603],[401,402],[403,608],[404,611],[406,617],[407,616],[408,409],[412,623],[413,626],[415,629],[416,417],[418,419],[420,421],[422,640],[423,424],[425,643],[428,429],[430,648],[431,432],[433,650],[434,651],[435,436],[437,438],[439,658],[440,441],[444,445],[452,454],[453,454],[455,457],[456,457],[458,460],[459,460],[461,462],[463,464],[465,466],[467,468],[469,470],[471,472],[473,474],[475,476],[478,479],[480,481],[482,483],[484,485],[486,487],[488,489],[490,491],[492,493],[494,495],[497,499],[498,499],[500,501],[502,405],[503,447],[504,505],[506,507],[508,509],[510,511],[512,513],[514,515],[516,517],[518,519],[520,521],[522,523],[524,525],[526,527],[528,529],[530,531],[532,533],[534,535],[536,537],[538,539],[540,541],[542,543],[544,414],[546,547],[548,549],[550,551],[552,553],[554,555],[556,557],[558,559],[560,561],[562,563],[570,11365],[571,572],[573,410],[574,11366],[577,578],[579,384],[580,649],[581,652],[582,583],[584,585],[586,587],[588,589],[590,591],[837,953],[880,881],[882,883],[886,887],[895,1011],[902,940],[904,941],[905,942],[906,943],[908,972],[910,973],[911,974],[913,945],[914,946],[915,947],[916,948],[917,949],[918,950],[919,951],[920,952],[921,953],[922,954],[923,955],[924,956],[925,957],[926,958],[927,959],[928,960],[929,961],[931,963],[932,964],[933,965],[934,966],[935,967],[936,968],[937,969],[938,970],[939,971],[962,963],[975,983],[976,946],[977,952],[981,966],[982,960],[984,985],[986,987],[988,989],[990,991],[992,993],[994,995],[996,997],[998,999],[1e3,1001],[1002,1003],[1004,1005],[1006,1007],[1008,954],[1009,961],[1012,952],[1013,949],[1015,1016],[1017,1010],[1018,1019],[1021,891],[1022,892],[1023,893],[1024,1104],[1025,1105],[1026,1106],[1027,1107],[1028,1108],[1029,1109],[1030,1110],[1031,1111],[1032,1112],[1033,1113],[1034,1114],[1035,1115],[1036,1116],[1037,1117],[1038,1118],[1039,1119],[1040,1072],[1041,1073],[1042,1074],[1043,1075],[1044,1076],[1045,1077],[1046,1078],[1047,1079],[1048,1080],[1049,1081],[1050,1082],[1051,1083],[1052,1084],[1053,1085],[1054,1086],[1055,1087],[1056,1088],[1057,1089],[1058,1090],[1059,1091],[1060,1092],[1061,1093],[1062,1094],[1063,1095],[1064,1096],[1065,1097],[1066,1098],[1067,1099],[1068,1100],[1069,1101],[1070,1102],[1071,1103],[1120,1121],[1122,1123],[1124,1125],[1126,1127],[1128,1129],[1130,1131],[1132,1133],[1134,1135],[1136,1137],[1138,1139],[1140,1141],[1142,1143],[1144,1145],[1146,1147],[1148,1149],[1150,1151],[1152,1153],[1162,1163],[1164,1165],[1166,1167],[1168,1169],[1170,1171],[1172,1173],[1174,1175],[1176,1177],[1178,1179],[1180,1181],[1182,1183],[1184,1185],[1186,1187],[1188,1189],[1190,1191],[1192,1193],[1194,1195],[1196,1197],[1198,1199],[1200,1201],[1202,1203],[1204,1205],[1206,1207],[1208,1209],[1210,1211],[1212,1213],[1214,1215],[1216,1231],[1217,1218],[1219,1220],[1221,1222],[1223,1224],[1225,1226],[1227,1228],[1229,1230],[1232,1233],[1234,1235],[1236,1237],[1238,1239],[1240,1241],[1242,1243],[1244,1245],[1246,1247],[1248,1249],[1250,1251],[1252,1253],[1254,1255],[1256,1257],[1258,1259],[1260,1261],[1262,1263],[1264,1265],[1266,1267],[1268,1269],[1270,1271],[1272,1273],[1274,1275],[1276,1277],[1278,1279],[1280,1281],[1282,1283],[1284,1285],[1286,1287],[1288,1289],[1290,1291],[1292,1293],[1294,1295],[1296,1297],[1298,1299],[1300,1301],[1302,1303],[1304,1305],[1306,1307],[1308,1309],[1310,1311],[1312,1313],[1314,1315],[1316,1317],[1318,1319],[1320,1321],[1322,1323],[1324,1325],[1326,1327],[1329,1377],[1330,1378],[1331,1379],[1332,1380],[1333,1381],[1334,1382],[1335,1383],[1336,1384],[1337,1385],[1338,1386],[1339,1387],[1340,1388],[1341,1389],[1342,1390],[1343,1391],[1344,1392],[1345,1393],[1346,1394],[1347,1395],[1348,1396],[1349,1397],[1350,1398],[1351,1399],[1352,1400],[1353,1401],[1354,1402],[1355,1403],[1356,1404],[1357,1405],[1358,1406],[1359,1407],[1360,1408],[1361,1409],[1362,1410],[1363,1411],[1364,1412],[1365,1413],[1366,1414],[4256,11520],[4257,11521],[4258,11522],[4259,11523],[4260,11524],[4261,11525],[4262,11526],[4263,11527],[4264,11528],[4265,11529],[4266,11530],[4267,11531],[4268,11532],[4269,11533],[4270,11534],[4271,11535],[4272,11536],[4273,11537],[4274,11538],[4275,11539],[4276,11540],[4277,11541],[4278,11542],[4279,11543],[4280,11544],[4281,11545],[4282,11546],[4283,11547],[4284,11548],[4285,11549],[4286,11550],[4287,11551],[4288,11552],[4289,11553],[4290,11554],[4291,11555],[4292,11556],[4293,11557],[4295,11559],[4301,11565],[5112,5104],[5113,5105],[5114,5106],[5115,5107],[5116,5108],[5117,5109],[7296,1074],[7297,1076],[7298,1086],[7299,1089],[7300,1090],[7301,1090],[7302,1098],[7303,1123],[7304,42571],[7305,7306],[7312,4304],[7313,4305],[7314,4306],[7315,4307],[7316,4308],[7317,4309],[7318,4310],[7319,4311],[7320,4312],[7321,4313],[7322,4314],[7323,4315],[7324,4316],[7325,4317],[7326,4318],[7327,4319],[7328,4320],[7329,4321],[7330,4322],[7331,4323],[7332,4324],[7333,4325],[7334,4326],[7335,4327],[7336,4328],[7337,4329],[7338,4330],[7339,4331],[7340,4332],[7341,4333],[7342,4334],[7343,4335],[7344,4336],[7345,4337],[7346,4338],[7347,4339],[7348,4340],[7349,4341],[7350,4342],[7351,4343],[7352,4344],[7353,4345],[7354,4346],[7357,4349],[7358,4350],[7359,4351],[7680,7681],[7682,7683],[7684,7685],[7686,7687],[7688,7689],[7690,7691],[7692,7693],[7694,7695],[7696,7697],[7698,7699],[7700,7701],[7702,7703],[7704,7705],[7706,7707],[7708,7709],[7710,7711],[7712,7713],[7714,7715],[7716,7717],[7718,7719],[7720,7721],[7722,7723],[7724,7725],[7726,7727],[7728,7729],[7730,7731],[7732,7733],[7734,7735],[7736,7737],[7738,7739],[7740,7741],[7742,7743],[7744,7745],[7746,7747],[7748,7749],[7750,7751],[7752,7753],[7754,7755],[7756,7757],[7758,7759],[7760,7761],[7762,7763],[7764,7765],[7766,7767],[7768,7769],[7770,7771],[7772,7773],[7774,7775],[7776,7777],[7778,7779],[7780,7781],[7782,7783],[7784,7785],[7786,7787],[7788,7789],[7790,7791],[7792,7793],[7794,7795],[7796,7797],[7798,7799],[7800,7801],[7802,7803],[7804,7805],[7806,7807],[7808,7809],[7810,7811],[7812,7813],[7814,7815],[7816,7817],[7818,7819],[7820,7821],[7822,7823],[7824,7825],[7826,7827],[7828,7829],[7835,7777],[7838,223],[7840,7841],[7842,7843],[7844,7845],[7846,7847],[7848,7849],[7850,7851],[7852,7853],[7854,7855],[7856,7857],[7858,7859],[7860,7861],[7862,7863],[7864,7865],[7866,7867],[7868,7869],[7870,7871],[7872,7873],[7874,7875],[7876,7877],[7878,7879],[7880,7881],[7882,7883],[7884,7885],[7886,7887],[7888,7889],[7890,7891],[7892,7893],[7894,7895],[7896,7897],[7898,7899],[7900,7901],[7902,7903],[7904,7905],[7906,7907],[7908,7909],[7910,7911],[7912,7913],[7914,7915],[7916,7917],[7918,7919],[7920,7921],[7922,7923],[7924,7925],[7926,7927],[7928,7929],[7930,7931],[7932,7933],[7934,7935],[7944,7936],[7945,7937],[7946,7938],[7947,7939],[7948,7940],[7949,7941],[7950,7942],[7951,7943],[7960,7952],[7961,7953],[7962,7954],[7963,7955],[7964,7956],[7965,7957],[7976,7968],[7977,7969],[7978,7970],[7979,7971],[7980,7972],[7981,7973],[7982,7974],[7983,7975],[7992,7984],[7993,7985],[7994,7986],[7995,7987],[7996,7988],[7997,7989],[7998,7990],[7999,7991],[8008,8e3],[8009,8001],[8010,8002],[8011,8003],[8012,8004],[8013,8005],[8025,8017],[8027,8019],[8029,8021],[8031,8023],[8040,8032],[8041,8033],[8042,8034],[8043,8035],[8044,8036],[8045,8037],[8046,8038],[8047,8039],[8072,8064],[8073,8065],[8074,8066],[8075,8067],[8076,8068],[8077,8069],[8078,8070],[8079,8071],[8088,8080],[8089,8081],[8090,8082],[8091,8083],[8092,8084],[8093,8085],[8094,8086],[8095,8087],[8104,8096],[8105,8097],[8106,8098],[8107,8099],[8108,8100],[8109,8101],[8110,8102],[8111,8103],[8120,8112],[8121,8113],[8122,8048],[8123,8049],[8124,8115],[8126,953],[8136,8050],[8137,8051],[8138,8052],[8139,8053],[8140,8131],[8147,912],[8152,8144],[8153,8145],[8154,8054],[8155,8055],[8163,944],[8168,8160],[8169,8161],[8170,8058],[8171,8059],[8172,8165],[8184,8056],[8185,8057],[8186,8060],[8187,8061],[8188,8179],[8486,969],[8490,107],[8491,229],[8498,8526],[8544,8560],[8545,8561],[8546,8562],[8547,8563],[8548,8564],[8549,8565],[8550,8566],[8551,8567],[8552,8568],[8553,8569],[8554,8570],[8555,8571],[8556,8572],[8557,8573],[8558,8574],[8559,8575],[8579,8580],[9398,9424],[9399,9425],[9400,9426],[9401,9427],[9402,9428],[9403,9429],[9404,9430],[9405,9431],[9406,9432],[9407,9433],[9408,9434],[9409,9435],[9410,9436],[9411,9437],[9412,9438],[9413,9439],[9414,9440],[9415,9441],[9416,9442],[9417,9443],[9418,9444],[9419,9445],[9420,9446],[9421,9447],[9422,9448],[9423,9449],[11264,11312],[11265,11313],[11266,11314],[11267,11315],[11268,11316],[11269,11317],[11270,11318],[11271,11319],[11272,11320],[11273,11321],[11274,11322],[11275,11323],[11276,11324],[11277,11325],[11278,11326],[11279,11327],[11280,11328],[11281,11329],[11282,11330],[11283,11331],[11284,11332],[11285,11333],[11286,11334],[11287,11335],[11288,11336],[11289,11337],[11290,11338],[11291,11339],[11292,11340],[11293,11341],[11294,11342],[11295,11343],[11296,11344],[11297,11345],[11298,11346],[11299,11347],[11300,11348],[11301,11349],[11302,11350],[11303,11351],[11304,11352],[11305,11353],[11306,11354],[11307,11355],[11308,11356],[11309,11357],[11310,11358],[11311,11359],[11360,11361],[11362,619],[11363,7549],[11364,637],[11367,11368],[11369,11370],[11371,11372],[11373,593],[11374,625],[11375,592],[11376,594],[11378,11379],[11381,11382],[11390,575],[11391,576],[11392,11393],[11394,11395],[11396,11397],[11398,11399],[11400,11401],[11402,11403],[11404,11405],[11406,11407],[11408,11409],[11410,11411],[11412,11413],[11414,11415],[11416,11417],[11418,11419],[11420,11421],[11422,11423],[11424,11425],[11426,11427],[11428,11429],[11430,11431],[11432,11433],[11434,11435],[11436,11437],[11438,11439],[11440,11441],[11442,11443],[11444,11445],[11446,11447],[11448,11449],[11450,11451],[11452,11453],[11454,11455],[11456,11457],[11458,11459],[11460,11461],[11462,11463],[11464,11465],[11466,11467],[11468,11469],[11470,11471],[11472,11473],[11474,11475],[11476,11477],[11478,11479],[11480,11481],[11482,11483],[11484,11485],[11486,11487],[11488,11489],[11490,11491],[11499,11500],[11501,11502],[11506,11507],[42560,42561],[42562,42563],[42564,42565],[42566,42567],[42568,42569],[42570,42571],[42572,42573],[42574,42575],[42576,42577],[42578,42579],[42580,42581],[42582,42583],[42584,42585],[42586,42587],[42588,42589],[42590,42591],[42592,42593],[42594,42595],[42596,42597],[42598,42599],[42600,42601],[42602,42603],[42604,42605],[42624,42625],[42626,42627],[42628,42629],[42630,42631],[42632,42633],[42634,42635],[42636,42637],[42638,42639],[42640,42641],[42642,42643],[42644,42645],[42646,42647],[42648,42649],[42650,42651],[42786,42787],[42788,42789],[42790,42791],[42792,42793],[42794,42795],[42796,42797],[42798,42799],[42802,42803],[42804,42805],[42806,42807],[42808,42809],[42810,42811],[42812,42813],[42814,42815],[42816,42817],[42818,42819],[42820,42821],[42822,42823],[42824,42825],[42826,42827],[42828,42829],[42830,42831],[42832,42833],[42834,42835],[42836,42837],[42838,42839],[42840,42841],[42842,42843],[42844,42845],[42846,42847],[42848,42849],[42850,42851],[42852,42853],[42854,42855],[42856,42857],[42858,42859],[42860,42861],[42862,42863],[42873,42874],[42875,42876],[42877,7545],[42878,42879],[42880,42881],[42882,42883],[42884,42885],[42886,42887],[42891,42892],[42893,613],[42896,42897],[42898,42899],[42902,42903],[42904,42905],[42906,42907],[42908,42909],[42910,42911],[42912,42913],[42914,42915],[42916,42917],[42918,42919],[42920,42921],[42922,614],[42923,604],[42924,609],[42925,620],[42926,618],[42928,670],[42929,647],[42930,669],[42931,43859],[42932,42933],[42934,42935],[42936,42937],[42938,42939],[42940,42941],[42942,42943],[42944,42945],[42946,42947],[42948,42900],[42949,642],[42950,7566],[42951,42952],[42953,42954],[42955,612],[42956,42957],[42958,42959],[42960,42961],[42962,42963],[42964,42965],[42966,42967],[42968,42969],[42970,42971],[42972,411],[42997,42998],[43888,5024],[43889,5025],[43890,5026],[43891,5027],[43892,5028],[43893,5029],[43894,5030],[43895,5031],[43896,5032],[43897,5033],[43898,5034],[43899,5035],[43900,5036],[43901,5037],[43902,5038],[43903,5039],[43904,5040],[43905,5041],[43906,5042],[43907,5043],[43908,5044],[43909,5045],[43910,5046],[43911,5047],[43912,5048],[43913,5049],[43914,5050],[43915,5051],[43916,5052],[43917,5053],[43918,5054],[43919,5055],[43920,5056],[43921,5057],[43922,5058],[43923,5059],[43924,5060],[43925,5061],[43926,5062],[43927,5063],[43928,5064],[43929,5065],[43930,5066],[43931,5067],[43932,5068],[43933,5069],[43934,5070],[43935,5071],[43936,5072],[43937,5073],[43938,5074],[43939,5075],[43940,5076],[43941,5077],[43942,5078],[43943,5079],[43944,5080],[43945,5081],[43946,5082],[43947,5083],[43948,5084],[43949,5085],[43950,5086],[43951,5087],[43952,5088],[43953,5089],[43954,5090],[43955,5091],[43956,5092],[43957,5093],[43958,5094],[43959,5095],[43960,5096],[43961,5097],[43962,5098],[43963,5099],[43964,5100],[43965,5101],[43966,5102],[43967,5103],[64261,64262],[65313,65345],[65314,65346],[65315,65347],[65316,65348],[65317,65349],[65318,65350],[65319,65351],[65320,65352],[65321,65353],[65322,65354],[65323,65355],[65324,65356],[65325,65357],[65326,65358],[65327,65359],[65328,65360],[65329,65361],[65330,65362],[65331,65363],[65332,65364],[65333,65365],[65334,65366],[65335,65367],[65336,65368],[65337,65369],[65338,65370],[66560,66600],[66561,66601],[66562,66602],[66563,66603],[66564,66604],[66565,66605],[66566,66606],[66567,66607],[66568,66608],[66569,66609],[66570,66610],[66571,66611],[66572,66612],[66573,66613],[66574,66614],[66575,66615],[66576,66616],[66577,66617],[66578,66618],[66579,66619],[66580,66620],[66581,66621],[66582,66622],[66583,66623],[66584,66624],[66585,66625],[66586,66626],[66587,66627],[66588,66628],[66589,66629],[66590,66630],[66591,66631],[66592,66632],[66593,66633],[66594,66634],[66595,66635],[66596,66636],[66597,66637],[66598,66638],[66599,66639],[66736,66776],[66737,66777],[66738,66778],[66739,66779],[66740,66780],[66741,66781],[66742,66782],[66743,66783],[66744,66784],[66745,66785],[66746,66786],[66747,66787],[66748,66788],[66749,66789],[66750,66790],[66751,66791],[66752,66792],[66753,66793],[66754,66794],[66755,66795],[66756,66796],[66757,66797],[66758,66798],[66759,66799],[66760,66800],[66761,66801],[66762,66802],[66763,66803],[66764,66804],[66765,66805],[66766,66806],[66767,66807],[66768,66808],[66769,66809],[66770,66810],[66771,66811],[66928,66967],[66929,66968],[66930,66969],[66931,66970],[66932,66971],[66933,66972],[66934,66973],[66935,66974],[66936,66975],[66937,66976],[66938,66977],[66940,66979],[66941,66980],[66942,66981],[66943,66982],[66944,66983],[66945,66984],[66946,66985],[66947,66986],[66948,66987],[66949,66988],[66950,66989],[66951,66990],[66952,66991],[66953,66992],[66954,66993],[66956,66995],[66957,66996],[66958,66997],[66959,66998],[66960,66999],[66961,67e3],[66962,67001],[66964,67003],[66965,67004],[68736,68800],[68737,68801],[68738,68802],[68739,68803],[68740,68804],[68741,68805],[68742,68806],[68743,68807],[68744,68808],[68745,68809],[68746,68810],[68747,68811],[68748,68812],[68749,68813],[68750,68814],[68751,68815],[68752,68816],[68753,68817],[68754,68818],[68755,68819],[68756,68820],[68757,68821],[68758,68822],[68759,68823],[68760,68824],[68761,68825],[68762,68826],[68763,68827],[68764,68828],[68765,68829],[68766,68830],[68767,68831],[68768,68832],[68769,68833],[68770,68834],[68771,68835],[68772,68836],[68773,68837],[68774,68838],[68775,68839],[68776,68840],[68777,68841],[68778,68842],[68779,68843],[68780,68844],[68781,68845],[68782,68846],[68783,68847],[68784,68848],[68785,68849],[68786,68850],[68944,68976],[68945,68977],[68946,68978],[68947,68979],[68948,68980],[68949,68981],[68950,68982],[68951,68983],[68952,68984],[68953,68985],[68954,68986],[68955,68987],[68956,68988],[68957,68989],[68958,68990],[68959,68991],[68960,68992],[68961,68993],[68962,68994],[68963,68995],[68964,68996],[68965,68997],[71840,71872],[71841,71873],[71842,71874],[71843,71875],[71844,71876],[71845,71877],[71846,71878],[71847,71879],[71848,71880],[71849,71881],[71850,71882],[71851,71883],[71852,71884],[71853,71885],[71854,71886],[71855,71887],[71856,71888],[71857,71889],[71858,71890],[71859,71891],[71860,71892],[71861,71893],[71862,71894],[71863,71895],[71864,71896],[71865,71897],[71866,71898],[71867,71899],[71868,71900],[71869,71901],[71870,71902],[71871,71903],[93760,93792],[93761,93793],[93762,93794],[93763,93795],[93764,93796],[93765,93797],[93766,93798],[93767,93799],[93768,93800],[93769,93801],[93770,93802],[93771,93803],[93772,93804],[93773,93805],[93774,93806],[93775,93807],[93776,93808],[93777,93809],[93778,93810],[93779,93811],[93780,93812],[93781,93813],[93782,93814],[93783,93815],[93784,93816],[93785,93817],[93786,93818],[93787,93819],[93788,93820],[93789,93821],[93790,93822],[93791,93823],[93856,93883],[93857,93884],[93858,93885],[93859,93886],[93860,93887],[93861,93888],[93862,93889],[93863,93890],[93864,93891],[93865,93892],[93866,93893],[93867,93894],[93868,93895],[93869,93896],[93870,93897],[93871,93898],[93872,93899],[93873,93900],[93874,93901],[93875,93902],[93876,93903],[93877,93904],[93878,93905],[93879,93906],[93880,93907],[125184,125218],[125185,125219],[125186,125220],[125187,125221],[125188,125222],[125189,125223],[125190,125224],[125191,125225],[125192,125226],[125193,125227],[125194,125228],[125195,125229],[125196,125230],[125197,125231],[125198,125232],[125199,125233],[125200,125234],[125201,125235],[125202,125236],[125203,125237],[125204,125238],[125205,125239],[125206,125240],[125207,125241],[125208,125242],[125209,125243],[125210,125244],[125211,125245],[125212,125246],[125213,125247],[125214,125248],[125215,125249],[125216,125250],[125217,125251]]),Xue={},Jue={},Yue=_Y;Jue.UNICODE_SET=Yue().addRange(0,1114111),Jue.UNICODE_IV_SET=Yue(215,257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,307,309,314,316,318,320,322,324,326,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,382,384,387,389,392,402,405,414,417,419,421,424,429,432,436,438,454,457,460,462,464,466,468,470,472,474,479,481,483,485,487,489,491,493,499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,572,578,583,585,587,589,881,903,907,909,912,930,983,985,987,989,991,993,995,997,999,1001,1003,1005,1007,1014,1016,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,4294,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,8026,8028,8030,8125,11361,11368,11370,11372,11377,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11500,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42787,42789,42791,42793,42795,42797,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42874,42876,42879,42881,42883,42885,42892,42897,42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42957,42959,42961,42963,42965,42967,42969,42971,66939,66955,66963).addRange(0,64).addRange(91,180).addRange(182,191).addRange(223,255).addRange(303,305).addRange(311,312).addRange(328,329).addRange(396,397).addRange(409,411).addRange(426,427).addRange(441,443).addRange(445,451).addRange(476,477).addRange(495,496).addRange(563,569).addRange(575,576).addRange(591,836).addRange(838,879).addRange(883,885).addRange(887,894).addRange(896,901).addRange(940,961).addRange(963,974).addRange(978,980).addRange(1010,1011).addRange(1019,1020).addRange(1072,1119).addRange(1153,1161).addRange(1230,1231).addRange(1327,1328).addRange(1367,4255).addRange(4296,4300).addRange(4302,5111).addRange(5118,7295).addRange(7306,7311).addRange(7355,7356).addRange(7360,7679).addRange(7829,7834).addRange(7836,7837).addRange(7935,7943).addRange(7952,7959).addRange(7966,7975).addRange(7984,7991).addRange(8e3,8007).addRange(8014,8024).addRange(8032,8039).addRange(8048,8071).addRange(8080,8087).addRange(8096,8103).addRange(8112,8119).addRange(8127,8135).addRange(8141,8146).addRange(8148,8151).addRange(8156,8162).addRange(8164,8167).addRange(8173,8183).addRange(8189,8485).addRange(8487,8489).addRange(8492,8497).addRange(8499,8543).addRange(8560,8578).addRange(8580,9397).addRange(9424,11263).addRange(11312,11359).addRange(11365,11366).addRange(11379,11380).addRange(11382,11389).addRange(11491,11498).addRange(11502,11505).addRange(11507,42559).addRange(42605,42623).addRange(42651,42785).addRange(42799,42801).addRange(42863,42872).addRange(42887,42890).addRange(42894,42895).addRange(42899,42901).addRange(42973,42996).addRange(42998,43887).addRange(43968,64260).addRange(64262,65312).addRange(65339,66559).addRange(66600,66735).addRange(66772,66927).addRange(66966,68735).addRange(68787,68943).addRange(68966,71839).addRange(71872,93759).addRange(93792,93855).addRange(93881,125183).addRange(125218,1114111);var $ue=_Y,Que=Jue.UNICODE_IV_SET;Xue.REGULAR=new Map([["d",$ue().addRange(48,57)],["D",$ue().addRange(0,47).addRange(58,65535)],["s",$ue(32,160,5760,8239,8287,12288,65279).addRange(9,13).addRange(8192,8202).addRange(8232,8233)],["S",$ue().addRange(0,8).addRange(14,31).addRange(33,159).addRange(161,5759).addRange(5761,8191).addRange(8203,8231).addRange(8234,8238).addRange(8240,8286).addRange(8288,12287).addRange(12289,65278).addRange(65280,65535)],["w",$ue(95).addRange(48,57).addRange(65,90).addRange(97,122)],["W",$ue(96).addRange(0,47).addRange(58,64).addRange(91,94).addRange(123,65535)]]),Xue.UNICODE=new Map([["d",$ue().addRange(48,57)],["D",$ue().addRange(0,47).addRange(58,1114111)],["s",$ue(32,160,5760,8239,8287,12288,65279).addRange(9,13).addRange(8192,8202).addRange(8232,8233)],["S",$ue().addRange(0,8).addRange(14,31).addRange(33,159).addRange(161,5759).addRange(5761,8191).addRange(8203,8231).addRange(8234,8238).addRange(8240,8286).addRange(8288,12287).addRange(12289,65278).addRange(65280,1114111)],["w",$ue(95).addRange(48,57).addRange(65,90).addRange(97,122)],["W",$ue(96).addRange(0,47).addRange(58,64).addRange(91,94).addRange(123,1114111)]]),Xue.UNICODE_IGNORE_CASE=new Map([["d",$ue().addRange(48,57)],["D",$ue().addRange(0,47).addRange(58,1114111)],["s",$ue(32,160,5760,8239,8287,12288,65279).addRange(9,13).addRange(8192,8202).addRange(8232,8233)],["S",$ue().addRange(0,8).addRange(14,31).addRange(33,159).addRange(161,5759).addRange(5761,8191).addRange(8203,8231).addRange(8234,8238).addRange(8240,8286).addRange(8288,12287).addRange(12289,65278).addRange(65280,1114111)],["w",$ue(95,383,8490).addRange(48,57).addRange(65,90).addRange(97,122)],["W",$ue(96).addRange(0,47).addRange(58,64).addRange(91,94).addRange(123,382).addRange(384,8489).addRange(8491,1114111)]]),Xue.UNICODESET_IGNORE_CASE=new Map([["d",$ue().addRange(48,57)],["D",Que.clone().remove($ue().addRange(48,57))],["s",$ue(32,160,5760,8239,8287,12288,65279).addRange(9,13).addRange(8192,8202).addRange(8232,8233)],["S",Que.clone().remove($ue(32,160,5760,8239,8287,12288,65279).addRange(9,13).addRange(8192,8202).addRange(8232,8233))],["w",$ue(95).addRange(48,57).addRange(97,122)],["W",Que.clone().remove($ue(95).addRange(48,57).addRange(97,122))]]);var Zue=Nue.generate,epe=Mue.parse,tpe=_Y,rpe=Gue,ape=Vue,npe=Hue,spe=zue,ope=Kue,ipe=Xue,dpe=Jue.UNICODE_SET,cpe=Jue.UNICODE_IV_SET;var lpe=/[\\^$.*+?()[\]{}|]/g,upe=tpe().addRange(65536,1114111),ppe=tpe().add(10,13,8232,8233),fpe=dpe.clone().remove(ppe),gpe=function(e,t,r,a){if(t){if(r){var n=ipe.UNICODE_IGNORE_CASE.get(e);return a?ipe.UNICODESET_IGNORE_CASE.get(e):n}return ipe.UNICODE.get(e)}return ipe.REGULAR.get(e)},mpe=function(e,t){var r=t?e+"/"+t:"Binary_Property/"+e;try{return function(e){function t(t){var r=Iue(t,e);if(null!==r)return _ue()[r]();throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}return t.resolve=function(t){var r=Iue(t,e);if(null!==r)return r;throw new Error("Babel internal error")},t}("/node_modules/regexpu-core")("regenerate-unicode-properties/"+r+".js")}catch(r){throw new Error("Failed to recognize value `"+t+"` for property `"+e+"`.")}},ype=function(e,t,r){var a,n=e.split("="),s=n[0];if(1==n.length)a=function(e){try{var t="General_Category",r=ape(t,e);return mpe(t,r)}catch(e){}try{return mpe("Property_of_Strings",e)}catch(e){}var a=rpe(e);return mpe(a)}(s);else{var o=rpe(s),i=ape(o,n[1]);a=mpe(o,i)}if(t){if(a.strings)throw new Error("Cannot negate Unicode property of strings");return{characters:(r?cpe:dpe).clone().remove(a.characters),strings:new Set}}return{characters:a.characters.clone(),strings:a.strings?new Set(a.strings.map(function(e){return e.replace(lpe,"\\$&")})):new Set}},hpe=function(e,t,r,a){var n=ype(e,t,r),s=Ppe(),o=a?tpe(n.characters.toArray().map(function(e){return Spe(e)})):n.characters,d=Rpe();if(d)for(var c,l=i(o.toArray());!(c=l()).done;){var u=c.value,p=Epe(u,d);p&&o.add(p)}return s.singleChars=o,n.strings.size>0&&(s.longStrings=n.strings,s.maybeIncludesStrings=!0),s},bpe=0,vpe=1,xpe=2;function Rpe(){var e=bpe;return!0===Dpe.modifiersData.i?Dpe.transform.modifiers&&(e|=vpe,(Dpe.flags.unicode||Dpe.flags.unicodeSets)&&(e|=xpe)):void 0===Dpe.modifiersData.i&&Dpe.transform.unicodeFlag&&Dpe.flags.ignoreCase&&(e|=xpe),e}tpe.prototype.iuAddRange=function(e,t,r){do{var a=Epe(e,r);a&&this.add(a)}while(++e<=t);return this},tpe.prototype.iuRemoveRange=function(e,t,r){do{var a=Epe(e,r);a&&this.remove(a)}while(++e<=t);return this};var jpe=function(e,t){var r=epe(t,Dpe.useUnicodeFlag?"u":"",{lookbehind:!0,namedGroups:!0,unicodePropertyEscape:!0,unicodeSet:!0,modifiers:!0});switch(r.type){case"characterClass":case"group":case"value":break;default:r=wpe(r,t)}Object.assign(e,r)},wpe=function(e,t){return{type:"group",behavior:"ignore",body:[e],raw:"(?:"+t+")"}},Epe=function(e,t){if(t===bpe)return!1;var r=(t&xpe?npe.get(e):void 0)||[];if("number"==typeof r&&(r=[r]),t&vpe)for(var a,n=i([e].concat(r));!(a=n()).done;){var s=a.value;s>=65&&s<=90?r.push(s+32):s>=97&&s<=122?r.push(s-32):r=r.concat(spe.get(s)||[])}return 0!=r.length&&r},Spe=function(e){return e<=127?e>=65&&e<=90?e+32:e:ope.get(e)||e},Tpe=function(e){switch(e){case"union":return{single:function(e,t){e.singleChars.add(t)},regSet:function(e,t){e.singleChars.add(t)},range:function(e,t,r){e.singleChars.addRange(t,r)},iuRange:function(e,t,r,a){e.singleChars.iuAddRange(t,r,a)},nested:function(e,t){e.singleChars.add(t.singleChars);for(var r,a=i(t.longStrings);!(r=a()).done;){var n=r.value;e.longStrings.add(n)}t.maybeIncludesStrings&&(e.maybeIncludesStrings=!0)}};case"union-negative":var t=function(e,t){e.singleChars=dpe.clone().remove(t).add(e.singleChars)};return{single:function(e,t){var r=dpe.clone();e.singleChars=e.singleChars.contains(t)?r:r.remove(t)},regSet:t,range:function(e,t,r){e.singleChars=dpe.clone().removeRange(t,r).add(e.singleChars)},iuRange:function(e,t,r,a){e.singleChars=dpe.clone().iuRemoveRange(t,r,a).add(e.singleChars)},nested:function(e,r){if(t(e,r.singleChars),r.maybeIncludesStrings)throw new Error("ASSERTION ERROR")}};case"intersection":var r=function(e,t){e.first?e.singleChars=t:e.singleChars.intersection(t)};return{single:function(e,t){e.singleChars=e.first||e.singleChars.contains(t)?tpe(t):tpe(),e.longStrings.clear(),e.maybeIncludesStrings=!1},regSet:function(e,t){r(e,t),e.longStrings.clear(),e.maybeIncludesStrings=!1},range:function(e,t,r){e.first?e.singleChars.addRange(t,r):e.singleChars.intersection(tpe().addRange(t,r)),e.longStrings.clear(),e.maybeIncludesStrings=!1},iuRange:function(e,t,r,a){e.first?e.singleChars.iuAddRange(t,r,a):e.singleChars.intersection(tpe().iuAddRange(t,r,a)),e.longStrings.clear(),e.maybeIncludesStrings=!1},nested:function(e,t){if(r(e,t.singleChars),e.first)e.longStrings=t.longStrings,e.maybeIncludesStrings=t.maybeIncludesStrings;else{for(var a,n=i(e.longStrings);!(a=n()).done;){var s=a.value;t.longStrings.has(s)||e.longStrings.delete(s)}t.maybeIncludesStrings||(e.maybeIncludesStrings=!1)}}};case"subtraction":var a=function(e,t){e.first?e.singleChars.add(t):e.singleChars.remove(t)};return{single:function(e,t){e.first?e.singleChars.add(t):e.singleChars.remove(t)},regSet:a,range:function(e,t,r){e.first?e.singleChars.addRange(t,r):e.singleChars.removeRange(t,r)},iuRange:function(e,t,r,a){e.first?e.singleChars.iuAddRange(t,r,a):e.singleChars.iuRemoveRange(t,r,a)},nested:function(e,t){if(a(e,t.singleChars),e.first)e.longStrings=t.longStrings,e.maybeIncludesStrings=t.maybeIncludesStrings;else for(var r,n=i(e.longStrings);!(r=n()).done;){var s=r.value;t.longStrings.has(s)&&e.longStrings.delete(s)}}};default:throw new Error("Unknown set action: "+characterClassItem.kind)}},Ppe=function(){return{transformed:Dpe.transform.unicodeFlag,singleChars:tpe(),longStrings:new Set,hasEmptyString:!1,first:!0,maybeIncludesStrings:!1}},Ape=function(e,t){var r=Epe(e,t);return r?[e].concat(b(r)):[e]},kpe=function(e,t,r,a){for(var n,s=Ppe(),o=i(e.strings);!(n=o()).done;){var d=n.value;if(1===d.characters.length){var c=a?Spe(d.characters[0].codePoint):d.characters[0].codePoint;Ape(c,r).forEach(function(e){s.singleChars.add(e)})}else{var l="";if(r)for(var u,p=i(d.characters);!(u=p()).done;){var f=u.value,g=a?Spe(f.codePoint):f.codePoint;l+=tpe(Ape(g,r)).toString(t)}else for(var m,y=i(d.characters);!(m=y()).done;){var h=m.value,b=a?Spe(h.codePoint):h.codePoint;b!==h.codePoint?l+=tpe(b).toString(t):l+=Zue(h)}s.longStrings.add(l),s.maybeIncludesStrings=!0}}return s},Cpe=function(e,t,r){var a,n,s=Ppe(),o=Rpe();switch(e.kind){case"union":a=Tpe("union"),n=Tpe("union-negative");break;case"intersection":a=Tpe("intersection"),n=Tpe("subtraction"),Dpe.transform.unicodeSetsFlag&&(s.transformed=!0),Dpe.isIgnoreCaseMode&&(r=!0);break;case"subtraction":a=Tpe("subtraction"),n=Tpe("intersection"),Dpe.transform.unicodeSetsFlag&&(s.transformed=!0),Dpe.isIgnoreCaseMode&&(r=!0);break;default:throw new Error("Unknown character class kind: "+e.kind)}for(var d,c=i(e.body);!(d=c()).done;){var l=d.value;switch(l.type){case"value":var u=r?Spe(l.codePoint):l.codePoint,p=Ape(u,o);a.regSet(s,tpe(p)),p.length>1&&(s.transformed=!0);break;case"characterClassRange":var f=l.min.codePoint,g=l.max.codePoint;if(r){for(var m=[],y=f;y<=g;y++)m.push(Spe(y));a.regSet(s,tpe(m))}else a.range(s,f,g);o&&(a.iuRange(s,f,g,o),s.transformed=!0);break;case"characterClassEscape":a.regSet(s,gpe(l.value,Dpe.flags.unicode||Dpe.flags.unicodeSets,Dpe.flags.ignoreCase,r));break;case"unicodePropertyEscape":var h=hpe(l.value,l.negative,Dpe.flags.unicodeSets&&Dpe.isIgnoreCaseMode,r);a.nested(s,h),s.transformed=s.transformed||Dpe.transform.unicodePropertyEscapes||Dpe.transform.unicodeSetsFlag&&(h.maybeIncludesStrings||"union"!==e.kind||l.negative);break;case"characterClass":var b=l.negative?n:a,v=Cpe(l,t,r);b.nested(s,v),s.transformed=!0;break;case"classStrings":a.nested(s,kpe(l,t,o,r)),s.transformed=!0;break;default:throw new Error("Unknown term type: "+l.type)}s.first=!1}if(e.negative&&s.maybeIncludesStrings)throw new SyntaxError("Cannot negate set containing strings");return s},_pe=function(e,t,r){void 0===r&&(r=Cpe(e,t));var a=e.negative,n=r,s=n.singleChars,o=n.transformed,i=n.longStrings;if(o){var d=function(e){var t=e.data;return t.length>=1&&t[t.length-1]>=65536}(s),c=s.toString(Object.assign({},t,{bmpOnly:d}));if(a)if(Dpe.useUnicodeFlag)jpe(e,"[^"+("["===c[0]?c.slice(1,-1):c)+"]");else if(Dpe.flags.unicode||Dpe.flags.unicodeSets)if(Dpe.flags.ignoreCase){var l=s.clone().intersection(upe),u=s.clone().remove(l).addRange(55296,57343).toString({bmpOnly:!0}),p=upe.clone().remove(l).toString(t);jpe(e,"(?!"+u+")[^]|"+p)}else{var f=dpe.clone().remove(s);jpe(e,f.toString(t))}else jpe(e,"(?!"+c+")[^]");else{var g=i.has(""),m=Array.from(i).sort(function(e,t){return t.length-e.length});"[]"===c&&0!==i.size||m.splice(m.length-(g?1:0),0,c),jpe(e,m.join("|"))}}return e},Ipe=function(e,t,r){switch(e.type){case"dot":Dpe.transform.unicodeFlag?jpe(e,(b=Dpe.isDotAllMode,b?dpe:fpe).toString(t)):(null!=Dpe.modifiersData.s?Dpe.modifiersData.s&&Dpe.transform.modifiers:Dpe.transform.dotAllFlag)&&jpe(e,"[^]");break;case"characterClass":e=_pe(e,t);break;case"unicodePropertyEscape":var a=hpe(e.value,e.negative,Dpe.flags.unicodeSets&&Dpe.isIgnoreCaseMode);if(a.maybeIncludesStrings){if(!Dpe.flags.unicodeSets)throw new Error("Properties of strings are only supported when using the unicodeSets (v) flag.");Dpe.transform.unicodeSetsFlag&&(a.transformed=!0,e=_pe(e,t,a))}else(Dpe.transform.unicodePropertyEscapes||Rpe())&&jpe(e,a.singleChars.toString(t));break;case"characterClassEscape":Dpe.transform.unicodeFlag&&jpe(e,gpe(e.value,!0,Dpe.flags.ignoreCase).toString(t));break;case"group":if("normal"==e.behavior&&r.lastIndex++,e.name){var n=e.name.value;if(r.namesConflicts[n])throw new Error("Group '"+n+"' has already been defined in this context.");r.namesConflicts[n]=!0,Dpe.transform.namedGroups&&delete e.name;var s=r.lastIndex;r.names[n]||(r.names[n]=[]),r.names[n].push(s),r.onNamedGroup&&r.onNamedGroup.call(null,n,s),r.unmatchedReferences[n]&&delete r.unmatchedReferences[n]}if(e.modifierFlags)return function(e,t,r){for(var a,n=e.modifierFlags.enabling,s=e.modifierFlags.disabling,o=Object.assign({},Dpe.modifiersData),d=i(n);!(a=d()).done;){var c=a.value;Dpe.modifiersData[c]=!0}for(var l,u=i(s);!(l=u()).done;){var p=l.value;Dpe.modifiersData[p]=!1}return Dpe.transform.modifiers&&(delete e.modifierFlags,e.behavior="ignore"),e.body=e.body.map(function(e){return Ipe(e,t,r)}),Dpe.modifiersData=o,e}(e,t,r);case"quantifier":e.body=e.body.map(function(e){return Ipe(e,t,r)});break;case"disjunction":var o=r.namesConflicts;e.body=e.body.map(function(e){return r.namesConflicts=Object.create(o),Ipe(e,t,r)});break;case"alternative":e.body=(m=e.body,y=function(e){var a=Ipe(e,t,r);return"alternative"===a.type?a.body:a},h=[],m.forEach(function(e){var t=y(e);Array.isArray(t)?h.push.apply(h,t):h.push(t)}),h);break;case"value":var d=e.codePoint,c=Rpe(),l=Ape(d,c);if(1===l.length&&"symbol"===e.kind&&d>=32&&d<=126)break;var u=tpe(l);jpe(e,u.toString(t));break;case"reference":if(e.name){var p=e.name.value,f=r.names[p];if(f||(r.unmatchedReferences[p]=!0),Dpe.transform.namedGroups){if(f){var g=f.map(function(e){return{type:"reference",matchIndex:e,raw:"\\"+e}});return 1===g.length?g[0]:{type:"alternative",body:g,raw:g.map(function(e){return e.raw}).join("")}}return{type:"group",behavior:"ignore",body:[],raw:"(?:)"}}}break;case"anchor":Dpe.modifiersData.m&&Dpe.transform.modifiers&&("start"==e.kind?jpe(e,"(?:^|(?<="+ppe.toString()+"))"):"end"==e.kind&&jpe(e,"(?:$|(?="+ppe.toString()+"))"));case"empty":break;default:throw new Error("Unknown term type: "+e.type)}var m,y,h,b;return e},Dpe={flags:{ignoreCase:!1,unicode:!1,unicodeSets:!1,dotAll:!1,multiline:!1},transform:{dotAllFlag:!1,unicodeFlag:!1,unicodeSetsFlag:!1,unicodePropertyEscapes:!1,namedGroups:!1,modifiers:!1},modifiersData:{i:void 0,s:void 0,m:void 0},get useUnicodeFlag(){return(this.flags.unicode||this.flags.unicodeSets)&&!this.transform.unicodeFlag},get isDotAllMode(){return void 0!==this.modifiersData.s?this.modifiersData.s:this.flags.dotAll},get isIgnoreCaseMode(){return void 0!==this.modifiersData.i?this.modifiersData.i:this.flags.ignoreCase}},Ope=function(e,t){return!!e&&e.includes(t)},Npe=function(e,t){return!!e&&"transform"===e[t]},Bpe=function(e,t,r){!function(e){if(e)for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t],n=e[a];switch(a){case"dotAllFlag":case"unicodeFlag":case"unicodePropertyEscapes":case"unicodeSetsFlag":case"namedGroups":if(null!=n&&!1!==n&&"transform"!==n)throw new Error("."+a+" must be false (default) or 'transform'.");break;case"modifiers":if(null!=n&&!1!==n&&"parse"!==n&&"transform"!==n)throw new Error("."+a+" must be false (default), 'parse' or 'transform'.");break;case"onNamedGroup":case"onNewFlags":if(null!=n&&"function"!=typeof n)throw new Error("."+a+" must be a function.");break;default:throw new Error("."+a+" is not a valid regexpu-core option.")}}}(r),Dpe.flags.unicode=Ope(t,"u"),Dpe.flags.unicodeSets=Ope(t,"v"),Dpe.flags.ignoreCase=Ope(t,"i"),Dpe.flags.dotAll=Ope(t,"s"),Dpe.flags.multiline=Ope(t,"m"),Dpe.transform.dotAllFlag=Dpe.flags.dotAll&&Npe(r,"dotAllFlag"),Dpe.transform.unicodeFlag=(Dpe.flags.unicode||Dpe.flags.unicodeSets)&&Npe(r,"unicodeFlag"),Dpe.transform.unicodeSetsFlag=Dpe.flags.unicodeSets&&Npe(r,"unicodeSetsFlag"),Dpe.transform.unicodePropertyEscapes=(Dpe.flags.unicode||Dpe.flags.unicodeSets)&&(Npe(r,"unicodeFlag")||Npe(r,"unicodePropertyEscapes")),Dpe.transform.namedGroups=Npe(r,"namedGroups"),Dpe.transform.modifiers=Npe(r,"modifiers"),Dpe.modifiersData.i=void 0,Dpe.modifiersData.s=void 0,Dpe.modifiersData.m=void 0;var a={hasUnicodeFlag:Dpe.useUnicodeFlag,bmpOnly:!Dpe.flags.unicode&&!Dpe.flags.unicodeSets},n={onNamedGroup:r&&r.onNamedGroup,lastIndex:0,names:Object.create(null),namesConflicts:Object.create(null),unmatchedReferences:Object.create(null)},s=epe(e,t,{modifiers:!0,unicodePropertyEscape:!0,unicodeSet:!0,namedGroups:!0,lookbehind:!0});if(Dpe.transform.modifiers&&/\(\?[a-z]*-[a-z]+:/.test(e)){for(var o,d=Object.create(null),c=[s];null!=(o=c.pop());)if(Array.isArray(o))Array.prototype.push.apply(c,o);else if("object"==typeof o&&null!=o)for(var l=0,u=Object.keys(o);l<u.length;l++){var p=u[l],f=o[p];if("modifierFlags"==p)for(var g,m=i(f.disabling);!(g=m()).done;){d[g.value]=!0}else"object"==typeof f&&null!=f&&c.push(f)}d.i&&(Dpe.modifiersData.i=Dpe.flags.ignoreCase),d.m&&(Dpe.modifiersData.m=Dpe.flags.multiline),d.s&&(Dpe.modifiersData.s=Dpe.flags.dotAll)}Ipe(s,a,n),function(e){var t=Object.keys(e.unmatchedReferences);if(t.length>0)throw new Error("Unknown group names: "+t)}(n);var y=r&&r.onNewFlags;if(y){var h=t.split("").filter(function(e){return!Dpe.modifiersData[e]}).join("");Dpe.transform.unicodeSetsFlag&&(h=h.replace("v","u")),Dpe.transform.unicodeFlag&&(h=h.replace("u","")),Dpe.transform.dotAllFlag&&(h=h.replace("s","")),y(h)}return Zue(s)};var Mpe=(void z.env.BABEL_8_BREAKING,FO()),Fpe=Object.freeze({unicodeFlag:1,dotAllFlag:2,unicodePropertyEscape:4,namedCaptureGroups:8,unicodeSetsFlag_syntax:16,unicodeSetsFlag:32,duplicateNamedCaptureGroups:64,modifiers:128}),Lpe="@babel/plugin-regexp-features/featuresKey",Upe="@babel/plugin-regexp-features/runtimeKey";function qpe(e,t){return e|t}function Gpe(e,t){return!!(e&t)}var Wpe="@babel/plugin-regexp-features/version";function Vpe(e){var t=e.name,r=e.feature,a=e.options,n=void 0===a?{}:a,s=e.manipulateOptions;return{name:t,manipulateOptions:void 0===s?function(){}:s,pre:function(){var e,t=this.file,a=null!=(e=t.get(Lpe))?e:0,s=qpe(a,Fpe[r]),o=n.useUnicodeFlag,i=n.runtime;if(!1===o&&(s=qpe(s,Fpe.unicodeFlag)),s!==a&&t.set(Lpe,s),void 0!==i){if(t.has(Upe)&&t.get(Upe)!==i&&Gpe(s,Fpe.duplicateNamedCaptureGroups))throw new Error("The 'runtime' option must be the same for '@babel/plugin-transform-named-capturing-groups-regex' and '@babel/plugin-transform-duplicate-named-capturing-groups-regex'.");"namedCaptureGroups"===r&&i&&t.has(Upe)||t.set(Upe,i)}"number"!=typeof t.get(Wpe)&&t.get(Wpe)&&!Mpe.lt(t.get(Wpe),"7.28.5")||t.set(Wpe,"7.28.5")},visitor:{RegExpLiteral:function(e){var t,r=e.node,a=this.file,n=a.get(Lpe),s=null==(t=a.get(Upe))||t,o=function(e,t){var r=function(e){return!!Gpe(t,Fpe[e])&&"transform"};return{unicodeFlag:r("unicodeFlag"),unicodeSetsFlag:r("unicodeSetsFlag"),dotAllFlag:r("dotAllFlag"),unicodePropertyEscapes:r("unicodePropertyEscape"),namedGroups:r("namedCaptureGroups")||function(){if(!r("duplicateNamedCaptureGroups"))return!1;for(var t,a=/\(\?<([^>]+)(>|$)/g,n=new Set;(t=a.exec(e))&&t[2];n.add(t[1]))if(n.has(t[1]))return"transform";return!1}(),onNamedGroup:function(){},modifiers:r("modifiers")}}(r.pattern,n);if(!function(e,t){var r=e.flags,a=e.pattern;if(r.includes("v")&&"transform"===t.unicodeSetsFlag)return!1;if(r.includes("u")){if("transform"===t.unicodeFlag)return!1;if("transform"===t.unicodePropertyEscapes&&/\\p\{/i.test(a))return!1}return!(r.includes("s")&&"transform"===t.dotAllFlag||"transform"===t.namedGroups&&/\(\?<(?![=!])/.test(a)||"transform"===t.modifiers&&/\(\?[\w-]+:/.test(a))}(r,o)){var i,d={__proto__:null};if("transform"===o.namedGroups&&(o.onNamedGroup=function(e,t){var r=d[e];"number"==typeof r?d[e]=[r,t]:Array.isArray(r)?r.push(t):d[e]=t}),"transform"===o.modifiers&&(o.onNewFlags=function(e){i=e}),r.pattern=Bpe(r.pattern,r.flags,o),"transform"===o.namedGroups&&Object.keys(d).length>0&&s&&!function(e){return e.parentPath.isMemberExpression({object:e.node,computed:!1})&&e.parentPath.get("property").isIdentifier({name:"test"})}(e)){var c=gs(this.addHelper("wrapRegExp"),[r,ky(d)]);DH(c),e.replaceWith(c)}r.flags=function(e,t){return"transform"===e.unicodeSetsFlag&&(t=t.replace("v","u")),"transform"===e.unicodeFlag&&(t=t.replace("u","")),"transform"===e.dotAllFlag&&(t=t.replace("s","")),t}(o,null!=i?i:r.flags)}}}}}var Hpe,zpe=function(e,t){e.assertVersion("*");var r=t.runtime;if(void 0!==r&&"boolean"!=typeof r)throw new Error("The 'runtime' option must be boolean");return Vpe({name:"transform-duplicate-named-capturing-groups-regex",feature:"duplicateNamedCaptureGroups",options:{runtime:r}})},Kpe=new Set(["commonjs","amd","systemjs"]),Xpe=function(e){return e.assertVersion("*"),{name:"transform-dynamic-import",manipulateOptions:function(e,t){return t.plugins.push("dynamicImport")},pre:function(){this.file.set("@babel/plugin-proposal-dynamic-import","7.27.1")},visitor:{Program:function(){var e=this.file.get("@babel/plugin-transform-modules-*");if(!Kpe.has(e))throw new Error("@babel/plugin-transform-dynamic-import depends on a modules\ntransform plugin. Supported plugins are:\n - @babel/plugin-transform-modules-commonjs ^7.4.0\n - @babel/plugin-transform-modules-amd ^7.4.0\n - @babel/plugin-transform-modules-systemjs ^7.4.0\n\nIf you are using Webpack or Rollup and thus don't want\nBabel to transpile your imports and exports, you can use\nthe @babel/plugin-syntax-dynamic-import plugin and let your\nbundler handle dynamic imports.\n")}}}},Jpe=function(e){return e.assertVersion("*"),{name:"proposal-export-default-from",manipulateOptions:function(e,t){return t.plugins.push("exportDefaultFrom")},visitor:{ExportNamedDeclaration:function(e){var t=e.node,r=t.specifiers,a=t.source;if(Nt(r[0])){var n=r.shift().exported;r.every(function(e){return Le(e)})?r.unshift(fo(Ps("default"),n)):e.insertBefore(po(null,[fo(Ps("default"),n)],sm(a)))}}}}},Ype=function(e){return e.assertVersion("*"),{name:"transform-export-namespace-from",manipulateOptions:function(e,t){return t.plugins.push("exportNamespaceFrom")},visitor:{ExportNamedDeclaration:function(e){var t,r=e.node,a=e.scope,n=r.specifiers,s=Nt(n[0])?1:0;if(rt(n[s])){var o=[];1===s&&o.push(po(null,[n.shift()],r.source));var i=n.shift().exported,d=a.generateUidIdentifier(null!=(t=i.name)?t:i.value);o.push(mo([ho(d)],sm(r.source)),po(null,[fo(sm(d),i)])),r.specifiers.length>=1&&o.push(r);var c=y(e.replaceWithMultiple(o),1)[0];e.scope.registerDeclaration(c)}}}}},$pe=function(e){function t(e,t){var r=function(e){return $t(e.object)?e.object:e.callee.object}(e);return t.isStatic(r)&&(Je(r)?{type:"ThisExpression"}:r)}function r(e,r){var a=t(e,r);if(a)return sm(a);var n=function(e){var t=e.path.getData("functionBind");return t?sm(t):(t=e.generateDeclaredUidIdentifier("context"),e.path.setData("functionBind",t))}(r);return e.object?e.callee=Vs([is("=",n,e.object),e.callee]):me(e.callee)&&(e.callee.object=is("=",n,e.callee.object)),sm(n)}return e.assertVersion("*"),{name:"proposal-function-bind",manipulateOptions:function(e,t){return t.plugins.push("functionBind")},visitor:{CallExpression:function(e){var t=e.node,a=e.scope,n=t.callee;if(Ot(n)){var s=r(n,a);t.callee=Bs(n.callee,Ps("call")),t.arguments.unshift(s)}},BindExpression:function(e){var t=e.node,a=r(t,e.scope);e.replaceWith(gs(Bs(t.callee,Ps("bind")),[a]))}}}},Qpe=function(e){e.assertVersion("*");var t=function(e){return ie(e.meta,{name:"function"})&&ie(e.property,{name:"sent"})},r={Function:function(e){e.skip()},YieldExpression:function(e){(function(e,t){return $(e)&&ie(e.left,{name:t})})(e.parent,this.sentId)||e.replaceWith(is("=",Ps(this.sentId),e.node))},MetaProperty:function(e){t(e.node)&&e.replaceWith(Ps(this.sentId))}};return{name:"proposal-function-sent",manipulateOptions:function(e,t){return t.plugins.push("functionSent")},visitor:{MetaProperty:function(e,a){if(t(e.node)){var n=e.getFunctionParent();if(!n.node.generator)throw new Error("Parent generator function not found");var s=e.scope.generateUid("function.sent");n.traverse(r,{sentId:s}),n.node.body.body.unshift(Zs("let",[eo(Ps(s),Ao())])),_H(n,a.addHelper("skipFirstGeneratorNext"))}}}}},Zpe=function(e){e.assertVersion("*");var t=/(\\*)([\u2028\u2029])/g;function r(e,t,r){return t.length%2==1?e:t+"\\u"+r.charCodeAt(0).toString(16)}return{name:"transform-json-strings",manipulateOptions:function(e,t){return t.plugins.push("jsonStrings")},visitor:{"DirectiveLiteral|StringLiteral":function(e){var a=e.node.extra;null!=a&&a.raw&&(a.raw=a.raw.replace(t,r))}}}},efe=function(e){return e.assertVersion("*"),{name:"transform-logical-assignment-operators",manipulateOptions:function(e,t){return t.plugins.push("logicalAssignment")},visitor:{AssignmentExpression:function(e){var t=e.node,r=e.scope,a=t.operator,n=t.left,s=t.right,o=a.slice(0,-1);if(da.includes(o)){var i=sm(n);if(me(n)){var d=n.object,c=n.property,l=n.computed,u=r.maybeGenerateMemoised(d);if(u&&(n.object=u,i.object=is("=",sm(u),d)),l){var p=r.maybeGenerateMemoised(c);p&&(n.property=p,i.property=is("=",sm(p),c))}}e.replaceWith(Ns(o,i,is("=",n,s)))}}}}},tfe=function(e,t){var r,a,n=t.loose,s=void 0!==n&&n;e.assertVersion("*");var o=null!=(r=e.assumption("noDocumentAll"))?r:s,i=null!=(a=e.assumption("pureGetters"))&&a;return{name:"transform-nullish-coalescing-operator",manipulateOptions:function(e,t){return t.plugins.push("nullishCoalescingOperator")},visitor:{LogicalExpression:function(e){var t=e.node,r=e.scope;if("??"===t.operator){var a,n;if(i&&r.path.isPattern()&&me(t.left)&&!t.left.computed&&ie(t.left.object)&&ie(t.left.property)||ie(t.left)&&(i||r.hasBinding(t.left.name)))a=t.left,n=sm(t.left);else{if(r.path.isPattern())return void e.replaceWith(pj.statement.ast(Hpe||(Hpe=h(["(() => ",")()"])),e.node));a=r.generateUidIdentifierBasedOnNode(t.left),r.push({id:sm(a)}),n=is("=",a,t.left)}e.replaceWith(ys(o?ds("!=",n,{type:"NullLiteral"}):Ns("&&",ds("!==",n,{type:"NullLiteral"}),ds("!==",sm(a),r.buildUndefinedNode())),sm(a),t.right))}}}}};function rfe(e){var t,r=e.node.extra;null!=r&&null!=(t=r.raw)&&t.includes("_")&&(r.raw=r.raw.replace(/_/g,""))}var afe=function(e){return e.assertVersion("*"),{name:"transform-numeric-separator",manipulateOptions:function(e,t){return t.plugins.push("numericSeparator")},visitor:{NumericLiteral:rfe,BigIntLiteral:rfe}}};function nfe(e){if(!e)return!1;if("ArrayPattern"===e.type){var t=e.elements.filter(function(e){return null!==e&&"VoidPattern"!==e.type});return t.length>1||nfe(t[0])}if("ObjectPattern"===e.type){var r=e.properties;if(r.length>1)return!0;if(0===r.length)return!1;var a=r[0];return"ObjectProperty"===a.type?nfe(a.value):nfe(a)}return"AssignmentPattern"===e.type?nfe(e.left):"RestElement"===e.type&&("Identifier"===e.argument.type||nfe(e.argument))}var sfe,ofe={"Object.assign":{chrome:"49",opera:"36",edge:"13",firefox:"36",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"36",electron:"0.37"}},ife=Ps("a"),dfe=qs(Ps("key"),ife),cfe=Gy(ife,dfe,jo([dfe]))?1:0,lfe=function(e,t){var r,a,n,s,o=p().m(j);e.assertVersion("*");var d=!CU("Object.assign",e.targets(),{compatData:ofe}),c=t.useBuiltIns,l=void 0===c?d:c,u=t.loose,f=void 0!==u&&u;if("boolean"!=typeof f)throw new Error(".loose must be a boolean, or undefined");var m=null!=(r=e.assumption("ignoreFunctionLength"))?r:f,h=null!=(a=e.assumption("objectRestNoSymbols"))?a:f,v=null!=(n=e.assumption("pureGetters"))?n:f,x=null!=(s=e.assumption("setSpreadProperties"))?s:f;function R(e){return l?Bs(Ps("Object"),Ps("assign")):e.addHelper("extends")}function j(e){var t,r,a,n,s,d,c;return p().w(function(o){for(;;)switch(o.n){case 0:c=e.type,o.n="ArrayPattern"===c?1:"ObjectPattern"===c?7:"AssignmentPattern"===c?13:15;break;case 1:t=i(e.get("elements"));case 2:if((r=t()).done){o.n=6;break}if(!(a=r.value).isRestElement()){o.n=4;break}return o.d(g(j(a.get("argument"))),3);case 3:o.n=5;break;case 4:return o.d(g(j(a)),5);case 5:o.n=2;break;case 6:return o.a(3,16);case 7:n=i(e.get("properties"));case 8:if((s=n()).done){o.n=12;break}if(!(d=s.value).isRestElement()){o.n=10;break}return o.n=9,d;case 9:o.n=11;break;case 10:return o.d(g(j(d.get("value"))),11);case 11:o.n=8;break;case 12:return o.a(3,16);case 13:return o.d(g(j(e.get("left"))),14);case 14:case 15:return o.a(3,16);case 16:return o.a(2)}},o)}function w(e){return!j(e).next().done}function E(e,t){for(var r,a=i(j(e));!(r=a()).done;){t(r.value)}}function S(e,t){for(var r,a=[],n=i(e);!(r=n()).done;){var s=r.value,o=s.get("key");if(o.isAssignmentExpression()&&o.get("left").isIdentifier()){var d=o.node.left.name;if(t.hasUid(d))continue}if(s.node.computed&&!o.isPure()){var c=t.generateUidBasedOnNode(o.node),l=eo(Ps(c),o.node);a.push(l),o.replaceWith(Ps(c))}}return a}function T(e,t,r){var a=e.get("properties"),n=a[a.length-1];Wg(n.node);var s=sm(n.node);n.remove();var o,d=S(e.get("properties"),e.scope),c=function(e){for(var t,r=[],a=!0,n=!1,s=i(e.get("properties").map(function(e){return e.node}));!(t=s()).done;){var o=t.value,d=o.key;if(ie(d)&&!o.computed)r.push(Cs(d.name));else if($e(d))r.push(sm(d)),n=!0;else if(dr(d))r.push(Cs(String(d.value)));else{$(d)&&ie(d.left)?r.push(sm(d.left)):r.push(sm(d));var c=$(d)?d.right:d;me(c,{computed:!1})&&ie(c.object,{name:"Symbol"})||Z(c)&&Er(c.callee,"Symbol.for")||(a=!1)}}return{keys:r,allPrimitives:a,hasTemplateLiteral:n}}(e),l=c.keys,u=c.allPrimitives,p=c.hasTemplateLiteral;if(0===l.length)return[d,s.argument,gs(R(t),[Ls([]),Vs([gs(t.addHelper("objectDestructuringEmpty"),[sm(r)]),sm(r)])])];if(u){if(o=os(l),!p&&!he(e.scope.block)){var f=e.findParent(function(e){return e.isProgram()}),g=e.scope.generateUidIdentifier("excluded");f.scope.push({id:g,init:o,kind:"const"}),o=sm(g)}}else o=gs(Bs(os(l),Ps("map")),[t.addHelper("toPropertyKey")]);return[d,s.argument,gs(t.addHelper("objectWithoutProperties"+(h?"Loose":"")),[sm(r),o])]}function P(e,t,r){if(t.isAssignmentPattern())P(e,t.get("left"),r);else{if(t.isArrayPattern()&&w(t))for(var a=t.get("elements"),n=0;n<a.length;n++)P(e,a[n],r);if(t.isObjectPattern()&&w(t)){var s=e.scope.generateUidIdentifier("ref"),o=Zs("let",[eo(t.node,s)]);r?r.push(o):(e.ensureBlock(),e.get("body").unshiftContainer("body",o)),t.replaceWith(sm(s))}}}return{name:"transform-object-rest-spread",manipulateOptions:function(e,t){return t.plugins.push("objectRestSpread")},visitor:{Function:function(e){for(var t=e.get("params"),r=new Set,a=new Set,n=0;n<t.length;++n){var s=t[n];if(w(s)){r.add(n);for(var o=0,i=Object.keys(s.getBindingIdentifiers());o<i.length;o++){var d=i[o];a.add(d)}}}var c,l=!1,u=function(e,t){var r=e.node.name;e.scope.getBinding(r)===t.getBinding(r)&&a.has(r)&&(l=!0,e.stop())};for(c=0;c<t.length&&!l;++c){var p=t[c];r.has(c)||(p.isReferencedIdentifier()||p.isBindingIdentifier()?u(p,e.scope):p.traverse({"Scope|TypeAnnotation|TSTypeAnnotation":function(e){return e.skip()},"ReferencedIdentifier|BindingIdentifier":u},e.scope))}if(l){uY(e,m,function(e){return e>=c-1||r.has(e)},P)}else for(var f=0;f<t.length;++f){var g=t[f];r.has(f)&&P(e,g)}},VariableDeclarator:function(e,t){if(e.get("id").isObjectPattern()){var r=e,a=e;if(w(e.get("id")))for(var n,s=function(e){var t=[];return function e(r){if(r.isObjectPattern())for(var a,n=i(r.get("properties"));!(a=n()).done;){var s=a.value;s.isRestElement()||(s.node.computed&&t.push(s),e(s.get("value")))}else if(r.isArrayPattern())for(var o,d=i(r.get("elements"));!(o=d()).done;){var c=o.value;c&&(c.isRestElement()?e(c.get("argument")):e(c))}else r.isAssignmentPattern()&&e(r.get("left"))}(e),t}(a.get("id")),o=i(s);!(n=o()).done;){var d=n.value.get("key");if(!(d.isAssignmentExpression()&&d.get("left").isIdentifier()&&a.scope.hasUid(d.node.left.name))&&!d.isPure()){var c=Ps(a.scope.generateUidBasedOnNode(d.node));a.scope.push({id:c,kind:"var"}),d.replaceWith(is("=",sm(c),d.node))}}E(e.get("id"),function(e){if(nfe(a.node.id)&&!ie(a.node.init)){var n=e.scope.generateUidIdentifierBasedOnNode(a.node.init,"ref");return a.insertBefore(eo(n,a.node.init)),void a.replaceWith(eo(a.node.id,sm(n)))}var s,o=a.node.init,i=[];e.findParent(function(e){if(e.isObjectProperty())i.unshift(e);else if(e.isVariableDeclarator())return s=e.parentPath.node.kind,!0});var d=S(i,e.scope);i.forEach(function(e){var t=e.get("key"),r=t.node;$(t.node)&&(r=t.node.left),o=Bs(o,sm(r),e.node.computed||dr(t.node))});var c=e.parentPath,l=y(T(c,t,o),3),u=l[0],p=l[1],f=l[2];v&&function(e){var t=e.getOuterBindingIdentifierPaths();Object.keys(t).forEach(function(r){var a=t[r].parentPath;e.scope.getBinding(r).references>cfe||!a.isObjectProperty()||a.remove()})}(c),Gg(p),r.insertBefore(u),r.insertBefore(d),r=r.insertAfter(eo(p,f))[0],e.scope.registerBinding(s,r),0===c.node.properties.length&&c.findParent(function(e){return e.isObjectProperty()||e.isVariableDeclarator()}).remove()})}},ExportNamedDeclaration:function(e){var t=e.get("declaration");if(t.isVariableDeclaration()){var r=t.get("declarations").some(function(e){return w(e.get("id"))});r&&e.splitExportDeclaration()}},CatchClause:function(e){var t=e.get("param");P(e,t)},AssignmentExpression:function(e,t){var r=e.get("left");if(r.isObjectPattern()&&w(r)){var a=[],n=e.scope.generateUidBasedOnNode(e.node.right,"ref");a.push(Zs("var",[eo(Ps(n),e.node.right)]));var s=y(T(r,t,Ps(n)),3),o=s[0],i=s[1],d=s[2];o.length>0&&a.push(Zs("var",o));var c=sm(e.node);c.right=Ps(n),a.push(Rs(c)),a.push(Rs(is("=",i,d))),a.push(Rs(Ps(n))),e.replaceWithMultiple(a)}},ForXStatement:function(e){var t=e.node,r=e.scope,a=e.get("left");if(a.isVariableDeclaration()){var n=a.get("declarations")[0].get("id");if(!w(n))return;var s=a.node,o=n.node,i=r.generateUidIdentifier("ref");return t.left=Zs(s.kind,[eo(i,null)]),e.ensureBlock(),wJ(e,[Zs(t.left.kind,[eo(o,sm(i))])]),void r.crawl()}if(w(a)){var d=r.generateUidIdentifier("ref");t.left=Zs("var",[eo(d)]),e.ensureBlock();var c=[];return 0===e.node.body.body.length&&e.isCompletionRecord()&&c.unshift(Rs(r.buildUndefinedNode())),c.unshift(Rs(is("=",a.node,sm(d)))),wJ(e,c),void r.crawl()}},ArrayPattern:function(e){var t=[],r=e.scope,a=[];if(E(e,function(e){var n=e.parentPath,s=r.generateUidIdentifier("ref");t.push({left:n.node,right:s}),a.push(s),n.replaceWith(sm(s)),e.skip()}),t.length>0){var n=e.findParent(function(e){return!(e.isPattern()||e.isObjectProperty())}),s=n.node;switch(s.type){case"VariableDeclarator":n.insertAfter(t.map(function(e){return eo(e.left,e.right)}));break;case"AssignmentExpression":for(var o,d=i(a);!(o=d()).done;){var c=o.value;r.push({id:sm(c)})}n.insertAfter(t.map(function(e){return is("=",e.left,e.right)}));break;default:throw new Error("Unexpected pattern parent type: "+s.type)}}},ObjectExpression:function(e,t){if(function(e){for(var t,r=i(e.properties);!(t=r()).done;)if(Xe(t.value))return!0;return!1}(e.node)){var r;if(x)r=R(t);else try{r=t.addHelper("objectSpread2")}catch(e){this.file.declarations.objectSpread2=null,r=t.addHelper("objectSpread")}for(var a,n=null,s=[],o=i(e.node.properties);!(a=o()).done;){var d=a.value;Xe(d)?(c(),n.arguments.push(d.argument)):s.push(d)}s.length&&c(),e.replaceWith(n)}function c(){var e=s.length>0,t=Ls(s);s=[],n?v?e&&n.arguments.push(t):n=gs(sm(r),[n].concat(b(e?[Ls([]),t]:[]))):n=gs(r,[t])}}}}},ufe=function(e){return e.assertVersion("*"),{name:"transform-optional-catch-binding",manipulateOptions:function(e,t){return t.plugins.push("optionalCatchBinding")},visitor:{CatchClause:function(e){if(!e.node.param){var t=e.scope.generateUidIdentifier("unused");e.get("param").replaceWith(t)}}}}};function pfe(e){var t=ffe(e),r=t.node,a=t.parentPath;if(a.isLogicalExpression()){var n=a.node,s=n.operator,o=n.right;if("&&"===s||"||"===s||"??"===s&&r===o)return pfe(a)}if(a.isSequenceExpression()){var i=a.node.expressions;return i[i.length-1]!==r||pfe(a)}return a.isConditional({test:r})||a.isUnaryExpression({operator:"!"})||a.isForStatement({test:r})||a.isWhile({test:r})}function ffe(e){var t=e;return e.findParent(function(e){if(!yK(e.node))return!0;t=e}),t}function gfe(e){return ie(e=bK(e))||Je(e)||me(e)&&!e.computed&&gfe(e.object)}var mfe=pj.expression("%%check%% === null || %%ref%% === void 0"),yfe=pj.expression("%%check%% == null"),hfe=pj.expression("%%check%% !== null && %%ref%% !== void 0"),bfe=pj.expression("%%check%% != null");function vfe(e,t,r,a,n){var s=t.pureGetters,o=t.noDocumentAll,i=e.scope;if(i.path.isPattern()&&function(e){for(var t=e,r=e.scope;t.isOptionalMemberExpression()||t.isOptionalCallExpression();){var a=t.node,n=hK(t.isOptionalMemberExpression()?t.get("object"):t.get("callee"));if(a.optional)return!r.isStatic(n.node);t=n}}(e))r.replaceWith(pj.expression.ast(sfe||(sfe=h(["(() => ",")()"])),r.node));else{for(var d=[],c=e;c.isOptionalMemberExpression()||c.isOptionalCallExpression();){var l=c.node;l.optional&&d.push(l),c.isOptionalMemberExpression()?(c.node.type="MemberExpression",c=hK(c.get("object"))):c.isOptionalCallExpression()&&(c.node.type="CallExpression",c=hK(c.get("callee")))}if(0!==d.length){for(var u,p=[],f=d.length-1;f>=0;f--){var g=d[f],m=Z(g),y=m?g.callee:g.object,b=bK(y),v=void 0,x=void 0;if(m&&ie(b,{name:"eval"})?(x=v=b,g.callee=Vs([_s(0),v])):s&&m&&gfe(b)?x=v=g.callee:i.isStatic(b)?x=v=y:(u&&!m||(u=i.generateUidIdentifierBasedOnNode(b),i.push({id:sm(u)})),v=u,x=is("=",sm(u),y),m?g.callee=v:g.object=v),m&&me(b))if(s&&gfe(b))g.callee=y;else{var R=b.object,j=void 0;if(Je(R))j=Xs();else{var w=i.maybeGenerateMemoised(R);w?(j=w,b.object=is("=",w,R)):j=R}g.arguments.unshift(sm(j)),g.callee=Bs(g.callee,Ps("call"))}var E={check:sm(x),ref:sm(v)};Object.defineProperty(E,"ref",{enumerable:!1}),p.push(E)}var S=r.node;n&&(S=n(S));var T,P=fe(a),A=P&&!1===a.value,k=!P&&Te(a,{operator:"void"}),C=re(r.parent)&&!r.isCompletionRecord()||we(r.parent)&&(T=r.parent.expressions)[T.length-1]!==r.node,_=A?o?bfe:hfe:o?yfe:mfe,I=A?"&&":"||",D=p.map(_).reduce(function(e,t){return Ns(I,e,t)});r.replaceWith(P||k&&C?Ns(I,D,S):ys(D,a,S))}}}function xfe(e,t){var r,a=e.scope,n=ffe(e),s=n.parentPath;s.isUnaryExpression({operator:"delete"})?vfe(e,t,s,Ds(!0)):(s.isCallExpression({callee:n.node})&&e.isOptionalMemberExpression()&&(r=function(e){var r,n=bK(e.object);return t.pureGetters&&gfe(n)||(r=a.maybeGenerateMemoised(n))&&(e.object=is("=",r,n)),gs(Bs(e,Ps("bind")),[sm(null!=r?r:n)])}),vfe(e,t,e,pfe(n)?Ds(!1):a.buildUndefinedNode(),r))}var Rfe=function(e,t){var r,a;e.assertVersion("*");var n=t.loose,s=void 0!==n&&n,o=null!=(r=e.assumption("noDocumentAll"))?r:s,i=null!=(a=e.assumption("pureGetters"))?a:s;return{name:"transform-optional-chaining",manipulateOptions:function(e,t){return t.plugins.push("optionalChaining")},visitor:{"OptionalCallExpression|OptionalMemberExpression":function(e){xfe(e,{noDocumentAll:o,pureGetters:i})}}}},jfe=function(e){var t,r;e.assertVersion("*");var a={noDocumentAll:null!=(t=e.assumption("noDocumentAll"))&&t,pureGetters:null!=(r=e.assumption("pureGetters"))&&r},n=e.types;return{name:"transform-optional-chaining-assign",inherits:cH,visitor:{AssignmentExpression:function(e,t){var r,s=e.get("left");if(s.isExpression()){var o=(null==(r=s.node.extra)?void 0:r.parenthesized)||n.isParenthesizedExpression(s.node);if((s=hK(s)).isOptionalMemberExpression()){var i=e.scope.buildUndefinedNode();o&&(i=n.callExpression(t.addHelper("nullishReceiverError"),[]),"="===e.node.operator&&(i=n.sequenceExpression([n.cloneNode(e.node.right),i]))),vfe(s,a,e,i)}}}}}};var wfe,Efe,Sfe,Tfe,Pfe,Afe,kfe,Cfe,_fe,Ife,Dfe=function(e){var t=e.call,r=e.path,a=e.placeholder,n=t.callee,s=r.node.left,o=is("=",sm(a),s),i=function(e){return Ie(e)&&$t(e.body)&&!e.async}(n);if(i){var d,c=!0,l=n.params;if(1===l.length&&ie(l[0])?d=l[0]:l.length>0&&(c=!1),c&&!d)return Vs([s,n.body]);if(d)return r.scope.push({id:sm(a)}),r.get("right").scope.rename(d.name,a.name),Vs([o,n.body])}else if(ie(n,{name:"eval"})){var u=Vs([_s(0),n]);t.callee=u}return r.scope.push({id:sm(a)}),Vs([o,t])},Ofe={BinaryExpression:function(e){var t=e.scope,r=e.node,a=r.operator,n=r.left,s=r.right;if("|>"===a){var o=t.generateUidIdentifierBasedOnNode(n),i=gs(s,[sm(o)]);e.replaceWith(Dfe({placeholder:o,call:i,path:e}))}}},Nfe={exit:function(e,t){e.isTopicReference()?t.topicReferences.push(e):0!==t.topicReferences.length||t.sideEffectsBeforeFirstTopicReference||e.isPure()||(t.sideEffectsBeforeFirstTopicReference=!0)},"ClassBody|Function":function(e,t){0===t.topicReferences.length&&(t.sideEffectsBeforeFirstTopicReference=!0)}},Bfe={BinaryExpression:{exit:function(e){var t=e.scope,r=e.node;if("|>"===r.operator){var a=e.get("right");if("TopicReference"!==a.node.type){var n={topicReferences:[],sideEffectsBeforeFirstTopicReference:a.isFunction()};if(a.traverse(Nfe,n),1===n.topicReferences.length&&(!n.sideEffectsBeforeFirstTopicReference||e.scope.isPure(r.left,!0)))return n.topicReferences[0].replaceWith(r.left),void e.replaceWith(r.right);var s=t.generateUidIdentifierBasedOnNode(r);t.push({id:s}),n.topicReferences.forEach(function(e){return e.replaceWith(sm(s))}),e.replaceWith(Vs([is("=",sm(s),r.left),r.right]))}else e.replaceWith(r.left)}}}},Mfe={BinaryExpression:function(e){var t=e.scope,r=e.node,a=r.operator,n=r.left,s=r.right;if("|>"===a){var o=t.generateUidIdentifierBasedOnNode(n),i="AwaitExpression"===s.type?ko(sm(o)):gs(s,[sm(o)]),d=Dfe({placeholder:o,call:i,path:e});e.replaceWith(d)}}},Ffe={PipelinePrimaryTopicReference:function(e){e.replaceWith(sm(this.topicId))},PipelineTopicExpression:function(e){e.skip()}},Lfe={BinaryExpression:function(e){var t=e.scope,r=e.node,a=r.operator,n=r.left,s=r.right;if("|>"===a){var o,i=t.generateUidIdentifierBasedOnNode(n);if(t.push({id:i}),Mt(s))e.get("right").traverse(Ffe,{topicId:i}),o=s.expression;else{var d=s.callee;ie(d,{name:"eval"})&&(d=Vs([_s(0),d])),o=gs(d,[sm(i)])}e.replaceWith(Vs([is("=",sm(i),n),o]))}}},Ufe={minimal:Ofe,hack:Bfe,fsharp:Mfe,smart:Lfe},qfe=function(e,t){return e.assertVersion("*"),"smart"===t.proposal&&console.warn('The smart-mix pipe operator is deprecated. Use "proposal": "hack" instead.'),{name:"proposal-pipeline-operator",inherits:fH,visitor:Ufe[t.proposal]}},Gfe=function(e,t){return e.assertVersion("*"),aJ({name:"transform-private-methods",api:e,feature:HX.privateMethods,loose:t.loose,manipulateOptions:function(e,t){t.plugins.push("classPrivateMethods")}})},Wfe=function(e,t){e.assertVersion("*");var r=e.types,a=e.template,n=t.loose,s=new WeakMap,o=new WeakMap;function d(e,t,a){if(void 0===a&&(a=!1),e.node.value){var n=e.get("value");a?n.insertBefore(t):n.insertAfter(t)}else e.set("value",r.unaryExpression("void",t))}function c(e,t){for(var a,n,s,o=i(e.get("body.body"));!(s=o()).done;){var c=s.value;if((c.isClassProperty()||c.isClassPrivateProperty())&&!c.node.static){a=c;break}!n&&c.isClassMethod({kind:"constructor"})&&(n=c)}a?d(a,t,!0):ZK(e,n,[r.expressionStatement(t)])}function l(e,t,n,s,o){void 0===s&&(s="");var i=e.get(n.node);if(!i){i=t.scope.generateUidIdentifier((s||"")+" brandCheck"),e.set(n.node,i),o(n,a.expression.ast(wfe||(wfe=h(["",".add(this)"])),r.cloneNode(i)));var d=r.newExpression(r.identifier("WeakSet"),[]);DH(d),t.insertBefore(a.ast(Efe||(Efe=h(["var "," = ",""])),i,d))}return r.cloneNode(i)}return{name:"transform-private-property-in-object",manipulateOptions:function(e,t){return t.plugins.push("privateIn")},pre:function(){$X(this.file,HX.privateIn,n)},visitor:{BinaryExpression:function(e,t){var n=e.node,i=t.file;if("in"===n.operator&&r.isPrivateName(n.left)){var u,p=n.left.id.name,f=e.findParent(function(e){return!!e.isClass()&&(u=e.get("body.body").find(function(e){var t=e.node;return r.isPrivate(t)&&t.key.id.name===p}),!!u)});if(f.parentPath.scope.path.isPattern())f.replaceWith(a.ast(Sfe||(Sfe=h(["(() => ",")()"])),f.node));else if("ClassPrivateMethod"===u.node.type)if(u.node.static)f.node.id?function(e,t,r){for(;r!==t;)r.hasOwnBinding(e)&&r.rename(e),r=r.parent}(f.node.id.name,f.scope,e.scope):f.set("id",e.scope.generateUidIdentifier("class")),e.replaceWith(a.expression.ast(Tfe||(Tfe=h(["\n "," === ","\n "])),r.cloneNode(f.node.id),EK(n.right,i)));else{var g,m=l(s,f,f,null==(g=f.node.id)?void 0:g.name,c);e.replaceWith(a.expression.ast(Pfe||(Pfe=h(["",".has(",")"])),m,EK(n.right,i)))}else{var y=l(o,f,u,u.node.key.id.name,d);e.replaceWith(a.expression.ast(Afe||(Afe=h(["",".has(",")"])),y,EK(n.right,i)))}}}}}},Vfe=function(e){return e.assertVersion("*"),Vpe({name:"transform-regexp-modifiers",feature:"modifiers"})},Hfe=function(e){return e.assertVersion("*"),{name:"proposal-throw-expressions",manipulateOptions:function(e,t){return t.plugins.push("throwExpressions")},visitor:{UnaryExpression:function(e){var t=e.node,r=t.operator,a=t.argument;if("throw"===r){var n=Ts(null,[Ps("e")],ps([Js(Ps("e"))]));e.replaceWith(gs(n,[a]))}}}}},zfe=function(e,t){e.assertVersion("*");var r=t.useUnicodeFlag,a=void 0===r||r;if("boolean"!=typeof a)throw new Error(".useUnicodeFlag must be a boolean, or undefined");return Vpe({name:"transform-unicode-property-regex",feature:"unicodePropertyEscape",options:{useUnicodeFlag:a}})},Kfe=function(e){return e.assertVersion("*"),Vpe({name:"transform-unicode-sets-regex",feature:"unicodeSetsFlag",manipulateOptions:function(e,t){t.plugins.push("regexpUnicodeSets")}})},Xfe=function(e,t){var r,a;e.assertVersion("*");var n=t.method,s=t.module,o=null==(r=e.assumption("noNewArrows"))||r,i=null!=(a=e.assumption("ignoreFunctionLength"))&&a;return n&&s?{name:"transform-async-to-generator",visitor:{Function:function(e,t){if(e.node.async&&!e.node.generator){var r=t.methodWrapper;UH(e,{wrapAsync:r=r?sm(r):t.methodWrapper=$N(e,n,s)},o,i)}}}}:{name:"transform-async-to-generator",visitor:{Function:function(e,t){e.node.async&&!e.node.generator&&UH(e,{wrapAsync:t.addHelper("asyncToGenerator")},o,i)}}}},Jfe=function(e,t){var r;e.assertVersion("*");var a=null!=(r=e.assumption("noNewArrows"))?r:!t.spec;return{name:"transform-arrow-functions",visitor:{ArrowFunctionExpression:function(e){e.isArrowFunctionExpression()&&e.arrowFunctionToExpression({allowInsertArrow:!1,noNewArrows:a,specCompliant:!a})}}}},Yfe=function(e){function t(e,t){for(var r,a=i(t);!(r=a()).done;){var n=r.value;if(n.isFunctionDeclaration()){var s=n.node,o=Zs("let",[eo(s.id,by(s))]);o._blockHoist=2,s.id=null,n.replaceWith(o)}}}return e.assertVersion("*"),{name:"transform-block-scoped-functions",visitor:{BlockStatement:function(e){var r=e.node,a=e.parent;nr(a,{body:r})||gr(a)||t(0,e.get("body"))},SwitchCase:function(e){t(0,e.get("consequent"))}}}},$fe={"Expression|Declaration|Loop":function(e){e.skip()},Scope:function(e,t){e.isFunctionParent()&&e.skip();for(var r=e.scope.bindings,a=0,n=Object.keys(r);a<n.length;a++){var s=r[n[a]];"let"!==s.kind&&"const"!==s.kind&&"hoisted"!==s.kind||t.blockScoped.push(s)}}};function Qfe(e,t){var r=new WeakSet,a=!1,n=rge(e.constantViolations,function(e){var n=Zfe(e,t),s=n.inBody,o=n.inClosure;if(!s)return null;a||(a=o);var i=e.isUpdateExpression()?e.get("argument"):e.isAssignmentExpression()?e.get("left"):null;return i&&r.add(i.node),i}),s=rge(e.referencePaths,function(e){if(r.has(e.node))return null;var n=Zfe(e,t),s=n.inBody,o=n.inClosure;return s?(a||(a=o),e):null});return{capturedInClosure:a,hasConstantViolations:n.length>0,usages:s.concat(n)}}function Zfe(e,t){for(var r=t.get("body"),a=!1,n=e;n;n=n.parentPath){if((n.isFunction()||n.isClass()||n.isMethod())&&(a=!0),n===r)return{inBody:!0,inClosure:a};if(n===t)return{inBody:!1,inClosure:a}}throw new Error("Internal Babel error: path is not in loop. Please report this as a bug.")}var ege={Function:function(e){e.skip()},LabeledStatement:{enter:function(e,t){var r=e.node;t.labelsStack.push(r.label.name)},exit:function(e,t){var r=e.node;if(t.labelsStack.pop()!==r.label.name)throw new Error("Assertion failure. Please report this bug to Babel.")}},Loop:{enter:function(e,t){t.labellessContinueTargets++,t.labellessBreakTargets++},exit:function(e,t){t.labellessContinueTargets--,t.labellessBreakTargets--}},SwitchStatement:{enter:function(e,t){t.labellessBreakTargets++},exit:function(e,t){t.labellessBreakTargets--}},"BreakStatement|ContinueStatement":function(e,t){var r=e.node.label;if(r){if(t.labelsStack.includes(r.name))return}else if(e.isBreakStatement()?t.labellessBreakTargets>0:t.labellessContinueTargets>0)return;t.breaksContinues.push(e)},ReturnStatement:function(e,t){t.returns.push(e)},VariableDeclaration:function(e,t){e.parent===t.loopNode&&tge(e)||"var"===e.node.kind&&t.vars.push(e)}};function tge(e){return ne(e.parent)?"init"===e.key:!!ar(e.parent)&&"left"===e.key}function rge(e,t){for(var r,a=[],n=i(e);!(r=n()).done;){var s=t(r.value);s&&a.push(s)}return a}function age(e,t,r){for(var a,n=i(t.constantViolations);!(a=n()).done;){var s=a.value,o=gs(r.addHelper("readOnlyError"),[Cs(e)]);if(s.isAssignmentExpression()){var d=s.node,c=d.operator,l=d.left,u=d.right;if("="===c){var p=[u];p.push(o),s.replaceWith(Vs(p))}else["&&=","||=","??="].includes(c)?s.replaceWith(Ns(c.slice(0,-1),l,Vs([u,o]))):s.replaceWith(Vs([ds(c.slice(0,-1),l,u),o]))}else s.isUpdateExpression()?s.replaceWith(Vs([$s("+",s.get("argument").node),o])):s.isForXStatement()&&(s.ensureBlock(),s.get("left").replaceWith(Zs("var",[eo(s.scope.generateUidIdentifier(e))])),s.node.body.body.unshift(Rs(o)))}}var nge=new WeakSet;function sge(e,t,r){if("maybe"===e){var a=sm(t);return nge.add(a),gs(r.addHelper("temporalRef"),[a,Cs(t.name)])}return gs(r.addHelper("tdz"),[Cs(t.name)])}function oge(e,t,r){var a;if(void 0===r&&(r=e.node),!nge.has(r)){nge.add(r);var n=null==(a=e.scope.getBinding(r.name))?void 0:a.path;if(n&&!n.isFunctionDeclaration()){var s=function(e,t){var r=t._guessExecutionStatusRelativeTo(e);return"before"===r?"outside":"after"===r?"inside":"maybe"}(e,n);if("outside"!==s)return"maybe"===s&&(n.parent._tdzThis=!0),{status:s,node:sge(s,r,t)}}}}function ige(e,t){var r=new Set(e.referencePaths);e.constantViolations.forEach(r.add,r);for(var a,n=!1,s=i(e.constantViolations);!(a=s()).done;){var o=a.value,d=o.node;if(!nge.has(d))if(nge.add(d),o.isUpdateExpression()){var c=o.get("argument"),l=oge(o,t,c.node);if(!l)continue;"maybe"===l.status?(n=!0,o.insertBefore(l.node)):o.replaceWith(l.node)}else if(o.isAssignmentExpression()){for(var u=[],p=o.getBindingIdentifiers(),f=0,g=Object.keys(p);f<g.length;f++){var m=oge(o,t,p[g[f]]);if(m){if(u.push(Rs(m.node)),"inside"===m.status)break;"maybe"===m.status&&(n=!0)}}u.length>0&&o.insertBefore(u)}}for(var y=0,h=e.referencePaths;y<h.length;y++){var b=h[y];if(!b.parentPath.isUpdateExpression()&&!b.parentPath.isForXStatement({left:b.node})){var v=oge(b,t);v&&("maybe"===v.status&&(n=!0),b.replaceWith(v.node))}}return n}var dge=Object.assign({VariableDeclaration:function(e){fge(e)||"var"===e.node.kind&&(e.scope.getFunctionParent()||e.scope.getProgramParent()).path.traverse(uge,{names:Object.keys(e.getBindingIdentifiers())})}},{BlockStatement:function(e){fge(e)||nr(e.parent,{body:e.node})||cge(e.get("body"))},SwitchCase:function(e){fge(e)||cge(e.get("consequent"))}});function cge(e){e:for(var t,r=i(e);!(t=r()).done;){var a=t.value;if(a.isFunctionDeclaration()){if(a.node.async||a.node.generator)return;var n=a.parentPath.scope;if(pge(n))return;var s=a.node.id.name,o=n;do{if(o.parent.hasOwnBinding(s))continue e;o=o.parent}while(!pge(o));lge(a)}}}function lge(e){var t=e.node,r=e.parentPath.scope,a=t.id;r.removeOwnBinding(a.name),t.id=null;var n=Zs("var",[eo(a,by(t))]);n._blockHoist=2;var s=y(e.replaceWith(n),1)[0];r.registerDeclaration(s)}var uge={Scope:function(e,t){for(var r,a=i(t.names);!(r=a()).done;){var n=r.value,s=e.scope.getOwnBinding(n);"hoisted"===(null==s?void 0:s.kind)&&lge(s.path)}},"Expression|Declaration":function(e){e.skip()}};function pge(e){return e.path.isFunctionParent()||e.path.isProgram()}function fge(e){return!!e.find(function(e){var t,r=e.node;if(he(r)){if("module"===r.sourceType)return!0}else{if(pr(r))return!0;if(!Q(r))return!1}return null==(t=r.directives)?void 0:t.some(function(e){return"use strict"===e.value.value})})}var gge=function(e,t){e.assertVersion("*");var r=t.throwIfClosureRequired,a=void 0!==r&&r,n=t.tdz,s=void 0!==n&&n;if("boolean"!=typeof a)throw new Error(".throwIfClosureRequired must be a boolean, or undefined");if("boolean"!=typeof s)throw new Error(".tdz must be a boolean, or undefined");return{name:"transform-block-scoping",visitor:OO.visitors.merge([dge,{Loop:function(e,t){var r,n=e.isForStatement(),o=n?e.get("init"):e.isForXStatement()?e.get("left"):null,d=!1,c=function(){if(a)throw e.buildCodeFrameError("Compiling let/const in this block would add a closure (throwIfClosureRequired).");d=!0},l=e.get("body");l.isBlockStatement()&&(r=l.scope);for(var u,p=function(e){var t={blockScoped:[]};return e.traverse($fe,t),t.blockScoped}(e),f=i(p);!(u=f()).done;){Qfe(u.value,e).capturedInClosure&&c()}var g=[],m=new Map;if(o&&bge(o))for(var v=Object.keys(o.getBindingIdentifiers()),x=o.scope,R=0,j=v;R<j.length;R++){var w,E=j[R];if(null==(w=r)||!w.hasOwnBinding(E)){var S=x.getOwnBinding(E);S||(x.crawl(),S=x.getOwnBinding(E));var T=Qfe(S,e),P=T.usages,A=T.capturedInClosure,k=T.hasConstantViolations;if(x.parent.hasBinding(E)||x.parent.hasGlobal(E)){var C=x.generateUid(E);x.rename(E,C),E=C}A&&(c(),g.push(E)),n&&k&&m.set(E,P)}}if(d){var _=function(e,t,r){var a=e.node,n={breaksContinues:[],returns:[],labelsStack:[],labellessBreakTargets:0,labellessContinueTargets:0,vars:[],loopNode:a};e.traverse(ege,n);for(var s,o=[],d=[],c=[],l=i(r);!(s=l()).done;){var u=y(s.value,2),p=u[0],f=u[1];o.push(Ps(p));var g=e.scope.generateUid(p);d.push(Ps(g)),c.push(is("=",Ps(p),Ps(g)));for(var m,v=i(f);!(m=v()).done;)m.value.replaceWith(Ps(g))}for(var x,R=i(t);!(x=R()).done;){var j=x.value;r.has(j)||(o.push(Ps(j)),d.push(Ps(j)))}var w=e.scope.generateUid("loop"),E=Ts(null,d,gy(a.body)),S=gs(Ps(w),o),T=e.findParent(function(e){return e.isFunction()});if(T){var P=T.node,A=P.async,k=P.generator;E.async=A,E.generator=k,k?S=Ao(S,!0):A&&(S=ko(S))}var C=c.length>0?Rs(Vs(c)):null;C&&E.body.body.push(C);for(var _,I=y(e.insertBefore(Zs("var",[eo(Ps(w),E)])),1)[0],D=[],O=[],N=i(n.vars);!(_=N()).done;){for(var B,M=_.value,F=[],L=i(M.node.declarations);!(B=L()).done;){var U=B.value;O.push.apply(O,b(Object.keys(Iy(U.id)))),U.init?F.push(is("=",U.id,U.init)):ar(M.parent,{left:M.node})&&F.push(U.id)}if(F.length>0){var q=1===F.length?F[0]:Vs(F);M.replaceWith(q)}else M.remove()}O.length&&I.pushContainer("declarations",O.map(function(e){return eo(Ps(e))}));var G=n.breaksContinues.length,W=n.returns.length;if(G+W===0)D.push(Rs(S));else if(1===G&&0===W)for(var V,H=i(n.breaksContinues);!(V=H()).done;){var z=V.value,K=z.node,X=K.type,J=K.label,Y="BreakStatement"===X?"break":"continue";J&&(Y+=" "+J.name),z.replaceWith(lm(Ws(_s(1)),"trailing"," "+Y,!0)),C&&z.insertBefore(sm(C)),D.push(pj.statement.ast(kfe||(kfe=h(["\n if (",") ","\n "])),S,K))}else{var $=e.scope.generateUid("ret");I.isVariableDeclaration()?(I.pushContainer("declarations",[eo(Ps($))]),D.push(Rs(is("=",Ps($),S)))):D.push(Zs("var",[eo(Ps($),S)]));for(var Q,Z=[],ee=i(n.breaksContinues);!(Q=ee()).done;){var te=Q.value,re=te.node,ae=re.type,ne=re.label,se="BreakStatement"===ae?"break":"continue";ne&&(se+=" "+ne.name);var oe=Z.indexOf(se),ie=-1!==oe;ie||(Z.push(se),oe=Z.length-1),te.replaceWith(lm(Ws(_s(oe)),"trailing"," "+se,!0)),C&&te.insertBefore(sm(C)),ie||D.push(pj.statement.ast(Ife||(Ife=h(["\n if ("," === ",") ","\n "])),Ps($),_s(oe),re))}if(W){for(var de,ce=i(n.returns);!(de=ce()).done;){var le=de.value,ue=le.node.argument||le.scope.buildUndefinedNode();le.replaceWith(pj.statement.ast(_fe||(_fe=h(["\n return { v: "," };\n "])),ue))}D.push(pj.statement.ast(Cfe||(Cfe=h(["\n if (",") return ",".v;\n "])),Ps($),Ps($)))}}return a.body=ps(D),I}(e,g,m);null!=o&&o.isVariableDeclaration()&&yge(o,t,s),_.get("declarations.0.init").unwrapFunctionEnvironment()}},VariableDeclaration:function(e,t){yge(e,t,s)},ClassDeclaration:function(e){var t=e.node.id;if(t){var r=e.parentPath.scope;!pge(r)&&r.parent.hasBinding(t.name,{noUids:!0})&&e.scope.rename(t.name)}}}])}},mge={Scope:function(e,t){for(var r,a=i(t.names);!(r=a()).done;){var n=r.value,s=e.scope.getOwnBinding(n);"hoisted"===(null==s?void 0:s.kind)&&e.scope.rename(n)}},"Expression|Declaration":function(e){e.skip()}};function yge(e,t,r){if(bge(e)){var a=function(e,t,r){for(var a=[],n=0,s=Object.keys(e.getBindingIdentifiers());n<s.length;n++){var o=s[n],i=e.scope.getBinding(o);i&&(r&&ige(i,t)&&a.push(o),"const"===e.node.kind&&age(o,i,t))}return a}(e,t,r);e.node.kind="var";for(var n=Object.keys(e.getBindingIdentifiers()),s=0,o=n;s<o.length;s++){var d=o[s],c=e.scope.getOwnBinding(d);c&&(c.kind="var")}if(hge(e)&&!tge(e)||a.length>0)for(var l,u=i(e.node.declarations);!(l=u()).done;){var p=l.value;null!=p.init||(p.init=e.scope.buildUndefinedNode())}var f=e.scope,g=f.getFunctionParent()||f.getProgramParent();if(g!==f)for(var m,y=i(n);!(m=y()).done;){var h=m.value,b=h;(f.parent.hasBinding(h,{noUids:!0})||f.parent.hasGlobal(h))&&(b=f.generateUid(h),f.rename(h,b)),f.moveBindingTo(b,g)}f.path.traverse(mge,{names:n});for(var v,x=i(a);!(v=x()).done;){var R=v.value;e.scope.push({id:Ps(R),init:t.addHelper("temporalUndefined")})}}}function hge(e){return!!e.parentPath&&(!!e.parentPath.isLoop()||!e.parentPath.isFunctionParent()&&hge(e.parentPath))}function bge(e){var t=e.node;if(!Ae(t))return!1;var r=t.kind;if("using"===r||"await using"===r)throw e.buildCodeFrameError("The "+r+" declaration should be first transformed by `@babel/plugin-transform-explicit-resource-management`.");return!!function(e){return"let"===e||"const"===e}(r)}var vge,xge,Rge=pj.statement(vge||(vge=h(["\n function CALL_SUPER(\n _this,\n derived,\n args,\n ) {\n function isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n\n // core-js@3\n if (Reflect.construct.sham) return false;\n\n // Proxy can't be polyfilled. Every browser implemented\n // proxies before or at the same time as Reflect.construct,\n // so if they support Proxy they also support Reflect.construct.\n if (typeof Proxy === \"function\") return true;\n\n // Since Reflect.construct can't be properly polyfilled, some\n // implementations (e.g. core-js@2) don't set the correct internal slots.\n // Those polyfills don't allow us to subclass built-ins, so we need to\n // use our fallback implementation.\n try {\n // If the internal slots aren't set, this throws an error similar to\n // TypeError: this is not a Boolean object.\n return !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}),);\n } catch (e) {\n return false;\n }\n }\n\n // Super\n derived = GET_PROTOTYPE_OF(derived);\n return POSSIBLE_CONSTRUCTOR_RETURN(\n _this,\n isNativeReflectConstruct()\n ? // NOTE: This doesn't work if this.__proto__.constructor has been modified.\n Reflect.construct(\n derived,\n args || [],\n GET_PROTOTYPE_OF(_this).constructor,\n )\n : derived.apply(_this, args),\n );\n }\n"]))),jge=new WeakMap;function wge(e,t,r){var a=Ss(sm(e),[],t);return Cy(a,r),a}function Ege(e,t,r,a,n,s){var o={parent:void 0,scope:void 0,node:void 0,path:void 0,file:void 0,classId:void 0,classRef:void 0,superName:null,superReturns:[],isDerived:!1,extendsNative:!1,construct:void 0,constructorBody:void 0,userConstructor:void 0,userConstructorPath:void 0,hasConstructor:!1,body:[],superThises:[],pushedInherits:!1,pushedCreateClass:!1,protoAlias:null,isLoose:!1,dynamicKeys:new Map,methods:{instance:{hasComputed:!1,list:[],map:new Map},static:{hasComputed:!1,list:[],map:new Map}}},d=function(e){Object.assign(o,e)},c=hw({ThisExpression:function(e){o.superThises.push(e)}});function l(e){return gs(o.file.addHelper("createClass"),e)}function u(){if(function(){for(var e,t=o.path.get("body"),r=i(t.get("body"));!(e=r()).done;)if(e.value.isClassMethod({kind:"constructor"}))return;var a;a=o.isDerived?pj.statement.ast(xge||(xge=h(["{\n super(...arguments);\n }"]))):ps([]),t.unshiftContainer("body",Ro("constructor",Ps("constructor"),[],a))}(),function(){for(var e,t=o.path.get("body.body"),r=function(){var t=e.value,r=t.node;if(t.isClassProperty()||t.isClassPrivateProperty())throw t.buildCodeFrameError("Missing class properties transform.");if(r.decorators)throw t.buildCodeFrameError("Method has decorators, put the decorator plugin before the classes one.");if(ze(r)){var a="constructor"===r.kind;new cK({methodPath:t,objectRef:o.classRef,superRef:o.superName,constantSuper:n.constantSuper,file:o.file,refToPreserve:o.classRef}).replace();var i,c=[];if(t.traverse(hw({ReturnStatement:function(e){e.getFunctionParent().isArrowFunctionExpression()||c.push(e)}})),a)!function(e,t,r){d({userConstructorPath:r,userConstructor:t,hasConstructor:!0,superReturns:e});var a=o.construct;mm(a,t),a.params=t.params,Cy(a.body,t.body),a.body.directives=t.body.directives,(o.hasInstanceDescriptors||o.hasStaticDescriptors)&&p();f()}(c,r,t);else t.ensureFunctionName(s),r!==t.node&&(i=t.node,t.replaceWith(r)),function(e,t){if("method"===e.kind&&function(e){if(n.setClassMethods&&!e.decorators){var t=o.classRef;e.static||(!function(){if(null===o.protoAlias){d({protoAlias:o.scope.generateUidIdentifier("proto")});var e=Bs(o.classRef,Ps("prototype")),t=Zs("var",[eo(o.protoAlias,e)]);o.body.push(t)}}(),t=o.protoAlias);var r=Bs(sm(t),e.key,e.computed||dr(e.key)),a=Ts(e.id,e.params,e.body,e.generator,e.async);Cy(a,e);var s=Rs(is("=",r,a));return mm(s,e),o.body.push(s),!0}return!1}(e))return;var r=e.static?"static":"instance",a=o.methods[r],s="method"===e.kind?"value":e.kind,i=ue(e.key)||tt(e.key)?Cs(String(e.key.value)):hy(e);a.hasComputed=!le(i);var c,l=null!=t?t:by(e);if(!a.hasComputed&&a.map.has(i.value))(c=a.map.get(i.value))[s]=l,"value"===s?(c.get=null,c.set=null):c.value=null;else{var u;(u={key:i})[s]=l,c=u,a.list.push(c),a.hasComputed||a.map.set(i.value,c)}}(r,i)}},a=i(t);!(e=a()).done;)r()}(),function(){if(!o.isDerived)return;var e=o.userConstructorPath,t=e.get("body"),r=e.get("body"),a=r.node.body.length;e.traverse(c);var s=function(){var t=e.scope.generateDeclaredUidIdentifier("this");return a++,s=function(){return sm(t)},t},d=function(){return gs(o.file.addHelper("assertThisInitialized"),[s()])},l=[];e.traverse(hw({Super:function(e){var t=e.node,r=e.parentPath;r.isCallExpression({callee:t})&&l.unshift(r)}}));for(var u=function(){var e,i=f[p];(function(e,t,r,a){var s,i=e.node;if(n.superIsCallableConstructor)i.arguments.unshift({type:"ThisExpression"}),2===i.arguments.length&&Xe(i.arguments[1])&&ie(i.arguments[1].argument,{name:"arguments"})?(i.arguments[1]=i.arguments[1].argument,i.callee=Bs(sm(t),Ps("apply"))):i.callee=Bs(sm(t),Ps("call")),s=Ns("||",i,{type:"ThisExpression"});else{var d,c=[{type:"ThisExpression"},sm(o.classRef)];if(null!=(d=i.arguments)&&d.length){var l=i.arguments;1===l.length&&Xe(l[0])&&ie(l[0].argument,{name:"arguments"})?c.push(l[0].argument):c.push(os(l))}s=gs(function(e){if(jge.has(e))return(sm||dm)(jge.get(e));try{return e.addHelper("callSuper")}catch(e){}var t=e.scope.generateUidIdentifier("callSuper");jge.set(e,t);var r=Rge({CALL_SUPER:t,GET_PROTOTYPE_OF:e.addHelper("getPrototypeOf"),POSSIBLE_CONSTRUCTOR_RETURN:e.addHelper("possibleConstructorReturn")}),a=y(e.path.unshiftContainer("body",[r]),1)[0];return e.scope.registerDeclaration(a),sm(t)}(o.file),c)}e.parentPath.isExpressionStatement()&&e.parentPath.container===a.node.body&&a.node.body.length-1===e.parentPath.key?(o.superThises.length&&(s=is("=",r(),s)),e.parentPath.replaceWith(Ws(s))):e.replaceWith(is("=",r(),s))}(i,o.superName,s,t),a>=0)&&i.find(function(t){if(t===r)return a=Math.min(a,e.key),!0;var n=t.type;switch(n){case"ExpressionStatement":case"SequenceExpression":case"AssignmentExpression":case"BinaryExpression":case"MemberExpression":case"CallExpression":case"NewExpression":case"VariableDeclarator":case"VariableDeclaration":case"BlockStatement":case"ArrayExpression":case"ObjectExpression":case"ObjectProperty":case"TemplateLiteral":return e=t,!1;default:if("LogicalExpression"===n&&t.node.left===e.node||t.isConditional()&&t.node.test===e.node||"OptionalCallExpression"===n&&t.node.callee===e.node||"OptionalMemberExpression"===n&&t.node.object===e.node)return e=t,!1}return a=-1,!0})},p=0,f=l;p<f.length;p++)u();for(var g,m,h=new Set,b=function(){var e,t=g.value,n=t.node;if(t.parentPath.isMemberExpression({object:n}))return t.replaceWith(s()),1;t.find(function(t){if(t.parentPath===r)return e=t.key,!0});var o=t.parentPath.isSequenceExpression()?t.parentPath:t;o="arguments"===o.listKey&&(o.parentPath.isCallExpression()||o.parentPath.isOptionalCallExpression())?o.parentPath:null,-1!==a&&e>a||h.has(o)?t.replaceWith(s()):(o&&h.add(o),t.replaceWith(d()))},v=i(o.superThises);!(g=v()).done;)b();m=o.isLoose?function(e){var t=d();return e?Ns("||",e,t):t}:function(e){var t=[s()];return null!=e&&t.push(e),gs(o.file.addHelper("possibleConstructorReturn"),t)};var x=t.get("body"),R=-1!==a&&a<x.length;x.length&&x.pop().isReturnStatement()||t.pushContainer("body",Ws(R?s():d()));for(var j,w=i(o.superReturns);!(j=w()).done;){var E=j.value;E.get("argument").replaceWith(m(E.node.argument))}}(),o.userConstructor){var e,t=o.constructorBody,r=o.userConstructor,a=o.construct;(e=t.body).push.apply(e,b(r.body.body)),Cy(a,r),Cy(t,r.body)}p()}function p(){f();for(var e,t=o.body,r={instance:null,static:null},a=i(["static","instance"]);!(e=a()).done;){var n=e.value;o.methods[n].list.length&&(r[n]=o.methods[n].list.map(function(e){for(var t,r=Ls([qs(Ps("key"),e.key)]),a=i(["get","set","value"]);!(t=a()).done;){var n=t.value;null!=e[n]&&r.properties.push(qs(Ps(n),e[n]))}return r}))}if(r.instance||r.static){for(var s=[sm(o.classRef),r.instance?os(r.instance):{type:"NullLiteral"},r.static?os(r.static):{type:"NullLiteral"}],d=0,c=0;c<s.length;c++)pe(s[c])||(d=c);s=s.slice(0,d+1),t.push(Ws(l(s))),o.pushedCreateClass=!0}}function f(){o.isDerived&&!o.pushedInherits&&(o.pushedInherits=!0,o.body.unshift(Rs(gs(o.file.addHelper(o.isLoose?"inheritsLoose":"inherits"),[sm(o.classRef),sm(o.superName)]))))}return function(e,t,r,a){d({parent:e.parent,scope:e.scope,node:e.node,path:e,file:t,isLoose:a}),d({classId:o.node.id,classRef:o.node.id?Ps(o.node.id.name):o.scope.generateUidIdentifier("class"),superName:o.node.superClass,isDerived:!!o.node.superClass,constructorBody:ps([])}),d({extendsNative:ie(o.superName)&&r.has(o.superName.name)&&!o.scope.hasBinding(o.superName.name,!0)});var s=o.classRef,c=o.node,p=o.constructorBody;d({construct:wge(s,p,c)}),function(){for(var e,t=o.dynamicKeys,r=o.node,a=o.scope,n=i(r.body.body);!(e=n()).done;){var s=e.value;if(ze(s)&&s.computed&&!a.isPure(s.key,!0)){var d=a.generateUidIdentifierBasedOnNode(s.key);t.set(d.name,s.key),s.key=d}}}();var f=o.body,g=function(){var e=o.superName,t=o.dynamicKeys,r=[],a=[];if(o.isDerived){var n=sm(e);o.extendsNative&&DH(n=gs(o.file.addHelper("wrapNativeSuper"),[n]));var s=o.scope.generateUidIdentifierBasedOnNode(e);r.push(s),a.push(n),d({superName:sm(s)})}for(var c,l=i(t);!(c=l()).done;){var u=y(c.value,2),p=u[0],f=u[1];r.push(Ps(p)),a.push(f)}return{closureParams:r,closureArgs:a}}(),m=g.closureParams,h=g.closureArgs;u(),n.noClassCalls||p.body.unshift(Rs(gs(o.file.addHelper("classCallCheck"),[{type:"ThisExpression"},sm(o.classRef)])));var b=e.isInStrictMode(),v=0===f.length;if(v&&!b)for(var x,R=i(o.construct.params);!(x=R()).done;){if(!ie(x.value)){v=!1;break}}var j=v?o.construct.body.directives:[];if(b||j.push(ls(us("use strict"))),v){var w=by(o.construct);return o.isLoose?w:l([w])}return o.pushedCreateClass||f.push(Ws(o.isLoose?sm(o.classRef):l([sm(o.classRef)]))),f.unshift(o.construct),gs(so(m,ps(f,j)),h)}(e,t,r,a)}var Sge=new Set([].concat(b(["AbortController","AbortSignal","AbsoluteOrientationSensor","AbstractRange","Accelerometer","AI","AICreateMonitor","AITextSession","AnalyserNode","Animation","AnimationEffect","AnimationEvent","AnimationPlaybackEvent","AnimationTimeline","AsyncDisposableStack","Attr","Audio","AudioBuffer","AudioBufferSourceNode","AudioContext","AudioData","AudioDecoder","AudioDestinationNode","AudioEncoder","AudioListener","AudioNode","AudioParam","AudioParamMap","AudioProcessingEvent","AudioScheduledSourceNode","AudioSinkInfo","AudioWorklet","AudioWorkletGlobalScope","AudioWorkletNode","AudioWorkletProcessor","AuthenticatorAssertionResponse","AuthenticatorAttestationResponse","AuthenticatorResponse","BackgroundFetchManager","BackgroundFetchRecord","BackgroundFetchRegistration","BarcodeDetector","BarProp","BaseAudioContext","BatteryManager","BeforeUnloadEvent","BiquadFilterNode","Blob","BlobEvent","Bluetooth","BluetoothCharacteristicProperties","BluetoothDevice","BluetoothRemoteGATTCharacteristic","BluetoothRemoteGATTDescriptor","BluetoothRemoteGATTServer","BluetoothRemoteGATTService","BluetoothUUID","BroadcastChannel","BrowserCaptureMediaStreamTrack","ByteLengthQueuingStrategy","Cache","CacheStorage","CanvasCaptureMediaStream","CanvasCaptureMediaStreamTrack","CanvasGradient","CanvasPattern","CanvasRenderingContext2D","CaptureController","CaretPosition","CDATASection","ChannelMergerNode","ChannelSplitterNode","ChapterInformation","CharacterBoundsUpdateEvent","CharacterData","Clipboard","ClipboardEvent","ClipboardItem","CloseEvent","CloseWatcher","CommandEvent","Comment","CompositionEvent","CompressionStream","ConstantSourceNode","ContentVisibilityAutoStateChangeEvent","ConvolverNode","CookieChangeEvent","CookieDeprecationLabel","CookieStore","CookieStoreManager","CountQueuingStrategy","Credential","CredentialsContainer","CropTarget","Crypto","CryptoKey","CSPViolationReportBody","CSS","CSSAnimation","CSSConditionRule","CSSContainerRule","CSSCounterStyleRule","CSSFontFaceRule","CSSFontFeatureValuesRule","CSSFontPaletteValuesRule","CSSGroupingRule","CSSImageValue","CSSImportRule","CSSKeyframeRule","CSSKeyframesRule","CSSKeywordValue","CSSLayerBlockRule","CSSLayerStatementRule","CSSMarginRule","CSSMathClamp","CSSMathInvert","CSSMathMax","CSSMathMin","CSSMathNegate","CSSMathProduct","CSSMathSum","CSSMathValue","CSSMatrixComponent","CSSMediaRule","CSSNamespaceRule","CSSNestedDeclarations","CSSNumericArray","CSSNumericValue","CSSPageDescriptors","CSSPageRule","CSSPerspective","CSSPositionTryDescriptors","CSSPositionTryRule","CSSPositionValue","CSSPropertyRule","CSSRotate","CSSRule","CSSRuleList","CSSScale","CSSScopeRule","CSSSkew","CSSSkewX","CSSSkewY","CSSStartingStyleRule","CSSStyleDeclaration","CSSStyleRule","CSSStyleSheet","CSSStyleValue","CSSSupportsRule","CSSTransformComponent","CSSTransformValue","CSSTransition","CSSTranslate","CSSUnitValue","CSSUnparsedValue","CSSVariableReferenceValue","CSSViewTransitionRule","CustomElementRegistry","CustomEvent","CustomStateSet","DataTransfer","DataTransferItem","DataTransferItemList","DecompressionStream","DelayNode","DelegatedInkTrailPresenter","DeviceMotionEvent","DeviceMotionEventAcceleration","DeviceMotionEventRotationRate","DeviceOrientationEvent","DevicePosture","DisposableStack","Document","DocumentFragment","DocumentPictureInPicture","DocumentPictureInPictureEvent","DocumentTimeline","DocumentType","DOMError","DOMException","DOMImplementation","DOMMatrix","DOMMatrixReadOnly","DOMParser","DOMPoint","DOMPointReadOnly","DOMQuad","DOMRect","DOMRectList","DOMRectReadOnly","DOMStringList","DOMStringMap","DOMTokenList","DragEvent","DynamicsCompressorNode","EditContext","Element","ElementInternals","EncodedAudioChunk","EncodedVideoChunk","ErrorEvent","Event","EventCounts","EventSource","EventTarget","External","EyeDropper","FeaturePolicy","FederatedCredential","Fence","FencedFrameConfig","FetchLaterResult","File","FileList","FileReader","FileSystem","FileSystemDirectoryEntry","FileSystemDirectoryHandle","FileSystemDirectoryReader","FileSystemEntry","FileSystemFileEntry","FileSystemFileHandle","FileSystemHandle","FileSystemObserver","FileSystemWritableFileStream","FocusEvent","FontData","FontFace","FontFaceSet","FontFaceSetLoadEvent","FormData","FormDataEvent","FragmentDirective","GainNode","Gamepad","GamepadAxisMoveEvent","GamepadButton","GamepadButtonEvent","GamepadEvent","GamepadHapticActuator","GamepadPose","Geolocation","GeolocationCoordinates","GeolocationPosition","GeolocationPositionError","GPU","GPUAdapter","GPUAdapterInfo","GPUBindGroup","GPUBindGroupLayout","GPUBuffer","GPUBufferUsage","GPUCanvasContext","GPUColorWrite","GPUCommandBuffer","GPUCommandEncoder","GPUCompilationInfo","GPUCompilationMessage","GPUComputePassEncoder","GPUComputePipeline","GPUDevice","GPUDeviceLostInfo","GPUError","GPUExternalTexture","GPUInternalError","GPUMapMode","GPUOutOfMemoryError","GPUPipelineError","GPUPipelineLayout","GPUQuerySet","GPUQueue","GPURenderBundle","GPURenderBundleEncoder","GPURenderPassEncoder","GPURenderPipeline","GPUSampler","GPUShaderModule","GPUShaderStage","GPUSupportedFeatures","GPUSupportedLimits","GPUTexture","GPUTextureUsage","GPUTextureView","GPUUncapturedErrorEvent","GPUValidationError","GravitySensor","Gyroscope","HashChangeEvent","Headers","HID","HIDConnectionEvent","HIDDevice","HIDInputReportEvent","Highlight","HighlightRegistry","History","HTMLAllCollection","HTMLAnchorElement","HTMLAreaElement","HTMLAudioElement","HTMLBaseElement","HTMLBodyElement","HTMLBRElement","HTMLButtonElement","HTMLCanvasElement","HTMLCollection","HTMLDataElement","HTMLDataListElement","HTMLDetailsElement","HTMLDialogElement","HTMLDirectoryElement","HTMLDivElement","HTMLDListElement","HTMLDocument","HTMLElement","HTMLEmbedElement","HTMLFencedFrameElement","HTMLFieldSetElement","HTMLFontElement","HTMLFormControlsCollection","HTMLFormElement","HTMLFrameElement","HTMLFrameSetElement","HTMLHeadElement","HTMLHeadingElement","HTMLHRElement","HTMLHtmlElement","HTMLIFrameElement","HTMLImageElement","HTMLInputElement","HTMLLabelElement","HTMLLegendElement","HTMLLIElement","HTMLLinkElement","HTMLMapElement","HTMLMarqueeElement","HTMLMediaElement","HTMLMenuElement","HTMLMetaElement","HTMLMeterElement","HTMLModElement","HTMLObjectElement","HTMLOListElement","HTMLOptGroupElement","HTMLOptionElement","HTMLOptionsCollection","HTMLOutputElement","HTMLParagraphElement","HTMLParamElement","HTMLPictureElement","HTMLPreElement","HTMLProgressElement","HTMLQuoteElement","HTMLScriptElement","HTMLSelectedContentElement","HTMLSelectElement","HTMLSlotElement","HTMLSourceElement","HTMLSpanElement","HTMLStyleElement","HTMLTableCaptionElement","HTMLTableCellElement","HTMLTableColElement","HTMLTableElement","HTMLTableRowElement","HTMLTableSectionElement","HTMLTemplateElement","HTMLTextAreaElement","HTMLTimeElement","HTMLTitleElement","HTMLTrackElement","HTMLUListElement","HTMLUnknownElement","HTMLVideoElement","IDBCursor","IDBCursorWithValue","IDBDatabase","IDBFactory","IDBIndex","IDBKeyRange","IDBObjectStore","IDBOpenDBRequest","IDBRequest","IDBTransaction","IDBVersionChangeEvent","IdentityCredential","IdentityCredentialError","IdentityProvider","IdleDeadline","IdleDetector","IIRFilterNode","Image","ImageBitmap","ImageBitmapRenderingContext","ImageCapture","ImageData","ImageDecoder","ImageTrack","ImageTrackList","Ink","InputDeviceCapabilities","InputDeviceInfo","InputEvent","IntersectionObserver","IntersectionObserverEntry","Keyboard","KeyboardEvent","KeyboardLayoutMap","KeyframeEffect","LanguageDetector","LargestContentfulPaint","LaunchParams","LaunchQueue","LayoutShift","LayoutShiftAttribution","LinearAccelerationSensor","Location","Lock","LockManager","MathMLElement","MediaCapabilities","MediaCapabilitiesInfo","MediaDeviceInfo","MediaDevices","MediaElementAudioSourceNode","MediaEncryptedEvent","MediaError","MediaKeyError","MediaKeyMessageEvent","MediaKeys","MediaKeySession","MediaKeyStatusMap","MediaKeySystemAccess","MediaList","MediaMetadata","MediaQueryList","MediaQueryListEvent","MediaRecorder","MediaRecorderErrorEvent","MediaSession","MediaSource","MediaSourceHandle","MediaStream","MediaStreamAudioDestinationNode","MediaStreamAudioSourceNode","MediaStreamEvent","MediaStreamTrack","MediaStreamTrackAudioSourceNode","MediaStreamTrackAudioStats","MediaStreamTrackEvent","MediaStreamTrackGenerator","MediaStreamTrackProcessor","MediaStreamTrackVideoStats","MessageChannel","MessageEvent","MessagePort","MIDIAccess","MIDIConnectionEvent","MIDIInput","MIDIInputMap","MIDIMessageEvent","MIDIOutput","MIDIOutputMap","MIDIPort","MimeType","MimeTypeArray","ModelGenericSession","ModelManager","MouseEvent","MutationEvent","MutationObserver","MutationRecord","NamedNodeMap","NavigateEvent","Navigation","NavigationActivation","NavigationCurrentEntryChangeEvent","NavigationDestination","NavigationHistoryEntry","NavigationPreloadManager","NavigationTransition","Navigator","NavigatorLogin","NavigatorManagedData","NavigatorUAData","NetworkInformation","Node","NodeFilter","NodeIterator","NodeList","Notification","NotifyPaintEvent","NotRestoredReasonDetails","NotRestoredReasons","Observable","OfflineAudioCompletionEvent","OfflineAudioContext","OffscreenCanvas","OffscreenCanvasRenderingContext2D","Option","OrientationSensor","OscillatorNode","OTPCredential","OverconstrainedError","PageRevealEvent","PageSwapEvent","PageTransitionEvent","PannerNode","PasswordCredential","Path2D","PaymentAddress","PaymentManager","PaymentMethodChangeEvent","PaymentRequest","PaymentRequestUpdateEvent","PaymentResponse","Performance","PerformanceElementTiming","PerformanceEntry","PerformanceEventTiming","PerformanceLongAnimationFrameTiming","PerformanceLongTaskTiming","PerformanceMark","PerformanceMeasure","PerformanceNavigation","PerformanceNavigationTiming","PerformanceObserver","PerformanceObserverEntryList","PerformancePaintTiming","PerformanceResourceTiming","PerformanceScriptTiming","PerformanceServerTiming","PerformanceTiming","PeriodicSyncManager","PeriodicWave","Permissions","PermissionStatus","PERSISTENT","PictureInPictureEvent","PictureInPictureWindow","Plugin","PluginArray","PointerEvent","PopStateEvent","Presentation","PresentationAvailability","PresentationConnection","PresentationConnectionAvailableEvent","PresentationConnectionCloseEvent","PresentationConnectionList","PresentationReceiver","PresentationRequest","PressureObserver","PressureRecord","ProcessingInstruction","Profiler","ProgressEvent","PromiseRejectionEvent","ProtectedAudience","PublicKeyCredential","PushManager","PushSubscription","PushSubscriptionOptions","RadioNodeList","Range","ReadableByteStreamController","ReadableStream","ReadableStreamBYOBReader","ReadableStreamBYOBRequest","ReadableStreamDefaultController","ReadableStreamDefaultReader","RelativeOrientationSensor","RemotePlayback","ReportBody","ReportingObserver","Request","ResizeObserver","ResizeObserverEntry","ResizeObserverSize","Response","RestrictionTarget","RTCCertificate","RTCDataChannel","RTCDataChannelEvent","RTCDtlsTransport","RTCDTMFSender","RTCDTMFToneChangeEvent","RTCEncodedAudioFrame","RTCEncodedVideoFrame","RTCError","RTCErrorEvent","RTCIceCandidate","RTCIceTransport","RTCPeerConnection","RTCPeerConnectionIceErrorEvent","RTCPeerConnectionIceEvent","RTCRtpReceiver","RTCRtpScriptTransform","RTCRtpSender","RTCRtpTransceiver","RTCSctpTransport","RTCSessionDescription","RTCStatsReport","RTCTrackEvent","Scheduler","Scheduling","Screen","ScreenDetailed","ScreenDetails","ScreenOrientation","ScriptProcessorNode","ScrollTimeline","SecurityPolicyViolationEvent","Selection","Sensor","SensorErrorEvent","Serial","SerialPort","ServiceWorker","ServiceWorkerContainer","ServiceWorkerRegistration","ShadowRoot","SharedStorage","SharedStorageAppendMethod","SharedStorageClearMethod","SharedStorageDeleteMethod","SharedStorageModifierMethod","SharedStorageSetMethod","SharedStorageWorklet","SharedWorker","SnapEvent","SourceBuffer","SourceBufferList","SpeechSynthesis","SpeechSynthesisErrorEvent","SpeechSynthesisEvent","SpeechSynthesisUtterance","SpeechSynthesisVoice","StaticRange","StereoPannerNode","Storage","StorageBucket","StorageBucketManager","StorageEvent","StorageManager","StylePropertyMap","StylePropertyMapReadOnly","StyleSheet","StyleSheetList","SubmitEvent","Subscriber","SubtleCrypto","SuppressedError","SVGAElement","SVGAngle","SVGAnimatedAngle","SVGAnimatedBoolean","SVGAnimatedEnumeration","SVGAnimatedInteger","SVGAnimatedLength","SVGAnimatedLengthList","SVGAnimatedNumber","SVGAnimatedNumberList","SVGAnimatedPreserveAspectRatio","SVGAnimatedRect","SVGAnimatedString","SVGAnimatedTransformList","SVGAnimateElement","SVGAnimateMotionElement","SVGAnimateTransformElement","SVGAnimationElement","SVGCircleElement","SVGClipPathElement","SVGComponentTransferFunctionElement","SVGDefsElement","SVGDescElement","SVGElement","SVGEllipseElement","SVGFEBlendElement","SVGFEColorMatrixElement","SVGFEComponentTransferElement","SVGFECompositeElement","SVGFEConvolveMatrixElement","SVGFEDiffuseLightingElement","SVGFEDisplacementMapElement","SVGFEDistantLightElement","SVGFEDropShadowElement","SVGFEFloodElement","SVGFEFuncAElement","SVGFEFuncBElement","SVGFEFuncGElement","SVGFEFuncRElement","SVGFEGaussianBlurElement","SVGFEImageElement","SVGFEMergeElement","SVGFEMergeNodeElement","SVGFEMorphologyElement","SVGFEOffsetElement","SVGFEPointLightElement","SVGFESpecularLightingElement","SVGFESpotLightElement","SVGFETileElement","SVGFETurbulenceElement","SVGFilterElement","SVGForeignObjectElement","SVGGElement","SVGGeometryElement","SVGGradientElement","SVGGraphicsElement","SVGImageElement","SVGLength","SVGLengthList","SVGLinearGradientElement","SVGLineElement","SVGMarkerElement","SVGMaskElement","SVGMatrix","SVGMetadataElement","SVGMPathElement","SVGNumber","SVGNumberList","SVGPathElement","SVGPatternElement","SVGPoint","SVGPointList","SVGPolygonElement","SVGPolylineElement","SVGPreserveAspectRatio","SVGRadialGradientElement","SVGRect","SVGRectElement","SVGScriptElement","SVGSetElement","SVGStopElement","SVGStringList","SVGStyleElement","SVGSVGElement","SVGSwitchElement","SVGSymbolElement","SVGTextContentElement","SVGTextElement","SVGTextPathElement","SVGTextPositioningElement","SVGTitleElement","SVGTransform","SVGTransformList","SVGTSpanElement","SVGUnitTypes","SVGUseElement","SVGViewElement","SyncManager","TaskAttributionTiming","TaskController","TaskPriorityChangeEvent","TaskSignal","TEMPORARY","Text","TextDecoder","TextDecoderStream","TextEncoder","TextEncoderStream","TextEvent","TextFormat","TextFormatUpdateEvent","TextMetrics","TextTrack","TextTrackCue","TextTrackCueList","TextTrackList","TextUpdateEvent","TimeEvent","TimeRanges","ToggleEvent","Touch","TouchEvent","TouchList","TrackEvent","TransformStream","TransformStreamDefaultController","TransitionEvent","TreeWalker","TrustedHTML","TrustedScript","TrustedScriptURL","TrustedTypePolicy","TrustedTypePolicyFactory","UIEvent","URL","URLPattern","URLSearchParams","USB","USBAlternateInterface","USBConfiguration","USBConnectionEvent","USBDevice","USBEndpoint","USBInterface","USBInTransferResult","USBIsochronousInTransferPacket","USBIsochronousInTransferResult","USBIsochronousOutTransferPacket","USBIsochronousOutTransferResult","USBOutTransferResult","UserActivation","ValidityState","VideoColorSpace","VideoDecoder","VideoEncoder","VideoFrame","VideoPlaybackQuality","ViewTimeline","ViewTransition","ViewTransitionTypeSet","VirtualKeyboard","VirtualKeyboardGeometryChangeEvent","VisibilityStateEntry","VisualViewport","VTTCue","VTTRegion","WakeLock","WakeLockSentinel","WaveShaperNode","WebAssembly","WebGL2RenderingContext","WebGLActiveInfo","WebGLBuffer","WebGLContextEvent","WebGLFramebuffer","WebGLObject","WebGLProgram","WebGLQuery","WebGLRenderbuffer","WebGLRenderingContext","WebGLSampler","WebGLShader","WebGLShaderPrecisionFormat","WebGLSync","WebGLTexture","WebGLTransformFeedback","WebGLUniformLocation","WebGLVertexArrayObject","WebSocket","WebSocketError","WebSocketStream","WebTransport","WebTransportBidirectionalStream","WebTransportDatagramDuplexStream","WebTransportError","WebTransportReceiveStream","WebTransportSendStream","WGSLLanguageFeatures","WheelEvent","Window","WindowControlsOverlay","WindowControlsOverlayGeometryChangeEvent","Worker","Worklet","WorkletGlobalScope","WritableStream","WritableStreamDefaultController","WritableStreamDefaultWriter","XMLDocument","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload","XMLSerializer","XPathEvaluator","XPathExpression","XPathResult","XRAnchor","XRAnchorSet","XRBoundedReferenceSpace","XRCamera","XRCPUDepthInformation","XRDepthInformation","XRDOMOverlayState","XRFrame","XRHand","XRHitTestResult","XRHitTestSource","XRInputSource","XRInputSourceArray","XRInputSourceEvent","XRInputSourcesChangeEvent","XRJointPose","XRJointSpace","XRLayer","XRLightEstimate","XRLightProbe","XRPose","XRRay","XRReferenceSpace","XRReferenceSpaceEvent","XRRenderState","XRRigidTransform","XRSession","XRSessionEvent","XRSpace","XRSystem","XRTransientInputHitTestResult","XRTransientInputHitTestSource","XRView","XRViewerPose","XRViewport","XRWebGLBinding","XRWebGLDepthInformation","XRWebGLLayer","XSLTProcessor"]),b(ww)));Sge.delete("Iterator");var Tge,Pge=function(e,t){var r,a,n,s;e.assertVersion("*");var o=t.loose,i=void 0!==o&&o,d=null!=(r=e.assumption("setClassMethods"))?r:i,c=null!=(a=e.assumption("constantSuper"))?a:i,l=null!=(n=e.assumption("superIsCallableConstructor"))?n:i,u=null!=(s=e.assumption("noClassCalls"))?s:i,p=!CU("transform-unicode-escapes",e.targets()),f=new WeakSet;return{name:"transform-classes",visitor:{ExportDefaultDeclaration:function(e){e.get("declaration").isClassDeclaration()&&e.splitExportDeclaration()},ClassDeclaration:function(e){var t=e.node,r=t.id?sm(t.id):e.scope.generateUidIdentifier("class");e.replaceWith(Zs("let",[eo(r,by(t))]))},ClassExpression:function(e,t){var r=e.node;if(!f.has(r)){var a=e.ensureFunctionName(p);if(!a||a.node===r){f.add(r);var n=y(e.replaceWith(Ege(e,t.file,Sge,i,{setClassMethods:d,constantSuper:c,superIsCallableConstructor:l,noClassCalls:u},p)),1)[0];if(n.isCallExpression()){DH(n);var s=n.get("callee");s.isArrowFunctionExpression()&&s.arrowFunctionToExpression()}}}}}}},Age=pj.expression.ast(Tge||(Tge=h(["\n function (type, obj, key, fn) {\n var desc = { configurable: true, enumerable: true };\n desc[type] = fn;\n return Object.defineProperty(obj, key, desc);\n }\n "])));Age._compact=!0;var kge=function(e,t){var r;e.assertVersion("*");var a=null!=(r=e.assumption("setComputedProperties"))?r:t.loose,n=a?function(e){for(var t,r=e.computedProps,a=e.state,n=e.initPropExpression,o=e.objId,c=e.body,l=i(r);!(t=l()).done;){var u=t.value;if(!ve(u)||"get"!==u.kind&&"set"!==u.kind)d(sm(o),u,c);else{if(1===r.length)return s(a,n,u);c.push(Rs(s(a,sm(o),u)))}}}:function(e){for(var t,r=e.objId,a=e.body,n=e.computedProps,d=e.state,c=null,l=[],u=i(n);!(t=u()).done;){var p=t.value;c&&10!==c.length||(c=[],l.push(c)),c.push(p)}for(var f=0,g=l;f<g.length;f++){for(var m,y=g[f],h=1===l.length,b=h?e.initPropExpression:sm(r),v=i(y);!(m=v()).done;){var x=m.value;b=!ve(x)||"get"!==x.kind&&"set"!==x.kind?gs(d.addHelper("defineProperty"),[b,hy(x),o(x)]):s(e.state,b,x)}if(h)return b;a.push(Rs(b))}};function s(e,t,r){var a,n=r.kind,s=!r.computed&&ie(r.key)?Cs(r.key.name):r.key,i=o(r);if(e.availableHelper("defineAccessor"))a=e.addHelper("defineAccessor");else{var d=e.file;if(!(a=d.get("fallbackDefineAccessorHelper"))){var c=d.scope.generateUidIdentifier("defineAccessor");d.scope.push({id:c,init:Age}),d.set("fallbackDefineAccessorHelper",a=c)}a=sm(a)}return gs(a,[Cs(n),t,s,i])}function o(e){return xe(e)?e.value:ve(e)?Ts(null,e.params,e.body,e.generator,e.async):void 0}function d(e,t,r){r.push(Rs(is("=",Bs(sm(e),t.key,t.computed||dr(t.key)),o(t))))}return{name:"transform-computed-properties",visitor:{ObjectExpression:{exit:function(e,t){for(var r,s=e.node,o=e.parent,d=e.scope,c=!1,l=i(s.properties);!(r=l()).done;){if(c=!0===r.value.computed)break}if(c){for(var u,p=[],f=[],g=!1,m=i(s.properties);!(u=m()).done;){var y=u.value;Xe(y)||(y.computed&&(g=!0),g?f.push(y):p.push(y))}var h=d.generateUidIdentifierBasedOnNode(o),b=Ls(p),v=[];v.push(Zs("var",[eo(h,b)]));var x=n({scope:d,objId:h,body:v,computedProps:f,initPropExpression:b,state:t});x?e.replaceWith(x):(a&&v.push(Rs(sm(h))),e.replaceWithMultiple(v))}}}}}},Cge=function(e){return e.assertVersion("*"),Vpe({name:"transform-dotall-regex",feature:"dotAllFlag"})};function _ge(e){return ie(e)?e.name:e.value.toString()}var Ige,Dge=function(e){return e.assertVersion("*"),{name:"transform-duplicate-keys",visitor:{ObjectExpression:function(e){for(var t,r=e.node.properties.filter(function(e){return!Xe(e)&&!e.computed}),a=Object.create(null),n=Object.create(null),s=Object.create(null),o=i(r);!(t=o()).done;){var d=t.value,c=_ge(d.key),l=!1;switch(d.kind){case"get":(a[c]||n[c])&&(l=!0),n[c]=!0;break;case"set":(a[c]||s[c])&&(l=!0),s[c]=!0;break;default:(a[c]||n[c]||s[c])&&(l=!0),a[c]=!0}l&&(d.computed=!0,d.key=Cs(c))}}}}},Oge=function(e){e.assertVersion("*");var t=e.types,r=e.template;function a(e,r){return t.callExpression(t.memberExpression(t.identifier("Math"),t.identifier("pow")),[e,r])}function n(e,r){if(r.isStatic(e))return{assign:e,ref:t.cloneNode(e)};if(r.path.isPattern())return null;var a=r.generateUidIdentifierBasedOnNode(e);return r.push({id:a}),{assign:t.assignmentExpression("=",t.cloneNode(a),e),ref:t.cloneNode(a)}}return{name:"transform-exponentiation-operator",visitor:{AssignmentExpression:function(e){var s=e.node,o=e.scope;if("**="===s.operator)if(t.isMemberExpression(s.left)){var i,d,c=n(s.left.object,o);if(!c)return void e.replaceWith(r.expression.ast(Ige||(Ige=h(["(() => ",")()"])),e.node));var l=s.left,u=l.property;if(l.computed){var p=n(u,o);i=t.memberExpression(c.assign,p.assign,!0),d=t.memberExpression(c.ref,p.ref,!0)}else i=t.memberExpression(c.assign,u,!1),d=t.memberExpression(c.ref,t.cloneNode(u),!1);e.replaceWith(t.assignmentExpression("=",i,a(d,s.right)))}else e.replaceWith(t.assignmentExpression("=",s.left,a(t.cloneNode(s.left),s.right)))},BinaryExpression:function(e){var t=e.node;"**"===t.operator&&e.replaceWith(a(t.left,t.right))}}}},Nge=function(e){function t(e){return"string"==typeof e?{type:"CommentBlock",value:e}:e}function r(e){var r,a=e.ofPath,s=e.toPath,o=e.where,i=void 0===o?"trailing":o,d=e.optional,c=void 0!==d&&d,l=e.comments,u=void 0===l?n(a,c):l,p=e.keepType,f=void 0!==p&&p;null!=(r=s)&&r.node||(s=a.getPrevSibling(),i="trailing"),s.node||(s=a.getNextSibling(),i="leading"),s.node||(s=a.parentPath,i="inner"),Array.isArray(u)||(u=[u]);var g=u.map(t);if(!f&&null!=a&&a.node){var m=a.node,y=a.parentPath,h=a.getPrevSibling(),b=a.getNextSibling(),v=!(h.node||b.node),x=m.leadingComments,R=m.trailingComments;v&&x&&y.addComments("inner",x),s.addComments(i,g),a.remove(),v&&R&&y.addComments("inner",R)}else s.addComments(i,g)}function a(e){r({ofPath:e,comments:n(e,e.parent.optional)})}function n(e,t){var r=e.getSource().replace(/\*-\//g,"*-ESCAPED/").replace(/\*\//g,"*-/");return t&&(r="?"+r),r.startsWith(":")||(r=":: "+r),r}function s(e){return"type"===e||"typeof"===e}return e.assertVersion("*"),{name:"transform-flow-comments",inherits:ZV,visitor:{TypeCastExpression:function(e){var t=e.node;r({ofPath:e.get("typeAnnotation"),toPath:e.get("expression"),keepType:!0}),e.replaceWith(Hs(t.expression))},Identifier:function(e){if(!e.parentPath.isFlow()){var t=e.node;t.typeAnnotation?(r({ofPath:e.get("typeAnnotation"),toPath:e,optional:t.optional||t.typeAnnotation.optional}),t.optional&&(t.optional=!1)):t.optional&&(r({toPath:e,comments:":: ?"}),t.optional=!1)}},AssignmentPattern:{exit:function(e){var t=e.node.left;t.optional&&(t.optional=!1)}},Function:function(e){if(!e.isDeclareFunction()){var t=e.node;t.typeParameters&&r({ofPath:e.get("typeParameters"),toPath:e.get("id"),optional:t.typeParameters.optional}),t.returnType&&r({ofPath:e.get("returnType"),toPath:e.get("body"),where:"leading",optional:t.returnType.typeAnnotation.optional})}},ClassProperty:function(e){var t=e.node;t.value?t.typeAnnotation&&r({ofPath:e.get("typeAnnotation"),toPath:e.get("key"),optional:t.typeAnnotation.optional}):a(e)},ExportNamedDeclaration:function(e){var t=e.node;("type"===t.exportKind||hr(t.declaration))&&a(e)},ImportDeclaration:function(e){var t=e.node;if(s(t.importKind))a(e);else{var n=t.specifiers.filter(function(e){return"ImportSpecifier"===e.type&&s(e.importKind)}),o=t.specifiers.filter(function(e){return"ImportSpecifier"!==e.type||!s(e.importKind)});if(t.specifiers=o,n.length>0){var i=sm(t);i.specifiers=n;var d=":: "+bk(i).code;o.length>0?r({toPath:e,comments:d}):r({ofPath:e,comments:d})}}},ObjectPattern:function(e){var t=e.node;t.typeAnnotation&&r({ofPath:e.get("typeAnnotation"),toPath:e,optional:t.optional||t.typeAnnotation.optional})},Flow:function(e){a(e)},Class:function(e){var t=e.node,a=[];if(t.typeParameters){var s=e.get("typeParameters");a.push(n(s,t.typeParameters.optional));var o,i=t.typeParameters.trailingComments;if(i)(o=a).push.apply(o,b(i));s.remove()}if(t.superClass&&(a.length>0&&(r({toPath:e.get("id"),comments:a}),a=[]),t.superTypeParameters)){var d=e.get("superTypeParameters");a.push(n(d,d.node.optional)),d.remove()}if(t.implements){var c="implements "+e.get("implements").map(function(e){return n(e).replace(/^:: /,"")}).join(", ");delete t.implements,1===a.length?a[0]+=" "+c:a.push(":: "+c)}a.length>0&&r({toPath:e.get("body"),where:"leading",comments:a})}}}},Bge=function(e,t){e.assertVersion("*");var r=/@flow(?:\s+(?:strict(?:-local)?|weak))?|@noflow/,a=!1,n=t.requireDirective,s=void 0!==n&&n,o=t.allowDeclareFields,d=void 0!==o&&o;return{name:"transform-flow-strip-types",inherits:ZV,visitor:{Program:function(e,t){var n=t.file.ast.comments;a=!1;var o=!1;if(n)for(var d,c=i(n);!(d=c()).done;){var l=d.value;r.test(l.value)&&(o=!0,l.value=l.value.replace(r,""),l.value.replace(/\*/g,"").trim()||(l.ignore=!0))}!o&&s&&(a=!0)},ImportDeclaration:function(e){if(!a&&e.node.specifiers.length){var t=0;e.node.specifiers.forEach(function(e){var r=e.importKind;"type"!==r&&"typeof"!==r||t++}),t===e.node.specifiers.length&&e.remove()}},Flow:function(e){if(a)throw e.buildCodeFrameError("A @flow directive is required when using Flow annotations with the `requireDirective` option.");e.remove()},ClassPrivateProperty:function(e){a||(e.node.typeAnnotation=null)},Class:function(e){a||(e.node.implements=null,e.get("body.body").forEach(function(e){if(e.isClassProperty()){var t=e.node;if(!d&&t.declare)throw e.buildCodeFrameError("The 'declare' modifier is only allowed when the 'allowDeclareFields' option of @babel/plugin-transform-flow-strip-types or @babel/preset-flow is enabled.");if(t.declare)e.remove();else{if(!d&&!t.value&&!t.decorators)return void e.remove();t.variance=null,t.typeAnnotation=null}}}))},AssignmentPattern:function(e){var t=e.node;a||t.left.optional&&(t.left.optional=!1)},Function:function(e){var t=e.node;if(!a){t.params.length>0&&"Identifier"===t.params[0].type&&"this"===t.params[0].name&&t.params.shift();for(var r=0;r<t.params.length;r++){var n=t.params[r];"AssignmentPattern"===n.type&&(n=n.left),n.optional&&(n.optional=!1)}cr(t)||(t.predicate=null)}},TypeCastExpression:function(e){if(!a){var t=e.node;do{t=t.expression}while(xt(t));e.replaceWith(t)}},CallExpression:function(e){var t=e.node;a||(t.typeArguments=null)},JSXOpeningElement:function(e){var t=e.node;a||(t.typeArguments=null)},OptionalCallExpression:function(e){var t=e.node;a||(t.typeArguments=null)},NewExpression:function(e){var t=e.node;a||(t.typeArguments=null)}}}};var Mge,Fge,Lge,Uge=pj.statement("\n for (var LOOP_OBJECT = OBJECT,\n IS_ARRAY = Array.isArray(LOOP_OBJECT),\n INDEX = 0,\n LOOP_OBJECT = IS_ARRAY ? LOOP_OBJECT : LOOP_OBJECT[Symbol.iterator]();;) {\n INTERMEDIATE;\n if (IS_ARRAY) {\n if (INDEX >= LOOP_OBJECT.length) break;\n ID = LOOP_OBJECT[INDEX++];\n } else {\n INDEX = LOOP_OBJECT.next();\n if (INDEX.done) break;\n ID = INDEX.value;\n }\n }\n"),qge=pj.statements("\n var ITERATOR_COMPLETION = true;\n var ITERATOR_HAD_ERROR_KEY = false;\n var ITERATOR_ERROR_KEY = undefined;\n try {\n for (\n var ITERATOR_KEY = OBJECT[Symbol.iterator](), STEP_KEY;\n !(ITERATOR_COMPLETION = (STEP_KEY = ITERATOR_KEY.next()).done);\n ITERATOR_COMPLETION = true\n ) {}\n } catch (err) {\n ITERATOR_HAD_ERROR_KEY = true;\n ITERATOR_ERROR_KEY = err;\n } finally {\n try {\n if (!ITERATOR_COMPLETION && ITERATOR_KEY.return != null) {\n ITERATOR_KEY.return();\n }\n } finally {\n if (ITERATOR_HAD_ERROR_KEY) {\n throw ITERATOR_ERROR_KEY;\n }\n }\n }\n");function Gge(e,t){var r,a,n,s=e.node,o=e.scope,i=e.parent,d=s.left;if(ie(d)||ur(d)||me(d))a=d,n=null;else{if(!Ae(d))throw t.buildCodeFrameError(d,"Unknown node type "+d.type+" in ForStatement");a=o.generateUidIdentifier("ref"),r=Zs(d.kind,[eo(d.declarations[0].id,Ps(a.name))]),n=Zs("var",[eo(Ps(a.name))])}var c,l=o.generateUidIdentifier("iterator"),u=o.generateUidIdentifier("isArray"),p=Uge({LOOP_OBJECT:l,IS_ARRAY:u,OBJECT:s.right,INDEX:o.generateUidIdentifier("i"),ID:a,INTERMEDIATE:n}),f=ce(i);return f&&(c=ks(i.label,p)),{replaceParent:f,declar:r,node:c||p,loop:p}}function Wge(e,t){var r,a=e.node,n=e.scope,s=e.parent,o=a.left,i=n.generateUid("step"),d=Bs(Ps(i),Ps("value"));if(ie(o)||ur(o)||me(o))r=Rs(is("=",o,d));else{if(!Ae(o))throw t.buildCodeFrameError(o,"Unknown node type "+o.type+" in ForStatement");r=Zs(o.kind,[eo(o.declarations[0].id,d)])}var c=qge({ITERATOR_HAD_ERROR_KEY:n.generateUidIdentifier("didIteratorError"),ITERATOR_COMPLETION:n.generateUidIdentifier("iteratorNormalCompletion"),ITERATOR_ERROR_KEY:n.generateUidIdentifier("iteratorError"),ITERATOR_KEY:n.generateUidIdentifier("iterator"),STEP_KEY:Ps(i),OBJECT:a.right}),l=ce(s),u=c[3].block.body,p=u[0];return l&&(u[0]=ks(s.label,p)),{replaceParent:l,declar:r,loop:p,node:c}}function Vge(e,t,r){var a,n=e.get("body"),s=null!=r?r:n.node;return Q(s)&&Object.keys(e.getBindingIdentifiers()).some(function(e){return n.scope.hasOwnBinding(e)})?a=ps([t,s]):(a=gy(s)).body.unshift(t),a}var Hge=function(e,t){var r,a,n;e.assertVersion("*");var s=t.assumeArray,o=t.allowArrayLike;if(!0===t.loose&&!0===s)throw new Error("The loose and assumeArray options cannot be used together in @babel/plugin-transform-for-of");if(!0===s&&!0===o)throw new Error("The assumeArray and allowArrayLike options cannot be used together in @babel/plugin-transform-for-of");if(o&&/^7\.\d\./.test(e.version))throw new Error("The allowArrayLike is only supported when using @babel/core@^7.10.0");var i=null!=(r=t.assumeArray)?r:!t.loose&&e.assumption("iterableIsArray"),d=null!=(a=t.allowArrayLike)?a:e.assumption("arrayLikeIsIterable"),c=null!=(n=e.assumption("skipForOfIteratorClosing"))?n:t.loose;if(i&&d)throw new Error('The "iterableIsArray" and "arrayLikeIsIterable" assumptions are not compatible.');if(i)return{name:"transform-for-of",visitor:{ForOfStatement:function(e){var t=e.scope,r=e.node,a=r.left;if(!r.await){var n=bK(e.node.right),s=t.generateUidIdentifier("i"),o=t.maybeGenerateMemoised(n,!0);!o&&ie(n)&&e.get("body").scope.hasOwnBinding(n.name)&&(o=t.generateUidIdentifier("arr"));var i=[eo(s,_s(0))];o?i.push(eo(o,n)):o=n;var d,c=Bs(sm(o),sm(s),!0);Ae(a)?(d=a).declarations[0].init=c:d=Rs(is("=",a,c)),e.replaceWith(Es(Zs("let",i),ds("<",sm(s),Bs(sm(o),Ps("length"))),Qs("++",sm(s)),Vge(e,d)))}}}};var l=pj(Mge||(Mge=h(["\n for (var KEY = 0, NAME = ARR; KEY < NAME.length; KEY++) BODY;\n "]))),u=pj.statements(Fge||(Fge=h(["\n for (var ITERATOR_HELPER = CREATE_ITERATOR_HELPER(OBJECT, ARRAY_LIKE_IS_ITERABLE), STEP_KEY;\n !(STEP_KEY = ITERATOR_HELPER()).done;) BODY;\n "]))),p=pj.statements(Lge||(Lge=h(["\n var ITERATOR_HELPER = CREATE_ITERATOR_HELPER(OBJECT, ARRAY_LIKE_IS_ITERABLE), STEP_KEY;\n try {\n for (ITERATOR_HELPER.s(); !(STEP_KEY = ITERATOR_HELPER.n()).done;) BODY;\n } catch (err) {\n ITERATOR_HELPER.e(err);\n } finally {\n ITERATOR_HELPER.f();\n }\n "]))),f=c?{build:u,helper:"createForOfIteratorHelperLoose",getContainer:function(e){return e}}:{build:p,helper:"createForOfIteratorHelper",getContainer:function(e){return e[1].block.body}};return{name:"transform-for-of",visitor:{ForOfStatement:function(e,t){var r=e.get("right");if(r.isArrayExpression()||r.isGenericType("Array")||lt(r.getTypeAnnotation()))e.replaceWith(function(e){var t=e.node,r=e.scope,a=r.generateUidIdentifierBasedOnNode(t.right,"arr"),n=r.generateUidIdentifier("i"),s=l({BODY:t.body,KEY:n,NAME:a,ARR:t.right});Cy(s,t);var o,i=Bs(sm(a),sm(n),!0),d=t.left;return Ae(d)?(d.declarations[0].init=i,o=d):o=Rs(is("=",d,i)),s.body=Vge(e,o,s.body),s}(e));else if(t.availableHelper(f.helper)){var a,n=e.node,s=e.parent,o=e.scope,i=n.left,u=o.generateUid("step"),p=Bs(Ps(u),Ps("value"));a=Ae(i)?Zs(i.kind,[eo(i.declarations[0].id,p)]):Rs(is("=",i,p));var g=f.build({CREATE_ITERATOR_HELPER:t.addHelper(f.helper),ITERATOR_HELPER:o.generateUidIdentifier("iterator"),ARRAY_LIKE_IS_ITERABLE:d?Ds(!0):null,STEP_KEY:Ps(u),OBJECT:n.right,BODY:Vge(e,a)}),m=f.getContainer(g);Cy(m[0],n),Cy(m[0].body,n.body),ce(s)?(m[0]=ks(s.label,m[0]),e.parentPath.replaceWithMultiple(g),e.skip()):e.replaceWithMultiple(g)}else!function(e,t,r){var a,n=e?Gge:Wge,s=t.node,o=n(t,r),i=o.declar,d=o.loop,c=d.body;t.ensureBlock(),i&&c.body.push(i),(a=c.body).push.apply(a,b(s.body.body)),Cy(d,s),Cy(d.body,s.body),o.replaceParent?(t.parentPath.replaceWithMultiple(o.node),t.remove()):t.replaceWithMultiple(o.node)}(c,e,t)}}}},zge=function(e){e.assertVersion("*");var t=!CU("transform-unicode-escapes",e.targets());return{name:"transform-function-name",visitor:{FunctionExpression:{exit:function(e){"value"===e.key||e.parentPath.isObjectProperty()||e.ensureFunctionName(t)}},ObjectProperty:function(e){var r=e.get("value");r.isFunction()&&r.ensureFunctionName(t)}}}},Kge=function(e){return e.assertVersion("*"),{name:"transform-instanceof",visitor:{BinaryExpression:function(e){var t=e.node;if("instanceof"===t.operator){var r=this.addHelper("instanceof"),a=e.findParent(function(e){return e.isVariableDeclarator()&&e.node.id===r||e.isFunctionDeclaration()&&e.node.id&&e.node.id.name===r.name});if(a)return;e.replaceWith(gs(r,[t.left,t.right]))}}}}},Xge=function(e){return e.assertVersion("*"),{name:"transform-jscript",visitor:{FunctionExpression:{exit:function(e){var t=e.node;t.id&&e.replaceWith(gs(Ts(null,[],ps([Py(t),Ws(sm(t.id))])),[]))}}}}},Jge=["node"];var Yge,$ge,Qge,Zge,eme,tme,rme,ame,nme,sme,ome,ime,dme,cme,lme,ume,pme,fme,gme,mme,yme,hme={compatData:{webIMR:{chrome:"105.0.0",edge:"105.0.0",firefox:"106.0.0",opera:"91.0.0",safari:"16.4.0",opera_mobile:"72.0.0",ios:"16.4.0",samsung:"20.0",deno:"1.24.0"},nodeIMR:{node:"20.6.0"},nodeFSP:{node:"10.0.0"}}},bme=new WeakMap;function vme(e){if(bme.has(e))return bme.get(e);var t,r=e.node,a=u(e,Jge),n=null==r,s=(t=a,0===Object.keys(t).length),o=!n||s,i=!s||n,d=!s&&!CU("webIMR",a,hme),c={needsNodeSupport:o,needsWebSupport:i,nodeSupportsIMR:!n&&!CU("nodeIMR",{node:r},hme),webSupportsIMR:d,nodeSupportsFsPromises:!n&&!CU("nodeFSP",{node:r},hme)};return bme.set(e,c),c}function xme(e,t,r){return $N(e,t,r,{importedType:"es6"})}var Rme,jme,wme,Eme,Sme,Tme=function(e){return pj.expression.ast(Yge||(Yge=h(["\n import.meta.resolve(",")\n"])),e)},Pme=function(e){return pj.expression.ast($ge||($ge=h(["\n import.meta.resolve?.(",") ?? new URL(",", import.meta.url)\n"])),e,sm(e))};function Ame(e,t,r){var a,n,s=vme(e),o=s.needsNodeSupport,i=s.needsWebSupport,d=s.nodeSupportsIMR,c=s.webSupportsIMR,l=s.nodeSupportsFsPromises,u=null!=t.commonJS,p=function(e){var t=e.web,a=void 0===t?i:t,n=e.node,s=void 0===n?o:n,p=e.nodeFSP,f=void 0===p?l:p,g=e.webIMR,m=void 0===g?c:g,y=e.nodeIMR,h=void 0===y?d:y,b=e.toCJS,v=void 0===b?r:b,x=e.supportIsomorphicCJS;return+a+(+s<<1)+(+m<<2)+(+h<<3)+(+v<<4)+(+f<<5)+(+(void 0===x?u:x)<<6)},f=function(e,t){return l?pj.expression.ast(Qge||(Qge=h(["",".promises.readFile(",")"])),e,t):pj.expression.ast(Zge||(Zge=h(["\n new Promise(\n (a =>\n (r, j) => ",".readFile(a, (e, d) => e ? j(e) : r(d))\n )(",")\n )"])),e,t)};switch(p({web:i,node:o,webIMR:c,nodeIMR:d,toCJS:r})){case p({toCJS:!0,supportIsomorphicCJS:!0}):n=function(e){return t.commonJS(Ps("require"),e)};break;case p({web:!0,node:!0}):a=function(e){var r=t.webFetch(gs(Ps("fetch"),[(c?Tme:Pme)(sm(e))])),a=u?pj.expression.ast(eme||(eme=h(['\n import("module").then(module => ',")\n "])),t.commonJS(pj.expression.ast(tme||(tme=h(["module.createRequire(import.meta.url)"]))),e)):d?pj.expression.ast(rme||(rme=h(['\n import("fs").then(\n fs => ',"\n ).then(",")\n "])),f(Ps("fs"),pj.expression.ast(ame||(ame=h(["new URL(",")"])),Tme(e))),t.nodeFsAsync()):pj.expression.ast(nme||(nme=h(['\n Promise.all([import("fs"), import("module")])\n .then(([fs, module]) =>\n ',"\n )\n .then(",")\n "])),f(Ps("fs"),pj.expression.ast(sme||(sme=h(["\n module.createRequire(import.meta.url).resolve(",")\n "])),e)),t.nodeFsAsync());return pj.expression.ast(ome||(ome=h(['\n typeof process === "object" && process.versions?.node\n ? ',"\n : ","\n "])),a,r)};break;case p({web:!0,node:!1,webIMR:!0}):a=function(e){return t.webFetch(gs(Ps("fetch"),[Tme(e)]))};break;case p({web:!0,node:!1,webIMR:!1}):a=function(e){return t.webFetch(gs(Ps("fetch"),[Pme(e)]))};break;case p({web:!1,node:!0,toCJS:!0}):n=function(e){return t.nodeFsSync(pj.expression.ast(ime||(ime=h(['\n require("fs").readFileSync(require.resolve(',"))\n "])),e))},a=function(e){return pj.expression.ast(dme||(dme=h(['\n require("fs").promises.readFile(require.resolve(',"))\n .then(",")\n "])),e,t.nodeFsAsync())};break;case p({web:!1,node:!0,toCJS:!1,supportIsomorphicCJS:!0}):n=function(e,r){return t.commonJS(pj.expression.ast(cme||(cme=h(["\n ","(import.meta.url)\n "])),xme(r,"createRequire","module")),e)};break;case p({web:!1,node:!0,toCJS:!1,nodeIMR:!0}):n=function(e,r){return t.nodeFsSync(pj.expression.ast(lme||(lme=h(["\n ","(\n new URL(",")\n )\n "])),xme(r,"readFileSync","fs"),Tme(e)))},a=function(e,r){return pj.expression.ast(ume||(ume=h(["\n ","\n .readFile(new URL(","))\n .then(",")\n "])),xme(r,"promises","fs"),Tme(e),t.nodeFsAsync())};break;case p({web:!1,node:!0,toCJS:!1,nodeIMR:!1}):n=function(e,r){return t.nodeFsSync(pj.expression.ast(pme||(pme=h(["\n ","(\n ","(import.meta.url)\n .resolve(",")\n )\n "])),xme(r,"readFileSync","fs"),xme(r,"createRequire","module"),e))},a=function(e,r){return t.webFetch(pj.expression.ast(fme||(fme=h(["\n ","\n .readFile(\n ","(import.meta.url)\n .resolve(",")\n )\n "])),xme(r,"promises","fs"),xme(r,"createRequire","module"),e))};break;default:throw new Error("Internal Babel error: unreachable code.")}null!=a||(a=n);var g=n;return n||(g=r?function(e,t){throw t.buildCodeFrameError("Cannot compile to CommonJS, since it would require top-level await.")}:a),{buildFetch:g,buildFetchAsync:function(e,t){return le(e)?pj.expression.ast(gme||(gme=h(["\n Promise.resolve().then(() => ",")\n "])),a(e,t)):pj.expression.ast(mme||(mme=h(["\n Promise.resolve(`${","}`).then((s) => ",")\n "],["\n Promise.resolve(\\`\\${","}\\`).then((s) => ",")\n "])),e,a(Ps("s"),t))},needsAwait:!n}}var kme,Cme=function(e,t){var r=e.types,a=e.template;e.assertVersion("*");var n,s,o=e.targets(),d={commonJS:t.uncheckedRequire?function(e,t){return r.callExpression(e,[t])}:null,webFetch:function(e){return a.expression.ast(Rme||(Rme=h(["",".then(r => r.json())"])),e)},nodeFsSync:function(e){return a.expression.ast(jme||(jme=h(["JSON.parse(",")"])),e)},nodeFsAsync:function(){return a.expression.ast(wme||(wme=h(["JSON.parse"])))}};function c(e){var t=e.key;return r.isIdentifier(t)?t.name:t.value}function l(e){return!(null==e||!e.some(function(e){return"type"===c(e)&&"json"===e.value.value}))}return{name:"transform-json-modules",inherits:aH,visitor:{Program:function(e){if("module"===e.node.sourceType){for(var t,r=function(e){var t=e.get("@babel/plugin-transform-modules-*");if("commonjs"===t)return null!=s?s:s=Ame(o,d,!0);if(null==t)return null!=n?n:n=Ame(o,d,!1);throw new Error("@babel/plugin-transform-json-modules can only be used when not compiling modules, or when compiling them to CommonJS.")}(this.file),u=[],p=i(e.get("body"));!(t=p()).done;){var f=t.value;if(f.isImportDeclaration()){var g=f.node.attributes||f.node.assertions;if(l(g)){if(null!=f.node.phase)throw f.buildCodeFrameError("JSON modules do not support phase modifiers.");if(g.length>1)throw(f.node.attributes?f.get("attributes"):f.get("assertions"))["type"===c(g[0])?1:0].buildCodeFrameError("Unknown attribute for JSON modules.");for(var m,y=void 0,b=!1,v=i(f.get("specifiers"));!(m=v()).done;){var x=m.value;if(x.isImportSpecifier())throw x.buildCodeFrameError("JSON modules do not support named imports.");y=x.node.local,b=x.isImportNamespaceSpecifier()}null!=y||(y=e.scope.generateUidIdentifier("_"));var R=r.buildFetch(f.node.source,e);b&&(R=r.needsAwait?a.expression.ast(Eme||(Eme=h(["\n ",".then(j => ({ default: j }))\n "])),R):a.expression.ast(Sme||(Sme=h(["{ default: "," }"])),R)),u.push({id:y,fetch:R}),f.remove()}}}if(0!==u.length){var j=function(e,t){if(0===e.length)return null;var r=[];if(1===e.length){var a=e[0].fetch;t&&(a=ko(a)),r.push(eo(e[0].id,a))}else if(t){var n=e.map(function(e){return e.id}),s=e.map(function(e){return e.fetch});r.push(eo(no(n),ko(pj.expression.ast(yme||(yme=h(["\n Promise.all(",")\n "])),os(s)))))}else for(var o,d=i(e);!(o=d()).done;){var c=o.value,l=c.id,u=c.fetch;r.push(eo(l,u))}return Zs("const",r)}(u,r.needsAwait);j&&e.unshiftContainer("body",j)}}}}}},_me=function(e){return e.assertVersion("*"),{name:"transform-literals",visitor:{NumericLiteral:function(e){var t=e.node;t.extra&&/^0[ob]/i.test(t.extra.raw)&&(t.extra=void 0)},StringLiteral:function(e){var t=e.node;t.extra&&/\\u/i.test(t.extra.raw)&&(t.extra=void 0)}}}},Ime=function(e){return e.assertVersion("*"),{name:"transform-member-expression-literals",visitor:{MemberExpression:{exit:function(e){var t=e.node,r=t.property;t.computed||!ie(r)||Hy(r.name)||(t.property=Cs(r.name),t.computed=!0)}}}}},Dme=pj.statement("\n define(MODULE_NAME, AMD_ARGUMENTS, function(IMPORT_NAMES) {\n })\n"),Ome=pj.statement('\n define(["require"], function(REQUIRE) {\n })\n');function Nme(e,t){var r=e.node,a=r.body,n=r.directives;e.node.directives=[],e.node.body=[];var s=e.pushContainer("body",t)[0].get("expression").get("arguments"),o=s[s.length-1].get("body");o.pushContainer("directives",n),o.pushContainer("body",a)}var Bme,Mme,Fme=function(e,t){var r,a,n;e.assertVersion("*");var s=t.allowTopLevelThis,o=t.strict,d=t.strictMode,c=t.importInterop,l=t.noInterop,u=null!=(r=e.assumption("constantReexports"))?r:t.loose,p=null!=(a=e.assumption("enumerableModuleMeta"))?a:t.loose;return{name:"transform-modules-amd",pre:function(){this.file.set("@babel/plugin-transform-modules-*","amd")},visitor:(n={},n["CallExpression"+(e.types.importExpression?"|ImportExpression":"")]=function(e,t){if(this.file.has("@babel/plugin-proposal-dynamic-import")&&(!e.isCallExpression()||e.get("callee").isImport())){var r=t.requireId,a=t.resolveId,n=t.rejectId;r||(r=e.scope.generateUidIdentifier("require"),t.requireId=r),a&&n||(a=e.scope.generateUidIdentifier("resolve"),n=e.scope.generateUidIdentifier("reject"),t.resolveId=a,t.rejectId=n);var s=Ps("imported");l||(s=ZB(this.file.path,s,"namespace")),e.replaceWith(OB(e.node,!1,!1,function(e){return pj.expression.ast(kme||(kme=h(["\n new Promise((",", ",") =>\n ","(\n [","],\n imported => ","(","),\n ","\n )\n )\n "])),a,n,r,e,sm(a),s,sm(n))}))}},n.Program={exit:function(e,r){var a=r.requireId;if(LN(e)){var n=[],f=[];a&&(n.push(Cs("require")),f.push(sm(a)));var g=YB(this.file.opts,t);g&&(g=Cs(g));var m=$B(e,{enumerableModuleMeta:p,constantReexports:u,strict:o,strictMode:d,allowTopLevelThis:s,importInterop:c,noInterop:l,filename:this.file.opts.filename}),h=m.meta,v=m.headers;TB(h)&&(n.push(Cs("exports")),f.push(Ps(h.exportName)));for(var x,R=i(h.source);!(x=R()).done;){var j=y(x.value,2),w=j[0],E=j[1];if(n.push(Cs(w)),f.push(Ps(E.name)),!PB(E)){var S=ZB(e,Ps(E.name),E.interop);if(S){var T=Rs(is("=",Ps(E.name),S));T.loc=E.loc,v.push(T)}}v.push.apply(v,b(eM(h,E,u)))}QB(v),e.unshiftContainer("body",v),Nme(e,Dme({MODULE_NAME:g,AMD_ARGUMENTS:os(n),IMPORT_NAMES:f}))}else a&&Nme(e,Ome({REQUIRE:sm(a)}))}},n)}},Lme=function(e){return pj.expression.ast(Bme||(Bme=h(["require(",")"])),e)},Ume=function(e,t){return gs(t.addHelper("interopRequireWildcard"),[Lme(e)])};var qme,Gme,Wme="@babel/plugin-transform-modules-commonjs/customWrapperPlugin";function Vme(e,t){var r=e.get(Wme);r||e.set(Wme,r=[]),r.push(t)}function Hme(e,t){if(e)for(var r,a=i(e);!(r=a()).done;){var n=t(r.value);if(null!=n)return n}}var zme=function(e,t){var r,a,n,s;e.assertVersion("*");var o=t.strictNamespace,d=void 0!==o&&o,c=t.mjsStrictNamespace,l=void 0===c?d:c,u=t.allowTopLevelThis,p=t.strict,f=t.strictMode,g=t.noInterop,m=t.importInterop,v=t.lazy,x=void 0!==v&&v,R=t.allowCommonJSExports,j=void 0===R||R,w=t.loose,E=void 0!==w&&w,S=null!=(r=e.assumption("constantReexports"))?r:E,T=null!=(a=e.assumption("enumerableModuleMeta"))?a:E,P=null!=(n=e.assumption("noIncompleteNsImportDetection"))&&n;if(!("boolean"==typeof x||"function"==typeof x||Array.isArray(x)&&x.every(function(e){return"string"==typeof e})))throw new Error(".lazy must be a boolean, array of strings, or a function");if("boolean"!=typeof d)throw new Error(".strictNamespace must be a boolean, or undefined");if("boolean"!=typeof l)throw new Error(".mjsStrictNamespace must be a boolean, or undefined");var A=function(e){return pj.expression.ast(qme||(qme=h(['\n (function(){\n throw new Error(\n "The CommonJS \'" + "','" + "\' variable is not available in ES6 modules." +\n "Consider setting setting sourceType:script or sourceType:unambiguous in your " +\n "Babel config for this file.");\n })()\n '])),e)},k={ReferencedIdentifier:function(e){var t=e.node.name;if("module"===t||"exports"===t){var r=e.scope.getBinding(t);this.scope.getBinding(t)!==r||e.parentPath.isObjectProperty({value:e.node})&&e.parentPath.parentPath.isObjectPattern()||e.parentPath.isAssignmentExpression({left:e.node})||e.isAssignmentExpression({left:e.node})||e.replaceWith(A(t))}},UpdateExpression:function(e){var t=e.get("argument");if(t.isIdentifier()){var r=t.node.name;if("module"===r||"exports"===r){var a=e.scope.getBinding(r);this.scope.getBinding(r)===a&&e.replaceWith(is(e.node.operator[0]+"=",t.node,A(r)))}}},AssignmentExpression:function(e){var t=this,r=e.get("left");if(r.isIdentifier()){var a=r.node.name;if("module"!==a&&"exports"!==a)return;var n=e.scope.getBinding(a);if(this.scope.getBinding(a)!==n)return;var s=e.get("right");s.replaceWith(Vs([s.node,A(a)]))}else if(r.isPattern()){var o=r.getOuterBindingIdentifiers(),i=Object.keys(o).find(function(r){return("module"===r||"exports"===r)&&t.scope.getBinding(r)===e.scope.getBinding(r)});if(i){var d=e.get("right");d.replaceWith(Vs([d.node,A(i)]))}}}};return{name:"transform-modules-commonjs",pre:function(){this.file.set("@babel/plugin-transform-modules-*","commonjs"),x&&Vme(this.file,function(e){return{name:"@babel/plugin-transform-modules-commonjs/lazy",version:"7.28.6",getWrapperPayload:function(t,r){return PB(r)||r.reexportAll?null:!0===e?t.includes(".")?null:"lazy/function":Array.isArray(e)?e.includes(t)?"lazy/function":null:"function"==typeof e?e(t)?"lazy/function":null:void 0},buildRequireWrapper:function(e,t,r,a){if("lazy/function"===r)return!!a&&pj.statement.ast(Mme||(Mme=h(["\n function ","() {\n const data = ",";\n "," = function(){ return data; };\n return data;\n }\n "])),e,t,e)},wrapReference:function(e,t){if("lazy/function"===t)return gs(e,[])}}}(x))},visitor:(s={},s["CallExpression"+(e.types.importExpression?"|ImportExpression":"")]=function(e){if(this.file.has("@babel/plugin-proposal-dynamic-import")&&(!e.isCallExpression()||et(e.node.callee))){var t=e.scope;do{t.rename("require")}while(t=t.parent);!function(e,t,r){var a=t?Lme:Ume;e.replaceWith(OB(e.node,!0,!1,function(e){return a(e,r)}))}(e,g,this.file)}},s.Program={exit:function(e,r){if(LN(e)){e.scope.rename("exports"),e.scope.rename("module"),e.scope.rename("require"),e.scope.rename("__filename"),e.scope.rename("__dirname"),j||e.traverse(k,{scope:e.scope});var a=YB(this.file.opts,t);a&&(a=Cs(a));for(var n,s=function(e){var t=e.get(Wme);return{getWrapperPayload:function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return Hme(t,function(e){return null==e.getWrapperPayload?void 0:e.getWrapperPayload.apply(e,r)})},wrapReference:function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return Hme(t,function(e){return null==e.wrapReference?void 0:e.wrapReference.apply(e,r)})},buildRequireWrapper:function(){for(var e=arguments.length,r=new Array(e),a=0;a<e;a++)r[a]=arguments[a];return Hme(t,function(e){return null==e.buildRequireWrapper?void 0:e.buildRequireWrapper.apply(e,r)})}}}(this.file),o=$B(e,{exportName:"exports",constantReexports:S,enumerableModuleMeta:T,strict:p,strictMode:f,allowTopLevelThis:u,noInterop:g,importInterop:m,wrapReference:s.wrapReference,getWrapperPayload:s.getWrapperPayload,esNamespaceOnly:"string"==typeof r.filename&&r.filename.endsWith(".mjs")?l:d,noIncompleteNsImportDetection:P,filename:this.file.opts.filename}),c=o.meta,v=o.headers,R=i(c.source);!(n=R()).done;){var w=y(n.value,2),E=w[0],A=w[1],C=gs(Ps("require"),[Cs(E)]),_=void 0;if(PB(A)){if(x&&"function"===A.wrap)throw new Error("Assertion failure");_=Rs(C)}else{var I=ZB(e,C,A.interop)||C;if(A.wrap){var D=s.buildRequireWrapper(A.name,I,A.wrap,A.referenced);if(!1===D)continue;_=D}null!=_||(_=pj.statement.ast(Gme||(Gme=h(["\n var "," = ",";\n "])),A.name,I))}_.loc=A.loc,v.push(_),v.push.apply(v,b(eM(c,A,S,s.wrapReference)))}QB(v),e.unshiftContainer("body",v),e.get("body").forEach(function(e){v.includes(e.node)&&e.isVariableDeclaration()&&e.scope.registerDeclaration(e)})}}},s)}},Kme=pj.statement('\n SYSTEM_REGISTER(MODULE_NAME, SOURCES, function (EXPORT_IDENTIFIER, CONTEXT_IDENTIFIER) {\n "use strict";\n BEFORE_BODY;\n return {\n setters: SETTERS,\n execute: EXECUTE,\n };\n });\n'),Xme=pj.statement('\n for (var KEY in TARGET) {\n if (KEY !== "default" && KEY !== "__esModule") EXPORT_OBJ[KEY] = TARGET[KEY];\n }\n');function Jme(e,t){if("Identifier"===e.type)return e.name;if("StringLiteral"===e.type){var r=e.value;return Lr(r)||t.add(r),r}throw new Error("Expected export specifier to be either Identifier or StringLiteral, got "+e.type)}function Yme(e,t,r,a,n,s){var o=[];if(n){var i=e.scope.generateUid("exportObj");o.push(Zs("var",[eo(Ps(i),Ls([]))])),o.push(Xme({KEY:e.scope.generateUidIdentifier("key"),EXPORT_OBJ:Ps(i),TARGET:n}));for(var d=0;d<r.length;d++){var c=r[d],l=a[d];o.push(Rs(is("=",Bs(Ps(i),Ps(c)),l)))}o.push(Rs(gs(t,[Ps(i)])))}else if(1===r.length)o.push(Rs(gs(t,[Cs(r[0]),a[0]])));else{for(var u=[],p=0;p<r.length;p++){var f=r[p],g=a[p];u.push(qs(s.has(f)?Cs(f):Ps(f),g))}o.push(Rs(gs(t,[Ls(u)])))}return o}var $me=function(e,t){var r;e.assertVersion("*");var a=t.systemGlobal,n=void 0===a?"System":a,s=t.allowTopLevelThis,o=void 0!==s&&s,d=new WeakSet,c={"AssignmentExpression|UpdateExpression":function(e){if(!d.has(e.node)){d.add(e.node);var t=e.isAssignmentExpression()?e.get("left"):e.get("argument");if(t.isObjectPattern()||t.isArrayPattern()){for(var r=[e.node],a=0,n=Object.keys(t.getBindingIdentifiers());a<n.length;a++){var s=n[a];if(this.scope.getBinding(s)!==e.scope.getBinding(s))return;var o=this.exports[s];if(o)for(var c,l=i(o);!(c=l()).done;){var u=c.value;r.push(this.buildCall(u,Ps(s)).expression)}}e.replaceWith(Vs(r))}else if(t.isIdentifier()){var p=t.node.name;if(this.scope.getBinding(p)===e.scope.getBinding(p)){var f=this.exports[p];if(f){var g=e.node,m=Pe(g,{prefix:!1});m&&(g=ds(g.operator[0],$s("+",sm(g.argument)),_s(1)));for(var y,h=i(f);!(y=h()).done;){var b=y.value;g=this.buildCall(b,g).expression}m&&(g=Vs([g,e.node])),e.replaceWith(g)}}}}}};return{name:"transform-modules-systemjs",pre:function(){this.file.set("@babel/plugin-transform-modules-*","systemjs")},visitor:(r={},r["CallExpression"+(e.types.importExpression?"|ImportExpression":"")]=function(e,t){if(!e.isCallExpression()||et(e.node.callee)){if(e.isCallExpression())this.file.has("@babel/plugin-proposal-dynamic-import")||console.warn("WARNING: Dynamic import() transformation must be enabled using the\n @babel/plugin-transform-dynamic-import plugin. Babel 8 will\n no longer transform import() without using that plugin.\n");else if(!this.file.has("@babel/plugin-proposal-dynamic-import"))throw new Error("ERROR: Dynamic import() transformation must be enabled using the\n @babel/plugin-transform-dynamic-import plugin. Babel 8\n no longer transforms import() without using that plugin.\n");e.replaceWith(OB(e.node,!1,!0,function(e){return gs(Bs(Ps(t.contextIdent),Ps("import")),[e])}))}},r.MetaProperty=function(e,t){"import"===e.node.meta.name&&"meta"===e.node.property.name&&e.replaceWith(Bs(Ps(t.contextIdent),Ps("meta")))},r.ReferencedIdentifier=function(e,t){"__moduleName"!==e.node.name||e.scope.hasBinding("__moduleName")||e.replaceWith(Bs(Ps(t.contextIdent),Ps("id")))},r.Program={enter:function(e,t){t.contextIdent=e.scope.generateUid("context"),t.stringSpecifiers=new Set,o||rB(e)},exit:function(e,r){var a=e.scope,s=a.generateUid("export"),o=r.contextIdent,d=r.stringSpecifiers,l=Object.create(null),u=[],p=[],f=[],g=[],m=[],y=[];function h(e,t){l[e]=l[e]||[],l[e].push(t)}function v(e,t,r){var a;u.forEach(function(t){t.key===e&&(a=t)}),a||u.push(a={key:e,imports:[],exports:[]}),a[t]=a[t].concat(r)}function x(e,t){return Rs(gs(Ps(s),[Cs(e),t]))}for(var R,j=[],w=[],E=i(e.get("body"));!(R=E()).done;){var S=R.value;if(S.isFunctionDeclaration())p.push(S.node),y.push(S);else if(S.isClassDeclaration())m.push(sm(S.node.id)),S.replaceWith(Rs(is("=",sm(S.node.id),by(S.node))));else if(S.isVariableDeclaration())S.node.kind="var";else if(S.isImportDeclaration()){v(S.node.source.value,"imports",S.node.specifiers);for(var T=0,P=Object.keys(S.getBindingIdentifiers());T<P.length;T++){var A=P[T];a.removeBinding(A),m.push(Ps(A))}S.remove()}else if(S.isExportAllDeclaration())v(S.node.source.value,"exports",S.node),S.remove();else if(S.isExportDefaultDeclaration()){var k=S.node.declaration;if(Ne(k)){var C=k.id;C?(j.push("default"),w.push(a.buildUndefinedNode()),m.push(sm(C)),h(C.name,"default"),S.replaceWith(Rs(is("=",sm(C),by(k))))):(j.push("default"),w.push(by(k)),y.push(S))}else if(se(k)){var _=k.id;_?(p.push(k),j.push("default"),w.push(sm(_)),h(_.name,"default")):(j.push("default"),w.push(by(k))),y.push(S)}else S.replaceWith(x("default",k))}else if(S.isExportNamedDeclaration()){var I=S.node.declaration;if(I)if(S.replaceWith(I),nr(I)){var D=I.id.name;h(D,D),p.push(I),j.push(D),w.push(sm(I.id)),y.push(S)}else if(pr(I)){var O=I.id.name;j.push(O),w.push(a.buildUndefinedNode()),m.push(sm(I.id)),S.replaceWith(Rs(is("=",sm(I.id),by(I)))),h(O,O)}else{Ae(I)&&(I.kind="var");for(var N=0,B=Object.keys(Iy(I));N<B.length;N++){var M=B[N];h(M,M)}}else{var F=S.node.specifiers;if(null!=F&&F.length)if(S.node.source)v(S.node.source.value,"exports",F),S.remove();else{for(var L,U=[],q=i(F);!(L=q()).done;){var G=L.value,W=G.local,V=G.exported,H=a.getBinding(W.name),z=Jme(V,d);H&&se(H.path.node)?(j.push(z),w.push(sm(W))):H||U.push(x(z,W)),h(W.name,z)}S.replaceWithMultiple(U)}else S.remove()}}}u.forEach(function(t){for(var r,n=[],o=a.generateUid(t.key),c=i(t.imports);!(r=c()).done;){var l=r.value;if(We(l)?n.push(Rs(is("=",l.local,Ps(o)))):Ge(l)&&(l=bo(l.local,Ps("default"))),Ve(l)){var u=l.imported;n.push(Rs(is("=",l.local,Bs(Ps(o),l.imported,"StringLiteral"===u.type))))}}if(t.exports.length){for(var p,m=[],y=[],h=!1,v=i(t.exports);!(p=v()).done;){var x=p.value;if(Be(x))h=!0;else if(Le(x)){var R=Jme(x.exported,d);m.push(R),y.push(Bs(Ps(o),x.local,le(x.local)))}}n.push.apply(n,b(Yme(e,Ps(s),m,y,h?Ps(o):null,d)))}g.push(Cs(t.key)),f.push(Ts(null,[Ps(o)],ps(n)))});var K=YB(this.file.opts,t);K&&(K=Cs(K)),e.scope.hoistVariables(function(e,t){if(m.push(e),!t&&e.name in l)for(var r,a=i(l[e.name]);!(r=a()).done;){var n=r.value;j.push(n),w.push(tm())}}),m.length&&p.unshift(Zs("var",m.map(function(e){return eo(e)}))),j.length&&p.push.apply(p,b(Yme(e,Ps(s),j,w,null,d))),e.traverse(c,{exports:l,buildCall:x,scope:a});for(var X=0,J=y;X<J.length;X++){J[X].remove()}var Y=!1;e.traverse({AwaitExpression:function(e){Y=!0,e.stop()},Function:function(e){e.skip()},noScope:!0}),e.node.body=[Kme({SYSTEM_REGISTER:Bs(Ps(n),Ps("register")),BEFORE_BODY:p,MODULE_NAME:K,SETTERS:os(f),EXECUTE:Ts(null,[],ps(e.node.body),!1,Y),SOURCES:os(g),EXPORT_IDENTIFIER:Ps(s),CONTEXT_IDENTIFIER:Ps(o)})],e.requeue(e.get("body.0"))}},r)}},Qme=pj("\n GLOBAL_REFERENCE = GLOBAL_REFERENCE || {}\n"),Zme=pj('\n (function (global, factory) {\n if (typeof define === "function" && define.amd) {\n define(MODULE_NAME, AMD_ARGUMENTS, factory);\n } else if (typeof exports !== "undefined") {\n factory(COMMONJS_ARGUMENTS);\n } else {\n var mod = { exports: {} };\n factory(BROWSER_ARGUMENTS);\n\n GLOBAL_TO_ASSIGN;\n }\n })(\n typeof globalThis !== "undefined" ? globalThis\n : typeof self !== "undefined" ? self\n : this,\n function(IMPORT_NAMES) {\n })\n'),eye=function(e,t){var r,a;e.assertVersion("*");var n=t.globals,s=t.exactGlobals,o=t.allowTopLevelThis,d=t.strict,c=t.strictMode,l=t.noInterop,u=t.importInterop,p=null!=(r=e.assumption("constantReexports"))?r:t.loose,f=null!=(a=e.assumption("enumerableModuleMeta"))?a:t.loose;function g(e,t,r,a){var n=a?a.value:yB(r,hB(r)),s=Bs(Ps("global"),Ps(my(n))),o=[];if(t){var i=e[n];if(i){o=[];var d=i.split(".");s=d.slice(1).reduce(function(e,t){return o.push(Qme({GLOBAL_REFERENCE:sm(e)})),Bs(e,Ps(t))},Bs(Ps("global"),Ps(d[0])))}}return o.push(Rs(is("=",s,Bs(Ps("mod"),Ps("exports"))))),o}function m(e,t,r){var a;if(t){var n=e[r];a=n?n.split(".").reduce(function(e,t){return Bs(e,Ps(t))},Ps("global")):Bs(Ps("global"),Ps(my(r)))}else{var s=yB(r,hB(r)),o=e[s]||s;a=Bs(Ps("global"),Ps(my(o)))}return a}return{name:"transform-modules-umd",visitor:{Program:{exit:function(e){if(LN(e)){var r,a=n||{},h=YB(this.file.opts,t);h&&(r=Cs(h));var v=$B(e,{constantReexports:p,enumerableModuleMeta:f,strict:d,strictMode:c,allowTopLevelThis:o,noInterop:l,importInterop:u,filename:this.file.opts.filename}),x=v.meta,R=v.headers,j=[],w=[],E=[],S=[];TB(x)&&(j.push(Cs("exports")),w.push(Ps("exports")),E.push(Bs(Ps("mod"),Ps("exports"))),S.push(Ps(x.exportName)));for(var T,P=i(x.source);!(T=P()).done;){var A=y(T.value,2),k=A[0],C=A[1];if(j.push(Cs(k)),w.push(gs(Ps("require"),[Cs(k)])),E.push(m(a,s,k)),S.push(Ps(C.name)),!PB(C)){var _=ZB(e,Ps(C.name),C.interop);if(_){var I=Rs(is("=",Ps(C.name),_));I.loc=x.loc,R.push(I)}}R.push.apply(R,b(eM(x,C,p)))}QB(R),e.unshiftContainer("body",R);var D=e.node,O=D.body,N=D.directives;e.node.directives=[],e.node.body=[];var B=e.pushContainer("body",[Zme({MODULE_NAME:r,AMD_ARGUMENTS:os(j),COMMONJS_ARGUMENTS:w,BROWSER_ARGUMENTS:E,IMPORT_NAMES:S,GLOBAL_TO_ASSIGN:g(a,s,this.filename||"unknown",r)})])[0].get("expression.arguments")[1].get("body");B.pushContainer("directives",N),B.pushContainer("body",O)}}}}}},tye=function(e,t){var r=t.runtime;if(void 0!==r&&"boolean"!=typeof r)throw new Error("The 'runtime' option must be boolean");return Vpe({name:"transform-named-capturing-groups-regex",feature:"namedCaptureGroups",options:{runtime:r}})},rye=function(e){return e.assertVersion("*"),{name:"transform-new-target",visitor:{MetaProperty:function(e){var t=e.get("meta"),r=e.get("property"),a=e.scope;if(t.isIdentifier({name:"new"})&&r.isIdentifier({name:"target"})){var n=e.findParent(function(e){return!!e.isClass()||!(!e.isFunction()||e.isArrowFunctionExpression())&&!e.isClassMethod({kind:"constructor"})});if(!n)throw e.buildCodeFrameError("new.target must be under a (non-arrow) function or a class.");var s=n.node;if(cr(s))return void e.replaceWith(a.buildUndefinedNode());var o=Bs({type:"ThisExpression"},Ps("constructor"));if(n.isClass())return void e.replaceWith(o);if(s.id)for(var i=e.scope,d=s.id.name;i!==n.parentPath.scope;)i.hasOwnBinding(d)&&!i.bindingIdentifierEquals(d,s.id)&&i.rename(d),i=i.parent;else s.id=a.generateUidIdentifier("target");e.replaceWith(ys(ds("instanceof",{type:"ThisExpression"},sm(s.id)),o,a.buildUndefinedNode()))}}}}},aye=function(e){return e.assertVersion("*"),{name:"transform-object-assign",visitor:{CallExpression:function(e,t){e.get("callee").matchesPattern("Object.assign")&&(e.node.callee=t.addHelper("extends"))}}}};var nye=function(e){e.assertVersion("*");var t=new Set;return{name:"transform-object-super",visitor:{Loop:{exit:function(e){t.forEach(function(r){r.scopePath===e&&(e.scope.push({id:r.id,kind:"let"}),e.scope.crawl(),e.requeue(),t.delete(r))})}},ObjectExpression:function(e,r){var a,n=function(){return a=a||e.scope.generateUidIdentifier("obj")};if(e.get("properties").forEach(function(e){e.isMethod()&&function(e,t,r){new cK({getObjectRef:t,methodPath:e,file:r}).replace()}(e,n,r.file)}),a){var s=e.findParent(function(e){return e.isFunction()||e.isProgram()||e.isLoop()});s.isLoop()?t.add({scopePath:s,id:sm(a)}):e.scope.push({id:sm(a),kind:"var"}),e.replaceWith(is("=",sm(a),e.node))}}}}},sye=function(e){return e.assertVersion("*"),{name:"transform-object-set-prototype-of-to-assign",visitor:{CallExpression:function(e,t){e.get("callee").matchesPattern("Object.setPrototypeOf")&&(e.node.callee=t.addHelper("defaults"))}}}},oye=function(e){return e.assertVersion("*"),{name:"transform-property-literals",visitor:{ObjectProperty:{exit:function(e){var t=e.node,r=t.key;t.computed||!ie(r)||Hy(r.name)||(t.key=Cs(r.name))}}}}};function iye(e){var t=Ls([]);return Object.keys(e).forEach(function(r){var a=e[r];a.configurable=Ds(!0),a.enumerable=Ds(!0);var n=Ls([]),s=qs(a._key,n,a._computed);Object.keys(a).forEach(function(e){var t=a[e];if(!e.startsWith("_")){var r=qs(Ps(e),t);mm(r,t),ym(t),n.properties.push(r)}}),t.properties.push(s)}),t}var dye,cye=function(e){return e.assertVersion("*"),{name:"transform-property-mutators",visitor:{ObjectExpression:function(e){var t,r=e.node,a=r.properties.filter(function(e){return!(ve(e)&&!e.computed&&("get"===e.kind||"set"===e.kind))||(function(e,t){var r,a=Ty(t),n=null!=(r=e[a])?r:e[a]={_inherits:[],_key:t.key};n._inherits.push(t);var s=Ts(null,t.params,t.body,t.generator,t.async);s.returnType=t.returnType,mm(s,t),n[t.kind]=s}(null!=t?t:t={},e),!1)});void 0!==t&&(r.properties=a,e.replaceWith(gs(Bs(Ps("Object"),Ps("defineProperties")),[r,iye(t)])))}}}},lye=function(e){function t(e){return!Xe(e)&&le(hy(e,e.key),{value:"__proto__"})}function r(e){var t=e;return me(t)&&le(hy(t,t.property),{value:"__proto__"})}function a(e,t,r){return Rs(gs(r.addHelper("defaults"),[t,e.right]))}return e.assertVersion("*"),{name:"transform-proto-to-assign",visitor:{AssignmentExpression:function(e,t){var n=t.file;if(r(e.node.left)){var s=[],o=e.node.left.object,i=e.scope.maybeGenerateMemoised(o);i&&s.push(Rs(is("=",i,o))),s.push(a(e.node,sm(i||o),n)),i&&s.push(sm(i)),e.replaceWithMultiple(s)}},ExpressionStatement:function(e,t){var n=t.file,s=e.node.expression;$(s,{operator:"="})&&r(s.left)&&e.replaceWith(a(s,s.left.object,n))},ObjectExpression:function(e,r){for(var a,n=r.file,s=e.node,o=s.properties,i=0;i<o.length;i++){var d=o[i];if(t(d)){a=d.value,o.splice(i,1);break}}if(a){var c=[Ls([]),a];s.properties.length&&c.push(s),e.replaceWith(gs(n.addHelper("extends"),c))}}}}},uye=function(e,t){e.assertVersion("*");var r=t.allowMutablePropsOnTags;if(null!=r&&!Array.isArray(r))throw new Error(".allowMutablePropsOnTags must be an array, null, or undefined.");var a=new WeakMap;function n(e,t){if(Pt(e,{name:"this"})||Pt(e,{name:"arguments"})||Pt(e,{name:"super"})||Pt(e,{name:"new"})){var r=t.path;return r.isFunctionParent()&&!r.isArrowFunctionExpression()}return t.hasOwnBinding(e.name)}function s(e){var t=e.path;return t.isFunctionParent()||t.isLoop()||t.isProgram()}var o={ReferencedIdentifier:function(e,t){for(var r=e.node,a=e.scope;a!==t.jsxScope;){if(n(r,a))return;a=a.parent}for(;a;){if(a===t.targetScope)return;if(n(r,a))break;a=a.parent}t.targetScope=function(e){for(;!s(e);)e=e.parent;return e}(a)}},i={enter:function(e,t){var r,a=function(){t.isImmutable=!1,e.stop()},n=function(){e.skip()};if(e.isJSXClosingElement())n();else if(e.isJSXIdentifier({name:"ref"})&&e.parentPath.isJSXAttribute({name:e.node}))a();else if(!(e.isJSXIdentifier()||e.isJSXMemberExpression()||e.isJSXNamespacedName()||e.isImmutable())){if(e.isIdentifier()){var s=e.scope.getBinding(e.node.name);if(null!=s&&s.constant)return}var i=t.mutablePropsAllowed;if(i&&e.isFunction())return e.traverse(o,t),void n();if(e.isPure()){var d=e.evaluate();if(d.confident){var c=d.value;if(i||null===c||"object"!=typeof c&&"function"!=typeof c)return void n()}else if(null!=(r=d.deopt)&&r.isIdentifier())return;a()}else a()}}},d=Object.assign({},i,o);return{name:"transform-react-constant-elements",visitor:{"JSXElement|JSXFragment":function(e){if(!a.has(e.node)){var t,n,o=!1;if(e.isJSXElement()){if(t=e.node.openingElement.name,null!=r){for(var i=t;At(i);)i=i.property;var c=i.name;o=r.includes(c)}}else t=e.node;for(var l=e;!n&&l.parentPath.isJSX();)l=l.parentPath,n=a.get(l.node);null!=n||(n=e.scope),a.set(e.node,n);var u={isImmutable:!0,mutablePropsAllowed:o,jsxScope:n,targetScope:e.scope.getProgramParent()};if(e.traverse(d,u),u.isImmutable){for(var p=u.targetScope,f=n;;){if(p===f)return;if(s(f))break;if(!(f=f.parent))throw new Error("Internal @babel/plugin-transform-react-constant-elements error: targetScope must be an ancestor of jsxScope. This is a Babel bug, please report it.")}var g=e.scope.generateUidBasedOnNode(t);p.push({id:Ps(g)}),a.set(e.node,p);var m=pj.expression.ast(dye||(dye=h(["\n "," || ("," = ",")\n "])),Ps(g),Ps(g),e.node);(e.parentPath.isJSXElement()||e.parentPath.isJSXAttribute()||e.parentPath.isJSXFragment())&&(m=rd(m)),e.replaceWith(m)}}}}}},pye=function(e){function t(e,t){for(var r=t.arguments[0].properties,a=!0,n=0;n<r.length;n++){var s=r[n];if(!Xe(s))if(le(hy(s),{value:"displayName"})){a=!1;break}}a&&r.unshift(qs(Ps("displayName"),Cs(e)))}e.assertVersion("*");var r=Sr("React.createClass");function a(e){if(!e||!Z(e))return!1;if(!r(e.callee)&&!ie(e.callee,{name:"createReactClass"}))return!1;var t=e.arguments;return 1===t.length&&!!be(t[0])}return{name:"transform-react-display-name",visitor:{ExportDefaultDeclaration:function(e,r){var n=e.node;if(a(n.declaration)){var s=r.filename||"unknown",o=bB.basename(s,bB.extname(s));"index"===o&&(o=bB.basename(bB.dirname(s))),t(o,n.declaration)}},CallExpression:function(e){var r,n=e.node;a(n)&&(e.find(function(e){if(e.isAssignmentExpression())r=e.node.left;else if(e.isObjectProperty())r=e.node.key;else if(e.isVariableDeclarator())r=e.node.id;else if(e.isStatement())return!0;if(r)return!0}),r&&(me(r)&&(r=r.property),ie(r)&&t(r.name,n)))}}}},fye=Jy,gye=fye.booleanLiteral,mye=fye.callExpression,yye=fye.identifier,hye=fye.inherits,bye=fye.isIdentifier,vye=fye.isJSXExpressionContainer,xye=fye.isJSXIdentifier,Rye=fye.isJSXMemberExpression,jye=fye.isJSXNamespacedName,wye=fye.isJSXSpreadAttribute,Eye=fye.isObjectExpression,Sye=fye.isReferenced,Tye=fye.isStringLiteral,Pye=fye.isValidIdentifier,Aye=fye.memberExpression,kye=fye.nullLiteral,Cye=fye.objectExpression,_ye=fye.objectProperty,Iye=fye.react,Dye=fye.spreadElement,Oye=fye.stringLiteral,Nye=fye.thisExpression;function Bye(e){var t={JSXNamespacedName:function(t){if(e.throwIfNamespace)throw t.buildCodeFrameError("Namespace tags are not supported by default. React's JSX doesn't support namespace tags. You can set `throwIfNamespace: false` to bypass this warning.")},JSXSpreadChild:function(e){throw e.buildCodeFrameError("Spread children are not supported in React.")}};return t.JSXElement={exit:function(t,s){var o=function(t,s){if(e.filter&&!e.filter(t.node,s))return;var o=t.get("openingElement");t.node.children=Iye.buildChildren(t.node);var i,d=r(o.node.name,o.node),c=[];bye(d)?i=d.name:Tye(d)&&(i=d.value);var l={tagExpr:d,tagName:i,args:c,pure:!1};e.pre&&e.pre(l,s);var u,p=o.node.attributes;u=p.length?function(e,t){var r=[],s=[],o=t.opts.useSpread,i=void 0!==o&&o;if("boolean"!=typeof i)throw new Error("transform-react-jsx currently only accepts a boolean option for useSpread (defaults to false)");var d,c=t.opts.useBuiltIns||!1;if("boolean"!=typeof c)throw new Error("transform-react-jsx currently only accepts a boolean option for useBuiltIns (defaults to false)");if(i&&c)throw new Error("transform-react-jsx currently only accepts useBuiltIns or useSpread but not both");if(i){var l=e.map(a);return Cye(l)}for(;e.length;){var u=e.shift();wye(u)?(r=n(r,s),s.push(u.argument)):r.push(a(u))}if(n(r,s),1===s.length)d=s[0];else{Eye(s[0])||s.unshift(Cye([]));var p=c?Aye(yye("Object"),yye("assign")):t.addHelper("extends");d=mye(p,s)}return d}(p,s):kye();c.push.apply(c,[u].concat(b(t.node.children))),e.post&&e.post(l,s);var f=l.call||mye(l.callee,c);l.pure&&DH(f);return f}(t,s);o&&t.replaceWith(hye(o,t.node))}},t.JSXFragment={exit:function(t,r){if(e.compat)throw t.buildCodeFrameError("Fragment tags are only supported in React 16 and up.");var a=function(t,r){if(e.filter&&!e.filter(t.node,r))return;t.node.children=Iye.buildChildren(t.node);var a=[],n=null,s={tagExpr:r.get("jsxFragIdentifier")(),tagName:n,args:a,pure:!1};e.pre&&e.pre(s,r);a.push.apply(a,[kye()].concat(b(t.node.children))),e.post&&e.post(s,r);r.set("usedFragment",!0);var o=s.call||mye(s.callee,a);s.pure&&DH(o);return o}(t,r);a&&t.replaceWith(hye(a,t.node))}},t;function r(e,t){return xye(e)?"this"===e.name&&Sye(e,t)?Nye():Pye(e.name,!1)?(e.type="Identifier",e):Oye(e.name):Rye(e)?Aye(r(e.object,e),r(e.property,e)):jye(e)?Oye(e.namespace.name+":"+e.name.name):e}function a(e){if(wye(e))return Dye(e.argument);var t,r=function(e){return vye(e)?e.expression:e}(e.value||gye(!0));Tye(r)&&!vye(e.value)&&(r.value=r.value.replace(/\n\s+/g," "),null==(t=r.extra)||delete t.raw);return jye(e.name)?e.name=Oye(e.name.namespace.name+":"+e.name.name.name):Pye(e.name.name,!1)?e.name.type="Identifier":e.name=Oye(e.name.name),hye(_ye(e.name,r),e)}function n(e,t){return e.length?(t.push(Cye(e)),[]):e}}var Mye,Fye=function(e){function t(e,t){return wt(e)&&Pt(e.name,{name:t})}e.assertVersion("*");var r=Bye({filter:function(e){return"JSXElement"===e.type&&!function(e){for(var r=0;r<e.length;r++){var a=e[r];if(_t(a))return!0;if(t(a,"ref"))return!0}return!1}(e.openingElement.attributes)},pre:function(e){var t=e.tagName,r=e.args;Xy.isCompatTag(t)?r.push(Cs(t)):r.push(e.tagExpr)},post:function(e,t){e.callee=t.addHelper("jsx");var r=e.args[1],a=!1;if(be(r)){var n=r.properties.findIndex(function(e){return ie(e.key,{name:"key"})});n>-1&&(e.args.splice(2,0,r.properties[n].value),r.properties.splice(n,1),a=!0)}else pe(r)&&e.args.splice(1,1,Ls([]));!a&&e.args.length>2&&e.args.splice(2,0,$s("void",_s(0))),e.pure=!0}});return{name:"transform-react-inline-elements",visitor:r}},Lye="react",Uye="React.createElement",qye="React.Fragment",Gye=/^\s*(?:\*\s*)?@jsxImportSource\s+(\S+)\s*$/m,Wye=/^\s*(?:\*\s*)?@jsxRuntime\s+(\S+)\s*$/m,Vye=/^\s*(?:\*\s*)?@jsx\s+(\S+)\s*$/m,Hye=/^\s*(?:\*\s*)?@jsxFrag\s+(\S+)\s*$/m,zye=function(e,t){return e.get("@babel/plugin-react-jsx/"+t)},Kye=function(e,t,r){return e.set("@babel/plugin-react-jsx/"+t,r)};function Xye(e){var t=e.name,r=e.development;return function(e,a){var n=a.pure,s=a.throwIfNamespace,o=void 0===s||s,d=a.filter,c=a.runtime,l=void 0===c?r?"automatic":"classic":c,u=a.importSource,p=void 0===u?Lye:u,f=a.pragma,g=void 0===f?Uye:f,m=a.pragmaFrag,y=void 0===m?qye:m,v=a.useSpread,x=void 0!==v&&v,R=a.useBuiltIns,j=void 0!==R&&R;if("classic"===l){if("boolean"!=typeof x)throw new Error("transform-react-jsx currently only accepts a boolean option for useSpread (defaults to false)");if("boolean"!=typeof j)throw new Error("transform-react-jsx currently only accepts a boolean option for useBuiltIns (defaults to false)");if(x&&j)throw new Error("transform-react-jsx currently only accepts useBuiltIns or useSpread but not both")}var w=null;return{name:t,inherits:oH,visitor:{JSXNamespacedName:function(e){if(o)throw e.buildCodeFrameError("Namespace tags are not supported by default. React's JSX doesn't support namespace tags. You can set `throwIfNamespace: false` to bypass this warning.")},JSXSpreadChild:function(e){throw e.buildCodeFrameError("Spread children are not supported in React.")},Program:{enter:function(e,t){var n=t.file,s=l,o=p,d=g,c=y,u=!!a.importSource,f=!!a.pragma,m=!!a.pragmaFrag;if(n.ast.comments)for(var b,v=i(n.ast.comments);!(b=v()).done;){var x=b.value,R=Gye.exec(x.value);R&&(o=R[1],u=!0);var j=Wye.exec(x.value);j&&(s=j[1]);var w=Vye.exec(x.value);w&&(d=w[1],f=!0);var E=Hye.exec(x.value);E&&(c=E[1],m=!0)}if(Kye(t,"runtime",s),"classic"===s){if(u)throw e.buildCodeFrameError("importSource cannot be set when runtime is classic.");var S=Jye(d),T=Jye(c);Kye(t,"id/createElement",function(){return sm(S)}),Kye(t,"id/fragment",function(){return sm(T)}),Kye(t,"defaultPure",d===Uye)}else{if("automatic"!==s)throw e.buildCodeFrameError('Runtime must be either "classic" or "automatic".');if(f||m)throw e.buildCodeFrameError("pragma and pragmaFrag cannot be set when runtime is automatic.");var P=function(a,n){return Kye(t,a,function(e,t,a,n){return function(){var s=function(e,t){switch(t){case"Fragment":return e+"/"+(r?"jsx-dev-runtime":"jsx-runtime");case"jsxDEV":return e+"/jsx-dev-runtime";case"jsx":case"jsxs":return e+"/jsx-runtime";case"createElement":return e}}(n,a);if(LN(t)){var o=zye(e,"imports/"+a);return o?sm(o):(o=$N(t,a,s,{importedInterop:"uncompiled",importPosition:"after"}),Kye(e,"imports/"+a,o),o)}var i=zye(e,"requires/"+s);return i?i=sm(i):(i=QN(t,s,{importedInterop:"uncompiled"}),Kye(e,"requires/"+s,i)),Bs(i,Ps(a))}}(t,e,n,o))};P("id/jsx",r?"jsxDEV":"jsx"),P("id/jsxs",r?"jsxDEV":"jsxs"),P("id/createElement","createElement"),P("id/fragment","Fragment"),Kye(t,"defaultPure",o===Lye)}if(r){var A,k=function(e){return null!==e.superClass},C=function(e,t,r){var a=null!=t?_s(t):{type:"NullLiteral"},n=null!=r?_s(r+1):{type:"NullLiteral"};return pj.expression.ast(Mye||(Mye=h(["{\n fileName: ",",\n lineNumber: ",",\n columnNumber: ",",\n }"])),e,a,n)};if(By(e.node,{enter:function(t,r){if(Ct(t)){var a=t.attributes;(function(e){var t=e.length-1;do{var r=e[t].node;if(sr(r)&&!Ie(r))return!cr(r)||"constructor"!==r.kind||!k(e[t-2].node);if(Xt(r))return!1}while(t-- >0);return!0})(r)&&a.push(Qi(nd("__self"),rd({type:"ThisExpression"}))),a.push(Qi(nd("__source"),rd(function(t){var r=t.loc;return r?(A||(A=e.scope.generateUidIdentifier("_jsxFileName")),C(sm(A),r.start.line,r.start.column)):e.scope.buildUndefinedNode()}(t))))}}}),A){var _=t.filename,I=void 0===_?"":_;e.scope.push({id:A,init:Cs(I)})}}}},JSXFragment:{exit:function(e,t){var a;a="classic"===zye(t,"runtime")?function(e,t){if(d&&!d(e.node,t))return;return E(t,"createElement",[zye(t,"id/fragment")(),{type:"NullLiteral"}].concat(b(Xy.buildChildren(e.node))))}(e,t):function(e,t){var a=[zye(t,"id/fragment")()],n=Xy.buildChildren(e.node);a.push(Ls(n.length>0?[k(n)]:[])),r&&a.push(e.scope.buildUndefinedNode(),Ds(n.length>1));return E(t,n.length>1?"jsxs":"jsx",a)}(e,t),e.replaceWith(Cy(a,e.node))}},JSXElement:{exit:function(e,t){var a;a="classic"===zye(t,"runtime")||function(e){for(var t=e.get("openingElement").node.attributes,r=!1,a=0;a<t.length;a++){var n=t[a];if(r&&wt(n)&&"key"===n.name.name)return!0;_t(n)&&(r=!0)}return!1}(e)?function(e,t){var r=e.get("openingElement");return E(t,"createElement",[C(r),_(t,e,r.get("attributes"))].concat(b(Xy.buildChildren(e.node))))}(e,t):function(e,t){for(var a,n=e.get("openingElement"),s=[C(n)],o=[],d=Object.create(null),c=i(n.get("attributes"));!(a=c()).done;){var l=a.value;if(l.isJSXAttribute()&&Pt(l.node.name)){var u=l.node.name.name;switch(u){case"__source":case"__self":if(d[u])throw Yye(e,u);case"key":var p=T(l.node.value);if(null===p)throw l.buildCodeFrameError('Please provide an explicit key value. Using "key" as a shorthand for "key={true}" is not allowed.');d[u]=p;break;default:o.push(l)}}else o.push(l)}var f,g=Xy.buildChildren(e.node);o.length||g.length?(f=function(e,t){P(e);var r=e.reduce(A,[]);(null==t?void 0:t.length)>0&&r.push(k(t));return Ls(r)}(o,g),w&&mm(f,w)):f=Ls([]);if(s.push(f),r){var m;s.push(null!=(m=d.key)?m:e.scope.buildUndefinedNode(),Ds(g.length>1)),d.__source?(s.push(d.__source),d.__self&&s.push(d.__self)):d.__self&&s.push(e.scope.buildUndefinedNode(),d.__self)}else void 0!==d.key&&s.push(d.key);return E(t,g.length>1?"jsxs":"jsx",s)}(e,t),e.replaceWith(Cy(a,e.node))}},JSXAttribute:function(e){Et(e.node.value)&&(e.node.value=rd(e.node.value))}}};function E(e,t,r){var a=gs(zye(e,"id/"+t)(),r);return(null!=n?n:zye(e,"defaultPure"))&&DH(a),a}function S(e,t){return Pt(e)?"this"===e.name&&Gy(e,t)?{type:"ThisExpression"}:Yr(e.name,!1)?(e.type="Identifier",e):Cs(e.name):At(e)?Bs(S(e.object,e),S(e.property,e)):kt(e)?Cs(e.namespace.name+":"+e.name.name):e}function T(e){return Tt(e)?e.expression:e}function P(e){if(w=null,e.length&&e[0].isJSXSpreadAttribute()){var t=e[0].node.argument;(t.leadingComments||t.trailingComments)&&(w=sm(t))}}function A(e,t){if(_t(t.node)){var r=t.node.argument;return be(r)&&!function(e){return e.properties.some(function(e){return xe(e,{computed:!1,shorthand:!1})&&(ie(e.key,{name:"__proto__"})||le(e.key,{value:"__proto__"}))})}(r)?e.push.apply(e,b(r.properties)):e.push(wo(r)),e}var a,n=T("key"!==t.node.name.name?t.node.value||Ds(!0):t.node.value);if("key"===t.node.name.name&&null===n)throw t.buildCodeFrameError('Please provide an explicit key value. Using "key" as a shorthand for "key={true}" is not allowed.');le(n)&&!Tt(t.node.value)&&(n.value=n.value.replace(/\n\s+/g," "),null==(a=n.extra)||delete a.raw);return kt(t.node.name)?t.node.name=Cs(t.node.name.namespace.name+":"+t.node.name.name.name):Yr(t.node.name.name,!1)?t.node.name.type="Identifier":t.node.name=Cs(t.node.name.name),e.push(Cy(qs(t.node.name,n),t.node)),e}function k(e){var t;if(1===e.length)t=e[0];else{if(!(e.length>1))return;t=os(e)}return qs(Ps("children"),t)}function C(e){var t,r=S(e.node.name,e.node);return ie(r)?t=r.name:le(r)&&(t=r.value),Xy.isCompatTag(t)?Cs(t):r}function _(e,t,r){var a=zye(e,"runtime");if("automatic"!==a){var n=[];P(r);var s=r.reduce(A,[]);if(x)s.length&&n.push(Ls(s));else{var o=0;s.forEach(function(e,t){Xe(e)&&(t>o&&n.push(Ls(s.slice(o,t))),n.push(e.argument),o=t+1)}),s.length>o&&n.push(Ls(s.slice(o)))}return n.length?(w&&mm(n[0],w),1!==n.length||Xe(s[0])&&be(s[0].argument)?(be(n[0])||n.unshift(Ls([])),gs(j?Bs(Ps("Object"),Ps("assign")):e.addHelper("extends"),n)):n[0]):{type:"NullLiteral"}}var d=[],c=Object.create(null);P(r);for(var l,u=i(r);!(l=u()).done;){var p=l.value,f=p.node,g=wt(f)&&Pt(f.name)&&f.name.name;if("automatic"===a&&("__source"===g||"__self"===g)){if(c[g])throw Yye(t,g);c[g]=!0}A(d,p)}var m=1===d.length&&Xe(d[0])&&!be(d[0].argument)?d[0].argument:d.length>0?Ls(d):{type:"NullLiteral"};return w&&mm(m,w),m}}}function Jye(e){return e.split(".").map(function(e){return Ps(e)}).reduce(function(e,t){return Bs(e,t)})}function Yye(e,t){var r="transform-react-jsx-"+t.slice(2);return e.buildCodeFrameError("Duplicate "+t+" prop found. You are most likely using the deprecated "+r+" Babel plugin. Both __source and __self are automatically set when using the automatic runtime. Please remove transform-react-jsx-source and transform-react-jsx-self from your Babel config.")}var $ye=Xye({name:"transform-react-jsx",development:!1}),Qye=function(e){return e.assertVersion("*"),{name:"transform-react-jsx-compat",manipulateOptions:function(e,t){t.plugins.push("jsx")},visitor:Bye({pre:function(e){e.callee=e.tagExpr},post:function(e){Xy.isCompatTag(e.tagName)&&(e.call=gs(Bs(Bs(Ps("React"),Ps("DOM")),e.tagExpr,dr(e.tagExpr)),e.args))},compat:!0})}},Zye=Xye({name:"transform-react-jsx/development",development:!0});var ehe,the=function(e){e.assertVersion("*");var t={JSXOpeningElement:function(e){if(function(e){var t=function(e){var t=e.scope;do{var r=t.path;if(r.isFunctionParent()&&!r.isArrowFunctionExpression())return r}while(t=t.parent);return null}(e);return!(null!==t&&t.isMethod()&&"constructor"===t.node.kind&&null!==t.parentPath.parentPath.node.superClass)}(e)){var t=e.node,r=nd("__self"),a={type:"ThisExpression"};t.attributes.push(Qi(r,rd(a)))}}};return{name:"transform-react-jsx-self",visitor:{Program:function(e){e.traverse(t)}}}},rhe="__source",ahe=function(e,t){return null==e?{type:"NullLiteral"}:t(e)},nhe=function(e){e.assertVersion("*");var t=function(e){return wt(e)&&e.name.name===rhe};return{name:"transform-react-jsx-source",visitor:{JSXOpeningElement:function(e,r){var a=e.node;if(a.loc&&!e.node.attributes.some(t)){if(!r.fileNameIdentifier){var n=e.scope.generateUidIdentifier("_jsxFileName");r.fileNameIdentifier=n,e.scope.getProgramParent().push({id:n,init:Cs(r.filename||"")})}a.attributes.push(Qi(nd(rhe),rd(function(e,t){var r=t.line,a=t.column,n=ahe(r,_s),s=ahe(a,function(e){return _s(e+1)});return pj.expression.ast(ehe||(ehe=h(["{\n fileName: ",",\n lineNumber: ",",\n columnNumber: ",",\n }"])),e,n,s)}(sm(r.fileNameIdentifier),a.loc.start))))}}}}};var she=o(function(){}),ohe=function(e){function t(t){var r;return(r=e.call(this)||this).returnLoc=void 0,r.returnLoc=t,r}return c(t,e),o(t)}(she),ihe=function(e){function t(t,r,a){var n;return void 0===a&&(a=null),(n=e.call(this)||this).breakLoc=void 0,n.continueLoc=void 0,n.label=void 0,n.breakLoc=t,n.continueLoc=r,n.label=a,n}return c(t,e),o(t)}(she),dhe=function(e){function t(t){var r;return(r=e.call(this)||this).breakLoc=void 0,r.breakLoc=t,r}return c(t,e),o(t)}(she),che=function(e){function t(t,r,a){var n;return void 0===r&&(r=null),void 0===a&&(a=null),(n=e.call(this)||this).firstLoc=void 0,n.catchEntry=void 0,n.finallyEntry=void 0,gN.ok(r||a),n.firstLoc=t,n.catchEntry=r,n.finallyEntry=a,n}return c(t,e),o(t)}(she),lhe=function(e){function t(t,r){var a;return(a=e.call(this)||this).firstLoc=void 0,a.paramId=void 0,a.firstLoc=t,a.paramId=r,a}return c(t,e),o(t)}(she),uhe=function(e){function t(t,r){var a;return(a=e.call(this)||this).firstLoc=void 0,a.afterLoc=void 0,a.firstLoc=t,a.afterLoc=r,a}return c(t,e),o(t)}(she),phe=function(e){function t(t,r){var a;return(a=e.call(this)||this).breakLoc=void 0,a.label=void 0,a.breakLoc=t,a.label=r,a}return c(t,e),o(t)}(she),fhe=function(){function e(e){this.emitter=void 0,this.entryStack=void 0,this.emitter=e,this.entryStack=[new ohe(e.finalLoc)]}var t=e.prototype;return t.withEntry=function(e,t){this.entryStack.push(e);try{t.call(this.emitter)}finally{var r=this.entryStack.pop();gN.strictEqual(r,e)}},t._findLeapLocation=function(e,t){for(var r=this.entryStack.length-1;r>=0;--r){var a=this.entryStack[r],n=a[e];if(n)if(t){if(a.label&&a.label.name===t.name)return n}else if(!(a instanceof phe))return n}return null},t.getBreakLoc=function(e){return this._findLeapLocation("breakLoc",e)},t.getContinueLoc=function(e){return this._findLeapLocation("continueLoc",e)},o(e)}(),ghe=new WeakMap;function mhe(e,t){function r(e){Lg(e);var t=!1;function r(e){return t||(Array.isArray(e)?e.some(r):Fg(e)&&(gN.strictEqual(t,!1),t=a(e))),t}var n=ja[e.type];if(n)for(var s=0;s<n.length;s++){r(e[n[s]])}return t}function a(a){Lg(a);var n=function(e){return ghe.has(e)||ghe.set(e,{}),ghe.get(e)}(a);return hasOwnProperty.call(n,e)?n[e]:hasOwnProperty.call(yhe,a.type)?n[e]=!1:hasOwnProperty.call(t,a.type)?n[e]=!0:n[e]=r(a)}return a.onlyChildren=r,a}var yhe={FunctionExpression:!0,ArrowFunctionExpression:!0},hhe={CallExpression:!0,ForInStatement:!0,UnaryExpression:!0,BinaryExpression:!0,AssignmentExpression:!0,UpdateExpression:!0,NewExpression:!0},bhe={YieldExpression:!0,BreakStatement:!0,ContinueStatement:!0,ReturnStatement:!0,ThrowStatement:!0};for(var vhe in bhe)hasOwnProperty.call(bhe,vhe)&&(hhe[vhe]=bhe[vhe]);mhe("hasSideEffects",hhe);var xhe,Rhe,jhe=mhe("containsLeap",bhe);function whe(e){return e.isReferenced()||e.parentPath.isAssignmentExpression({left:e.node})}xhe=function(e){return e.availableHelper("regenerator")&&!ie(e.addHelper("regenerator"),{name:"__interal_marker_fallback_regenerator__"})},Rhe=function(e,t){var r=e.addHelper("regeneratorRuntime");return Bs(Ie(r)&&ie(r.body)?r.body:gs(r,[]),Ps(t),!1)};var Ehe=Number.MAX_VALUE;function She(e){return new Error("all declarations should have been transformed into assignments before the Exploder began its work: "+JSON.stringify(e))}var The={Identifier:function(e,t){e.node.name===t.catchParamName&&whe(e)&&e.replaceWith(t.getSafeParam())},Scope:function(e,t){e.scope.hasOwnBinding(t.catchParamName)&&e.skip()}},Phe=function(){function e(e,t,r,a){this.nextTempId=void 0,this.contextId=void 0,this.index=void 0,this.indexMap=void 0,this.listing=void 0,this.returns=void 0,this.lastReferenceIndex=0,this.marked=void 0,this.insertedLocs=void 0,this.finalLoc=void 0,this.tryEntries=void 0,this.leapManager=void 0,this.scope=void 0,this.vars=void 0,this.pluginPass=void 0,this.pluginPass=a,this.scope=t,this.vars=r,this.nextTempId=0,this.contextId=e,this.listing=[],this.index=0,this.indexMap=new Map([[0,0]]),this.returns=new Set,this.lastReferenceIndex=0,this.marked=[!0],this.insertedLocs=new Set,this.finalLoc=this.loc(),this.tryEntries=[],this.leapManager=new fhe(this)}var t=e.prototype;return t.loc=function(){var e=_s(Ehe);return this.insertedLocs.add(e),e},t.getInsertedLocs=function(){return this.insertedLocs},t.getContextId=function(){return sm(this.contextId)},t.getIndex=function(){return this.indexMap.has(this.listing.length)||this.indexMap.set(this.listing.length,++this.index),this.index},t.mark=function(e){return e.value===Ehe?e.value=this.getIndex():gN.strictEqual(e.value,this.index),this.marked[this.listing.length]=!0,e.value>this.lastReferenceIndex&&(this.lastReferenceIndex=e.value),e},t.emit=function(e){$t(e)&&(e=Rs(e)),zg(e),this.listing.push(e)},t.emitAssign=function(e,t){return this.emit(this.assign(e,t)),e},t.assign=function(e,t){return Rs(is("=",sm(e),t))},t.contextProperty=function(e){var t="catch"===e;return Bs(this.getContextId(),t?Cs(e):Ps(e),!!t)},t.clearPendingException=function(e,t){var r=gs(this.contextProperty("catch"),[sm(e)]);t?this.emitAssign(t,r):this.emit(r)},t.jump=function(e){this.emitAssign(this.contextProperty(xhe(this.pluginPass)?"n":"next"),e),this.emit(fs())},t.jumpIf=function(e,t){this.emit(As(e,ps([this.assign(this.contextProperty(xhe(this.pluginPass)?"n":"next"),t),fs()])))},t.jumpIfNot=function(e,t){var r;r=Te(e)&&"!"===e.operator?e.argument:$s("!",e),this.emit(As(r,ps([this.assign(this.contextProperty(xhe(this.pluginPass)?"n":"next"),t),fs()])))},t.makeContextTempVar=function(){return this.contextProperty("t"+this.nextTempId++)},t.makeTempVar=function(){var e=this.scope.generateUidIdentifier("t");return this.vars.push(eo(e)),sm(e)},t.getContextFunction=function(){return Ts(null,[this.getContextId()],ps([this.getDispatchLoop()]),!1,!1)},t.getDispatchLoop=function(){var e,t=this,r=[],a=!1;return t.listing.forEach(function(n,s){t.marked[s]&&(r.push(zs(_s(t.indexMap.get(s)),e=[])),a=!1),a||(e.push(n),tr(n)&&(a=!0))}),this.finalLoc.value=this.getIndex(),xhe(this.pluginPass)?this.lastReferenceIndex!==this.index&&this.returns.has(this.listing.length)||r.push(zs(this.finalLoc,[Ws(gs(this.contextProperty("a"),[_s(2)]))])):r.push(zs(this.finalLoc,[]),zs(Cs("end"),[Ws(gs(this.contextProperty("stop"),[]))])),to(_s(1),Ks(xhe(this.pluginPass)?0===this.tryEntries.length?this.contextProperty("n"):is("=",this.contextProperty("p"),this.contextProperty("n")):is("=",this.contextProperty("prev"),this.contextProperty("next")),r))},t.getTryLocsList=function(){if(0===this.tryEntries.length)return null;var e=0,t=os(this.tryEntries.map(function(t){var r=t.firstLoc.value;gN.ok(r>=e,"try entries out of order"),e=r;var a=t.catchEntry,n=t.finallyEntry,s=[t.firstLoc,a?a.firstLoc:null];return n&&(s[2]=n.firstLoc,s[3]=n.afterLoc),os(s.map(function(e){return e&&sm(e)}))}));return xhe(this.pluginPass)&&t.elements.reverse(),t},t.explode=function(e,t){var r=e.node;if(ir(r))throw She(r);if(e.isStatement())return this.explodeStatement(e);if(e.isExpression())return this.explodeExpression(e,t);switch(r.type){case"VariableDeclarator":throw She(r);case"ObjectProperty":case"SwitchCase":case"CatchClause":throw new Error(r.type+" nodes should be handled by their parents");default:throw new Error("unknown Node of type "+JSON.stringify(r.type))}},t.explodeStatement=function(e,t){var r=this;void 0===t&&(t=null);var a,n,s,o=e.node,i=this;if(e.isBlockStatement())e.get("body").forEach(function(e){i.explodeStatement(e)});else if(jhe(o))switch(e.type){case"ExpressionStatement":i.explodeExpression(e.get("expression"),!0);break;case"LabeledStatement":n=this.loc(),i.leapManager.withEntry(new phe(n,e.node.label),function(){i.explodeStatement(e.get("body"),e.node.label)}),i.mark(n);break;case"WhileStatement":a=this.loc(),n=this.loc(),i.mark(a),i.jumpIfNot(i.explodeExpression(e.get("test")),n),i.leapManager.withEntry(new ihe(n,a,t),function(){i.explodeStatement(e.get("body"))}),i.jump(a),i.mark(n);break;case"DoWhileStatement":var d=this.loc(),c=this.loc();n=this.loc(),i.mark(d),i.leapManager.withEntry(new ihe(n,c,t),function(){i.explode(e.get("body"))}),i.mark(c),i.jumpIf(i.explodeExpression(e.get("test")),d),i.mark(n);break;case"ForStatement":s=this.loc();var l=this.loc();n=this.loc(),e.node.init&&i.explode(e.get("init"),!0),i.mark(s),e.node.test&&i.jumpIfNot(i.explodeExpression(e.get("test")),n),i.leapManager.withEntry(new ihe(n,l,t),function(){i.explodeStatement(e.get("body"))}),i.mark(l),e.node.update&&i.explode(e.get("update"),!0),i.jump(s),i.mark(n);break;case"TypeCastExpression":return i.explodeExpression(e.get("expression"));case"ForInStatement":s=this.loc(),n=this.loc();var u=i.makeTempVar(),p=xhe(this.pluginPass)?this.pluginPass.addHelper("regeneratorKeys"):Rhe(this.pluginPass,"keys");i.emitAssign(u,gs(p,[i.explodeExpression(e.get("right"))])),i.mark(s);var f=i.makeTempVar();i.jumpIf(Bs(is("=",f,gs(sm(u),[])),Ps("done"),!1),n),i.emitAssign(e.node.left,Bs(sm(f),Ps("value"),!1)),i.leapManager.withEntry(new ihe(n,s,t),function(){i.explodeStatement(e.get("body"))}),i.jump(s),i.mark(n);break;case"BreakStatement":i.emitAbruptCompletion({type:3,target:i.leapManager.getBreakLoc(e.node.label)});break;case"ContinueStatement":i.emitAbruptCompletion({type:3,target:i.leapManager.getContinueLoc(e.node.label)});break;case"SwitchStatement":var g=i.emitAssign(i.makeTempVar(),i.explodeExpression(e.get("discriminant")));n=this.loc();for(var m=this.loc(),y=m,h=[],b=e.node.cases||[],v=b.length-1;v>=0;--v){var x=b[v];x.test?y=ys(ds("===",sm(g),x.test),h[v]=this.loc(),y):h[v]=m}var R=e.get("discriminant");R.replaceWith(y),i.jump(i.explodeExpression(R)),i.leapManager.withEntry(new dhe(n),function(){e.get("cases").forEach(function(e){var t=e.key;i.mark(h[t]),e.get("consequent").forEach(function(e){i.explodeStatement(e)})})}),i.mark(n),m.value===Ehe&&(i.mark(m),gN.strictEqual(n.value,m.value));break;case"IfStatement":var j=e.node.alternate&&this.loc();n=this.loc(),i.jumpIfNot(i.explodeExpression(e.get("test")),j||n),i.explodeStatement(e.get("consequent")),j&&(i.jump(n),i.mark(j),i.explodeStatement(e.get("alternate"))),i.mark(n);break;case"ReturnStatement":i.emitAbruptCompletion({type:2,value:i.explodeExpression(e.get("argument"))});break;case"WithStatement":throw new Error("WithStatement not supported in generator functions.");case"TryStatement":n=this.loc();var w=e.node.handler,E=w&&this.loc(),S=E&&new lhe(E,w.param),T=e.node.finalizer&&this.loc(),P=T&&new uhe(T,n),A=new che(i.getUnmarkedCurrentLoc(),S,P);i.tryEntries.push(A),i.updateContextPrevLoc(A.firstLoc),i.leapManager.withEntry(A,function(){if(i.explodeStatement(e.get("block")),E){var t=e.node.block.body;T?i.jump(T):t.length&&"ReturnStatement"===t[t.length-1].type?n=null:i.jump(n),i.updateContextPrevLoc(i.mark(E));var a=e.get("handler.body"),s=i.makeTempVar();xhe(r.pluginPass)?r.emitAssign(s,i.contextProperty("v")):i.clearPendingException(A.firstLoc,s),a.traverse(The,{getSafeParam:function(){return sm(s)},catchParamName:w.param.name}),i.leapManager.withEntry(S,function(){i.explodeStatement(a)})}T&&(i.updateContextPrevLoc(i.mark(T)),i.leapManager.withEntry(P,function(){i.explodeStatement(e.get("finalizer"))}),i.emit(Ws(gs(i.contextProperty(xhe(r.pluginPass)?"f":"finish"),[P.firstLoc]))))}),n&&i.mark(n);break;case"ThrowStatement":i.emit(Js(i.explodeExpression(e.get("argument"))));break;case"ClassDeclaration":i.emit(i.explodeClass(e));break;default:throw new Error("unknown Statement of type "+JSON.stringify(o.type))}else i.emit(o)},t.emitAbruptCompletion=function(e){var t=[xhe(this.pluginPass)?_s(e.type):Cs(3===e.type?"continue":"return")];3===e.type?t[1]=this.insertedLocs.has(e.target)?e.target:sm(e.target):2===e.type&&e.value&&(t[1]=sm(e.value)),this.emit(Ws(gs(this.contextProperty(xhe(this.pluginPass)?"a":"abrupt"),t))),2===e.type&&this.returns.add(this.listing.length)},t.getUnmarkedCurrentLoc=function(){return _s(this.getIndex())},t.updateContextPrevLoc=function(e){e?e.value===Ehe?e.value=this.getIndex():gN.strictEqual(e.value,this.index):e=this.getUnmarkedCurrentLoc(),this.emitAssign(this.contextProperty(xhe(this.pluginPass)?"p":"prev"),e)},t.explodeViaTempVar=function(e,t,r,a){gN.ok(!a||!e,"Ignoring the result of a child expression but forcing it to be assigned to a temporary variable?");var n=this.explodeExpression(t,a);return a||(e||r&&!dr(n))&&(n=this.emitAssign(e||this.makeTempVar(),n)),n},t.explodeExpression=function(e,t){var r=e.node;if(!r)return r;var a,n,s=this;function o(e){return t&&s.emit(e),e}if(!jhe(r))return o(r);var i=jhe.onlyChildren(r);switch(e.type){case"MemberExpression":return o(Bs(s.explodeExpression(e.get("object")),e.node.computed?s.explodeViaTempVar(null,e.get("property"),i):e.node.property,e.node.computed));case"CallExpression":for(var d,c,l=e.get("callee"),u=e.get("arguments"),p=u.length-1;p>=0&&!jhe(u[p].node);)p--;var f=null;if(me(l.node))if(-1!==p){var g=s.explodeViaTempVar(s.makeTempVar(),l.get("object"),i),m=l.node.computed?s.explodeViaTempVar(null,l.get("property"),i):l.node.property;f=g,d=Bs(Bs(sm(g),m,l.node.computed),Ps("call"),!1)}else d=s.explodeExpression(l);else me(d=s.explodeViaTempVar(null,l,i))&&(d=Vs([_s(0),sm(d)]));return-1!==p?(c=u.map(function(e,t){return t>=p?s.explodeExpression(e):s.explodeViaTempVar(null,e,i)}),f&&c.unshift(f),c=c.map(function(e){return sm(e)})):c=e.node.arguments,o(gs(d,c));case"NewExpression":return o(Ms(s.explodeViaTempVar(null,e.get("callee"),i),e.get("arguments").map(function(e){return s.explodeViaTempVar(null,e,i)})));case"ObjectExpression":return o(Ls(e.get("properties").map(function(e){return e.isObjectProperty()?qs(e.node.key,s.explodeViaTempVar(null,e.get("value"),i),e.node.computed):e.node})));case"ArrayExpression":return o(os(e.get("elements").map(function(e){return e.node?e.isSpreadElement()?wo(s.explodeViaTempVar(null,e.get("argument"),i)):s.explodeViaTempVar(null,e,i):null})));case"SequenceExpression":var y=e.node.expressions.length-1;return e.get("expressions").forEach(function(e){e.key===y?a=s.explodeExpression(e,t):s.explodeExpression(e,!0)}),a;case"LogicalExpression":n=this.loc(),t||(a=s.makeTempVar());var h=s.explodeViaTempVar(a,e.get("left"),i);return"&&"===e.node.operator?s.jumpIfNot(h,n):(gN.strictEqual(e.node.operator,"||"),s.jumpIf(h,n)),s.explodeViaTempVar(a,e.get("right"),i,t),s.mark(n),a;case"ConditionalExpression":var b=this.loc();n=this.loc();var v=s.explodeExpression(e.get("test"));return s.jumpIfNot(v,b),t||(a=s.makeTempVar()),s.explodeViaTempVar(a,e.get("consequent"),i,t),s.jump(n),s.mark(b),s.explodeViaTempVar(a,e.get("alternate"),i,t),s.mark(n),a;case"UnaryExpression":return o($s(e.node.operator,s.explodeExpression(e.get("argument")),!!e.node.prefix));case"BinaryExpression":return o(ds(e.node.operator,s.explodeViaTempVar(null,e.get("left"),i),s.explodeViaTempVar(null,e.get("right"),i)));case"AssignmentExpression":if("="===e.node.operator)return o(is(e.node.operator,s.explodeExpression(e.get("left")),s.explodeExpression(e.get("right"))));var x=s.explodeExpression(e.get("left")),R=s.emitAssign(s.makeTempVar(),x);return o(is("=",sm(x),is(e.node.operator,sm(R),s.explodeExpression(e.get("right")))));case"UpdateExpression":return o(Qs(e.node.operator,s.explodeExpression(e.get("argument")),e.node.prefix));case"YieldExpression":n=this.loc();var j=e.node.argument&&s.explodeExpression(e.get("argument"));if(j&&e.node.delegate){if(xhe(this.pluginPass)){var w=Ws(gs(s.contextProperty("d"),[gs(this.pluginPass.addHelper("regeneratorValues"),[j]),n]));return w.loc=r.loc,s.emit(w),s.mark(n),s.contextProperty("v")}var E=s.makeContextTempVar(),S=Ws(gs(s.contextProperty("delegateYield"),[j,Cs(E.property.name),n]));return S.loc=r.loc,s.emit(S),s.mark(n),E}s.emitAssign(s.contextProperty(xhe(this.pluginPass)?"n":"next"),n);var T=Ws(sm(j)||null);return T.loc=r.loc,s.emit(T),s.mark(n),s.contextProperty(xhe(s.pluginPass)?"v":"sent");case"ClassExpression":return o(s.explodeClass(e));default:throw new Error("unknown Expression of type "+JSON.stringify(r.type))}},t.explodeClass=function(e){var t=[];e.node.superClass&&t.push(e.get("superClass")),e.get("body.body").forEach(function(e){e.node.computed&&t.push(e.get("key"))});for(var r=t.some(function(e){return jhe(e.node)}),a=0;a<t.length;a++){var n=t[a];a===t.length-1?n.replaceWith(this.explodeExpression(n)):n.replaceWith(this.explodeViaTempVar(null,n,r))}return e.node},o(e)}();var Ahe=function(){return{Method:function(e,t){var r=e.node;if(khe(r,t)){var a=Ts(null,[],sm(r.body,!1),r.generator,r.async);e.get("body").set("body",[Ws(gs(a,[]))]),r.async=!1,r.generator=!1,e.get("body.body.0.argument.callee").unwrapFunctionEnvironment()}},Function:{exit:function(e,t){var r=e.node;if(khe(r,t)){e=function(e){if(!e.node||!nr(e.node))throw new Error("replaceShorthandObjectMethod can only be called on Function AST node paths.");if(!ve(e.node))return e;if(!e.node.generator)return e;var t=Ts(null,e.node.params.map(function(e){return sm(e)}),sm(e.node.body),e.node.generator,e.node.async);return e.replaceWith(qs(sm(e.node.key),t,e.node.computed,!1)),e.get("value")}(e),r=e.node;var a=e.scope.generateUidIdentifier("context"),n=e.scope.generateUidIdentifier("args");e.ensureBlock();var s=e.get("body");r.async&&s.traverse(Dhe,this),s.traverse(Ihe,{context:a,pluginPass:this});var o=[],i=[];s.get("body").forEach(function(e){var t=e.node;re(t)&&le(t.expression)||null!=(null==t?void 0:t._blockHoist)?o.push(t):i.push(t)}),o.length>0&&(s.node.body=i);var d=function(e,t){var r=t.node;Kg(r),r.id||(r.id=t.scope.parent.generateUidIdentifier("callee"));if(r.generator&&se(r))return function(e,t){var r=t.node;Gg(r.id);var a=t.findParent(function(e){return e.isProgram()||e.isBlockStatement()});if(!a)return r.id;var n=a.node;gN.ok(Array.isArray(n.body));var s=function(e){Che.has(e)||Che.set(e,{});return Che.get(e)}(n);s.decl||(s.decl=Zs("var",[]),a.unshiftContainer("body",s.decl),s.declPath=a.get("body.0"));gN.strictEqual(s.declPath.node,s.decl);var o=a.scope.generateUidIdentifier("marked"),i=gs(xhe(e)?Bs(gs(e.addHelper("regenerator"),[]),Ps("m")):Rhe(e,"mark"),[sm(r.id)]),d=s.decl.declarations.push(eo(o,i))-1,c=s.declPath.get("declarations."+d+".init");return gN.strictEqual(c.node,i),c.addComment("leading","#__PURE__"),sm(o)}(e,t);return sm(r.id)}(this,e);Gg(r.id);var c=function(e){Kg(e.node);var t={__proto__:null};function r(e,r){var a=e.node;Vg(a);var n=[];return a.declarations.forEach(function(e){t[e.id.name]=Ps(e.id.name),e.init?n.push(is("=",e.id,e.init)):r&&n.push(e.id)}),0===n.length?null:1===n.length?n[0]:Vs(n)}e.get("body").traverse({VariableDeclaration:{exit:function(e){var a=r(e,!1);if(null===a)e.remove();else{for(var n=0,s=Object.keys(t);n<s.length;n++){var o=s[n];e.scope.removeBinding(o)}e.replaceWith(Rs(a))}e.skip()}},ForStatement:function(e){var t=e.get("init");if(t.isVariableDeclaration()){var a=r(t,!1);a?t.replaceWith(a):t.remove()}},ForXStatement:function(e){var t=e.get("left");t.isVariableDeclaration()&&t.replaceWith(r(t,!0))},FunctionDeclaration:function(e){var r=e.node;t[r.id.name]=r.id;var a=Rs(is("=",sm(r.id),Ts(e.scope.generateUidIdentifierBasedOnNode(r),r.params,r.body,r.generator,r.async)));e.parentPath.isBlockStatement()?(e.parentPath.unshiftContainer("body",a),e.remove()):(e.replaceWith(a),e.scope.removeBinding(r.id.name)),e.skip()},FunctionExpression:function(e){e.skip()},ArrowFunctionExpression:function(e){e.skip()}});var a={__proto__:null};e.get("params").forEach(function(e){var t=e.node;ie(t)&&(a[t.name]=t)});var n=[];return Object.keys(t).forEach(function(e){hasOwnProperty.call(a,e)||n.push(eo(t[e],null))}),n}(e),l={usesThis:!1,usesArguments:!1,getArgsId:function(){return sm(n)}};e.traverse(_he,l),l.usesArguments&&c.push(eo(sm(n),Ps("arguments")));var u=new Phe(a,e.scope,c,this);u.explode(e.get("body")),c.length>0&&o.push(Zs("var",c));var p=[u.getContextFunction()],f=u.getTryLocsList();if(r.generator?p.push(d):(l.usesThis||f||r.async)&&p.push({type:"NullLiteral"}),l.usesThis?p.push({type:"ThisExpression"}):(f||r.async)&&p.push({type:"NullLiteral"}),f?p.push(f):r.async&&p.push({type:"NullLiteral"}),r.async){var g=e.scope;do{g.hasOwnBinding("Promise")&&g.rename("Promise")}while(g=g.parent);p.push(Ps("Promise"))}var m=gs(xhe(this)?r.async?r.generator?this.addHelper("regeneratorAsyncGen"):this.addHelper("regeneratorAsync"):Bs(gs(this.addHelper("regenerator"),[]),Ps("w")):Rhe(this,r.async?"async":"wrap"),p);o.push(Ws(m)),r.body=ps(o),e.get("body.body").forEach(function(e){return e.scope.registerDeclaration(e)});var y=s.node.directives;y&&(r.body.directives=y);var h=r.generator;h&&(r.generator=!1),r.async&&(r.async=!1),h&&$t(r)&&(e.replaceWith(gs(xhe(this)?Bs(gs(this.addHelper("regenerator"),[]),Ps("m")):Rhe(this,"mark"),[r])),e.addComment("leading","#__PURE__"));var b=u.getInsertedLocs();e.traverse({NumericLiteral:function(e){b.has(e.node)&&e.replaceWith(_s(e.node.value))}}),e.requeue()}}}}};function khe(e,t){return e.generator?e.async?!1!==t.opts.asyncGenerators:!1!==t.opts.generators:!!e.async&&!1!==t.opts.async}var Che=new WeakMap;var _he={"FunctionExpression|FunctionDeclaration|Method":function(e){e.skip()},Identifier:function(e,t){"arguments"===e.node.name&&whe(e)&&(e.replaceWith(t.getArgsId()),t.usesArguments=!0)},ThisExpression:function(e,t){t.usesThis=!0}},Ihe={MetaProperty:function(e,t){var r=e.node;"function"===r.meta.name&&"sent"===r.property.name&&e.replaceWith(Bs(sm(t.context),Ps(xhe(t.pluginPass)?"v":"_sent")))}},Dhe={Function:function(e){e.skip()},AwaitExpression:function(e){var t=e.node.argument,r=xhe(this)?this.addHelper("awaitAsyncGenerator"):Rhe(this,"awrap");e.replaceWith(Ao(gs(r,[t]),!1))}},Ohe=function(e){var t=e.types,r=e.traverse;return(0,e.assertVersion)("*"),{name:"transform-regenerator",visitor:r.visitors.merge([Ahe(),{CallExpression:function(e){var r;if(null!=(r=this.availableHelper)&&r.call(this,"regeneratorRuntime")){var a=e.get("callee");if(a.isMemberExpression()){var n=a.get("object");if(n.isIdentifier({name:"regeneratorRuntime"})){var s=this.addHelper("regeneratorRuntime");if(t.isArrowFunctionExpression(s))return void n.replaceWith(s.body);n.replaceWith(t.callExpression(s,[]))}}}}}])}},Nhe=function(e){return e.assertVersion("*"),{name:"transform-reserved-words",visitor:{"BindingIdentifier|ReferencedIdentifier":function(e){Hy(e.node.name)||e.scope.rename(e.node.name)}}}};function Bhe(){throw new Error("The 'absoluteRuntime' option is not supported when using @babel/standalone.")}var Mhe,Fhe={},Lhe={},Uhe={"es6.array.copy-within":{chrome:"45",opera:"32",edge:"12",firefox:"32",safari:"9",node:"4",deno:"1",ios:"9",samsung:"5",rhino:"1.7.13",opera_mobile:"32",electron:"0.31"},"es6.array.every":{chrome:"5",opera:"10.10",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.fill":{chrome:"45",opera:"32",edge:"12",firefox:"31",safari:"7.1",node:"4",deno:"1",ios:"8",samsung:"5",rhino:"1.7.13",opera_mobile:"32",electron:"0.31"},"es6.array.filter":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.array.find":{chrome:"45",opera:"32",edge:"12",firefox:"25",safari:"7.1",node:"4",deno:"1",ios:"8",samsung:"5",rhino:"1.7.13",opera_mobile:"32",electron:"0.31"},"es6.array.find-index":{chrome:"45",opera:"32",edge:"12",firefox:"25",safari:"7.1",node:"4",deno:"1",ios:"8",samsung:"5",rhino:"1.7.13",opera_mobile:"32",electron:"0.31"},"es7.array.flat-map":{chrome:"69",opera:"56",edge:"79",firefox:"62",safari:"12",node:"11",deno:"1",ios:"12",samsung:"10",rhino:"1.7.15",opera_mobile:"48",electron:"4.0"},"es6.array.for-each":{chrome:"5",opera:"10.10",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.from":{chrome:"51",opera:"38",edge:"15",firefox:"36",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",rhino:"1.7.15",opera_mobile:"41",electron:"1.2"},"es7.array.includes":{chrome:"47",opera:"34",edge:"14",firefox:"102",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"34",electron:"0.36"},"es6.array.index-of":{chrome:"5",opera:"10.10",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.is-array":{chrome:"5",opera:"10.50",edge:"12",firefox:"4",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.iterator":{chrome:"66",opera:"53",edge:"12",firefox:"60",safari:"9",node:"10",deno:"1",ios:"9",samsung:"9",rhino:"1.7.13",opera_mobile:"47",electron:"3.0"},"es6.array.last-index-of":{chrome:"5",opera:"10.10",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.map":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.array.of":{chrome:"45",opera:"32",edge:"12",firefox:"25",safari:"9",node:"4",deno:"1",ios:"9",samsung:"5",rhino:"1.7.13",opera_mobile:"32",electron:"0.31"},"es6.array.reduce":{chrome:"5",opera:"10.50",edge:"12",firefox:"3",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.reduce-right":{chrome:"5",opera:"10.50",edge:"12",firefox:"3",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.slice":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.array.some":{chrome:"5",opera:"10.10",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.array.sort":{chrome:"63",opera:"50",edge:"12",firefox:"5",safari:"12",node:"10",deno:"1",ie:"9",ios:"12",samsung:"8",rhino:"1.7.13",opera_mobile:"46",electron:"3.0"},"es6.array.species":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",rhino:"1.7.15",opera_mobile:"41",electron:"1.2"},"es6.date.now":{chrome:"5",opera:"10.50",edge:"12",firefox:"2",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.date.to-iso-string":{chrome:"5",opera:"10.50",edge:"12",firefox:"3.5",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.date.to-json":{chrome:"5",opera:"12.10",edge:"12",firefox:"4",safari:"10",node:"0.4",deno:"1",ie:"9",android:"4",ios:"10",samsung:"1",rhino:"1.7.13",opera_mobile:"12.1",electron:"0.20"},"es6.date.to-primitive":{chrome:"47",opera:"34",edge:"15",firefox:"44",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"34",electron:"0.36"},"es6.date.to-string":{chrome:"5",opera:"10.50",edge:"12",firefox:"2",safari:"3.1",node:"0.4",deno:"1",ie:"10",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.function.bind":{chrome:"7",opera:"12",edge:"12",firefox:"4",safari:"5.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"es6.function.has-instance":{chrome:"51",opera:"38",edge:"15",firefox:"50",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.function.name":{chrome:"5",opera:"10.50",edge:"14",firefox:"2",safari:"4",node:"0.4",deno:"1",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es6.map":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.math.acosh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.asinh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.atanh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.cbrt":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.clz32":{chrome:"38",opera:"25",edge:"12",firefox:"31",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.cosh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.expm1":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.fround":{chrome:"38",opera:"25",edge:"12",firefox:"26",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.hypot":{chrome:"38",opera:"25",edge:"12",firefox:"27",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.imul":{chrome:"30",opera:"17",edge:"12",firefox:"23",safari:"7",node:"0.12",deno:"1",android:"4.4",ios:"7",samsung:"2",rhino:"1.7.13",opera_mobile:"18",electron:"0.20"},"es6.math.log1p":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.log10":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.log2":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.sign":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.sinh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.tanh":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.math.trunc":{chrome:"38",opera:"25",edge:"12",firefox:"25",safari:"7.1",node:"0.12",deno:"1",ios:"8",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.number.constructor":{chrome:"41",opera:"28",edge:"12",firefox:"36",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.number.epsilon":{chrome:"34",opera:"21",edge:"12",firefox:"25",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.14",opera_mobile:"21",electron:"0.20"},"es6.number.is-finite":{chrome:"19",opera:"15",edge:"12",firefox:"16",safari:"9",node:"0.8",deno:"1",android:"4.1",ios:"9",samsung:"1.5",rhino:"1.7.13",opera_mobile:"14",electron:"0.20"},"es6.number.is-integer":{chrome:"34",opera:"21",edge:"12",firefox:"16",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.13",opera_mobile:"21",electron:"0.20"},"es6.number.is-nan":{chrome:"19",opera:"15",edge:"12",firefox:"15",safari:"9",node:"0.8",deno:"1",android:"4.1",ios:"9",samsung:"1.5",rhino:"1.7.13",opera_mobile:"14",electron:"0.20"},"es6.number.is-safe-integer":{chrome:"34",opera:"21",edge:"12",firefox:"32",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.13",opera_mobile:"21",electron:"0.20"},"es6.number.max-safe-integer":{chrome:"34",opera:"21",edge:"12",firefox:"31",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.13",opera_mobile:"21",electron:"0.20"},"es6.number.min-safe-integer":{chrome:"34",opera:"21",edge:"12",firefox:"31",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.13",opera_mobile:"21",electron:"0.20"},"es6.number.parse-float":{chrome:"34",opera:"21",edge:"12",firefox:"25",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.14",opera_mobile:"21",electron:"0.20"},"es6.number.parse-int":{chrome:"34",opera:"21",edge:"12",firefox:"25",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"2",rhino:"1.7.14",opera_mobile:"21",electron:"0.20"},"es6.object.assign":{chrome:"49",opera:"36",edge:"13",firefox:"36",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.object.create":{chrome:"5",opera:"12",edge:"12",firefox:"4",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"es7.object.define-getter":{chrome:"62",opera:"49",edge:"16",firefox:"48",safari:"9",node:"8.10",deno:"1",ios:"9",samsung:"8",opera_mobile:"46",electron:"3.0"},"es7.object.define-setter":{chrome:"62",opera:"49",edge:"16",firefox:"48",safari:"9",node:"8.10",deno:"1",ios:"9",samsung:"8",opera_mobile:"46",electron:"3.0"},"es6.object.define-property":{chrome:"5",opera:"12",edge:"12",firefox:"4",safari:"5.1",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"es6.object.define-properties":{chrome:"5",opera:"12",edge:"12",firefox:"4",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"es7.object.entries":{chrome:"54",opera:"41",edge:"14",firefox:"47",safari:"10.1",node:"7",deno:"1",ios:"10.3",samsung:"6",rhino:"1.7.14",opera_mobile:"41",electron:"1.4"},"es6.object.freeze":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.get-own-property-descriptor":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es7.object.get-own-property-descriptors":{chrome:"54",opera:"41",edge:"15",firefox:"50",safari:"10.1",node:"7",deno:"1",ios:"10.3",samsung:"6",rhino:"1.8",opera_mobile:"41",electron:"1.4"},"es6.object.get-own-property-names":{chrome:"40",opera:"27",edge:"12",firefox:"33",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"27",electron:"0.21"},"es6.object.get-prototype-of":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es7.object.lookup-getter":{chrome:"62",opera:"49",edge:"79",firefox:"36",safari:"9",node:"8.10",deno:"1",ios:"9",samsung:"8",opera_mobile:"46",electron:"3.0"},"es7.object.lookup-setter":{chrome:"62",opera:"49",edge:"79",firefox:"36",safari:"9",node:"8.10",deno:"1",ios:"9",samsung:"8",opera_mobile:"46",electron:"3.0"},"es6.object.prevent-extensions":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.to-string":{chrome:"57",opera:"44",edge:"15",firefox:"51",safari:"10",node:"8",deno:"1",ios:"10",samsung:"7",opera_mobile:"43",electron:"1.7"},"es6.object.is":{chrome:"19",opera:"15",edge:"12",firefox:"22",safari:"9",node:"0.8",deno:"1",android:"4.1",ios:"9",samsung:"1.5",rhino:"1.7.13",opera_mobile:"14",electron:"0.20"},"es6.object.is-frozen":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.is-sealed":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.is-extensible":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.keys":{chrome:"40",opera:"27",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"27",electron:"0.21"},"es6.object.seal":{chrome:"44",opera:"31",edge:"12",firefox:"35",safari:"9",node:"4",deno:"1",ios:"9",samsung:"4",rhino:"1.7.13",opera_mobile:"32",electron:"0.30"},"es6.object.set-prototype-of":{chrome:"34",opera:"21",edge:"12",firefox:"31",safari:"9",node:"0.12",deno:"1",ie:"11",ios:"9",samsung:"2",rhino:"1.7.13",opera_mobile:"21",electron:"0.20"},"es7.object.values":{chrome:"54",opera:"41",edge:"14",firefox:"47",safari:"10.1",node:"7",deno:"1",ios:"10.3",samsung:"6",rhino:"1.7.14",opera_mobile:"41",electron:"1.4"},"es6.promise":{chrome:"51",opera:"38",edge:"14",firefox:"45",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",rhino:"1.7.15",opera_mobile:"41",electron:"1.2"},"es7.promise.finally":{chrome:"63",opera:"50",edge:"18",firefox:"58",safari:"11.1",node:"10",deno:"1",ios:"11.3",samsung:"8",rhino:"1.7.15",opera_mobile:"46",electron:"3.0"},"es6.reflect.apply":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.construct":{chrome:"49",opera:"36",edge:"13",firefox:"49",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"36",electron:"0.37"},"es6.reflect.define-property":{chrome:"49",opera:"36",edge:"13",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.delete-property":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.get":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.get-own-property-descriptor":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.get-prototype-of":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.has":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.is-extensible":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.own-keys":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.prevent-extensions":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.set":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.reflect.set-prototype-of":{chrome:"49",opera:"36",edge:"12",firefox:"42",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.8",opera_mobile:"36",electron:"0.37"},"es6.regexp.constructor":{chrome:"50",opera:"37",edge:"79",firefox:"40",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"37",electron:"1.1"},"es6.regexp.flags":{chrome:"49",opera:"36",edge:"79",firefox:"37",safari:"9",node:"6",deno:"1",ios:"9",samsung:"5",rhino:"1.7.15",opera_mobile:"36",electron:"0.37"},"es6.regexp.match":{chrome:"50",opera:"37",edge:"79",firefox:"49",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.7.13",opera_mobile:"37",electron:"1.1"},"es6.regexp.replace":{chrome:"50",opera:"37",edge:"79",firefox:"49",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"37",electron:"1.1"},"es6.regexp.split":{chrome:"50",opera:"37",edge:"79",firefox:"49",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"37",electron:"1.1"},"es6.regexp.search":{chrome:"50",opera:"37",edge:"79",firefox:"49",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.7.13",opera_mobile:"37",electron:"1.1"},"es6.regexp.to-string":{chrome:"50",opera:"37",edge:"79",firefox:"39",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",rhino:"1.7.15",opera_mobile:"37",electron:"1.1"},"es6.set":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.symbol":{chrome:"51",opera:"38",edge:"79",firefox:"51",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es7.symbol.async-iterator":{chrome:"63",opera:"50",edge:"79",firefox:"57",safari:"12",node:"10",deno:"1",ios:"12",samsung:"8",opera_mobile:"46",electron:"3.0"},"es6.string.anchor":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.big":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.blink":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.bold":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.code-point-at":{chrome:"41",opera:"28",edge:"12",firefox:"29",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.ends-with":{chrome:"41",opera:"28",edge:"12",firefox:"29",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.fixed":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.fontcolor":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.fontsize":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.from-code-point":{chrome:"41",opera:"28",edge:"12",firefox:"29",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.includes":{chrome:"41",opera:"28",edge:"12",firefox:"40",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.italics":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.iterator":{chrome:"38",opera:"25",edge:"12",firefox:"36",safari:"9",node:"0.12",deno:"1",ios:"9",samsung:"3",rhino:"1.7.13",opera_mobile:"25",electron:"0.20"},"es6.string.link":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es7.string.pad-start":{chrome:"57",opera:"44",edge:"15",firefox:"48",safari:"10",node:"8",deno:"1",ios:"10",samsung:"7",rhino:"1.7.13",opera_mobile:"43",electron:"1.7"},"es7.string.pad-end":{chrome:"57",opera:"44",edge:"15",firefox:"48",safari:"10",node:"8",deno:"1",ios:"10",samsung:"7",rhino:"1.7.13",opera_mobile:"43",electron:"1.7"},"es6.string.raw":{chrome:"41",opera:"28",edge:"12",firefox:"34",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.14",opera_mobile:"28",electron:"0.21"},"es6.string.repeat":{chrome:"41",opera:"28",edge:"12",firefox:"24",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.small":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.starts-with":{chrome:"41",opera:"28",edge:"12",firefox:"29",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",rhino:"1.7.13",opera_mobile:"28",electron:"0.21"},"es6.string.strike":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.sub":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.sup":{chrome:"5",opera:"15",edge:"12",firefox:"17",safari:"6",node:"0.4",deno:"1",android:"4",ios:"7",phantom:"1.9",samsung:"1",rhino:"1.7.14",opera_mobile:"14",electron:"0.20"},"es6.string.trim":{chrome:"5",opera:"10.50",edge:"12",firefox:"3.5",safari:"4",node:"0.4",deno:"1",ie:"9",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"10.1",electron:"0.20"},"es7.string.trim-left":{chrome:"66",opera:"53",edge:"79",firefox:"61",safari:"12",node:"10",deno:"1",ios:"12",samsung:"9",rhino:"1.7.13",opera_mobile:"47",electron:"3.0"},"es7.string.trim-right":{chrome:"66",opera:"53",edge:"79",firefox:"61",safari:"12",node:"10",deno:"1",ios:"12",samsung:"9",rhino:"1.7.13",opera_mobile:"47",electron:"3.0"},"es6.typed.array-buffer":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.data-view":{chrome:"5",opera:"12",edge:"12",firefox:"15",safari:"5.1",node:"0.4",deno:"1",ie:"10",android:"4",ios:"6",phantom:"1.9",samsung:"1",rhino:"1.7.13",opera_mobile:"12",electron:"0.20"},"es6.typed.int8-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.uint8-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.uint8-clamped-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.int16-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.uint16-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.int32-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.uint32-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.float32-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.typed.float64-array":{chrome:"51",opera:"38",edge:"13",firefox:"48",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"es6.weak-map":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"9",node:"6.5",deno:"1",ios:"9",samsung:"5",rhino:"1.7.15",opera_mobile:"41",electron:"1.2"},"es6.weak-set":{chrome:"51",opera:"38",edge:"15",firefox:"53",safari:"9",node:"6.5",deno:"1",ios:"9",samsung:"5",rhino:"1.7.15",opera_mobile:"41",electron:"1.2"}},qhe={};var Ghe,Whe={};var Vhe,Hhe,zhe={},Khe={exports:{}};function Xhe(){return Vhe||(Vhe=1,function(e,t){var r;t=e.exports=h,r="object"==typeof z&&z.env&&z.env.NODE_DEBUG&&/\bsemver\b/i.test(z.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var a=256,n=Number.MAX_SAFE_INTEGER||9007199254740991,s=a-6,o=t.re=[],i=t.safeRe=[],d=t.src=[],c=t.tokens={},l=0;function u(e){c[e]=l++}var p="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",a],[p,s]];function g(e){for(var t=0;t<f.length;t++){var r=f[t][0],a=f[t][1];e=e.split(r+"*").join(r+"{0,"+a+"}").split(r+"+").join(r+"{1,"+a+"}")}return e}u("NUMERICIDENTIFIER"),d[c.NUMERICIDENTIFIER]="0|[1-9]\\d*",u("NUMERICIDENTIFIERLOOSE"),d[c.NUMERICIDENTIFIERLOOSE]="\\d+",u("NONNUMERICIDENTIFIER"),d[c.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+p+"*",u("MAINVERSION"),d[c.MAINVERSION]="("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")",u("MAINVERSIONLOOSE"),d[c.MAINVERSIONLOOSE]="("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")",u("PRERELEASEIDENTIFIER"),d[c.PRERELEASEIDENTIFIER]="(?:"+d[c.NUMERICIDENTIFIER]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASEIDENTIFIERLOOSE"),d[c.PRERELEASEIDENTIFIERLOOSE]="(?:"+d[c.NUMERICIDENTIFIERLOOSE]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASE"),d[c.PRERELEASE]="(?:-("+d[c.PRERELEASEIDENTIFIER]+"(?:\\."+d[c.PRERELEASEIDENTIFIER]+")*))",u("PRERELEASELOOSE"),d[c.PRERELEASELOOSE]="(?:-?("+d[c.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+d[c.PRERELEASEIDENTIFIERLOOSE]+")*))",u("BUILDIDENTIFIER"),d[c.BUILDIDENTIFIER]=p+"+",u("BUILD"),d[c.BUILD]="(?:\\+("+d[c.BUILDIDENTIFIER]+"(?:\\."+d[c.BUILDIDENTIFIER]+")*))",u("FULL"),u("FULLPLAIN"),d[c.FULLPLAIN]="v?"+d[c.MAINVERSION]+d[c.PRERELEASE]+"?"+d[c.BUILD]+"?",d[c.FULL]="^"+d[c.FULLPLAIN]+"$",u("LOOSEPLAIN"),d[c.LOOSEPLAIN]="[v=\\s]*"+d[c.MAINVERSIONLOOSE]+d[c.PRERELEASELOOSE]+"?"+d[c.BUILD]+"?",u("LOOSE"),d[c.LOOSE]="^"+d[c.LOOSEPLAIN]+"$",u("GTLT"),d[c.GTLT]="((?:<|>)?=?)",u("XRANGEIDENTIFIERLOOSE"),d[c.XRANGEIDENTIFIERLOOSE]=d[c.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",u("XRANGEIDENTIFIER"),d[c.XRANGEIDENTIFIER]=d[c.NUMERICIDENTIFIER]+"|x|X|\\*",u("XRANGEPLAIN"),d[c.XRANGEPLAIN]="[v=\\s]*("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:"+d[c.PRERELEASE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGEPLAINLOOSE"),d[c.XRANGEPLAINLOOSE]="[v=\\s]*("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:"+d[c.PRERELEASELOOSE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGE"),d[c.XRANGE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAIN]+"$",u("XRANGELOOSE"),d[c.XRANGELOOSE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAINLOOSE]+"$",u("COERCE"),d[c.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",u("COERCERTL"),o[c.COERCERTL]=new RegExp(d[c.COERCE],"g"),i[c.COERCERTL]=new RegExp(g(d[c.COERCE]),"g"),u("LONETILDE"),d[c.LONETILDE]="(?:~>?)",u("TILDETRIM"),d[c.TILDETRIM]="(\\s*)"+d[c.LONETILDE]+"\\s+",o[c.TILDETRIM]=new RegExp(d[c.TILDETRIM],"g"),i[c.TILDETRIM]=new RegExp(g(d[c.TILDETRIM]),"g");u("TILDE"),d[c.TILDE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAIN]+"$",u("TILDELOOSE"),d[c.TILDELOOSE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAINLOOSE]+"$",u("LONECARET"),d[c.LONECARET]="(?:\\^)",u("CARETTRIM"),d[c.CARETTRIM]="(\\s*)"+d[c.LONECARET]+"\\s+",o[c.CARETTRIM]=new RegExp(d[c.CARETTRIM],"g"),i[c.CARETTRIM]=new RegExp(g(d[c.CARETTRIM]),"g");u("CARET"),d[c.CARET]="^"+d[c.LONECARET]+d[c.XRANGEPLAIN]+"$",u("CARETLOOSE"),d[c.CARETLOOSE]="^"+d[c.LONECARET]+d[c.XRANGEPLAINLOOSE]+"$",u("COMPARATORLOOSE"),d[c.COMPARATORLOOSE]="^"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+")$|^$",u("COMPARATOR"),d[c.COMPARATOR]="^"+d[c.GTLT]+"\\s*("+d[c.FULLPLAIN]+")$|^$",u("COMPARATORTRIM"),d[c.COMPARATORTRIM]="(\\s*)"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+"|"+d[c.XRANGEPLAIN]+")",o[c.COMPARATORTRIM]=new RegExp(d[c.COMPARATORTRIM],"g"),i[c.COMPARATORTRIM]=new RegExp(g(d[c.COMPARATORTRIM]),"g");u("HYPHENRANGE"),d[c.HYPHENRANGE]="^\\s*("+d[c.XRANGEPLAIN]+")\\s+-\\s+("+d[c.XRANGEPLAIN]+")\\s*$",u("HYPHENRANGELOOSE"),d[c.HYPHENRANGELOOSE]="^\\s*("+d[c.XRANGEPLAINLOOSE]+")\\s+-\\s+("+d[c.XRANGEPLAINLOOSE]+")\\s*$",u("STAR"),d[c.STAR]="(<|>)?=?\\s*\\*";for(var m=0;m<l;m++)r(m,d[m]),o[m]||(o[m]=new RegExp(d[m]),i[m]=new RegExp(g(d[m])));function y(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h)return e;if("string"!=typeof e)return null;if(e.length>a)return null;if(!(t.loose?i[c.LOOSE]:i[c.FULL]).test(e))return null;try{return new h(e,t)}catch(e){return null}}function h(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>a)throw new TypeError("version is longer than "+a+" characters");if(!(this instanceof h))return new h(e,t);r("SemVer",e,t),this.options=t,this.loose=!!t.loose;var s=e.trim().match(t.loose?i[c.LOOSE]:i[c.FULL]);if(!s)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<n)return t}return e}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}t.parse=y,t.valid=function(e,t){var r=y(e,t);return r?r.version:null},t.clean=function(e,t){var r=y(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null},t.SemVer=h,h.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},h.prototype.toString=function(){return this.version},h.prototype.compare=function(e){return r("SemVer.compare",this.version,this.options,e),e instanceof h||(e=new h(e,this.options)),this.compareMain(e)||this.comparePre(e)},h.prototype.compareMain=function(e){return e instanceof h||(e=new h(e,this.options)),v(this.major,e.major)||v(this.minor,e.minor)||v(this.patch,e.patch)},h.prototype.comparePre=function(e){if(e instanceof h||(e=new h(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var a=this.prerelease[t],n=e.prerelease[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.compareBuild=function(e){e instanceof h||(e=new h(e,this.options));var t=0;do{var a=this.build[t],n=e.build[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var r=this.prerelease.length;--r>=0;)"number"==typeof this.prerelease[r]&&(this.prerelease[r]++,r=-2);-1===r&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,r,a){"string"==typeof r&&(a=r,r=void 0);try{return new h(e,r).inc(t,a).version}catch(e){return null}},t.diff=function(e,t){if(w(e,t))return null;var r=y(e),a=y(t),n="";if(r.prerelease.length||a.prerelease.length){n="pre";var s="prerelease"}for(var o in r)if(("major"===o||"minor"===o||"patch"===o)&&r[o]!==a[o])return n+o;return s},t.compareIdentifiers=v;var b=/^[0-9]+$/;function v(e,t){var r=b.test(e),a=b.test(t);return r&&a&&(e=+e,t=+t),e===t?0:r&&!a?-1:a&&!r?1:e<t?-1:1}function x(e,t,r){return new h(e,r).compare(new h(t,r))}function R(e,t,r){return x(e,t,r)>0}function j(e,t,r){return x(e,t,r)<0}function w(e,t,r){return 0===x(e,t,r)}function E(e,t,r){return 0!==x(e,t,r)}function S(e,t,r){return x(e,t,r)>=0}function T(e,t,r){return x(e,t,r)<=0}function P(e,t,r,a){switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e===r;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return w(e,r,a);case"!=":return E(e,r,a);case">":return R(e,r,a);case">=":return S(e,r,a);case"<":return j(e,r,a);case"<=":return T(e,r,a);default:throw new TypeError("Invalid operator: "+t)}}function A(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof A){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof A))return new A(e,t);e=e.trim().split(/\s+/).join(" "),r("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===k?this.value="":this.value=this.operator+this.semver.version,r("comp",this)}t.rcompareIdentifiers=function(e,t){return v(t,e)},t.major=function(e,t){return new h(e,t).major},t.minor=function(e,t){return new h(e,t).minor},t.patch=function(e,t){return new h(e,t).patch},t.compare=x,t.compareLoose=function(e,t){return x(e,t,!0)},t.compareBuild=function(e,t,r){var a=new h(e,r),n=new h(t,r);return a.compare(n)||a.compareBuild(n)},t.rcompare=function(e,t,r){return x(t,e,r)},t.sort=function(e,r){return e.sort(function(e,a){return t.compareBuild(e,a,r)})},t.rsort=function(e,r){return e.sort(function(e,a){return t.compareBuild(a,e,r)})},t.gt=R,t.lt=j,t.eq=w,t.neq=E,t.gte=S,t.lte=T,t.cmp=P,t.Comparator=A;var k={};function C(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof C)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new C(e.raw,t);if(e instanceof A)return new C(e.value,t);if(!(this instanceof C))return new C(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}function _(e,t){for(var r=!0,a=e.slice(),n=a.pop();r&&a.length;)r=a.every(function(e){return n.intersects(e,t)}),n=a.pop();return r}function I(e){return!e||"x"===e.toLowerCase()||"*"===e}function D(e,t,r,a,n,s,o,i,d,c,l,u,p){return((t=I(r)?"":I(a)?">="+r+".0.0":I(n)?">="+r+"."+a+".0":">="+t)+" "+(i=I(d)?"":I(c)?"<"+(+d+1)+".0.0":I(l)?"<"+d+"."+(+c+1)+".0":u?"<="+d+"."+c+"."+l+"-"+u:"<="+i)).trim()}function O(e,t,a){for(var n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!a.includePrerelease){for(n=0;n<e.length;n++)if(r(e[n].semver),e[n].semver!==k&&e[n].semver.prerelease.length>0){var s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}function N(e,t,r){try{t=new C(t,r)}catch(e){return!1}return t.test(e)}function B(e,t,r,a){var n,s,o,i,d;switch(e=new h(e,a),t=new C(t,a),r){case">":n=R,s=T,o=j,i=">",d=">=";break;case"<":n=j,s=S,o=R,i="<",d="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(N(e,t,a))return!1;for(var c=0;c<t.set.length;++c){var l=t.set[c],u=null,p=null;if(l.forEach(function(e){e.semver===k&&(e=new A(">=0.0.0")),u=u||e,p=p||e,n(e.semver,u.semver,a)?u=e:o(e.semver,p.semver,a)&&(p=e)}),u.operator===i||u.operator===d)return!1;if((!p.operator||p.operator===i)&&s(e,p.semver))return!1;if(p.operator===d&&o(e,p.semver))return!1}return!0}A.prototype.parse=function(e){var t=this.options.loose?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],r=e.match(t);if(!r)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new h(r[2],this.options.loose):this.semver=k},A.prototype.toString=function(){return this.value},A.prototype.test=function(e){if(r("Comparator.test",e,this.options.loose),this.semver===k||e===k)return!0;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}return P(e,this.operator,this.semver,this.options)},A.prototype.intersects=function(e,t){if(!(e instanceof A))throw new TypeError("a Comparator is required");var r;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(r=new C(e.value,t),N(this.value,r,t));if(""===e.operator)return""===e.value||(r=new C(this.value,t),N(e.semver,r,t));var a=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),n=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,o=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),i=P(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),d=P(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return a||n||s&&o||i||d},t.Range=C,C.prototype.format=function(){return this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim(),this.range},C.prototype.toString=function(){return this.range},C.prototype.parseRange=function(e){var t=this.options.loose,a=t?i[c.HYPHENRANGELOOSE]:i[c.HYPHENRANGE];e=e.replace(a,D),r("hyphen replace",e),e=e.replace(i[c.COMPARATORTRIM],"$1$2$3"),r("comparator trim",e,i[c.COMPARATORTRIM]),e=(e=(e=e.replace(i[c.TILDETRIM],"$1~")).replace(i[c.CARETTRIM],"$1^")).split(/\s+/).join(" ");var n=t?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],s=e.split(" ").map(function(e){return function(e,t){return r("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){r("caret",e,t);var a=t.loose?i[c.CARETLOOSE]:i[c.CARET];return e.replace(a,function(t,a,n,s,o){var i;return r("caret",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i="0"===a?">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":">="+a+"."+n+".0 <"+(+a+1)+".0.0":o?(r("replaceCaret pr",o),i="0"===a?"0"===n?">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+"-"+o+" <"+(+a+1)+".0.0"):(r("no pr"),i="0"===a?"0"===n?">="+a+"."+n+"."+s+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+" <"+(+a+1)+".0.0"),r("caret return",i),i})}(e,t)}).join(" ")}(e,t),r("caret",e),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){var a=t.loose?i[c.TILDELOOSE]:i[c.TILDE];return e.replace(a,function(t,a,n,s,o){var i;return r("tilde",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i=">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":o?(r("replaceTilde pr",o),i=">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0"):i=">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0",r("tilde return",i),i})}(e,t)}).join(" ")}(e,t),r("tildes",e),e=function(e,t){return r("replaceXRanges",e,t),e.split(/\s+/).map(function(e){return function(e,t){e=e.trim();var a=t.loose?i[c.XRANGELOOSE]:i[c.XRANGE];return e.replace(a,function(a,n,s,o,i,d){r("xRange",e,a,n,s,o,i,d);var c=I(s),l=c||I(o),u=l||I(i),p=u;return"="===n&&p&&(n=""),d=t.includePrerelease?"-0":"",c?a=">"===n||"<"===n?"<0.0.0-0":"*":n&&p?(l&&(o=0),i=0,">"===n?(n=">=",l?(s=+s+1,o=0,i=0):(o=+o+1,i=0)):"<="===n&&(n="<",l?s=+s+1:o=+o+1),a=n+s+"."+o+"."+i+d):l?a=">="+s+".0.0"+d+" <"+(+s+1)+".0.0"+d:u&&(a=">="+s+"."+o+".0"+d+" <"+s+"."+(+o+1)+".0"+d),r("xRange return",a),a})}(e,t)}).join(" ")}(e,t),r("xrange",e),e=function(e,t){return r("replaceStars",e,t),e.trim().replace(i[c.STAR],"")}(e,t),r("stars",e),e}(e,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(s=s.filter(function(e){return!!e.match(n)})),s=s.map(function(e){return new A(e,this.options)},this)},C.prototype.intersects=function(e,t){if(!(e instanceof C))throw new TypeError("a Range is required");return this.set.some(function(r){return _(r,t)&&e.set.some(function(e){return _(e,t)&&r.every(function(r){return e.every(function(e){return r.intersects(e,t)})})})})},t.toComparators=function(e,t){return new C(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})},C.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}for(var t=0;t<this.set.length;t++)if(O(this.set[t],e,this.options))return!0;return!1},t.satisfies=N,t.maxSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&-1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minVersion=function(e,t){e=new C(e,t);var r=new h("0.0.0");if(e.test(r))return r;if(r=new h("0.0.0-0"),e.test(r))return r;r=null;for(var a=0;a<e.set.length;++a){e.set[a].forEach(function(e){var t=new h(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":r&&!R(r,t)||(r=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}})}if(r&&e.test(r))return r;return null},t.validRange=function(e,t){try{return new C(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,r){return B(e,t,"<",r)},t.gtr=function(e,t,r){return B(e,t,">",r)},t.outside=B,t.prerelease=function(e,t){var r=y(e,t);return r&&r.prerelease.length?r.prerelease:null},t.intersects=function(e,t,r){return e=new C(e,r),t=new C(t,r),e.intersects(t)},t.coerce=function(e,t){if(e instanceof h)return e;"number"==typeof e&&(e=String(e));if("string"!=typeof e)return null;var r=null;if((t=t||{}).rtl){for(var a;(a=i[c.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&a.index+a[0].length===r.index+r[0].length||(r=a),i[c.COERCERTL].lastIndex=a.index+a[1].length+a[2].length;i[c.COERCERTL].lastIndex=-1}else r=e.match(i[c.COERCE]);if(null===r)return null;return y(r[2]+"."+(r[3]||"0")+"."+(r[4]||"0"),t)}}(Khe,Khe.exports)),Khe.exports}var Jhe,Yhe,$he,Qhe,Zhe={},ebe=cR(qU),tbe={},rbe=cR(r);function abe(){if(Qhe)return tbe;Qhe=1,tbe.__esModule=!0,tbe.createUtilsGetter=function(e){return function(t){var n=t.findParent(function(e){return e.isProgram()});return{injectGlobalImport:function(t,s){e.storeAnonymous(n,t,s,function(e,t){return e?a.statement.ast(Jhe||(Jhe=h(["require(",")"])),t):r.importDeclaration([],t)})},injectNamedImport:function(t,s,i,d){return void 0===i&&(i=s),e.storeNamed(n,t,s,d,function(e,t,s){var d=n.scope.generateUidIdentifier(i);return{node:e?o(a.statement.ast(Yhe||(Yhe=h(["\n var "," = require(",").","\n "])),d,t,s)):r.importDeclaration([r.importSpecifier(d,s)],t),name:d.name}})},injectDefaultImport:function(t,s,i){return void 0===s&&(s=t),e.storeNamed(n,t,"default",i,function(e,t){var i=n.scope.generateUidIdentifier(s);return{node:e?o(a.statement.ast($he||($he=h(["var "," = require(",")"])),i,t)):r.importDeclaration([r.importDefaultSpecifier(i)],t),name:i.name}})}}}},tbe.getImportSource=function(e){var t=e.node;if(0===t.specifiers.length)return t.source.value},tbe.getRequireSource=function(e){var t=e.node;if(!r.isExpressionStatement(t))return;var a=t.expression;if(r.isCallExpression(a)&&r.isIdentifier(a.callee)&&"require"===a.callee.name&&1===a.arguments.length&&r.isStringLiteral(a.arguments[0]))return a.arguments[0].value},tbe.has=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},tbe.intersection=function(e,t){var r=new Set;return e.forEach(function(e){return t.has(e)&&r.add(e)}),r},tbe.resolveKey=function e(t,r){void 0===r&&(r=!1);var a=t.scope;if(t.isStringLiteral())return t.node.value;var n=t.isIdentifier();if(n&&!r&&!t.parent.computed)return t.node.name;if(r&&t.isMemberExpression()&&t.get("object").isIdentifier({name:"Symbol"})&&!a.hasBinding("Symbol",!0)){var s=e(t.get("property"),t.node.computed);if(s)return"Symbol."+s}if(n?a.hasBinding(t.node.name,!0):t.isPure()){var o=t.evaluate().value;if("string"==typeof o)return o}},tbe.resolveSource=function(e){if(e.isMemberExpression()&&e.get("property").isIdentifier({name:"prototype"})){var t=s(e.get("object"));return t?{id:t,placement:"prototype"}:{id:null,placement:null}}var r=s(e);if(r)return{id:r,placement:"static"};var a=n(e);switch(null==a?void 0:a.type){case"RegExpLiteral":return{id:"RegExp",placement:"prototype"};case"FunctionExpression":return{id:"Function",placement:"prototype"};case"StringLiteral":return{id:"String",placement:"prototype"};case"NumberLiteral":return{id:"Number",placement:"prototype"};case"BooleanLiteral":return{id:"Boolean",placement:"prototype"};case"ObjectExpression":return{id:"Object",placement:"prototype"};case"ArrayExpression":return{id:"Array",placement:"prototype"}}return{id:null,placement:null}};var e=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe);var t=e.default||e,r=t.types,a=t.template;function n(e,t){if(void 0===t&&(t=new Set),!t.has(e)){if(t.add(e),e.isVariableDeclarator()){if(e.get("id").isIdentifier())return n(e.get("init"),t)}else if(e.isReferencedIdentifier()){var r=e.scope.getBinding(e.node.name);if(!r)return e;if(!r.constant)return;return n(r.path,t)}return e}}function s(e){if(e.isIdentifier()&&!e.scope.hasBinding(e.node.name,!0))return e.node.name;var t=n(e);return null!=t&&t.isIdentifier()?t.node.name:void 0}function o(e){return e._blockHoist=3,e}return tbe}var nbe,sbe={};var obe,ibe={};var dbe,cbe={};function lbe(){if(dbe)return cbe;dbe=1,cbe.__esModule=!0,cbe.applyMissingDependenciesDefaults=function(e,t){var r=e.missingDependencies,a=void 0===r?{}:r;if(!1===a)return!1;var n=t.caller(function(e){return null==e?void 0:e.name}),s=a.log,o=void 0===s?"deferred":s,i=a.inject,d=void 0===i?"rollup-plugin-babel"===n?"throw":"import":i,c=a.all,l=void 0!==c&&c;return{log:o,inject:d,all:l}},cbe.validateIncludeExclude=function(r,a,n,s){var o,d=function(e){var t=function(e){if(e instanceof RegExp)return e;try{return new RegExp("^"+e+"$")}catch(e){return null}}(e);if(!t)return!1;for(var r,n=!1,s=i(a.keys());!(r=s()).done;){var d=r.value;t.test(d)&&(n=!0,o.add(d))}return!n},c=o=new Set,l=Array.from(n).filter(d),u=o=new Set,p=Array.from(s).filter(d),f=(0,e.intersection)(c,u);if(f.size>0||l.length>0||p.length>0)throw new Error('Error while validating the "'+r+'" provider options:\n'+t("include",l)+t("exclude",p)+function(e){return e.size?' - The following polyfills were matched both by "include" and "exclude" patterns:\n'+Array.from(e,function(e){return" "+e+"\n"}).join(""):""}(f));return{include:c,exclude:u}};var e=abe();function t(e,t){return t.length?' - The following "'+e+"\" patterns didn't match any polyfill:\n"+t.map(function(e){return" "+String(e)+"\n"}).join(""):""}return cbe}var ube,pbe={},fbe={};function gbe(){if(ube)return fbe;ube=1,fbe.__esModule=!0,fbe.default=void 0;var e=abe();function t(e){if(e.removed)return!0;if(!e.parentPath)return!1;var r,a;if(e.listKey){if(null==(r=e.parentPath.node)||null==(r=r[e.listKey])||!r.includes(e.node))return!0}else if((null==(a=e.parentPath.node)?void 0:a[e.key])!==e.node)return!0;return t(e.parentPath)}return fbe.default=function(r){function a(e,t,a,n){return r({kind:"property",object:e,key:t,placement:a},n)}function n(e){var t=e.node.name;e.scope.getBindingIdentifier(t)||r({kind:"global",name:t},e)}function s(t){var r=(0,e.resolveKey)(t.get("property"),t.node.computed);return{key:r,handleAsMemberExpression:!!r&&"prototype"!==r}}return{ReferencedIdentifier:function(e){var t=e.parentPath;t.isMemberExpression({object:e.node})&&s(t).handleAsMemberExpression||n(e)},"MemberExpression|OptionalMemberExpression":function(r){var o=s(r),i=o.key;if(o.handleAsMemberExpression){var d=r.get("object"),c=d.isIdentifier();if(c){var l=d.scope.getBinding(d.node.name);if(l){if(l.path.isImportNamespaceSpecifier())return;c=!1}}var u=(0,e.resolveSource)(d),p=a(u.id,i,u.placement,r);p||(p=!c||r.shouldSkip||d.shouldSkip||t(d)),p||n(d)}},ObjectPattern:function(t){var r,n=t.parentPath,s=t.parent;if(n.isVariableDeclarator())r=n.get("init");else if(n.isAssignmentExpression())r=n.get("right");else if(n.isFunction()){var o=n.parentPath;(o.isCallExpression()||o.isNewExpression())&&o.node.callee===s&&(r=o.get("arguments")[t.key])}var d=null,c=null;if(r){var l=(0,e.resolveSource)(r);d=l.id,c=l.placement}for(var u,p=i(t.get("properties"));!(u=p()).done;){var f=u.value;if(f.isObjectProperty()){var g=(0,e.resolveKey)(f.get("key"));g&&a(d,g,c,f)}}},BinaryExpression:function(t){if("in"===t.node.operator){var a=(0,e.resolveSource)(t.get("right")),n=(0,e.resolveKey)(t.get("left"),!0);n&&r({kind:"in",object:a.id,key:n,placement:a.placement},t)}}}},fbe}var mbe,ybe,hbe={};function bbe(){if(ybe)return pbe;ybe=1,pbe.__esModule=!0,pbe.usage=pbe.entry=void 0;var e=r(gbe());pbe.usage=e.default;var t=r(function(){if(mbe)return hbe;mbe=1,hbe.__esModule=!0,hbe.default=void 0;var e=abe();return hbe.default=function(t){return{ImportDeclaration:function(r){var a=(0,e.getImportSource)(r);a&&t({kind:"import",source:a},r)},Program:function(r){r.get("body").forEach(function(r){var a=(0,e.getRequireSource)(r);a&&t({kind:"import",source:a},r)})}}},hbe}());function r(e){return e&&e.__esModule?e:{default:e}}return pbe.entry=t.default,pbe}var vbe,xbe={};var Rbe,jbe,wbe,Ebe,Sbe,Tbe={};function Pbe(){if(jbe)return Zhe;jbe=1,Zhe.__esModule=!0,Zhe.default=function(o){return(0,e.declare)(function(e,p,f){e.assertVersion("^7.0.0 || ^8.0.0-alpha.0");var m,y=e.traverse,h=(0,s.applyMissingDependenciesDefaults)(p,e),b=function(e,n,o,i,d,p){var f,m,y,h,b,v=function(e,t){var r,a,n=e.method,s=e.targets,o=e.ignoreBrowserslistConfig,i=e.configPath,d=e.debug,c=e.shouldInjectPolyfill,l=e.absoluteImports,p=function(e,t){if(null==e)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,u);if(f=e,0===Object.keys(f).length)throw new Error('This plugin requires options, for example:\n {\n "plugins": [\n ["<plugin name>", { method: "usage-pure" }]\n ]\n }\n\nSee more options at https://github.com/babel/babel-polyfills/blob/main/docs/usage.md');var f;if("usage-global"===n)r="usageGlobal";else if("entry-global"===n)r="entryGlobal";else{if("usage-pure"!==n)throw"string"!=typeof n?new Error(".method must be a string"):new Error('.method must be one of "entry-global", "usage-global" or "usage-pure" (received '+JSON.stringify(n)+")");r="usagePure"}if("function"==typeof c){if(e.include||e.exclude)throw new Error(".include and .exclude are not supported when using the .shouldInjectPolyfill function.")}else if(null!=c)throw new Error(".shouldInjectPolyfill must be a function, or undefined (received "+JSON.stringify(c)+")");if(null!=l&&"boolean"!=typeof l&&"string"!=typeof l)throw new Error(".absoluteImports must be a boolean, a string, or undefined (received "+JSON.stringify(l)+")");if(s||i||o){var m="string"==typeof s||Array.isArray(s)?{browsers:s}:s;a=g(m,{ignoreBrowserslistConfig:o,configPath:i})}else a=t.targets();return{method:n,methodName:r,targets:a,absoluteImports:null!=l&&l,shouldInjectPolyfill:c,debug:!!d,providerOptions:p}}(n,p),x=v.method,R=v.methodName,j=v.targets,w=v.debug,E=v.shouldInjectPolyfill,S=v.providerOptions,T=v.absoluteImports,P=(0,r.createUtilsGetter)(new a.default(function(e){return c.resolve(i,e,T)},function(e){var t,r;return null!=(t=null==(r=h)?void 0:r.get(e))?t:1/0})),A=new Map,k={babel:p,getUtils:P,method:n.method,targets:j,createMetaResolver:l.default,shouldInjectPolyfill:function(r){if(void 0===h)throw new Error("Internal error in the "+e.name+" provider: shouldInjectPolyfill() can't be called during initialization.");if(h.has(r)||console.warn("Internal error in the "+_+' provider: unknown polyfill "'+r+'".'),b&&!b(r))return!1;var a=(0,t.isRequired)(r,j,{compatData:y,includes:f,excludes:m});if(E&&"boolean"!=typeof(a=E(r,a)))throw new Error(".shouldInjectPolyfill must return a boolean.");return a},debug:function(e){var t;d().found=!0,w&&e&&(d().polyfills.has(_)||(d().polyfills.add(e),null!=(t=d()).polyfillsSupport||(t.polyfillsSupport=y)))},assertDependency:function(e,t){if(void 0===t&&(t="*"),!1!==o&&!T){var r="*"===t?e:e+"@^"+t,a=!o.all&&function(e,t,r){var a=e.get(t);void 0===a&&(a=r(),e.set(t,a));return a}(A,e+" :: "+i,function(){return c.has(i,e)});a||d().missingDeps.add(r)}}},C=e(k,S,i),_=C.name||e.name;if("function"!=typeof C[R])throw new Error('The "'+_+'" provider doesn\'t support the "'+x+'" polyfilling method.');Array.isArray(C.polyfills)?(h=new Map(C.polyfills.map(function(e,t){return[e,t]})),b=C.filterPolyfills):C.polyfills?(h=new Map(Object.keys(C.polyfills).map(function(e,t){return[e,t]})),y=C.polyfills,b=C.filterPolyfills):h=new Map;var I,D=(0,s.validateIncludeExclude)(_,h,S.include||[],S.exclude||[]);f=D.include,m=D.exclude,I="usageGlobal"===R?function(e,t){var r,a=P(t);return null!=(r=C[R](e,a,t))&&r}:function(e,t){var r=P(t);return C[R](e,r,t),!1};return{debug:w,method:x,targets:j,provider:C,providerName:_,callProvider:I}}(o,p,h,f,function(){return m},e),v=b.debug,x=b.method,R=b.targets,j=b.provider,w=b.providerName,E=b.callProvider,S="entry-global"===x?d.entry:d.usage,T=j.visitor?y.visitors.merge([S(E),j.visitor]):S(E);v&&v!==n.presetEnvSilentDebugHeader&&(console.log(w+": `DEBUG` option"),console.log("\nUsing targets: "+(0,n.stringifyTargetsMultiline)(R)),console.log("\nUsing polyfills with `"+x+"` method:"));var P=j.runtimeName;return{name:"inject-polyfills",visitor:T,pre:function(e){var t;P&&(e.get("runtimeHelpersModuleName")&&e.get("runtimeHelpersModuleName")!==P?console.warn("Two different polyfill providers ("+e.get("runtimeHelpersModuleProvider")+" and "+w+") are trying to define two conflicting @babel/runtime alternatives: "+e.get("runtimeHelpersModuleName")+" and "+P+". The second one will be ignored."):(e.set("runtimeHelpersModuleName",P),e.set("runtimeHelpersModuleProvider",w))),m={polyfills:new Set,polyfillsSupport:void 0,found:!1,providers:new Set,missingDeps:new Set},null==(t=j.pre)||t.apply(this,arguments)},post:function(){var e;if(null==(e=j.post)||e.apply(this,arguments),!1!==h&&("per-file"===h.log?c.logMissing(m.missingDeps):c.laterLogMissing(m.missingDeps)),v)if(this.filename&&console.log("\n["+this.filename+"]"),0!==m.polyfills.size){"entry-global"===x?console.log("The "+w+" polyfill entry has been replaced with the following polyfills:"):console.log("The "+w+" polyfill added the following polyfills:");for(var r,a=i(m.polyfills);!(r=a()).done;){var n,s=r.value;if(null!=(n=m.polyfillsSupport)&&n[s]){var o=(0,t.getInclusionReasons)(s,R,m.polyfillsSupport),d=JSON.stringify(o).replace(/,/g,", ").replace(/^\{"/,'{ "').replace(/"\}$/,'" }');console.log(" "+s+" "+d)}else console.log(" "+s)}}else console.log("entry-global"===x?m.found?"Based on your targets, the "+w+" polyfill did not add any polyfill.":"The entry point for the "+w+" polyfill has not been found.":"Based on your code and targets, the "+w+" polyfill did not add any polyfill.")}}})};var e=zV,t=f(ebe),r=abe(),a=p(function(){if(nbe)return sbe;nbe=1,sbe.__esModule=!0,sbe.default=void 0;var e=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe),t=(e.default||e).types,r=function(){function e(e,t){this._imports=new WeakMap,this._anonymousImports=new WeakMap,this._lastImports=new WeakMap,this._resolver=e,this._getPreferredIndex=t}var r=e.prototype;return r.storeAnonymous=function(e,r,a,n){var s=this._normalizeKey(e,r),o=this._ensure(this._anonymousImports,e,Set);if(!o.has(s)){var i=n("script"===e.node.sourceType,t.stringLiteral(this._resolver(r)));o.add(s),this._injectImport(e,i,a)}},r.storeNamed=function(e,r,a,n,s){var o=this._normalizeKey(e,r,a),i=this._ensure(this._imports,e,Map);if(!i.has(o)){var d=s("script"===e.node.sourceType,t.stringLiteral(this._resolver(r)),t.identifier(a)),c=d.node,l=d.name;i.set(o,l),this._injectImport(e,c,n)}return t.identifier(i.get(o))},r._injectImport=function(e,t,r){var a,n,s=this._getPreferredIndex(r),o=null!=(a=this._lastImports.get(e))?a:[],d=function(t){return t.node&&t.parent===e.node&&t.container===e.node.body};if(s===1/0)o.length>0&&(d(n=o[o.length-1].path)||(n=void 0));else for(var c,l=i(o.entries());!(c=l()).done;){var u=y(c.value,2),p=u[0],f=u[1],g=f.path,m=f.index;if(d(g)){if(s<m){var h=y(g.insertBefore(t),1)[0];return void o.splice(p,0,{path:h,index:s})}n=g}}if(n){var b=y(n.insertAfter(t),1)[0];o.push({path:b,index:s})}else{var v=y(e.unshiftContainer("body",[t]),1)[0];this._lastImports.set(e,[{path:v,index:s}])}},r._ensure=function(e,t,r){var a=e.get(t);return a||(a=new r,e.set(t,a)),a},r._normalizeKey=function(e,t,r){void 0===r&&(r="");var a=e.node.sourceType;return(r&&a)+"::"+t+"::"+r},o(e)}();return sbe.default=r,sbe}()),n=function(){if(obe)return ibe;obe=1,ibe.__esModule=!0,ibe.presetEnvSilentDebugHeader=void 0,ibe.stringifyTargets=function(e){return JSON.stringify(e).replace(/,/g,", ").replace(/^\{"/,'{ "').replace(/"\}$/,'" }')},ibe.stringifyTargetsMultiline=function(t){return JSON.stringify((0,e.prettifyTargets)(t),null,2)};var e=ebe;return ibe.presetEnvSilentDebugHeader="#__secret_key__@babel/preset-env__don't_log_debug_header_and_resolved_targets",ibe}(),s=lbe(),d=f(bbe()),c=f((vbe||(vbe=1,xbe.__esModule=!0,xbe.has=function(e,t){return!0},xbe.laterLogMissing=function(e){},xbe.logMissing=function(e){},xbe.resolve=function(e,t,r){if(!1===r)return t;throw new Error('"absoluteImports" is not supported in bundles prepared for the browser.')}),xbe)),l=p(function(){if(Rbe)return Tbe;Rbe=1,Tbe.__esModule=!0,Tbe.default=function(r){var a=r.static,n=r.instance,s=r.global;return function(r){if("global"===r.kind&&s&&(0,e.has)(s,r.name))return{kind:"global",desc:s[r.name],name:r.name};if("property"===r.kind||"in"===r.kind){var o=r.placement,i=r.object,d=r.key;if(i&&"static"===o){if(s&&t.has(i)&&(0,e.has)(s,d))return{kind:"global",desc:s[d],name:d};if(a&&(0,e.has)(a,i)&&(0,e.has)(a[i],d))return{kind:"static",desc:a[i][d],name:i+"$"+d}}if(n&&(0,e.has)(n,d))return{kind:"instance",desc:n[d],name:""+d}}}};var e=abe(),t=new Set(["global","globalThis","self","window"]);return Tbe}()),u=["method","targets","ignoreBrowserslistConfig","configPath","debug","shouldInjectPolyfill","absoluteImports"];function p(e){return e&&e.__esModule?e:{default:e}}function f(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(f=function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o})(e,t)}var g=t.default.default||t.default;return Zhe}function Abe(){if(wbe)return Lhe;wbe=1,Lhe.__esModule=!0,Lhe.default=void 0;var e=o(Uhe),t=function(){if(Mhe)return qhe;Mhe=1,qhe.__esModule=!0,qhe.StaticProperties=qhe.InstanceProperties=qhe.CommonIterators=qhe.BuiltIns=void 0;var e,t=(e=Uhe)&&e.__esModule?e:{default:e},r=function(e,t,r,a){return void 0===r&&(r=[]),{name:e,pure:t,global:r,meta:a}},a=function(e,t,a){return void 0===a&&(a=null),r(t[0],e,t,{minRuntimeVersion:a})},n=function(e){return r(e[0],null,e)},s=function(e,t){return r(t,e,[])},o=["es6.object.to-string","es6.array.iterator","web.dom.iterable"],i=qhe.CommonIterators=["es6.string.iterator"].concat(o),d=["es6.object.to-string","es6.promise"];qhe.BuiltIns={DataView:n(["es6.typed.data-view"]),Float32Array:n(["es6.typed.float32-array"]),Float64Array:n(["es6.typed.float64-array"]),Int8Array:n(["es6.typed.int8-array"]),Int16Array:n(["es6.typed.int16-array"]),Int32Array:n(["es6.typed.int32-array"]),Map:a("map",["es6.map"].concat(b(i))),Number:n(["es6.number.constructor"]),Promise:a("promise",d),RegExp:n(["es6.regexp.constructor"]),Set:a("set",["es6.set"].concat(b(i))),Symbol:a("symbol/index",["es6.symbol"]),Uint8Array:n(["es6.typed.uint8-array"]),Uint8ClampedArray:n(["es6.typed.uint8-clamped-array"]),Uint16Array:n(["es6.typed.uint16-array"]),Uint32Array:n(["es6.typed.uint32-array"]),WeakMap:a("weak-map",["es6.weak-map"].concat(b(i))),WeakSet:a("weak-set",["es6.weak-set"].concat(b(i))),setImmediate:s("set-immediate","web.immediate"),clearImmediate:s("clear-immediate","web.immediate"),parseFloat:s("parse-float","es6.parse-float"),parseInt:s("parse-int","es6.parse-int")};var c=qhe.InstanceProperties={__defineGetter__:n(["es7.object.define-getter"]),__defineSetter__:n(["es7.object.define-setter"]),__lookupGetter__:n(["es7.object.lookup-getter"]),__lookupSetter__:n(["es7.object.lookup-setter"]),anchor:n(["es6.string.anchor"]),big:n(["es6.string.big"]),bind:n(["es6.function.bind"]),blink:n(["es6.string.blink"]),bold:n(["es6.string.bold"]),codePointAt:n(["es6.string.code-point-at"]),copyWithin:n(["es6.array.copy-within"]),endsWith:n(["es6.string.ends-with"]),entries:n(o),every:n(["es6.array.every"]),fill:n(["es6.array.fill"]),filter:n(["es6.array.filter"]),finally:n(["es7.promise.finally"].concat(d)),find:n(["es6.array.find"]),findIndex:n(["es6.array.find-index"]),fixed:n(["es6.string.fixed"]),flags:n(["es6.regexp.flags"]),flatMap:n(["es7.array.flat-map"]),fontcolor:n(["es6.string.fontcolor"]),fontsize:n(["es6.string.fontsize"]),forEach:n(["es6.array.for-each"]),includes:n(["es6.string.includes","es7.array.includes"]),indexOf:n(["es6.array.index-of"]),italics:n(["es6.string.italics"]),keys:n(o),lastIndexOf:n(["es6.array.last-index-of"]),link:n(["es6.string.link"]),map:n(["es6.array.map"]),match:n(["es6.regexp.match"]),name:n(["es6.function.name"]),padStart:n(["es7.string.pad-start"]),padEnd:n(["es7.string.pad-end"]),reduce:n(["es6.array.reduce"]),reduceRight:n(["es6.array.reduce-right"]),repeat:n(["es6.string.repeat"]),replace:n(["es6.regexp.replace"]),search:n(["es6.regexp.search"]),small:n(["es6.string.small"]),some:n(["es6.array.some"]),sort:n(["es6.array.sort"]),split:n(["es6.regexp.split"]),startsWith:n(["es6.string.starts-with"]),strike:n(["es6.string.strike"]),sub:n(["es6.string.sub"]),sup:n(["es6.string.sup"]),toISOString:n(["es6.date.to-iso-string"]),toJSON:n(["es6.date.to-json"]),toString:n(["es6.object.to-string","es6.date.to-string","es6.regexp.to-string"]),trim:n(["es6.string.trim"]),trimEnd:n(["es7.string.trim-right"]),trimLeft:n(["es7.string.trim-left"]),trimRight:n(["es7.string.trim-right"]),trimStart:n(["es7.string.trim-left"]),values:n(o)};return"es6.array.slice"in t.default&&(c.slice=n(["es6.array.slice"])),qhe.StaticProperties={Array:{from:a("array/from",["es6.symbol","es6.array.from"].concat(b(i))),isArray:a("array/is-array",["es6.array.is-array"]),of:a("array/of",["es6.array.of"])},Date:{now:a("date/now",["es6.date.now"])},JSON:{stringify:s("json/stringify","es6.symbol")},Math:{acosh:a("math/acosh",["es6.math.acosh"],"7.0.1"),asinh:a("math/asinh",["es6.math.asinh"],"7.0.1"),atanh:a("math/atanh",["es6.math.atanh"],"7.0.1"),cbrt:a("math/cbrt",["es6.math.cbrt"],"7.0.1"),clz32:a("math/clz32",["es6.math.clz32"],"7.0.1"),cosh:a("math/cosh",["es6.math.cosh"],"7.0.1"),expm1:a("math/expm1",["es6.math.expm1"],"7.0.1"),fround:a("math/fround",["es6.math.fround"],"7.0.1"),hypot:a("math/hypot",["es6.math.hypot"],"7.0.1"),imul:a("math/imul",["es6.math.imul"],"7.0.1"),log1p:a("math/log1p",["es6.math.log1p"],"7.0.1"),log10:a("math/log10",["es6.math.log10"],"7.0.1"),log2:a("math/log2",["es6.math.log2"],"7.0.1"),sign:a("math/sign",["es6.math.sign"],"7.0.1"),sinh:a("math/sinh",["es6.math.sinh"],"7.0.1"),tanh:a("math/tanh",["es6.math.tanh"],"7.0.1"),trunc:a("math/trunc",["es6.math.trunc"],"7.0.1")},Number:{EPSILON:a("number/epsilon",["es6.number.epsilon"]),MIN_SAFE_INTEGER:a("number/min-safe-integer",["es6.number.min-safe-integer"]),MAX_SAFE_INTEGER:a("number/max-safe-integer",["es6.number.max-safe-integer"]),isFinite:a("number/is-finite",["es6.number.is-finite"]),isInteger:a("number/is-integer",["es6.number.is-integer"]),isSafeInteger:a("number/is-safe-integer",["es6.number.is-safe-integer"]),isNaN:a("number/is-nan",["es6.number.is-nan"]),parseFloat:a("number/parse-float",["es6.number.parse-float"]),parseInt:a("number/parse-int",["es6.number.parse-int"])},Object:{assign:a("object/assign",["es6.object.assign"]),create:a("object/create",["es6.object.create"]),defineProperties:a("object/define-properties",["es6.object.define-properties"]),defineProperty:a("object/define-property",["es6.object.define-property"]),entries:a("object/entries",["es7.object.entries"]),freeze:a("object/freeze",["es6.object.freeze"]),getOwnPropertyDescriptor:a("object/get-own-property-descriptor",["es6.object.get-own-property-descriptor"]),getOwnPropertyDescriptors:a("object/get-own-property-descriptors",["es7.object.get-own-property-descriptors"]),getOwnPropertyNames:a("object/get-own-property-names",["es6.object.get-own-property-names"]),getOwnPropertySymbols:a("object/get-own-property-symbols",["es6.symbol"]),getPrototypeOf:a("object/get-prototype-of",["es6.object.get-prototype-of"]),is:a("object/is",["es6.object.is"]),isExtensible:a("object/is-extensible",["es6.object.is-extensible"]),isFrozen:a("object/is-frozen",["es6.object.is-frozen"]),isSealed:a("object/is-sealed",["es6.object.is-sealed"]),keys:a("object/keys",["es6.object.keys"]),preventExtensions:a("object/prevent-extensions",["es6.object.prevent-extensions"]),seal:a("object/seal",["es6.object.seal"]),setPrototypeOf:a("object/set-prototype-of",["es6.object.set-prototype-of"]),values:a("object/values",["es7.object.values"])},Promise:{all:n(i),race:n(i)},Reflect:{apply:a("reflect/apply",["es6.reflect.apply"]),construct:a("reflect/construct",["es6.reflect.construct"]),defineProperty:a("reflect/define-property",["es6.reflect.define-property"]),deleteProperty:a("reflect/delete-property",["es6.reflect.delete-property"]),get:a("reflect/get",["es6.reflect.get"]),getOwnPropertyDescriptor:a("reflect/get-own-property-descriptor",["es6.reflect.get-own-property-descriptor"]),getPrototypeOf:a("reflect/get-prototype-of",["es6.reflect.get-prototype-of"]),has:a("reflect/has",["es6.reflect.has"]),isExtensible:a("reflect/is-extensible",["es6.reflect.is-extensible"]),ownKeys:a("reflect/own-keys",["es6.reflect.own-keys"]),preventExtensions:a("reflect/prevent-extensions",["es6.reflect.prevent-extensions"]),set:a("reflect/set",["es6.reflect.set"]),setPrototypeOf:a("reflect/set-prototype-of",["es6.reflect.set-prototype-of"])},String:{at:s("string/at","es7.string.at"),fromCodePoint:a("string/from-code-point",["es6.string.from-code-point"]),raw:a("string/raw",["es6.string.raw"])},Symbol:{asyncIterator:n(["es6.symbol","es7.symbol.async-iterator"]),for:s("symbol/for","es6.symbol"),hasInstance:s("symbol/has-instance","es6.symbol"),isConcatSpreadable:s("symbol/is-concat-spreadable","es6.symbol"),iterator:r("es6.symbol","symbol/iterator",i),keyFor:s("symbol/key-for","es6.symbol"),match:a("symbol/match",["es6.regexp.match"]),replace:s("symbol/replace","es6.symbol"),search:s("symbol/search","es6.symbol"),species:s("symbol/species","es6.symbol"),split:s("symbol/split","es6.symbol"),toPrimitive:s("symbol/to-primitive","es6.symbol"),toStringTag:s("symbol/to-string-tag","es6.symbol"),unscopables:s("symbol/unscopables","es6.symbol")}},qhe}(),r=o(function(){if(Ghe)return Whe;function e(){return e=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},e.apply(null,arguments)}Ghe=1,Whe.__esModule=!0,Whe.default=function(a,n,s){var o=Object.keys(a),i=!o.length,d=o.some(function(e){return"node"!==e});return e({},s,"usage-pure"===n?r:null,i||d?t:null)};var t={"web.timers":{},"web.immediate":{},"web.dom.iterable":{}},r={"es6.parse-float":{},"es6.parse-int":{},"es7.string.at":{}};return Whe}()),a=function(){if(Hhe)return zhe;Hhe=1,zhe.__esModule=!0,zhe.hasMinVersion=function(e,r){return!r||!e||(r=String(r),t.default.valid(r)&&(r="^"+r),!t.default.intersects("<"+e,r)&&!t.default.intersects(">=8.0.0",r))};var e,t=(e=Xhe())&&e.__esModule?e:{default:e};return zhe}(),n=o(Pbe()),s=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe);function o(e){return e&&e.__esModule?e:{default:e}}var i=(s.default||s).types,d="@babel/runtime-corejs2",c=Function.call.bind(Object.hasOwnProperty);return Lhe.default=(0,n.default)(function(n,s){var o=s["#__secret_key__@babel/preset-env__compatibility"],l=void 0===o?{}:o,u=l.entryInjectRegenerator,p=void 0!==u&&u,f=l.noRuntimeName,g=void 0!==f&&f,m=s["#__secret_key__@babel/runtime__compatibility"],y=void 0===m?{}:m,h=y.useBabelRuntime,b=void 0!==h&&h,v=y.runtimeVersion,x=void 0===v?"":v,R=y.ext,j=void 0===R?".js":R,w=n.createMetaResolver({global:t.BuiltIns,static:t.StaticProperties,instance:t.InstanceProperties}),E=n.debug,S=n.shouldInjectPolyfill,T=n.method,P=(0,r.default)(n.targets,T,e.default),A=b?d+"/core-js":"usage-pure"===T?"core-js/library/fn":"core-js/modules";function k(e,t){"string"!=typeof e?e.forEach(function(e){return k(e,t)}):c(P,e)&&S(e)&&(E(e),t.injectGlobalImport(A+"/"+e+".js"))}return{name:"corejs2",runtimeName:g?null:d,polyfills:P,entryGlobal:function(e,t,r){"import"===e.kind&&"core-js"===e.source&&(E(null),k(Object.keys(P),t),p&&t.injectGlobalImport("regenerator-runtime/runtime.js"),r.remove())},usageGlobal:function(e,t){var r=w(e);if(r){var a=r.desc.global;if("global"!==r.kind&&"object"in e&&e.object&&"prototype"===e.placement){var n=e.object.toLowerCase();a=a.filter(function(e){return e.includes(n)})}k(a,t)}},usagePure:function(e,t,r){if("in"!==e.kind){if(!r.parentPath.isUnaryExpression({operator:"delete"})){if("property"===e.kind){if(!r.isMemberExpression())return;if(!r.isReferenced())return;if("Symbol.iterator"===e.key&&S("es6.symbol")&&r.parentPath.isCallExpression({callee:r.node})&&0===r.parentPath.node.arguments.length)return r.parentPath.replaceWith(i.callExpression(t.injectDefaultImport(A+"/get-iterator"+j,"getIterator"),[r.node.object])),void r.skip()}var n=w(e);if(n){var s=function(e,t,r){var n=e.pure,s=e.meta,o=e.name;if(n&&S(o)&&(!(x&&s&&s.minRuntimeVersion)||(0,a.hasMinVersion)(s&&s.minRuntimeVersion,x)))return b&&"symbol/index"===n&&(n="symbol"),r.injectDefaultImport(A+"/"+n+j,t)}(n.desc,n.name,t);s&&r.replaceWith(s)}}}else"Symbol.iterator"===e.key&&r.replaceWith(i.callExpression(t.injectDefaultImport(A+"/is-iterable"+j,"isIterable"),[r.node.right]))},visitor:"usage-global"===T&&{YieldExpression:function(e){e.node.delegate&&k("web.dom.iterable",n.getUtils(e))},"ForOfStatement|ArrayPattern":function(e){t.CommonIterators.forEach(function(t){return k(t,n.getUtils(e))})}}}}),Lhe}var kbe,Cbe,_be={},Ibe={"es.symbol":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"15",electron:"0.37",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.symbol.description":{android:"70",bun:"0.1.1",chrome:"70","chrome-android":"70",deno:"1.0",edge:"79",electron:"5.0",firefox:"63","firefox-android":"63",ios:"12.2",node:"11.0",oculus:"6.0",opera:"57","opera-android":"49",opera_mobile:"49",quest:"6.0",rhino:"1.8.0",safari:"12.1",samsung:"10.0"},"es.symbol.async-dispose":{android:"127",bun:"1.0.23",chrome:"127","chrome-android":"127",deno:"1.38",edge:"127",electron:"32.0",firefox:"135","firefox-android":"135",node:"20.5.0",oculus:"35.0",opera:"113","opera-android":"84",opera_mobile:"84",quest:"35.0",samsung:"28.0"},"es.symbol.async-iterator":{android:"63",bun:"0.1.1",chrome:"63","chrome-android":"63",deno:"1.0",edge:"79",electron:"3.0",firefox:"55","firefox-android":"55",ios:"12.0",node:"10.0",oculus:"5.0",opera:"50","opera-android":"46",opera_mobile:"46",quest:"5.0",safari:"12.0",samsung:"8.0"},"es.symbol.dispose":{android:"125",bun:"1.0.23",chrome:"125","chrome-android":"125",deno:"1.38",edge:"125",electron:"31.0",firefox:"135","firefox-android":"135",node:"20.5.0",oculus:"34.0",opera:"111","opera-android":"83",opera_mobile:"83",quest:"34.0",samsung:"27.0"},"es.symbol.has-instance":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"15",electron:"1.1",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.is-concat-spreadable":{android:"48",bun:"0.1.1",chrome:"48","chrome-android":"48",deno:"1.0",edge:"15",electron:"0.37",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"35","opera-android":"35",opera_mobile:"35",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.iterator":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"36","firefox-android":"36",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.symbol.match":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"79",electron:"1.1",firefox:"40","firefox-android":"40",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.match-all":{android:"73",bun:"0.1.1",chrome:"73","chrome-android":"73",deno:"1.0",edge:"79",electron:"5.0",firefox:"67","firefox-android":"67",hermes:"0.6",ios:"13.0",node:"12.0",oculus:"6.0",opera:"60","opera-android":"52",opera_mobile:"52",quest:"6.0","react-native":"0.69",rhino:"1.8.0",safari:"13",samsung:"11.0"},"es.symbol.replace":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"79",electron:"1.1",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.search":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"79",electron:"1.1",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.species":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"41","firefox-android":"41",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.split":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"79",electron:"1.1",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.to-primitive":{android:"47",bun:"0.1.1",chrome:"47","chrome-android":"47",deno:"1.0",edge:"15",electron:"0.36",firefox:"44","firefox-android":"44",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"34","opera-android":"34",opera_mobile:"34",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.to-string-tag":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"15",electron:"0.37",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.symbol.unscopables":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"48","firefox-android":"48",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.error.cause":{android:"94",bun:"0.1.1",chrome:"94","chrome-android":"94",deno:"1.14",edge:"94",electron:"15.0",firefox:"91","firefox-android":"91",hermes:"0.8",ios:"15.0",node:"16.11",oculus:"18.0",opera:"80","opera-android":"66",opera_mobile:"66",quest:"18.0","react-native":"0.69",rhino:"1.8.0",safari:"15.0",samsung:"17.0"},"es.error.is-error":{android:"134",chrome:"134","chrome-android":"134",deno:"2.2",edge:"134",electron:"35.0",firefox:"138","firefox-android":"138",node:"24.3",oculus:"38.0",opera:"119","opera-android":"88",opera_mobile:"88",quest:"38.0",rhino:"1.9.0",samsung:"29.0"},"es.error.to-string":{android:"4.4.3",bun:"0.1.1",chrome:"33","chrome-android":"33",deno:"1.0",edge:"12",electron:"0.20",firefox:"11","firefox-android":"11",hermes:"0.1",ie:"9",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"20","opera-android":"20",opera_mobile:"20",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"8.0",samsung:"2.0"},"es.aggregate-error":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.2",edge:"85",electron:"10.0",firefox:"79","firefox-android":"79",hermes:"0.13",ios:"14.0",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0","react-native":"0.72",rhino:"1.8.0",safari:"14.0",samsung:"14.0"},"es.aggregate-error.cause":{android:"94",bun:"0.1.1",chrome:"94","chrome-android":"94",deno:"1.14",edge:"94",electron:"15.0",firefox:"91","firefox-android":"91",hermes:"0.13",ios:"15.0",node:"16.11",oculus:"18.0",opera:"80","opera-android":"66",opera_mobile:"66",quest:"18.0","react-native":"0.72",rhino:"1.8.0",safari:"15.0",samsung:"17.0"},"es.suppressed-error.constructor":{android:"136",bun:"1.2.15",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"es.array.at":{android:"92",bun:"0.1.1",chrome:"92","chrome-android":"92",deno:"1.12",edge:"92",electron:"14.0",firefox:"90","firefox-android":"90",hermes:"0.13",ios:"15.4",node:"16.6",oculus:"17.0",opera:"78","opera-android":"65",opera_mobile:"65",quest:"17.0","react-native":"0.71",rhino:"1.7.15",safari:"15.4",samsung:"16.0"},"es.array.concat":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"48","firefox-android":"48",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.array.copy-within":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"12",electron:"0.31",firefox:"48","firefox-android":"48",ios:"9.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0",rhino:"1.8.0",safari:"9.0",samsung:"5.0"},"es.array.every":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.array.fill":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"12",electron:"0.31",firefox:"48","firefox-android":"48",ios:"9.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0",rhino:"1.8.0",safari:"9.0",samsung:"5.0"},"es.array.filter":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"48","firefox-android":"48",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.array.find":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"48","firefox-android":"48",ios:"9.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0",rhino:"1.8.0",safari:"9.0",samsung:"5.0"},"es.array.find-index":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"48","firefox-android":"48",ios:"9.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0",rhino:"1.8.0",safari:"9.0",samsung:"5.0"},"es.array.find-last":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"es.array.find-last-index":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"es.array.flat":{android:"69",bun:"0.1.1",chrome:"69","chrome-android":"69",deno:"1.0",edge:"79",electron:"4.0",firefox:"62","firefox-android":"62",hermes:"0.4",ios:"12.0",node:"11.0",oculus:"6.0",opera:"56","opera-android":"48",opera_mobile:"48",quest:"6.0","react-native":"0.69",rhino:"1.7.15",safari:"12.0",samsung:"10.0"},"es.array.flat-map":{android:"69",bun:"0.1.1",chrome:"69","chrome-android":"69",deno:"1.0",edge:"79",electron:"4.0",firefox:"62","firefox-android":"62",hermes:"0.4",ios:"12.0",node:"11.0",oculus:"6.0",opera:"56","opera-android":"48",opera_mobile:"48",quest:"6.0","react-native":"0.69",rhino:"1.7.15",safari:"12.0",samsung:"10.0"},"es.array.for-each":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.array.from":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"53","firefox-android":"53",hermes:"0.13",ios:"9.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.73",rhino:"1.7.13",safari:"9.0",samsung:"5.0"},"es.array.includes":{android:"53",bun:"0.1.1",chrome:"53","chrome-android":"53",deno:"1.0",edge:"14",electron:"1.4",firefox:"102","firefox-android":"102",ios:"10.0",node:"7.0",oculus:"3.0",opera:"40","opera-android":"40",opera_mobile:"40",quest:"3.0",rhino:"1.8.0",safari:"10.0",samsung:"6.0"},"es.array.index-of":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"12",electron:"1.2",firefox:"47","firefox-android":"47",hermes:"0.1",ie:"9",ios:"8.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"5.0"},"es.array.is-array":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"3.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"4.0",samsung:"1.0"},"es.array.iterator":{android:"66",bun:"0.1.1",chrome:"66","chrome-android":"66",deno:"1.0",edge:"15",electron:"3.0",firefox:"60","firefox-android":"60",ios:"10.0",node:"10.0",oculus:"5.0",opera:"53","opera-android":"47",opera_mobile:"47",quest:"5.0",rhino:"1.8.0",safari:"10.0",samsung:"9.0"},"es.array.join":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"13",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.array.last-index-of":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"12",electron:"1.2",firefox:"47","firefox-android":"47",hermes:"0.1",ie:"9",ios:"8.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"5.0"},"es.array.map":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"50","firefox-android":"50",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.array.of":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"9.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"5.0"},"es.array.push":{android:"122",bun:"0.1.1",chrome:"122","chrome-android":"122",deno:"1.41.3",edge:"122",electron:"29.0",firefox:"55","firefox-android":"55",hermes:"0.2",ios:"16.0",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0","react-native":"0.69",safari:"16.0",samsung:"26.0"},"es.array.reduce":{android:"83",bun:"0.1.1",chrome:"83","chrome-android":"83",deno:"1.0",edge:"12",electron:"9.0",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"8.0",node:"6.0",oculus:"10.0",opera:"69","opera-android":"59",opera_mobile:"59",quest:"10.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"13.0"},"es.array.reduce-right":{android:"83",bun:"0.1.1",chrome:"83","chrome-android":"83",deno:"1.0",edge:"12",electron:"9.0",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"8.0",node:"6.0",oculus:"10.0",opera:"69","opera-android":"59",opera_mobile:"59",quest:"10.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"13.0"},"es.array.reverse":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"5.5",ios:"12.2",node:"0.0.3",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"12.0.2",samsung:"1.0"},"es.array.slice":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"48","firefox-android":"48",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.array.some":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.array.sort":{android:"70",bun:"0.1.1",chrome:"70","chrome-android":"70",deno:"1.0",edge:"79",electron:"5.0",firefox:"4","firefox-android":"4",hermes:"0.10",ios:"12.0",node:"11.0",oculus:"6.0",opera:"57","opera-android":"49",opera_mobile:"49",quest:"6.0","react-native":"0.69",rhino:"1.8.0",safari:"12.0",samsung:"10.0"},"es.array.species":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"48","firefox-android":"48",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.array.splice":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"49","firefox-android":"49",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",safari:"10.0",samsung:"5.0"},"es.array.to-reversed":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.array.to-sorted":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.array.to-spliced":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.array.unscopables.flat":{android:"73",bun:"0.1.1",chrome:"73","chrome-android":"73",deno:"1.0",edge:"79",electron:"5.0",firefox:"67","firefox-android":"67",ios:"13.0",node:"12.0",oculus:"6.0",opera:"60","opera-android":"52",opera_mobile:"52",quest:"6.0",rhino:"1.8.0",safari:"13",samsung:"11.0"},"es.array.unscopables.flat-map":{android:"73",bun:"0.1.1",chrome:"73","chrome-android":"73",deno:"1.0",edge:"79",electron:"5.0",firefox:"67","firefox-android":"67",ios:"13.0",node:"12.0",oculus:"6.0",opera:"60","opera-android":"52",opera_mobile:"52",quest:"6.0",rhino:"1.8.0",safari:"13",samsung:"11.0"},"es.array.unshift":{android:"71",bun:"0.1.1",chrome:"71","chrome-android":"71",deno:"1.0",edge:"12",electron:"5.0",firefox:"23","firefox-android":"23",hermes:"0.1",ie:"9",ios:"16.0",node:"12.0",oculus:"6.0",opera:"58","opera-android":"50",opera_mobile:"50",quest:"6.0","react-native":"0.69",safari:"16.0",samsung:"10.0"},"es.array.with":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"140","firefox-android":"140",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.array-buffer.constructor":{android:"4.4",bun:"0.1.1",chrome:"28","chrome-android":"28",deno:"1.0",edge:"14",electron:"0.20",firefox:"44","firefox-android":"44",hermes:"0.1",ios:"12.0",node:"0.11.1",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"12.0",samsung:"1.5"},"es.array-buffer.is-view":{android:"4.4.3",bun:"0.1.1",chrome:"32","chrome-android":"32",deno:"1.0",edge:"12",electron:"0.20",firefox:"29","firefox-android":"29",hermes:"0.1",ie:"11",ios:"8.0",node:"0.11.9",oculus:"3.0",opera:"19","opera-android":"19",opera_mobile:"19",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"7.1",samsung:"2.0"},"es.array-buffer.slice":{android:"4.4.3",bun:"0.1.1",chrome:"31","chrome-android":"31",deno:"1.0",edge:"12",electron:"0.20",firefox:"46","firefox-android":"46",hermes:"0.1",ie:"11",ios:"12.2",node:"0.11.8",oculus:"3.0",opera:"18","opera-android":"18",opera_mobile:"18",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"12.1",samsung:"2.0"},"es.data-view":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"15","firefox-android":"15",hermes:"0.1",ie:"10",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.data-view.get-float16":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"18.2",samsung:"29.0"},"es.data-view.set-float16":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"18.2",samsung:"29.0"},"es.array-buffer.detached":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"es.array-buffer.transfer":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"es.array-buffer.transfer-to-fixed-length":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"es.date.get-year":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"9",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"3","opera-android":"3",opera_mobile:"3",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.date.now":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",hermes:"0.1",ie:"9",ios:"3.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"4.0",samsung:"1.0"},"es.date.set-year":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"3",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"3","opera-android":"3",opera_mobile:"3",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.date.to-gmt-string":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"3",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"3","opera-android":"3",opera_mobile:"3",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.date.to-iso-string":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"7","firefox-android":"7",hermes:"0.1",ie:"9",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.date.to-json":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"10.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"1.5"},"es.date.to-primitive":{android:"47",bun:"0.1.1",chrome:"47","chrome-android":"47",deno:"1.0",edge:"15",electron:"0.36",firefox:"44","firefox-android":"44",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"34","opera-android":"34",opera_mobile:"34",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.date.to-string":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",hermes:"0.1",ie:"9",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.disposable-stack.constructor":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"es.escape":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"3",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"3","opera-android":"3",opera_mobile:"3",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.function.bind":{android:"3.0",bun:"0.1.1",chrome:"7","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"5.0",node:"0.1.101",oculus:"3.0",opera:"12","opera-android":"12",opera_mobile:"12",phantom:"2.0",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"5.1",samsung:"1.0"},"es.function.has-instance":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"50","firefox-android":"50",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.function.name":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",hermes:"0.1",ios:"3.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"4.0",samsung:"1.0"},"es.global-this":{android:"71",bun:"0.1.1",chrome:"71","chrome-android":"71",deno:"1.0",edge:"79",electron:"5.0",firefox:"65","firefox-android":"65",hermes:"0.2",ios:"12.2",node:"12.0",oculus:"6.0",opera:"58","opera-android":"50",opera_mobile:"50",quest:"6.0","react-native":"0.69",rhino:"1.7.14",safari:"12.1",samsung:"10.0"},"es.iterator.constructor":{android:"122",bun:"1.1.31",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"18.4",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"18.4",samsung:"26.0"},"es.iterator.concat":{bun:"1.3.7",firefox:"147","firefox-android":"147"},"es.iterator.dispose":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"135","firefox-android":"135",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"es.iterator.drop":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.every":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.filter":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.find":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.flat-map":{android:"135",bun:"1.2.21",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.2",samsung:"29.0"},"es.iterator.for-each":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.from":{android:"122",bun:"1.2.5",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"26.0",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"26.0",samsung:"26.0"},"es.iterator.map":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.reduce":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.some":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.take":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"es.iterator.to-array":{android:"122",bun:"1.1.31",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"18.4",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"18.4",samsung:"26.0"},"es.json.is-raw-json":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"es.json.parse":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"es.json.raw-json":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"es.json.stringify":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"es.json.to-string-tag":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"15",electron:"1.1",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.map":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"53","firefox-android":"53",hermes:"0.13",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.73",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.map.group-by":{android:"117",bun:"1.1.2",chrome:"117","chrome-android":"117",deno:"1.37",edge:"117",electron:"27.0",firefox:"119","firefox-android":"119",ios:"18.0",node:"21.0",oculus:"30.0",opera:"103","opera-android":"78",opera_mobile:"78",quest:"30.0",rhino:"1.8.0",safari:"18.0",samsung:"24.0"},"es.map.get-or-insert":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"es.map.get-or-insert-computed":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"es.math.acosh":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"13",electron:"1.4",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0","react-native":"0.69",safari:"7.1",samsung:"6.0"},"es.math.asinh":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"13",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.atanh":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"13",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.cbrt":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.clz32":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"31","firefox-android":"31",hermes:"0.1",ios:"9.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.0"},"es.math.cosh":{android:"39",bun:"0.1.1",chrome:"39","chrome-android":"39",deno:"1.0",edge:"13",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"1.0",oculus:"3.0",opera:"26","opera-android":"26",opera_mobile:"26",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.4"},"es.math.expm1":{android:"39",bun:"0.1.1",chrome:"39","chrome-android":"39",deno:"1.0",edge:"13",electron:"0.20",firefox:"46","firefox-android":"46",hermes:"0.1",ios:"8.0",node:"1.0",oculus:"3.0",opera:"26","opera-android":"26",opera_mobile:"26",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.4"},"es.math.fround":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"26","firefox-android":"26",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.f16round":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",rhino:"1.9.0",safari:"18.2",samsung:"29.0"},"es.math.hypot":{android:"78",bun:"0.1.1",chrome:"78","chrome-android":"78",deno:"1.0",edge:"12",electron:"7.0",firefox:"27","firefox-android":"27",hermes:"0.1",ios:"8.0",node:"12.16",oculus:"8.0",opera:"65","opera-android":"56",opera_mobile:"56",quest:"8.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"12.0"},"es.math.imul":{android:"4.4",bun:"0.1.1",chrome:"28","chrome-android":"28",deno:"1.0",edge:"13",electron:"0.20",firefox:"20","firefox-android":"20",hermes:"0.1",ios:"9.0",node:"0.11.1",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"1.5"},"es.math.log10":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.log1p":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.log2":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.sign":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"9.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.0"},"es.math.sinh":{android:"39",bun:"0.1.1",chrome:"39","chrome-android":"39",deno:"1.0",edge:"13",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"1.0",oculus:"3.0",opera:"26","opera-android":"26",opera_mobile:"26",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.4"},"es.math.sum-precise":{bun:"1.2.18",firefox:"137","firefox-android":"137",ios:"26.2",safari:"26.2"},"es.math.tanh":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.math.to-string-tag":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"15",electron:"1.1",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.math.trunc":{android:"38",bun:"0.1.1",chrome:"38","chrome-android":"38",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"8.0",node:"0.11.15",oculus:"3.0",opera:"25","opera-android":"25",opera_mobile:"25",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.number.constructor":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"46","firefox-android":"46",hermes:"0.5",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.number.epsilon":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"25","firefox-android":"25",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"9.0",samsung:"2.0"},"es.number.is-finite":{android:"4.1",bun:"0.1.1",chrome:"19","chrome-android":"25",deno:"1.0",edge:"12",electron:"0.20",firefox:"16","firefox-android":"16",hermes:"0.1",ios:"9.0",node:"0.7.3",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"1.5"},"es.number.is-integer":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"16","firefox-android":"16",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"2.0"},"es.number.is-nan":{android:"4.1",bun:"0.1.1",chrome:"19","chrome-android":"25",deno:"1.0",edge:"12",electron:"0.20",firefox:"15","firefox-android":"15",hermes:"0.1",ios:"9.0",node:"0.7.3",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"1.5"},"es.number.is-safe-integer":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"32","firefox-android":"32",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"2.0"},"es.number.max-safe-integer":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"31","firefox-android":"31",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"2.0"},"es.number.min-safe-integer":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"31","firefox-android":"31",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"2.0"},"es.number.parse-float":{android:"37",bun:"0.1.1",chrome:"35","chrome-android":"35",deno:"1.0",edge:"79",electron:"0.20",firefox:"39","firefox-android":"39",hermes:"0.1",ios:"11.0",node:"0.11.13",oculus:"3.0",opera:"22","opera-android":"22",opera_mobile:"22",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"11.0",samsung:"3.0"},"es.number.parse-int":{android:"37",bun:"0.1.1",chrome:"35","chrome-android":"35",deno:"1.0",edge:"79",electron:"0.20",firefox:"39","firefox-android":"39",hermes:"0.1",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"22","opera-android":"22",opera_mobile:"22",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"9.0",samsung:"3.0"},"es.number.to-exponential":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"18",electron:"1.2",firefox:"87","firefox-android":"87",hermes:"0.1",ios:"11.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"11",samsung:"5.0"},"es.number.to-fixed":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"79",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.number.to-precision":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"8",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"1.5"},"es.object.assign":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"79",electron:"0.37",firefox:"36","firefox-android":"36",hermes:"0.4",ios:"9.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"9.0",samsung:"5.0"},"es.object.create":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"3.0",node:"0.1.27",oculus:"3.0",opera:"12","opera-android":"12",opera_mobile:"12",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"4.0",samsung:"1.0"},"es.object.define-getter":{android:"62",bun:"0.1.1",chrome:"62","chrome-android":"62",deno:"1.0",edge:"16",electron:"3.0",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"8.0",node:"8.10",oculus:"5.0",opera:"49","opera-android":"46",opera_mobile:"46",quest:"5.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"8.0"},"es.object.define-properties":{android:"37",bun:"0.1.1",chrome:"37","chrome-android":"37",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"5.0",node:"0.11.15",oculus:"3.0",opera:"12","opera-android":"12",opera_mobile:"12",phantom:"2.0",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"5.1",samsung:"3.0"},"es.object.define-property":{android:"37",bun:"0.1.1",chrome:"37","chrome-android":"37",deno:"1.0",edge:"12",electron:"0.20",firefox:"4","firefox-android":"4",hermes:"0.1",ie:"9",ios:"5.0",node:"0.11.15",oculus:"3.0",opera:"12","opera-android":"12",opera_mobile:"12",phantom:"2.0",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"5.1",samsung:"3.0"},"es.object.define-setter":{android:"62",bun:"0.1.1",chrome:"62","chrome-android":"62",deno:"1.0",edge:"16",electron:"3.0",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"8.0",node:"8.10",oculus:"5.0",opera:"49","opera-android":"46",opera_mobile:"46",quest:"5.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"8.0"},"es.object.entries":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"14",electron:"1.4",firefox:"47","firefox-android":"47",hermes:"0.1",ios:"10.3",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"10.1",samsung:"6.0"},"es.object.freeze":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.from-entries":{android:"73",bun:"0.1.1",chrome:"73","chrome-android":"73",deno:"1.0",edge:"79",electron:"5.0",firefox:"63","firefox-android":"63",hermes:"0.4",ios:"12.2",node:"12.0",oculus:"6.0",opera:"60","opera-android":"52",opera_mobile:"52",quest:"6.0","react-native":"0.69",rhino:"1.7.14",safari:"12.1",samsung:"11.0"},"es.object.get-own-property-descriptor":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.get-own-property-descriptors":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"50","firefox-android":"50",hermes:"0.6",ios:"10.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"6.0"},"es.object.get-own-property-names":{android:"40",bun:"0.1.1",chrome:"40","chrome-android":"40",deno:"1.0",edge:"13",electron:"0.21",firefox:"34","firefox-android":"34",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"27","opera-android":"27",opera_mobile:"27",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.object.get-prototype-of":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.group-by":{android:"117",bun:"1.1.2",chrome:"117","chrome-android":"117",deno:"1.37",edge:"117",electron:"27.0",firefox:"119","firefox-android":"119",ios:"18.0",node:"21.0",oculus:"30.0",opera:"103","opera-android":"78",opera_mobile:"78",quest:"30.0",rhino:"1.8.0",safari:"18.0",samsung:"24.0"},"es.object.has-own":{android:"93",bun:"0.1.1",chrome:"93","chrome-android":"93",deno:"1.13",edge:"93",electron:"14.0",firefox:"92","firefox-android":"92",hermes:"0.10",ios:"15.4",node:"16.9",oculus:"17.0",opera:"79","opera-android":"66",opera_mobile:"66",quest:"17.0","react-native":"0.69",rhino:"1.7.15",safari:"15.4",samsung:"17.0"},"es.object.is":{android:"4.1",bun:"0.1.1",chrome:"19","chrome-android":"25",deno:"1.0",edge:"12",electron:"0.20",firefox:"22","firefox-android":"22",hermes:"0.1",ios:"9.0",node:"0.7.3",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"1.5"},"es.object.is-extensible":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.is-frozen":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.is-sealed":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.keys":{android:"40",bun:"0.1.1",chrome:"40","chrome-android":"40",deno:"1.0",edge:"13",electron:"0.21",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"27","opera-android":"27",opera_mobile:"27",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.object.lookup-getter":{android:"62",bun:"0.1.1",chrome:"62","chrome-android":"62",deno:"1.0",edge:"16",electron:"3.0",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"8.0",node:"8.10",oculus:"5.0",opera:"49","opera-android":"46",opera_mobile:"46",quest:"5.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"8.0"},"es.object.lookup-setter":{android:"62",bun:"0.1.1",chrome:"62","chrome-android":"62",deno:"1.0",edge:"16",electron:"3.0",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"8.0",node:"8.10",oculus:"5.0",opera:"49","opera-android":"46",opera_mobile:"46",quest:"5.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"8.0"},"es.object.prevent-extensions":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.proto":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",hermes:"0.1",ie:"11",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"3.1",samsung:"1.0"},"es.object.seal":{android:"44",bun:"0.1.1",chrome:"44","chrome-android":"44",deno:"1.0",edge:"13",electron:"0.30",firefox:"35","firefox-android":"35",hermes:"0.1",ios:"9.0",node:"3.0",oculus:"3.0",opera:"31","opera-android":"31",opera_mobile:"31",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"4.0"},"es.object.set-prototype-of":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"12",electron:"0.20",firefox:"31","firefox-android":"31",hermes:"0.1",ie:"11",ios:"9.0",node:"0.11.13",oculus:"3.0",opera:"21","opera-android":"21",opera_mobile:"21",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"2.0"},"es.object.to-string":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"15",electron:"0.37",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.object.values":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"14",electron:"1.4",firefox:"47","firefox-android":"47",hermes:"0.1",ios:"10.3",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"10.1",samsung:"6.0"},"es.parse-float":{android:"37",bun:"0.1.1",chrome:"35","chrome-android":"35",deno:"1.0",edge:"74",electron:"0.20",firefox:"8","firefox-android":"8",hermes:"0.1",ie:"8",ios:"8.0",node:"0.11.13",oculus:"3.0",opera:"22","opera-android":"22",opera_mobile:"22",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.parse-int":{android:"37",bun:"0.1.1",chrome:"35","chrome-android":"35",deno:"1.0",edge:"74",electron:"0.20",firefox:"21","firefox-android":"21",hermes:"0.1",ie:"9",ios:"8.0",node:"0.11.13",oculus:"3.0",opera:"22","opera-android":"22",opera_mobile:"22",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"7.1",samsung:"3.0"},"es.promise":{android:"67",bun:"0.1.1",chrome:"67","chrome-android":"67",deno:"1.24",edge:"79",electron:"4.0",firefox:"69","firefox-android":"69",ios:"11.0",node:"10.4",oculus:"6.0",opera:"54","opera-android":"48",opera_mobile:"48",quest:"6.0",rhino:"1.7.14",safari:"11.0",samsung:"9.0"},"es.promise.all-settled":{android:"76",bun:"0.1.1",chrome:"76","chrome-android":"76",deno:"1.24",edge:"79",electron:"6.0",firefox:"71","firefox-android":"71",ios:"13.0",node:"12.9",oculus:"7.0",opera:"63","opera-android":"54",opera_mobile:"54",quest:"7.0",rhino:"1.7.15",safari:"13",samsung:"12.0"},"es.promise.any":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.24",edge:"85",electron:"10.0",firefox:"79","firefox-android":"79",ios:"14.0",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0",rhino:"1.8.0",safari:"14.0",samsung:"14.0"},"es.promise.finally":{android:"67",bun:"0.1.1",chrome:"67","chrome-android":"67",deno:"1.24",edge:"79",electron:"4.0",firefox:"69","firefox-android":"69",ios:"13.2.3",node:"10.4",oculus:"6.0",opera:"54","opera-android":"48",opera_mobile:"48",quest:"6.0",rhino:"1.7.14",safari:"13.0.3",samsung:"9.0"},"es.promise.try":{android:"128",bun:"1.1.22",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"134","firefox-android":"134",ios:"18.2",node:"23.0",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",rhino:"1.9.0",safari:"18.2",samsung:"28.0"},"es.promise.with-resolvers":{android:"119",bun:"0.7.1",chrome:"119","chrome-android":"119",deno:"1.38",edge:"119",electron:"28.0",firefox:"121","firefox-android":"121",ios:"17.4",node:"22.0",oculus:"31.0",opera:"105","opera-android":"79",opera_mobile:"79",quest:"31.0",safari:"17.4",samsung:"25.0"},"es.array.from-async":{android:"121",bun:"1.1.2",chrome:"121","chrome-android":"121",deno:"1.38",edge:"121",electron:"29.0",firefox:"115","firefox-android":"115",ios:"18.0",node:"22.0",oculus:"32.0",opera:"107","opera-android":"81",opera_mobile:"81",quest:"32.0",rhino:"1.9.0",safari:"18.0",samsung:"25.0"},"es.async-disposable-stack.constructor":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.3.2",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"es.async-iterator.async-dispose":{},"es.reflect.apply":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"15",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.construct":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"15",electron:"0.37",firefox:"44","firefox-android":"44",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",safari:"10.0",samsung:"5.0"},"es.reflect.define-property":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"13",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.delete-property":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.get":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.get-own-property-descriptor":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.get-prototype-of":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.has":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.is-extensible":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.own-keys":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.prevent-extensions":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.set":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"79",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",safari:"10.0",samsung:"5.0"},"es.reflect.set-prototype-of":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"12",electron:"0.37",firefox:"42","firefox-android":"42",hermes:"0.7",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.8.0",safari:"10.0",samsung:"5.0"},"es.reflect.to-string-tag":{android:"86",bun:"0.1.1",chrome:"86","chrome-android":"86",deno:"1.3",edge:"86",electron:"11.0",firefox:"82","firefox-android":"82",hermes:"0.7",ios:"14.0",node:"15.0",oculus:"12.0",opera:"72","opera-android":"61",opera_mobile:"61",quest:"12.0","react-native":"0.69",rhino:"1.8.0",safari:"14.0",samsung:"14.0"},"es.regexp.constructor":{android:"64",bun:"0.1.1",chrome:"64","chrome-android":"64",deno:"1.0",edge:"79",electron:"3.0",firefox:"78","firefox-android":"78",ios:"11.3",node:"10.0",oculus:"5.0",opera:"51","opera-android":"47",opera_mobile:"47",quest:"5.0",safari:"11.1",samsung:"9.0"},"es.regexp.escape":{android:"136",bun:"1.1.22",chrome:"136","chrome-android":"136",deno:"2.3.2",edge:"136",electron:"36.0",firefox:"134","firefox-android":"134",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",safari:"18.2",samsung:"29.0"},"es.regexp.dot-all":{android:"62",bun:"0.1.1",chrome:"62","chrome-android":"62",deno:"1.0",edge:"79",electron:"3.0",firefox:"78","firefox-android":"78",hermes:"0.4",ios:"11.3",node:"8.10",oculus:"5.0",opera:"49","opera-android":"46",opera_mobile:"46",quest:"5.0","react-native":"0.69",rhino:"1.7.15",safari:"11.1",samsung:"8.0"},"es.regexp.exec":{android:"64",bun:"0.1.1",chrome:"64","chrome-android":"64",deno:"1.0",edge:"79",electron:"3.0",firefox:"78","firefox-android":"78",hermes:"0.13",ios:"11.3",node:"10.0",oculus:"5.0",opera:"51","opera-android":"47",opera_mobile:"47",quest:"5.0","react-native":"0.71",rhino:"1.9.0",safari:"11.1",samsung:"9.0"},"es.regexp.flags":{android:"111",bun:"0.1.1",chrome:"111","chrome-android":"111",deno:"1.32",edge:"111",electron:"24.0",firefox:"78","firefox-android":"78",hermes:"0.4",ios:"11.3",node:"20.0",oculus:"27.0",opera:"97","opera-android":"75",opera_mobile:"75",quest:"27.0","react-native":"0.69",safari:"11.1",samsung:"22.0"},"es.regexp.sticky":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"13",electron:"0.37",firefox:"3","firefox-android":"4",hermes:"0.3",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.regexp.test":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"46","firefox-android":"46",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0",safari:"10.0",samsung:"5.0"},"es.regexp.to-string":{android:"50",bun:"0.1.1",chrome:"50","chrome-android":"50",deno:"1.0",edge:"79",electron:"1.1",firefox:"46","firefox-android":"46",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"37","opera-android":"37",opera_mobile:"37",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.set":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"53","firefox-android":"53",hermes:"0.13",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.73",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.set.difference.v2":{android:"128",bun:"1.2.5",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"26.0",samsung:"28.0"},"es.set.intersection.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"es.set.is-disjoint-from.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"es.set.is-subset-of.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"es.set.is-superset-of.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"es.set.symmetric-difference.v2":{android:"123",bun:"1.2.5",chrome:"123","chrome-android":"123",deno:"1.41.3",edge:"123",electron:"30.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.0",oculus:"33.0",opera:"109","opera-android":"82",opera_mobile:"82",quest:"33.0",safari:"26.0",samsung:"27.0"},"es.set.union.v2":{android:"123",bun:"1.2.5",chrome:"123","chrome-android":"123",deno:"1.41.3",edge:"123",electron:"30.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.0",oculus:"33.0",opera:"109","opera-android":"82",opera_mobile:"82",quest:"33.0",safari:"26.0",samsung:"27.0"},"es.string.at-alternative":{android:"92",bun:"0.1.1",chrome:"92","chrome-android":"92",deno:"1.12",edge:"92",electron:"14.0",firefox:"90","firefox-android":"90",hermes:"0.13",ios:"15.4",node:"16.6",oculus:"17.0",opera:"78","opera-android":"65",opera_mobile:"65",quest:"17.0","react-native":"0.71",safari:"15.4",samsung:"16.0"},"es.string.code-point-at":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"29","firefox-android":"29",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.string.ends-with":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"40","firefox-android":"40",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.string.from-code-point":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"29","firefox-android":"29",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.string.includes":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"40","firefox-android":"40",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.string.is-well-formed":{android:"111",bun:"0.4.0",chrome:"111","chrome-android":"111",deno:"1.32",edge:"111",electron:"24.0",firefox:"119","firefox-android":"119",ios:"16.4",node:"20.0",oculus:"27.0",opera:"97","opera-android":"75",opera_mobile:"75",quest:"27.0",rhino:"1.8.0",safari:"16.4",samsung:"22.0"},"es.string.iterator":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"36","firefox-android":"36",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.string.match":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.string.match-all":{android:"80",bun:"0.1.1",chrome:"80","chrome-android":"80",deno:"1.0",edge:"80",electron:"8.0",firefox:"73","firefox-android":"73",hermes:"0.6",ios:"13.4",node:"14.0",oculus:"9.0",opera:"67","opera-android":"57",opera_mobile:"57",quest:"9.0","react-native":"0.69",rhino:"1.8.0",safari:"13.1",samsung:"13.0"},"es.string.pad-end":{android:"57",bun:"0.1.1",chrome:"57","chrome-android":"57",deno:"1.0",edge:"15",electron:"1.7",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"11.0",node:"8.0",oculus:"3.0",opera:"44","opera-android":"43",opera_mobile:"43",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"11.0",samsung:"7.0"},"es.string.pad-start":{android:"57",bun:"0.1.1",chrome:"57","chrome-android":"57",deno:"1.0",edge:"15",electron:"1.7",firefox:"48","firefox-android":"48",hermes:"0.1",ios:"11.0",node:"8.0",oculus:"3.0",opera:"44","opera-android":"43",opera_mobile:"43",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"11.0",samsung:"7.0"},"es.string.raw":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"34","firefox-android":"34",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.14",safari:"9.0",samsung:"3.4"},"es.string.repeat":{android:"41",bun:"0.1.1",chrome:"41","chrome-android":"41",deno:"1.0",edge:"13",electron:"0.21",firefox:"24","firefox-android":"24",hermes:"0.1",ios:"9.0",node:"1.0",oculus:"3.0",opera:"28","opera-android":"28",opera_mobile:"28",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"9.0",samsung:"3.4"},"es.string.replace":{android:"64",bun:"0.1.1",chrome:"64","chrome-android":"64",deno:"1.0",edge:"79",electron:"3.0",firefox:"78","firefox-android":"78",hermes:"0.13",ios:"14.0",node:"10.0",oculus:"5.0",opera:"51","opera-android":"47",opera_mobile:"47",quest:"5.0","react-native":"0.71",rhino:"1.9.0",safari:"14.0",samsung:"9.0"},"es.string.replace-all":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.2",edge:"85",electron:"10.0",firefox:"77","firefox-android":"77",hermes:"0.7",ios:"13.4",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0","react-native":"0.69",rhino:"1.7.15",safari:"13.1",samsung:"14.0"},"es.string.search":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"49","firefox-android":"49",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.string.split":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"79",electron:"1.4",firefox:"49","firefox-android":"49",ios:"10.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",rhino:"1.9.0",safari:"10.0",samsung:"6.0"},"es.string.starts-with":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"40","firefox-android":"40",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",rhino:"1.7.15",safari:"10.0",samsung:"5.0"},"es.string.substr":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"9",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"4","opera-android":"4",opera_mobile:"4",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.string.to-well-formed":{android:"111",bun:"0.5.7",chrome:"111","chrome-android":"111",deno:"1.32",edge:"111",electron:"24.0",firefox:"119","firefox-android":"119",ios:"16.4",node:"20.0",oculus:"27.0",opera:"97","opera-android":"75",opera_mobile:"75",quest:"27.0",rhino:"1.8.0",safari:"16.4",samsung:"22.0"},"es.string.trim":{android:"59",bun:"0.1.1",chrome:"59","chrome-android":"59",deno:"1.0",edge:"15",electron:"1.8",firefox:"52","firefox-android":"52",hermes:"0.1",ios:"12.2",node:"8.3",oculus:"4.0",opera:"46","opera-android":"43",opera_mobile:"43",quest:"4.0","react-native":"0.69",rhino:"1.8.0",safari:"12.1",samsung:"7.0"},"es.string.trim-end":{android:"66",bun:"0.1.1",chrome:"66","chrome-android":"66",deno:"1.0",edge:"79",electron:"3.0",firefox:"61","firefox-android":"61",hermes:"0.3",ios:"12.2",node:"10.0",oculus:"5.0",opera:"53","opera-android":"47",opera_mobile:"47",quest:"5.0","react-native":"0.69",safari:"12.1",samsung:"9.0"},"es.string.trim-start":{android:"66",bun:"0.1.1",chrome:"66","chrome-android":"66",deno:"1.0",edge:"79",electron:"3.0",firefox:"61","firefox-android":"61",hermes:"0.3",ios:"12.0",node:"10.0",oculus:"5.0",opera:"53","opera-android":"47",opera_mobile:"47",quest:"5.0","react-native":"0.69",safari:"12.0",samsung:"9.0"},"es.string.anchor":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"17","firefox-android":"17",ios:"6.0",node:"0.1.27",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",phantom:"2.0",quest:"3.0",rhino:"1.7.14",safari:"6.0",samsung:"1.0"},"es.string.big":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.blink":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.bold":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.fixed":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.fontcolor":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"17","firefox-android":"17",ios:"6.0",node:"0.1.27",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",phantom:"2.0",quest:"3.0",rhino:"1.7.14",safari:"6.0",samsung:"1.0"},"es.string.fontsize":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"17","firefox-android":"17",ios:"6.0",node:"0.1.27",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",phantom:"2.0",quest:"3.0",rhino:"1.7.14",safari:"6.0",samsung:"1.0"},"es.string.italics":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.link":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"17","firefox-android":"17",ios:"6.0",node:"0.1.27",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",phantom:"2.0",quest:"3.0",rhino:"1.7.14",safari:"6.0",samsung:"1.0"},"es.string.small":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.strike":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.sub":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.string.sup":{android:"3.0",bun:"0.1.1",chrome:"5","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"2","firefox-android":"4",ios:"2.0",node:"0.1.27",oculus:"3.0",opera:"10.50","opera-android":"10.50",opera_mobile:"10.50",phantom:"1.9",quest:"3.0",rhino:"1.7.13",safari:"3.1",samsung:"1.0"},"es.typed-array.float32-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.float64-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.int8-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.int16-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.int32-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.uint8-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.uint8-clamped-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.uint16-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.uint32-array":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.at":{android:"92",bun:"0.1.1",chrome:"92","chrome-android":"92",deno:"1.12",edge:"92",electron:"14.0",firefox:"90","firefox-android":"90",hermes:"0.13",ios:"15.4",node:"16.6",oculus:"17.0",opera:"78","opera-android":"65",opera_mobile:"65",quest:"17.0","react-native":"0.71",rhino:"1.7.15",safari:"15.4",samsung:"16.0"},"es.typed-array.copy-within":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"34","firefox-android":"34",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.every":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.fill":{android:"58",bun:"0.1.1",chrome:"58","chrome-android":"58",deno:"1.0",edge:"79",electron:"1.7",firefox:"55","firefox-android":"55",hermes:"0.1",ios:"14.5",node:"8.0",oculus:"4.0",opera:"45","opera-android":"43",opera_mobile:"43",quest:"4.0","react-native":"0.69",rhino:"1.9.0",safari:"14.1",samsung:"7.0"},"es.typed-array.filter":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"38","firefox-android":"38",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.find":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.find-index":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.find-last":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"es.typed-array.find-last-index":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"es.typed-array.for-each":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"38","firefox-android":"38",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.from":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.includes":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.0",edge:"14",electron:"0.37",firefox:"43","firefox-android":"43",hermes:"0.1",ios:"10.0",node:"6.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.index-of":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.iterator":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",safari:"10.0",samsung:"5.0"},"es.typed-array.join":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.last-index-of":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.map":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"38","firefox-android":"38",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.of":{android:"54",bun:"0.1.1",chrome:"54","chrome-android":"54",deno:"1.0",edge:"15",electron:"1.4",firefox:"55","firefox-android":"55",ios:"14.0",node:"7.0",oculus:"3.0",opera:"41","opera-android":"41",opera_mobile:"41",quest:"3.0",safari:"14.0",samsung:"6.0"},"es.typed-array.reduce":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.reduce-right":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.reverse":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.set":{android:"95",bun:"0.1.1",chrome:"95","chrome-android":"95",deno:"1.15",edge:"95",electron:"16.0",firefox:"54","firefox-android":"54",hermes:"0.1",ios:"14.5",node:"17.0",oculus:"18.0",opera:"81","opera-android":"67",opera_mobile:"67",quest:"18.0","react-native":"0.69",safari:"14.1",samsung:"17.0"},"es.typed-array.slice":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"38","firefox-android":"38",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.some":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"13",electron:"0.31",firefox:"37","firefox-android":"37",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.sort":{android:"74",bun:"0.1.1",chrome:"74","chrome-android":"74",deno:"1.0",edge:"79",electron:"6.0",firefox:"67","firefox-android":"67",hermes:"0.10",ios:"14.5",node:"12.0",oculus:"6.0",opera:"61","opera-android":"53",opera_mobile:"53",quest:"6.0","react-native":"0.69",rhino:"1.9.0",safari:"14.1",samsung:"11.0"},"es.typed-array.subarray":{android:"4.4",bun:"0.1.1",chrome:"26","chrome-android":"26",deno:"1.0",edge:"13",electron:"0.20",firefox:"15","firefox-android":"15",hermes:"0.1",ios:"8.0",node:"0.11.0",oculus:"3.0",opera:"15","opera-android":"15",opera_mobile:"15",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"7.1",samsung:"1.5"},"es.typed-array.to-locale-string":{android:"45",bun:"0.1.1",chrome:"45","chrome-android":"45",deno:"1.0",edge:"79",electron:"0.31",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"4.0",oculus:"3.0",opera:"32","opera-android":"32",opera_mobile:"32",quest:"3.0","react-native":"0.69",rhino:"1.9.0",safari:"10.0",samsung:"5.0"},"es.typed-array.to-reversed":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.typed-array.to-sorted":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"es.typed-array.to-string":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"13",electron:"1.2",firefox:"51","firefox-android":"51",hermes:"0.1",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.69",safari:"10.0",samsung:"5.0"},"es.typed-array.with":{android:"110",bun:"1.2.18",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"26.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"26.0",samsung:"21.0"},"es.uint8-array.from-base64":{android:"140",bun:"1.2.20",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"26.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"26.2"},"es.uint8-array.from-hex":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"es.uint8-array.set-from-base64":{android:"140",bun:"1.2.20",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"26.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"26.2"},"es.uint8-array.set-from-hex":{android:"144",bun:"1.1.22",chrome:"144","chrome-android":"144",edge:"144",electron:"40.0",firefox:"133","firefox-android":"133",ios:"18.2",opera:"128",safari:"18.2"},"es.uint8-array.to-base64":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"es.uint8-array.to-hex":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"es.unescape":{android:"3.0",bun:"0.1.1",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"3",ios:"1.0",node:"0.0.3",oculus:"3.0",opera:"3","opera-android":"3",opera_mobile:"3",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1",samsung:"1.0"},"es.weak-map":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"79",electron:"1.2",firefox:"53","firefox-android":"53",hermes:"0.13",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.73",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"es.weak-map.get-or-insert":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"es.weak-map.get-or-insert-computed":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"es.weak-set":{android:"51",bun:"0.1.1",chrome:"51","chrome-android":"51",deno:"1.0",edge:"15",electron:"1.2",firefox:"53","firefox-android":"53",hermes:"0.13",ios:"10.0",node:"6.5",oculus:"3.0",opera:"38","opera-android":"38",opera_mobile:"38",quest:"3.0","react-native":"0.73",rhino:"1.7.13",safari:"10.0",samsung:"5.0"},"esnext.aggregate-error":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.2",edge:"85",electron:"10.0",firefox:"79","firefox-android":"79",hermes:"0.13",ios:"14.0",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0","react-native":"0.72",rhino:"1.8.0",safari:"14.0",samsung:"14.0"},"esnext.suppressed-error.constructor":{android:"136",bun:"1.2.15",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"esnext.array.from-async":{android:"121",bun:"1.1.2",chrome:"121","chrome-android":"121",deno:"1.38",edge:"121",electron:"29.0",firefox:"115","firefox-android":"115",ios:"18.0",node:"22.0",oculus:"32.0",opera:"107","opera-android":"81",opera_mobile:"81",quest:"32.0",rhino:"1.9.0",safari:"18.0",samsung:"25.0"},"esnext.array.at":{android:"92",bun:"0.1.1",chrome:"92","chrome-android":"92",deno:"1.12",edge:"92",electron:"14.0",firefox:"90","firefox-android":"90",hermes:"0.13",ios:"15.4",node:"16.6",oculus:"17.0",opera:"78","opera-android":"65",opera_mobile:"65",quest:"17.0","react-native":"0.71",rhino:"1.7.15",safari:"15.4",samsung:"16.0"},"esnext.array.filter-out":{},"esnext.array.filter-reject":{},"esnext.array.find-last":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"esnext.array.find-last-index":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"esnext.array.group":{},"esnext.array.group-by":{},"esnext.array.group-by-to-map":{},"esnext.array.group-to-map":{},"esnext.array.is-template-object":{},"esnext.array.last-index":{},"esnext.array.last-item":{},"esnext.array.to-reversed":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.array.to-sorted":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.array.to-spliced":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.array.unique-by":{},"esnext.array.with":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"140","firefox-android":"140",hermes:"0.13",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0","react-native":"0.74",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.array-buffer.detached":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"esnext.array-buffer.transfer":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"esnext.array-buffer.transfer-to-fixed-length":{android:"114",bun:"1.0.19",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"122","firefox-android":"122",ios:"17.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",rhino:"1.9.0",safari:"17.4",samsung:"23.0"},"esnext.async-disposable-stack.constructor":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.3.2",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"esnext.async-iterator.constructor":{},"esnext.async-iterator.as-indexed-pairs":{},"esnext.async-iterator.async-dispose":{},"esnext.async-iterator.drop":{},"esnext.async-iterator.every":{},"esnext.async-iterator.filter":{},"esnext.async-iterator.find":{},"esnext.async-iterator.flat-map":{},"esnext.async-iterator.for-each":{},"esnext.async-iterator.from":{},"esnext.async-iterator.indexed":{},"esnext.async-iterator.map":{},"esnext.async-iterator.reduce":{},"esnext.async-iterator.some":{},"esnext.async-iterator.take":{},"esnext.async-iterator.to-array":{},"esnext.bigint.range":{},"esnext.composite-key":{},"esnext.composite-symbol":{},"esnext.data-view.get-float16":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"18.2",samsung:"29.0"},"esnext.data-view.get-uint8-clamped":{},"esnext.data-view.set-float16":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"18.2",samsung:"29.0"},"esnext.data-view.set-uint8-clamped":{},"esnext.disposable-stack.constructor":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"141","firefox-android":"141",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"esnext.error.is-error":{android:"134",chrome:"134","chrome-android":"134",deno:"2.2",edge:"134",electron:"35.0",firefox:"138","firefox-android":"138",node:"24.3",oculus:"38.0",opera:"119","opera-android":"88",opera_mobile:"88",quest:"38.0",rhino:"1.9.0",samsung:"29.0"},"esnext.function.demethodize":{},"esnext.function.is-callable":{},"esnext.function.is-constructor":{},"esnext.function.metadata":{},"esnext.function.un-this":{},"esnext.global-this":{android:"71",bun:"0.1.1",chrome:"71","chrome-android":"71",deno:"1.0",edge:"79",electron:"5.0",firefox:"65","firefox-android":"65",hermes:"0.2",ios:"12.2",node:"12.0",oculus:"6.0",opera:"58","opera-android":"50",opera_mobile:"50",quest:"6.0","react-native":"0.69",rhino:"1.7.14",safari:"12.1",samsung:"10.0"},"esnext.iterator.constructor":{android:"122",bun:"1.1.31",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"18.4",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"18.4",samsung:"26.0"},"esnext.iterator.as-indexed-pairs":{},"esnext.iterator.chunks":{},"esnext.iterator.concat":{bun:"1.3.7",firefox:"147","firefox-android":"147"},"esnext.iterator.dispose":{android:"136",bun:"1.3.0",chrome:"136","chrome-android":"136",deno:"2.2.10",edge:"136",electron:"36.0",firefox:"135","firefox-android":"135",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",samsung:"29.0"},"esnext.iterator.drop":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.every":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.filter":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.find":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.flat-map":{android:"135",bun:"1.2.21",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.2",samsung:"29.0"},"esnext.iterator.for-each":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.from":{android:"122",bun:"1.2.5",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"26.0",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"26.0",samsung:"26.0"},"esnext.iterator.indexed":{},"esnext.iterator.map":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.range":{},"esnext.iterator.reduce":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.sliding":{},"esnext.iterator.some":{android:"135",bun:"1.2.4",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.take":{android:"135",bun:"1.2.11",chrome:"135","chrome-android":"135",deno:"2.2.5",edge:"135",electron:"36.0",firefox:"141","firefox-android":"141",ios:"26.0",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",safari:"26.0",samsung:"29.0"},"esnext.iterator.to-array":{android:"122",bun:"1.1.31",chrome:"122","chrome-android":"122",deno:"1.38.1",edge:"122",electron:"29.0",firefox:"131","firefox-android":"131",ios:"18.4",node:"22.0",oculus:"32.0",opera:"108","opera-android":"81",opera_mobile:"81",quest:"32.0",safari:"18.4",samsung:"26.0"},"esnext.iterator.to-async":{},"esnext.iterator.windows":{},"esnext.iterator.zip":{firefox:"148","firefox-android":"148"},"esnext.iterator.zip-keyed":{firefox:"148","firefox-android":"148"},"esnext.json.is-raw-json":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"esnext.json.parse":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"esnext.json.raw-json":{android:"114",bun:"1.1.43",chrome:"114","chrome-android":"114",deno:"1.33",edge:"114",electron:"25.0",firefox:"135","firefox-android":"135",ios:"18.4",node:"21.0",oculus:"28.0",opera:"100","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"18.4",samsung:"23.0"},"esnext.map.delete-all":{},"esnext.map.emplace":{},"esnext.map.every":{},"esnext.map.filter":{},"esnext.map.find":{},"esnext.map.find-key":{},"esnext.map.from":{},"esnext.map.get-or-insert":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"esnext.map.get-or-insert-computed":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"esnext.map.group-by":{android:"117",bun:"1.1.2",chrome:"117","chrome-android":"117",deno:"1.37",edge:"117",electron:"27.0",firefox:"119","firefox-android":"119",ios:"18.0",node:"21.0",oculus:"30.0",opera:"103","opera-android":"78",opera_mobile:"78",quest:"30.0",rhino:"1.8.0",safari:"18.0",samsung:"24.0"},"esnext.map.includes":{},"esnext.map.key-by":{},"esnext.map.key-of":{},"esnext.map.map-keys":{},"esnext.map.map-values":{},"esnext.map.merge":{},"esnext.map.of":{},"esnext.map.reduce":{},"esnext.map.some":{},"esnext.map.update":{},"esnext.map.update-or-insert":{},"esnext.map.upsert":{},"esnext.math.clamp":{},"esnext.math.deg-per-rad":{},"esnext.math.degrees":{},"esnext.math.fscale":{},"esnext.math.f16round":{android:"135",bun:"1.1.23",chrome:"135","chrome-android":"135",deno:"1.43",edge:"135",electron:"36.0",firefox:"129","firefox-android":"129",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"89",opera_mobile:"89",quest:"39.0",rhino:"1.9.0",safari:"18.2",samsung:"29.0"},"esnext.math.iaddh":{},"esnext.math.imulh":{},"esnext.math.isubh":{},"esnext.math.rad-per-deg":{},"esnext.math.radians":{},"esnext.math.scale":{},"esnext.math.seeded-prng":{},"esnext.math.signbit":{},"esnext.math.sum-precise":{bun:"1.2.18",firefox:"137","firefox-android":"137",ios:"26.2",safari:"26.2"},"esnext.math.umulh":{},"esnext.number.clamp":{},"esnext.number.from-string":{},"esnext.number.range":{},"esnext.object.has-own":{android:"93",bun:"0.1.1",chrome:"93","chrome-android":"93",deno:"1.13",edge:"93",electron:"14.0",firefox:"92","firefox-android":"92",hermes:"0.10",ios:"15.4",node:"16.9",oculus:"17.0",opera:"79","opera-android":"66",opera_mobile:"66",quest:"17.0","react-native":"0.69",rhino:"1.7.15",safari:"15.4",samsung:"17.0"},"esnext.object.iterate-entries":{},"esnext.object.iterate-keys":{},"esnext.object.iterate-values":{},"esnext.object.group-by":{android:"117",bun:"1.1.2",chrome:"117","chrome-android":"117",deno:"1.37",edge:"117",electron:"27.0",firefox:"119","firefox-android":"119",ios:"18.0",node:"21.0",oculus:"30.0",opera:"103","opera-android":"78",opera_mobile:"78",quest:"30.0",rhino:"1.8.0",safari:"18.0",samsung:"24.0"},"esnext.observable":{},"esnext.promise.all-settled":{android:"76",bun:"0.1.1",chrome:"76","chrome-android":"76",deno:"1.24",edge:"79",electron:"6.0",firefox:"71","firefox-android":"71",ios:"13.0",node:"12.9",oculus:"7.0",opera:"63","opera-android":"54",opera_mobile:"54",quest:"7.0",rhino:"1.7.15",safari:"13",samsung:"12.0"},"esnext.promise.any":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.24",edge:"85",electron:"10.0",firefox:"79","firefox-android":"79",ios:"14.0",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0",rhino:"1.8.0",safari:"14.0",samsung:"14.0"},"esnext.promise.try":{android:"128",bun:"1.1.22",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"134","firefox-android":"134",ios:"18.2",node:"23.0",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",rhino:"1.9.0",safari:"18.2",samsung:"28.0"},"esnext.promise.with-resolvers":{android:"119",bun:"0.7.1",chrome:"119","chrome-android":"119",deno:"1.38",edge:"119",electron:"28.0",firefox:"121","firefox-android":"121",ios:"17.4",node:"22.0",oculus:"31.0",opera:"105","opera-android":"79",opera_mobile:"79",quest:"31.0",safari:"17.4",samsung:"25.0"},"esnext.reflect.define-metadata":{},"esnext.reflect.delete-metadata":{},"esnext.reflect.get-metadata":{},"esnext.reflect.get-metadata-keys":{},"esnext.reflect.get-own-metadata":{},"esnext.reflect.get-own-metadata-keys":{},"esnext.reflect.has-metadata":{},"esnext.reflect.has-own-metadata":{},"esnext.reflect.metadata":{},"esnext.regexp.escape":{android:"136",bun:"1.1.22",chrome:"136","chrome-android":"136",deno:"2.3.2",edge:"136",electron:"36.0",firefox:"134","firefox-android":"134",ios:"18.2",node:"24.0",oculus:"39.0",opera:"120","opera-android":"90",opera_mobile:"90",quest:"39.0",safari:"18.2",samsung:"29.0"},"esnext.set.add-all":{},"esnext.set.delete-all":{},"esnext.set.difference.v2":{android:"128",bun:"1.2.5",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"26.0",samsung:"28.0"},"esnext.set.difference":{},"esnext.set.every":{},"esnext.set.filter":{},"esnext.set.find":{},"esnext.set.from":{},"esnext.set.intersection.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"esnext.set.intersection":{},"esnext.set.is-disjoint-from.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"esnext.set.is-disjoint-from":{},"esnext.set.is-subset-of.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"esnext.set.is-subset-of":{},"esnext.set.is-superset-of.v2":{android:"128",bun:"1.1.1",chrome:"128","chrome-android":"128",deno:"1.46",edge:"128",electron:"32.0",firefox:"127","firefox-android":"127",ios:"18.0",node:"22.10",oculus:"35.0",opera:"114","opera-android":"85",opera_mobile:"85",quest:"35.0",safari:"18.0",samsung:"28.0"},"esnext.set.is-superset-of":{},"esnext.set.join":{},"esnext.set.map":{},"esnext.set.of":{},"esnext.set.reduce":{},"esnext.set.some":{},"esnext.set.symmetric-difference.v2":{android:"123",bun:"1.2.5",chrome:"123","chrome-android":"123",deno:"1.41.3",edge:"123",electron:"30.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.0",oculus:"33.0",opera:"109","opera-android":"82",opera_mobile:"82",quest:"33.0",safari:"26.0",samsung:"27.0"},"esnext.set.symmetric-difference":{},"esnext.set.union.v2":{android:"123",bun:"1.2.5",chrome:"123","chrome-android":"123",deno:"1.41.3",edge:"123",electron:"30.0",firefox:"127","firefox-android":"127",ios:"26.0",node:"22.0",oculus:"33.0",opera:"109","opera-android":"82",opera_mobile:"82",quest:"33.0",safari:"26.0",samsung:"27.0"},"esnext.set.union":{},"esnext.string.at":{},"esnext.string.cooked":{},"esnext.string.code-points":{},"esnext.string.dedent":{},"esnext.string.is-well-formed":{android:"111",bun:"0.4.0",chrome:"111","chrome-android":"111",deno:"1.32",edge:"111",electron:"24.0",firefox:"119","firefox-android":"119",ios:"16.4",node:"20.0",oculus:"27.0",opera:"97","opera-android":"75",opera_mobile:"75",quest:"27.0",rhino:"1.8.0",safari:"16.4",samsung:"22.0"},"esnext.string.match-all":{android:"80",bun:"0.1.1",chrome:"80","chrome-android":"80",deno:"1.0",edge:"80",electron:"8.0",firefox:"73","firefox-android":"73",hermes:"0.6",ios:"13.4",node:"14.0",oculus:"9.0",opera:"67","opera-android":"57",opera_mobile:"57",quest:"9.0","react-native":"0.69",rhino:"1.8.0",safari:"13.1",samsung:"13.0"},"esnext.string.replace-all":{android:"85",bun:"0.1.1",chrome:"85","chrome-android":"85",deno:"1.2",edge:"85",electron:"10.0",firefox:"77","firefox-android":"77",hermes:"0.7",ios:"13.4",node:"15.0",oculus:"12.0",opera:"71","opera-android":"60",opera_mobile:"60",quest:"12.0","react-native":"0.69",rhino:"1.7.15",safari:"13.1",samsung:"14.0"},"esnext.string.to-well-formed":{android:"111",bun:"0.5.7",chrome:"111","chrome-android":"111",deno:"1.32",edge:"111",electron:"24.0",firefox:"119","firefox-android":"119",ios:"16.4",node:"20.0",oculus:"27.0",opera:"97","opera-android":"75",opera_mobile:"75",quest:"27.0",rhino:"1.8.0",safari:"16.4",samsung:"22.0"},"esnext.symbol.async-dispose":{android:"127",bun:"1.0.23",chrome:"127","chrome-android":"127",deno:"1.38",edge:"127",electron:"32.0",firefox:"135","firefox-android":"135",node:"20.5.0",oculus:"35.0",opera:"113","opera-android":"84",opera_mobile:"84",quest:"35.0",samsung:"28.0"},"esnext.symbol.custom-matcher":{},"esnext.symbol.dispose":{android:"125",bun:"1.0.23",chrome:"125","chrome-android":"125",deno:"1.38",edge:"125",electron:"31.0",firefox:"135","firefox-android":"135",node:"20.5.0",oculus:"34.0",opera:"111","opera-android":"83",opera_mobile:"83",quest:"34.0",samsung:"27.0"},"esnext.symbol.is-registered-symbol":{},"esnext.symbol.is-registered":{},"esnext.symbol.is-well-known-symbol":{},"esnext.symbol.is-well-known":{},"esnext.symbol.matcher":{},"esnext.symbol.metadata":{deno:"1.40.4"},"esnext.symbol.metadata-key":{},"esnext.symbol.observable":{},"esnext.symbol.pattern-match":{},"esnext.symbol.replace-all":{},"esnext.typed-array.from-async":{},"esnext.typed-array.at":{android:"92",bun:"0.1.1",chrome:"92","chrome-android":"92",deno:"1.12",edge:"92",electron:"14.0",firefox:"90","firefox-android":"90",hermes:"0.13",ios:"15.4",node:"16.6",oculus:"17.0",opera:"78","opera-android":"65",opera_mobile:"65",quest:"17.0","react-native":"0.71",rhino:"1.7.15",safari:"15.4",samsung:"16.0"},"esnext.typed-array.filter-out":{},"esnext.typed-array.filter-reject":{},"esnext.typed-array.find-last":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"esnext.typed-array.find-last-index":{android:"97",bun:"0.1.1",chrome:"97","chrome-android":"97",deno:"1.16",edge:"97",electron:"17.0",firefox:"104","firefox-android":"104",hermes:"0.11",ios:"15.4",node:"18.0",oculus:"20.0",opera:"83","opera-android":"68",opera_mobile:"68",quest:"20.0","react-native":"0.69",rhino:"1.8.0",safari:"15.4",samsung:"18.0"},"esnext.typed-array.group-by":{},"esnext.typed-array.to-reversed":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.typed-array.to-sorted":{android:"110",bun:"0.1.1",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"16.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"16.0",samsung:"21.0"},"esnext.typed-array.to-spliced":{},"esnext.typed-array.unique-by":{},"esnext.typed-array.with":{android:"110",bun:"1.2.18",chrome:"110","chrome-android":"110",deno:"1.27",edge:"110",electron:"23.0",firefox:"115","firefox-android":"115",ios:"26.0",node:"20.0",oculus:"26.0",opera:"96","opera-android":"74",opera_mobile:"74",quest:"26.0",rhino:"1.8.0",safari:"26.0",samsung:"21.0"},"esnext.uint8-array.from-base64":{android:"140",bun:"1.2.20",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"26.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"26.2"},"esnext.uint8-array.from-hex":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"esnext.uint8-array.set-from-base64":{android:"140",bun:"1.2.20",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"26.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"26.2"},"esnext.uint8-array.set-from-hex":{android:"144",bun:"1.1.22",chrome:"144","chrome-android":"144",edge:"144",electron:"40.0",firefox:"133","firefox-android":"133",ios:"18.2",opera:"128",safari:"18.2"},"esnext.uint8-array.to-base64":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"esnext.uint8-array.to-hex":{android:"140",bun:"1.1.22",chrome:"140","chrome-android":"140",deno:"2.5",edge:"140",electron:"38.0",firefox:"133","firefox-android":"133",ios:"18.2",node:"25.0",oculus:"41.0",opera:"124","opera-android":"92",opera_mobile:"92",quest:"41.0",safari:"18.2"},"esnext.weak-map.delete-all":{},"esnext.weak-map.from":{},"esnext.weak-map.of":{},"esnext.weak-map.emplace":{},"esnext.weak-map.get-or-insert":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"esnext.weak-map.get-or-insert-computed":{android:"145",bun:"1.2.20",chrome:"145","chrome-android":"145",edge:"145",electron:"41.0",firefox:"144","firefox-android":"144",ios:"26.2",opera:"129",safari:"26.2"},"esnext.weak-map.upsert":{},"esnext.weak-set.add-all":{},"esnext.weak-set.delete-all":{},"esnext.weak-set.from":{},"esnext.weak-set.of":{},"web.atob":{android:"37",bun:"0.1.1",chrome:"34","chrome-android":"34",deno:"1.0",edge:"16",electron:"0.20",firefox:"27","firefox-android":"27",hermes:"0.13",ios:"10.3",node:"18.0",oculus:"3.0",opera:"10.5","opera-android":"10.5",opera_mobile:"10.5",quest:"3.0","react-native":"0.74",safari:"10.1",samsung:"2.0"},"web.btoa":{android:"3.0",bun:"0.1.1",chrome:"4","chrome-android":"18",deno:"1.0",edge:"16",electron:"0.20",firefox:"27","firefox-android":"27",ios:"1.0",node:"17.5",oculus:"3.0",opera:"10.5","opera-android":"10.5",opera_mobile:"10.5",phantom:"1.9",quest:"3.0",safari:"3.0",samsung:"1.0"},"web.dom-collections.for-each":{android:"58",bun:"0.1.1",chrome:"58","chrome-android":"58",deno:"1.0",edge:"16",electron:"1.7",firefox:"50","firefox-android":"50",hermes:"0.1",ios:"10.0",node:"0.0.1",oculus:"4.0",opera:"45","opera-android":"43",opera_mobile:"43",quest:"4.0","react-native":"0.69",rhino:"1.7.13",safari:"10.0",samsung:"7.0"},"web.dom-collections.iterator":{android:"66",bun:"0.1.1",chrome:"66","chrome-android":"66",deno:"1.0",edge:"79",electron:"3.0",firefox:"60","firefox-android":"60",hermes:"0.1",ios:"13.4",node:"0.0.1",oculus:"5.0",opera:"53","opera-android":"47",opera_mobile:"47",quest:"5.0","react-native":"0.69",rhino:"1.7.13",safari:"13.1",samsung:"9.0"},"web.dom-exception.constructor":{android:"46",bun:"0.1.1",chrome:"46","chrome-android":"46",deno:"1.7",edge:"79",electron:"0.36",firefox:"37","firefox-android":"37",ios:"11.3",node:"17.0",oculus:"3.0",opera:"33","opera-android":"33",opera_mobile:"33",quest:"3.0",safari:"11.1",samsung:"5.0"},"web.dom-exception.stack":{deno:"1.15",firefox:"37","firefox-android":"37",node:"17.0"},"web.dom-exception.to-string-tag":{android:"49",bun:"0.1.1",chrome:"49","chrome-android":"49",deno:"1.7",edge:"79",electron:"0.37",firefox:"51","firefox-android":"51",ios:"11.3",node:"17.0",oculus:"3.0",opera:"36","opera-android":"36",opera_mobile:"36",quest:"3.0",safari:"11.1",samsung:"5.0"},"web.immediate":{bun:"0.4.0",deno:"2.4",ie:"10",node:"0.9.1"},"web.queue-microtask":{android:"71",chrome:"71","chrome-android":"71",deno:"1.0",edge:"79",electron:"5.0",firefox:"69","firefox-android":"69",ios:"12.2",node:"12.0",oculus:"6.0",opera:"58","opera-android":"50",opera_mobile:"50",quest:"6.0",safari:"12.1",samsung:"10.0"},"web.self":{android:"86",bun:"1.0.22",chrome:"86","chrome-android":"86",deno:"1.46.0",edge:"86",electron:"11.0",firefox:"31","firefox-android":"31",ios:"10.0",oculus:"12.0",opera:"72","opera-android":"61",opera_mobile:"61",quest:"12.0",safari:"10",samsung:"14.0"},"web.structured-clone":{},"web.timers":{android:"1.5",bun:"0.4.0",chrome:"1","chrome-android":"18",deno:"1.0",edge:"12",electron:"0.20",firefox:"1","firefox-android":"4",hermes:"0.1",ie:"10",ios:"1.0",node:"0.0.1",oculus:"3.0",opera:"7","opera-android":"7",opera_mobile:"7",phantom:"1.9",quest:"3.0","react-native":"0.69",rhino:"1.7.13",safari:"1.0",samsung:"1.0"},"web.url":{android:"67",bun:"0.1.1",chrome:"67","chrome-android":"67",deno:"1.0",edge:"79",electron:"4.0",firefox:"57","firefox-android":"57",ios:"14.0",node:"10.0",oculus:"6.0",opera:"54","opera-android":"48",opera_mobile:"48",quest:"6.0",safari:"14.0",samsung:"9.0"},"web.url.can-parse":{android:"120",bun:"1.1.0",chrome:"120","chrome-android":"120",deno:"1.33.2",edge:"120",electron:"28.0",firefox:"115","firefox-android":"115",ios:"17.0",node:"20.1",oculus:"31.0",opera:"106","opera-android":"80",opera_mobile:"80",quest:"31.0",safari:"17.0",samsung:"25.0"},"web.url.parse":{android:"126",bun:"1.1.4",chrome:"126","chrome-android":"126",deno:"1.43",edge:"126",electron:"31.0",firefox:"126","firefox-android":"126",ios:"18.0",node:"22.1",oculus:"34.0",opera:"112","opera-android":"83",opera_mobile:"83",quest:"34.0",safari:"18.0",samsung:"28.0"},"web.url.to-json":{android:"71",bun:"0.1.1",chrome:"71","chrome-android":"71",deno:"1.0",edge:"79",electron:"5.0",firefox:"57","firefox-android":"57",ios:"14.0",node:"10.0",oculus:"6.0",opera:"58","opera-android":"50",opera_mobile:"50",quest:"6.0",safari:"14.0",samsung:"10.0"},"web.url-search-params":{android:"67",bun:"0.1.1",chrome:"67","chrome-android":"67",deno:"1.0",edge:"79",electron:"4.0",firefox:"57","firefox-android":"57",ios:"14.0",node:"10.0",oculus:"6.0",opera:"54","opera-android":"48",opera_mobile:"48",quest:"6.0",safari:"14.0",samsung:"9.0"},"web.url-search-params.delete":{android:"118",bun:"1.0.31",chrome:"118","chrome-android":"118",deno:"1.35",edge:"118",electron:"27.0",firefox:"115","firefox-android":"115",ios:"17.0",node:"20.2",oculus:"30.0",opera:"104","opera-android":"79",opera_mobile:"79",quest:"30.0",safari:"17.0",samsung:"25.0"},"web.url-search-params.has":{android:"118",bun:"1.0.31",chrome:"118","chrome-android":"118",deno:"1.35",edge:"118",electron:"27.0",firefox:"115","firefox-android":"115",ios:"17.0",node:"20.2",oculus:"30.0",opera:"104","opera-android":"79",opera_mobile:"79",quest:"30.0",safari:"17.0",samsung:"25.0"},"web.url-search-params.size":{android:"113",bun:"1.0.2",chrome:"113","chrome-android":"113",deno:"1.32",edge:"113",electron:"25.0",firefox:"112","firefox-android":"112",ios:"17.0",node:"19.8",oculus:"28.0",opera:"99","opera-android":"76",opera_mobile:"76",quest:"28.0",safari:"17.0",samsung:"23.0"}};function Dbe(){return Cbe?kbe:(Cbe=1,kbe=Ibe)}var Obe,Nbe={};Object.hasOwn||Function.call.bind({}.hasOwnProperty);var Bbe=/(\d+)(?:\.(\d+))?(?:\.(\d+))?/,Mbe=function(){function e(e){var t=Bbe.exec(e);if(!t)throw new TypeError("Invalid version: "+e);var r=y(t,4),a=r[1],n=r[2],s=r[3];this.major=+a,this.minor=n?+n:0,this.patch=s?+s:0}return e.prototype.toString=function(){return this.major+"."+this.minor+"."+this.patch},o(e)}();function Fbe(e){return e instanceof Mbe?e:new Mbe(e)}var Lbe,Ube,qbe=function(e,t,r){for(var a=Fbe(e),n=Fbe(r),s=0,o=["major","minor","patch"];s<o.length;s++){var i=o[s];if(a[i]<n[i])return"<"===t||"<="===t||"!="===t;if(a[i]>n[i])return">"===t||">="===t||"!="===t}return"=="===t||"<="===t||">="===t},Gbe=function(e,t){var r=e instanceof Set?e:new Set(e);return t.filter(function(e){return r.has(e)})},Wbe=qbe,Vbe=Gbe,Hbe=Fbe,zbe={"3.0":["es.symbol","es.symbol.description","es.symbol.async-iterator","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.date.now","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.function.bind","es.function.has-instance","es.function.name","es.json.to-string-tag","es.map","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.finally","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.regexp.constructor","es.regexp.exec","es.regexp.flags","es.regexp.to-string","es.set","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.iterator","es.string.match","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.search","es.string.split","es.string.starts-with","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-string","es.weak-map","es.weak-set","esnext.aggregate-error","esnext.array.last-index","esnext.array.last-item","esnext.composite-key","esnext.composite-symbol","esnext.global-this","esnext.map.delete-all","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.umulh","esnext.number.from-string","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection","esnext.set.is-disjoint-from","esnext.set.is-subset-of","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference","esnext.set.union","esnext.string.at","esnext.string.code-points","esnext.string.match-all","esnext.string.replace-all","esnext.symbol.dispose","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.dom-collections.for-each","web.dom-collections.iterator","web.immediate","web.queue-microtask","web.timers","web.url","web.url.to-json","web.url-search-params"],3.1:["es.string.match-all","es.symbol.match-all","esnext.symbol.replace-all"],3.2:["es.promise.all-settled","esnext.array.is-template-object","esnext.map.update-or-insert","esnext.symbol.async-dispose"],3.3:["es.global-this","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.map.upsert","esnext.weak-map.upsert"],3.4:["es.json.stringify"],3.5:["esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values"],3.6:["es.regexp.sticky","es.regexp.test"],3.7:["es.aggregate-error","es.promise.any","es.reflect.to-string-tag","es.string.replace-all","esnext.map.emplace","esnext.weak-map.emplace"],3.8:["esnext.array.at","esnext.array.filter-out","esnext.array.unique-by","esnext.bigint.range","esnext.number.range","esnext.typed-array.at","esnext.typed-array.filter-out"],3.9:["esnext.array.find-last","esnext.array.find-last-index","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.unique-by"],3.11:["esnext.object.has-own"],3.12:["esnext.symbol.matcher","esnext.symbol.metadata"],3.15:["es.date.get-year","es.date.set-year","es.date.to-gmt-string","es.escape","es.regexp.dot-all","es.string.substr","es.unescape"],3.16:["esnext.array.filter-reject","esnext.array.group-by","esnext.typed-array.filter-reject","esnext.typed-array.group-by"],3.17:["es.array.at","es.object.has-own","es.string.at-alternative","es.typed-array.at"],3.18:["esnext.array.from-async","esnext.typed-array.from-async"],"3.20":["es.error.cause","es.error.to-string","es.aggregate-error.cause","es.number.to-exponential","esnext.array.group-by-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.un-this","esnext.iterator.to-async","esnext.string.cooked","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.structured-clone"],3.21:["web.atob","web.btoa"],3.23:["es.array.find-last","es.array.find-last-index","es.array.push","es.array.unshift","es.typed-array.find-last","es.typed-array.find-last-index","esnext.array.group","esnext.array.group-to-map","esnext.symbol.metadata-key"],3.24:["esnext.async-iterator.indexed","esnext.iterator.indexed"],3.25:["es.object.proto"],3.26:["esnext.string.is-well-formed","esnext.string.to-well-formed","web.self"],3.27:["esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.disposable-stack.constructor","esnext.iterator.dispose","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","esnext.string.dedent"],3.28:["es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.with","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.function.demethodize","esnext.iterator.range","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.symbol.is-registered","esnext.symbol.is-well-known"],3.29:["web.url-search-params.size"],"3.30":["web.url.can-parse"],3.31:["es.string.is-well-formed","es.string.to-well-formed","esnext.function.metadata","esnext.object.group-by","esnext.promise.with-resolvers","esnext.symbol.is-registered-symbol","esnext.symbol.is-well-known-symbol","web.url-search-params.delete","web.url-search-params.has"],3.32:["esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.math.f16round"],3.33:["esnext.regexp.escape"],3.34:["es.map.group-by","es.object.group-by","es.promise.with-resolvers","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],3.36:["es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length"],3.37:["es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","esnext.math.sum-precise","esnext.symbol.custom-matcher","web.url.parse"],3.38:["esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex"],3.39:["es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.promise.try","esnext.iterator.concat","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"3.40":["esnext.error.is-error"],3.41:["es.data-view.get-float16","es.data-view.set-float16","es.math.f16round","es.regexp.escape"],3.43:["es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.disposable-stack.constructor","es.error.is-error","es.iterator.dispose","es.suppressed-error.constructor","es.symbol.async-dispose","es.symbol.dispose","esnext.iterator.chunks","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.number.clamp"],3.44:["esnext.iterator.sliding"],3.45:["es.math.sum-precise","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],3.47:["es.iterator.concat","es.json.is-raw-json","es.json.parse","es.json.raw-json"],3.48:["es.map.get-or-insert","es.map.get-or-insert-computed","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed"]},Kbe=["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],Xbe=function(e){var t=Hbe(e);if(3!==t.major)throw new RangeError("This version of `core-js-compat` works only with `core-js@3`.");for(var r=[],a=0,n=Object.keys(zbe);a<n.length;a++){var s=n[a];Wbe(s,"<=",t)&&r.push.apply(r,b(zbe[s]))}return Vbe(r,Kbe)};var Jbe,Ybe={};var $be,Qbe={};var Zbe,eve={};var tve,rve,ave,nve,sve,ove={},ive={"core-js":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/actual":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.metadata","esnext.global-this","esnext.iterator.constructor","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.math.f16round","esnext.math.sum-precise","esnext.object.has-own","esnext.object.group-by","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.dispose","esnext.symbol.metadata","esnext.typed-array.at","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/actual/aggregate-error":[],"core-js/actual/array":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with"],"core-js/actual/array-buffer":["es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/actual/array-buffer/constructor":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/actual/array-buffer/detached":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","esnext.array-buffer.detached"],"core-js/actual/array-buffer/is-view":["es.array-buffer.is-view"],"core-js/actual/array-buffer/slice":["es.array-buffer.slice"],"core-js/actual/array-buffer/transfer":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer","esnext.array-buffer.transfer"],"core-js/actual/array-buffer/transfer-to-fixed-length":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer-to-fixed-length","esnext.array-buffer.transfer-to-fixed-length"],"core-js/actual/array/at":["es.array.at"],"core-js/actual/array/concat":["es.array.concat"],"core-js/actual/array/copy-within":["es.array.copy-within"],"core-js/actual/array/entries":["es.array.iterator","es.object.to-string"],"core-js/actual/array/every":["es.array.every"],"core-js/actual/array/fill":["es.array.fill"],"core-js/actual/array/filter":["es.array.filter"],"core-js/actual/array/find":["es.array.find"],"core-js/actual/array/find-index":["es.array.find-index"],"core-js/actual/array/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/actual/array/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/actual/array/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/actual/array/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/actual/array/for-each":["es.array.for-each"],"core-js/actual/array/from":["es.array.from","es.string.iterator"],"core-js/actual/array/from-async":["es.array.iterator","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async"],"core-js/actual/array/group":["esnext.array.group"],"core-js/actual/array/group-by":["esnext.array.group-by"],"core-js/actual/array/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/actual/array/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/actual/array/includes":["es.array.includes"],"core-js/actual/array/index-of":["es.array.index-of"],"core-js/actual/array/is-array":["es.array.is-array"],"core-js/actual/array/iterator":["es.array.iterator","es.object.to-string"],"core-js/actual/array/join":["es.array.join"],"core-js/actual/array/keys":["es.array.iterator","es.object.to-string"],"core-js/actual/array/last-index-of":["es.array.last-index-of"],"core-js/actual/array/map":["es.array.map"],"core-js/actual/array/of":["es.array.of"],"core-js/actual/array/push":["es.array.push"],"core-js/actual/array/reduce":["es.array.reduce"],"core-js/actual/array/reduce-right":["es.array.reduce-right"],"core-js/actual/array/reverse":["es.array.reverse"],"core-js/actual/array/slice":["es.array.slice"],"core-js/actual/array/some":["es.array.some"],"core-js/actual/array/sort":["es.array.sort"],"core-js/actual/array/splice":["es.array.splice"],"core-js/actual/array/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/actual/array/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/actual/array/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/actual/array/unshift":["es.array.unshift"],"core-js/actual/array/values":["es.array.iterator","es.object.to-string"],"core-js/actual/array/virtual":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.includes","es.array.index-of","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.map","es.object.to-string","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with"],"core-js/actual/array/virtual/at":["es.array.at"],"core-js/actual/array/virtual/concat":["es.array.concat"],"core-js/actual/array/virtual/copy-within":["es.array.copy-within"],"core-js/actual/array/virtual/entries":["es.array.iterator","es.object.to-string"],"core-js/actual/array/virtual/every":["es.array.every"],"core-js/actual/array/virtual/fill":["es.array.fill"],"core-js/actual/array/virtual/filter":["es.array.filter"],"core-js/actual/array/virtual/find":["es.array.find"],"core-js/actual/array/virtual/find-index":["es.array.find-index"],"core-js/actual/array/virtual/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/actual/array/virtual/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/actual/array/virtual/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/actual/array/virtual/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/actual/array/virtual/for-each":["es.array.for-each"],"core-js/actual/array/virtual/group":["esnext.array.group"],"core-js/actual/array/virtual/group-by":["esnext.array.group-by"],"core-js/actual/array/virtual/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/actual/array/virtual/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/actual/array/virtual/includes":["es.array.includes"],"core-js/actual/array/virtual/index-of":["es.array.index-of"],"core-js/actual/array/virtual/iterator":["es.array.iterator","es.object.to-string"],"core-js/actual/array/virtual/join":["es.array.join"],"core-js/actual/array/virtual/keys":["es.array.iterator","es.object.to-string"],"core-js/actual/array/virtual/last-index-of":["es.array.last-index-of"],"core-js/actual/array/virtual/map":["es.array.map"],"core-js/actual/array/virtual/push":["es.array.push"],"core-js/actual/array/virtual/reduce":["es.array.reduce"],"core-js/actual/array/virtual/reduce-right":["es.array.reduce-right"],"core-js/actual/array/virtual/reverse":["es.array.reverse"],"core-js/actual/array/virtual/slice":["es.array.slice"],"core-js/actual/array/virtual/some":["es.array.some"],"core-js/actual/array/virtual/sort":["es.array.sort"],"core-js/actual/array/virtual/splice":["es.array.splice"],"core-js/actual/array/virtual/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/actual/array/virtual/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/actual/array/virtual/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/actual/array/virtual/unshift":["es.array.unshift"],"core-js/actual/array/virtual/values":["es.array.iterator","es.object.to-string"],"core-js/actual/array/virtual/with":["es.array.with","esnext.array.with"],"core-js/actual/array/with":["es.array.with","esnext.array.with"],"core-js/actual/async-disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/actual/async-disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/actual/async-iterator":["es.array.iterator","es.object.to-string","es.promise","es.async-iterator.async-dispose","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/actual/async-iterator/async-dispose":["es.object.to-string","es.promise","es.async-iterator.async-dispose","esnext.async-iterator.async-dispose"],"core-js/actual/async-iterator/drop":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.drop"],"core-js/actual/async-iterator/every":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.every"],"core-js/actual/async-iterator/filter":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.filter"],"core-js/actual/async-iterator/find":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.find"],"core-js/actual/async-iterator/flat-map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.flat-map"],"core-js/actual/async-iterator/for-each":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.for-each"],"core-js/actual/async-iterator/from":["es.array.iterator","es.object.to-string","es.promise","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/actual/async-iterator/map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.map"],"core-js/actual/async-iterator/reduce":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.reduce"],"core-js/actual/async-iterator/some":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.some"],"core-js/actual/async-iterator/take":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.take"],"core-js/actual/async-iterator/to-array":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.to-array"],"core-js/actual/atob":["es.error.to-string","es.object.to-string","web.atob","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/actual/btoa":["es.error.to-string","es.object.to-string","web.btoa","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/actual/clear-immediate":["web.immediate"],"core-js/actual/data-view":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.object.to-string","esnext.data-view.get-float16","esnext.data-view.set-float16"],"core-js/actual/data-view/get-float16":["es.data-view.get-float16","esnext.data-view.get-float16"],"core-js/actual/data-view/set-float16":["es.data-view.set-float16","esnext.data-view.set-float16"],"core-js/actual/date":["es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string"],"core-js/actual/date/get-year":["es.date.get-year"],"core-js/actual/date/now":["es.date.now"],"core-js/actual/date/set-year":["es.date.set-year"],"core-js/actual/date/to-gmt-string":["es.date.to-gmt-string"],"core-js/actual/date/to-iso-string":["es.date.to-iso-string","es.date.to-json"],"core-js/actual/date/to-json":["es.date.to-json"],"core-js/actual/date/to-primitive":["es.date.to-primitive"],"core-js/actual/date/to-string":["es.date.to-string"],"core-js/actual/disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/actual/disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/actual/dom-collections":["es.array.iterator","es.object.to-string","web.dom-collections.for-each","web.dom-collections.iterator"],"core-js/actual/dom-collections/for-each":["web.dom-collections.for-each"],"core-js/actual/dom-collections/iterator":["es.object.to-string","web.dom-collections.iterator"],"core-js/actual/dom-exception":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/actual/dom-exception/constructor":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack"],"core-js/actual/dom-exception/to-string-tag":["web.dom-exception.to-string-tag"],"core-js/actual/error":["es.error.cause","es.error.is-error","es.error.to-string","es.object.create","esnext.error.is-error"],"core-js/actual/error/constructor":["es.error.cause"],"core-js/actual/error/is-error":["es.error.is-error","es.object.create","esnext.error.is-error"],"core-js/actual/error/to-string":["es.error.to-string"],"core-js/actual/escape":["es.escape"],"core-js/actual/function":["es.function.bind","es.function.has-instance","es.function.name","esnext.function.metadata"],"core-js/actual/function/bind":["es.function.bind"],"core-js/actual/function/has-instance":["es.function.has-instance"],"core-js/actual/function/metadata":["esnext.function.metadata"],"core-js/actual/function/name":["es.function.name"],"core-js/actual/function/virtual":["es.function.bind"],"core-js/actual/function/virtual/bind":["es.function.bind"],"core-js/actual/get-iterator":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/get-iterator-method":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/global-this":["es.global-this"],"core-js/actual/instance/at":["es.array.at","es.string.at-alternative"],"core-js/actual/instance/bind":["es.function.bind"],"core-js/actual/instance/code-point-at":["es.string.code-point-at"],"core-js/actual/instance/concat":["es.array.concat"],"core-js/actual/instance/copy-within":["es.array.copy-within"],"core-js/actual/instance/ends-with":["es.string.ends-with"],"core-js/actual/instance/entries":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/actual/instance/every":["es.array.every"],"core-js/actual/instance/fill":["es.array.fill"],"core-js/actual/instance/filter":["es.array.filter"],"core-js/actual/instance/find":["es.array.find"],"core-js/actual/instance/find-index":["es.array.find-index"],"core-js/actual/instance/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/actual/instance/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/actual/instance/flags":["es.regexp.flags"],"core-js/actual/instance/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/actual/instance/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/actual/instance/for-each":["es.array.for-each","web.dom-collections.for-each"],"core-js/actual/instance/group":["esnext.array.group"],"core-js/actual/instance/group-by":["esnext.array.group-by"],"core-js/actual/instance/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/actual/instance/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/actual/instance/includes":["es.array.includes","es.string.includes"],"core-js/actual/instance/index-of":["es.array.index-of"],"core-js/actual/instance/is-well-formed":["es.string.is-well-formed"],"core-js/actual/instance/keys":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/actual/instance/last-index-of":["es.array.last-index-of"],"core-js/actual/instance/map":["es.array.map"],"core-js/actual/instance/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/actual/instance/pad-end":["es.string.pad-end"],"core-js/actual/instance/pad-start":["es.string.pad-start"],"core-js/actual/instance/push":["es.array.push"],"core-js/actual/instance/reduce":["es.array.reduce"],"core-js/actual/instance/reduce-right":["es.array.reduce-right"],"core-js/actual/instance/repeat":["es.string.repeat"],"core-js/actual/instance/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/actual/instance/reverse":["es.array.reverse"],"core-js/actual/instance/slice":["es.array.slice"],"core-js/actual/instance/some":["es.array.some"],"core-js/actual/instance/sort":["es.array.sort"],"core-js/actual/instance/splice":["es.array.splice"],"core-js/actual/instance/starts-with":["es.string.starts-with"],"core-js/actual/instance/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/actual/instance/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/actual/instance/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/actual/instance/to-well-formed":["es.string.to-well-formed"],"core-js/actual/instance/trim":["es.string.trim"],"core-js/actual/instance/trim-end":["es.string.trim-end"],"core-js/actual/instance/trim-left":["es.string.trim-start"],"core-js/actual/instance/trim-right":["es.string.trim-end"],"core-js/actual/instance/trim-start":["es.string.trim-start"],"core-js/actual/instance/unshift":["es.array.unshift"],"core-js/actual/instance/values":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/actual/instance/with":["es.array.with","esnext.array.with"],"core-js/actual/is-iterable":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/iterator":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.zip","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/actual/iterator/concat":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.concat","web.dom-collections.iterator"],"core-js/actual/iterator/dispose":["esnext.iterator.dispose"],"core-js/actual/iterator/drop":["es.iterator.constructor","es.iterator.drop","es.object.to-string","esnext.iterator.constructor","esnext.iterator.drop"],"core-js/actual/iterator/every":["es.iterator.constructor","es.iterator.every","es.object.to-string","esnext.iterator.constructor","esnext.iterator.every"],"core-js/actual/iterator/filter":["es.iterator.constructor","es.iterator.filter","es.object.to-string","esnext.iterator.constructor","esnext.iterator.filter"],"core-js/actual/iterator/find":["es.iterator.constructor","es.iterator.find","es.object.to-string","esnext.iterator.constructor","esnext.iterator.find"],"core-js/actual/iterator/flat-map":["es.array.iterator","es.iterator.constructor","es.iterator.flat-map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.flat-map","web.dom-collections.iterator"],"core-js/actual/iterator/for-each":["es.iterator.constructor","es.iterator.for-each","es.object.to-string","esnext.iterator.constructor","esnext.iterator.for-each"],"core-js/actual/iterator/from":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","web.dom-collections.iterator"],"core-js/actual/iterator/map":["es.iterator.constructor","es.iterator.map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.map"],"core-js/actual/iterator/reduce":["es.iterator.constructor","es.iterator.reduce","es.object.to-string","esnext.iterator.constructor","esnext.iterator.reduce"],"core-js/actual/iterator/some":["es.iterator.constructor","es.iterator.some","es.object.to-string","esnext.iterator.constructor","esnext.iterator.some"],"core-js/actual/iterator/take":["es.iterator.constructor","es.iterator.take","es.object.to-string","esnext.iterator.constructor","esnext.iterator.take"],"core-js/actual/iterator/to-array":["es.iterator.constructor","es.iterator.to-array","es.object.to-string","esnext.iterator.constructor","esnext.iterator.to-array"],"core-js/actual/iterator/to-async":["es.iterator.constructor","es.object.to-string","es.promise","esnext.iterator.constructor","esnext.iterator.to-async"],"core-js/actual/iterator/zip":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.zip","web.dom-collections.iterator"],"core-js/actual/iterator/zip-keyed":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.reflect.own-keys","es.string.iterator","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/actual/json":["es.date.to-json","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.object.create","es.object.freeze","es.object.keys","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json"],"core-js/actual/json/is-raw-json":["es.json.is-raw-json","esnext.json.is-raw-json"],"core-js/actual/json/parse":["es.json.parse","es.object.keys","esnext.json.parse"],"core-js/actual/json/raw-json":["es.json.raw-json","es.json.stringify","es.object.create","es.object.freeze","esnext.json.raw-json"],"core-js/actual/json/stringify":["es.date.to-json","es.json.stringify"],"core-js/actual/json/to-string-tag":["es.json.to-string-tag"],"core-js/actual/map":["es.array.iterator","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","es.string.iterator","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","web.dom-collections.iterator"],"core-js/actual/map/get-or-insert":["es.map","es.map.get-or-insert","esnext.map.get-or-insert"],"core-js/actual/map/get-or-insert-computed":["es.map","es.map.get-or-insert-computed","esnext.map.get-or-insert-computed"],"core-js/actual/map/group-by":["es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by"],"core-js/actual/math":["es.array.iterator","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","esnext.math.f16round","esnext.math.sum-precise"],"core-js/actual/math/acosh":["es.math.acosh"],"core-js/actual/math/asinh":["es.math.asinh"],"core-js/actual/math/atanh":["es.math.atanh"],"core-js/actual/math/cbrt":["es.math.cbrt"],"core-js/actual/math/clz32":["es.math.clz32"],"core-js/actual/math/cosh":["es.math.cosh"],"core-js/actual/math/expm1":["es.math.expm1"],"core-js/actual/math/f16round":["es.math.f16round","esnext.math.f16round"],"core-js/actual/math/fround":["es.math.fround"],"core-js/actual/math/hypot":["es.math.hypot"],"core-js/actual/math/imul":["es.math.imul"],"core-js/actual/math/log10":["es.math.log10"],"core-js/actual/math/log1p":["es.math.log1p"],"core-js/actual/math/log2":["es.math.log2"],"core-js/actual/math/sign":["es.math.sign"],"core-js/actual/math/sinh":["es.math.sinh"],"core-js/actual/math/sum-precise":["es.array.iterator","es.math.sum-precise","esnext.math.sum-precise"],"core-js/actual/math/tanh":["es.math.tanh"],"core-js/actual/math/to-string-tag":["es.math.to-string-tag"],"core-js/actual/math/trunc":["es.math.trunc"],"core-js/actual/number":["es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/actual/number/constructor":["es.number.constructor"],"core-js/actual/number/epsilon":["es.number.epsilon"],"core-js/actual/number/is-finite":["es.number.is-finite"],"core-js/actual/number/is-integer":["es.number.is-integer"],"core-js/actual/number/is-nan":["es.number.is-nan"],"core-js/actual/number/is-safe-integer":["es.number.is-safe-integer"],"core-js/actual/number/max-safe-integer":["es.number.max-safe-integer"],"core-js/actual/number/min-safe-integer":["es.number.min-safe-integer"],"core-js/actual/number/parse-float":["es.number.parse-float"],"core-js/actual/number/parse-int":["es.number.parse-int"],"core-js/actual/number/to-exponential":["es.number.to-exponential"],"core-js/actual/number/to-fixed":["es.number.to-fixed"],"core-js/actual/number/to-precision":["es.number.to-precision"],"core-js/actual/number/virtual":["es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/actual/number/virtual/to-exponential":["es.number.to-exponential"],"core-js/actual/number/virtual/to-fixed":["es.number.to-fixed"],"core-js/actual/number/virtual/to-precision":["es.number.to-precision"],"core-js/actual/object":["es.symbol","es.json.to-string-tag","es.math.to-string-tag","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.reflect.to-string-tag","esnext.object.group-by","web.dom-collections.iterator"],"core-js/actual/object/assign":["es.object.assign"],"core-js/actual/object/create":["es.object.create"],"core-js/actual/object/define-getter":["es.object.define-getter"],"core-js/actual/object/define-properties":["es.object.define-properties"],"core-js/actual/object/define-property":["es.object.define-property"],"core-js/actual/object/define-setter":["es.object.define-setter"],"core-js/actual/object/entries":["es.object.entries"],"core-js/actual/object/freeze":["es.object.freeze"],"core-js/actual/object/from-entries":["es.array.iterator","es.object.from-entries","web.dom-collections.iterator"],"core-js/actual/object/get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/actual/object/get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/actual/object/get-own-property-names":["es.object.get-own-property-names"],"core-js/actual/object/get-own-property-symbols":["es.symbol"],"core-js/actual/object/get-prototype-of":["es.object.get-prototype-of"],"core-js/actual/object/group-by":["es.object.create","es.object.group-by","esnext.object.group-by"],"core-js/actual/object/has-own":["es.object.has-own"],"core-js/actual/object/is":["es.object.is"],"core-js/actual/object/is-extensible":["es.object.is-extensible"],"core-js/actual/object/is-frozen":["es.object.is-frozen"],"core-js/actual/object/is-sealed":["es.object.is-sealed"],"core-js/actual/object/keys":["es.object.keys"],"core-js/actual/object/lookup-getter":["es.object.lookup-getter"],"core-js/actual/object/lookup-setter":["es.object.lookup-setter"],"core-js/actual/object/prevent-extensions":["es.object.prevent-extensions"],"core-js/actual/object/proto":["es.object.proto"],"core-js/actual/object/seal":["es.object.seal"],"core-js/actual/object/set-prototype-of":["es.object.set-prototype-of"],"core-js/actual/object/to-string":["es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/actual/object/values":["es.object.values"],"core-js/actual/parse-float":["es.parse-float"],"core-js/actual/parse-int":["es.parse-int"],"core-js/actual/promise":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.string.iterator","esnext.promise.try","esnext.promise.with-resolvers","web.dom-collections.iterator"],"core-js/actual/promise/all-settled":["es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/promise/any":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.any","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/promise/finally":["es.object.to-string","es.promise","es.promise.finally"],"core-js/actual/promise/try":["es.object.to-string","es.promise","es.promise.try","esnext.promise.try"],"core-js/actual/promise/with-resolvers":["es.promise","es.promise.with-resolvers","esnext.promise.with-resolvers"],"core-js/actual/queue-microtask":["web.queue-microtask"],"core-js/actual/reflect":["es.object.to-string","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag"],"core-js/actual/reflect/apply":["es.reflect.apply"],"core-js/actual/reflect/construct":["es.reflect.construct"],"core-js/actual/reflect/define-property":["es.reflect.define-property"],"core-js/actual/reflect/delete-property":["es.reflect.delete-property"],"core-js/actual/reflect/get":["es.reflect.get"],"core-js/actual/reflect/get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/actual/reflect/get-prototype-of":["es.reflect.get-prototype-of"],"core-js/actual/reflect/has":["es.reflect.has"],"core-js/actual/reflect/is-extensible":["es.reflect.is-extensible"],"core-js/actual/reflect/own-keys":["es.reflect.own-keys"],"core-js/actual/reflect/prevent-extensions":["es.reflect.prevent-extensions"],"core-js/actual/reflect/set":["es.reflect.set"],"core-js/actual/reflect/set-prototype-of":["es.reflect.set-prototype-of"],"core-js/actual/reflect/to-string-tag":["es.reflect.to-string-tag"],"core-js/actual/regexp":["es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.string.match","es.string.replace","es.string.search","es.string.split","esnext.regexp.escape"],"core-js/actual/regexp/constructor":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky"],"core-js/actual/regexp/dot-all":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec"],"core-js/actual/regexp/escape":["es.regexp.escape","esnext.regexp.escape"],"core-js/actual/regexp/flags":["es.regexp.flags"],"core-js/actual/regexp/match":["es.regexp.exec","es.string.match"],"core-js/actual/regexp/replace":["es.regexp.exec","es.string.replace"],"core-js/actual/regexp/search":["es.regexp.exec","es.string.search"],"core-js/actual/regexp/split":["es.regexp.exec","es.string.split"],"core-js/actual/regexp/sticky":["es.regexp.constructor","es.regexp.exec","es.regexp.sticky"],"core-js/actual/regexp/test":["es.regexp.exec","es.regexp.test"],"core-js/actual/regexp/to-string":["es.regexp.to-string"],"core-js/actual/self":["web.self"],"core-js/actual/set":["es.array.iterator","es.object.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.iterator","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","web.dom-collections.iterator"],"core-js/actual/set-immediate":["web.immediate"],"core-js/actual/set-interval":["web.timers"],"core-js/actual/set-timeout":["web.timers"],"core-js/actual/set/difference":["es.set","es.set.difference.v2","esnext.set.difference.v2"],"core-js/actual/set/intersection":["es.set","es.set.intersection.v2","esnext.set.intersection.v2"],"core-js/actual/set/is-disjoint-from":["es.set","es.set.is-disjoint-from.v2","esnext.set.is-disjoint-from.v2"],"core-js/actual/set/is-subset-of":["es.set","es.set.is-subset-of.v2","esnext.set.is-subset-of.v2"],"core-js/actual/set/is-superset-of":["es.set","es.set.is-superset-of.v2","esnext.set.is-superset-of.v2"],"core-js/actual/set/symmetric-difference":["es.set","es.set.symmetric-difference.v2","esnext.set.symmetric-difference.v2"],"core-js/actual/set/union":["es.set","es.set.union.v2","esnext.set.union.v2"],"core-js/actual/string":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","esnext.string.is-well-formed","esnext.string.to-well-formed"],"core-js/actual/string/anchor":["es.string.anchor"],"core-js/actual/string/at":["es.string.at-alternative"],"core-js/actual/string/big":["es.string.big"],"core-js/actual/string/blink":["es.string.blink"],"core-js/actual/string/bold":["es.string.bold"],"core-js/actual/string/code-point-at":["es.string.code-point-at"],"core-js/actual/string/ends-with":["es.string.ends-with"],"core-js/actual/string/fixed":["es.string.fixed"],"core-js/actual/string/fontcolor":["es.string.fontcolor"],"core-js/actual/string/fontsize":["es.string.fontsize"],"core-js/actual/string/from-code-point":["es.string.from-code-point"],"core-js/actual/string/includes":["es.string.includes"],"core-js/actual/string/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/actual/string/italics":["es.string.italics"],"core-js/actual/string/iterator":["es.object.to-string","es.string.iterator"],"core-js/actual/string/link":["es.string.link"],"core-js/actual/string/match":["es.regexp.exec","es.string.match"],"core-js/actual/string/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/actual/string/pad-end":["es.string.pad-end"],"core-js/actual/string/pad-start":["es.string.pad-start"],"core-js/actual/string/raw":["es.string.raw"],"core-js/actual/string/repeat":["es.string.repeat"],"core-js/actual/string/replace":["es.regexp.exec","es.string.replace"],"core-js/actual/string/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/actual/string/search":["es.regexp.exec","es.string.search"],"core-js/actual/string/small":["es.string.small"],"core-js/actual/string/split":["es.regexp.exec","es.string.split"],"core-js/actual/string/starts-with":["es.string.starts-with"],"core-js/actual/string/strike":["es.string.strike"],"core-js/actual/string/sub":["es.string.sub"],"core-js/actual/string/substr":["es.string.substr"],"core-js/actual/string/sup":["es.string.sup"],"core-js/actual/string/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/actual/string/trim":["es.string.trim"],"core-js/actual/string/trim-end":["es.string.trim-end"],"core-js/actual/string/trim-left":["es.string.trim-start"],"core-js/actual/string/trim-right":["es.string.trim-end"],"core-js/actual/string/trim-start":["es.string.trim-start"],"core-js/actual/string/virtual":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.includes","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","esnext.string.is-well-formed","esnext.string.to-well-formed"],"core-js/actual/string/virtual/anchor":["es.string.anchor"],"core-js/actual/string/virtual/at":["es.string.at-alternative"],"core-js/actual/string/virtual/big":["es.string.big"],"core-js/actual/string/virtual/blink":["es.string.blink"],"core-js/actual/string/virtual/bold":["es.string.bold"],"core-js/actual/string/virtual/code-point-at":["es.string.code-point-at"],"core-js/actual/string/virtual/ends-with":["es.string.ends-with"],"core-js/actual/string/virtual/fixed":["es.string.fixed"],"core-js/actual/string/virtual/fontcolor":["es.string.fontcolor"],"core-js/actual/string/virtual/fontsize":["es.string.fontsize"],"core-js/actual/string/virtual/includes":["es.string.includes"],"core-js/actual/string/virtual/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/actual/string/virtual/italics":["es.string.italics"],"core-js/actual/string/virtual/iterator":["es.object.to-string","es.string.iterator"],"core-js/actual/string/virtual/link":["es.string.link"],"core-js/actual/string/virtual/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/actual/string/virtual/pad-end":["es.string.pad-end"],"core-js/actual/string/virtual/pad-start":["es.string.pad-start"],"core-js/actual/string/virtual/repeat":["es.string.repeat"],"core-js/actual/string/virtual/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/actual/string/virtual/small":["es.string.small"],"core-js/actual/string/virtual/starts-with":["es.string.starts-with"],"core-js/actual/string/virtual/strike":["es.string.strike"],"core-js/actual/string/virtual/sub":["es.string.sub"],"core-js/actual/string/virtual/substr":["es.string.substr"],"core-js/actual/string/virtual/sup":["es.string.sup"],"core-js/actual/string/virtual/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/actual/string/virtual/trim":["es.string.trim"],"core-js/actual/string/virtual/trim-end":["es.string.trim-end"],"core-js/actual/string/virtual/trim-left":["es.string.trim-start"],"core-js/actual/string/virtual/trim-right":["es.string.trim-end"],"core-js/actual/string/virtual/trim-start":["es.string.trim-start"],"core-js/actual/structured-clone":["es.error.to-string","es.array.iterator","es.map","es.object.keys","es.object.to-string","es.set","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.structured-clone"],"core-js/actual/suppressed-error":[],"core-js/actual/symbol":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag","esnext.function.metadata","esnext.symbol.async-dispose","esnext.symbol.dispose","esnext.symbol.metadata","web.dom-collections.iterator"],"core-js/actual/symbol/async-dispose":["es.symbol.async-dispose","esnext.symbol.async-dispose"],"core-js/actual/symbol/async-iterator":["es.symbol.async-iterator"],"core-js/actual/symbol/description":["es.symbol.description"],"core-js/actual/symbol/dispose":["es.symbol.dispose","esnext.symbol.dispose"],"core-js/actual/symbol/for":["es.symbol"],"core-js/actual/symbol/has-instance":["es.symbol.has-instance","es.function.has-instance"],"core-js/actual/symbol/is-concat-spreadable":["es.symbol.is-concat-spreadable","es.array.concat"],"core-js/actual/symbol/iterator":["es.symbol.iterator","es.array.iterator","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/actual/symbol/key-for":["es.symbol"],"core-js/actual/symbol/match":["es.symbol.match","es.regexp.exec","es.string.match"],"core-js/actual/symbol/match-all":["es.symbol.match-all","es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/actual/symbol/metadata":["esnext.function.metadata","esnext.symbol.metadata"],"core-js/actual/symbol/replace":["es.symbol.replace","es.regexp.exec","es.string.replace"],"core-js/actual/symbol/search":["es.symbol.search","es.regexp.exec","es.string.search"],"core-js/actual/symbol/species":["es.symbol.species"],"core-js/actual/symbol/split":["es.symbol.split","es.regexp.exec","es.string.split"],"core-js/actual/symbol/to-primitive":["es.symbol.to-primitive","es.date.to-primitive"],"core-js/actual/symbol/to-string-tag":["es.symbol.to-string-tag","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/actual/symbol/unscopables":["es.symbol.unscopables"],"core-js/actual/typed-array":["es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/at":["es.typed-array.at"],"core-js/actual/typed-array/copy-within":["es.typed-array.copy-within"],"core-js/actual/typed-array/entries":["es.object.to-string","es.typed-array.iterator"],"core-js/actual/typed-array/every":["es.typed-array.every"],"core-js/actual/typed-array/fill":["es.typed-array.fill"],"core-js/actual/typed-array/filter":["es.typed-array.filter"],"core-js/actual/typed-array/find":["es.typed-array.find"],"core-js/actual/typed-array/find-index":["es.typed-array.find-index"],"core-js/actual/typed-array/find-last":["es.typed-array.find-last","esnext.typed-array.find-last"],"core-js/actual/typed-array/find-last-index":["es.typed-array.find-last-index","esnext.typed-array.find-last-index"],"core-js/actual/typed-array/float32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/float64-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float64-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/for-each":["es.typed-array.for-each"],"core-js/actual/typed-array/from":["es.typed-array.from"],"core-js/actual/typed-array/from-base64":["es.uint8-array.from-base64","esnext.uint8-array.from-base64"],"core-js/actual/typed-array/from-hex":["es.uint8-array.from-hex","esnext.uint8-array.from-hex"],"core-js/actual/typed-array/includes":["es.typed-array.includes"],"core-js/actual/typed-array/index-of":["es.typed-array.index-of"],"core-js/actual/typed-array/int16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/int32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/int8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/iterator":["es.object.to-string","es.typed-array.iterator"],"core-js/actual/typed-array/join":["es.typed-array.join"],"core-js/actual/typed-array/keys":["es.object.to-string","es.typed-array.iterator"],"core-js/actual/typed-array/last-index-of":["es.typed-array.last-index-of"],"core-js/actual/typed-array/map":["es.typed-array.map"],"core-js/actual/typed-array/methods":["es.object.to-string","es.string.iterator","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/of":["es.typed-array.of"],"core-js/actual/typed-array/reduce":["es.typed-array.reduce"],"core-js/actual/typed-array/reduce-right":["es.typed-array.reduce-right"],"core-js/actual/typed-array/reverse":["es.typed-array.reverse"],"core-js/actual/typed-array/set":["es.typed-array.set"],"core-js/actual/typed-array/set-from-base64":["es.uint8-array.set-from-base64","esnext.uint8-array.set-from-base64"],"core-js/actual/typed-array/set-from-hex":["es.uint8-array.set-from-hex","esnext.uint8-array.set-from-hex"],"core-js/actual/typed-array/slice":["es.typed-array.slice"],"core-js/actual/typed-array/some":["es.typed-array.some"],"core-js/actual/typed-array/sort":["es.typed-array.sort"],"core-js/actual/typed-array/subarray":["es.typed-array.subarray"],"core-js/actual/typed-array/to-base64":["es.uint8-array.to-base64","esnext.uint8-array.to-base64"],"core-js/actual/typed-array/to-hex":["es.uint8-array.to-hex","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/to-locale-string":["es.typed-array.to-locale-string"],"core-js/actual/typed-array/to-reversed":["es.typed-array.to-reversed","esnext.typed-array.to-reversed"],"core-js/actual/typed-array/to-sorted":["es.typed-array.sort","es.typed-array.to-sorted","esnext.typed-array.to-sorted"],"core-js/actual/typed-array/to-spliced":["esnext.typed-array.to-spliced"],"core-js/actual/typed-array/to-string":["es.typed-array.to-string"],"core-js/actual/typed-array/uint16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/uint32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/uint8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/uint8-clamped-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-clamped-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/actual/typed-array/values":["es.object.to-string","es.typed-array.iterator"],"core-js/actual/typed-array/with":["es.typed-array.with","esnext.typed-array.with"],"core-js/actual/unescape":["es.unescape"],"core-js/actual/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/actual/url-search-params":["web.dom-collections.iterator","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/actual/url/can-parse":["web.url","web.url.can-parse"],"core-js/actual/url/parse":["web.url","web.url.parse"],"core-js/actual/url/to-json":["web.url.to-json"],"core-js/actual/weak-map":["es.array.iterator","es.object.to-string","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","web.dom-collections.iterator"],"core-js/actual/weak-map/get-or-insert":["es.weak-map","es.weak-map.get-or-insert","esnext.weak-map.get-or-insert"],"core-js/actual/weak-map/get-or-insert-computed":["es.weak-map","es.weak-map.get-or-insert-computed","esnext.weak-map.get-or-insert-computed"],"core-js/actual/weak-set":["es.array.iterator","es.object.to-string","es.weak-set","web.dom-collections.iterator"],"core-js/es":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set"],"core-js/es/aggregate-error":[],"core-js/es/array":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.object.to-string","es.promise","es.array.from-async","es.string.iterator"],"core-js/es/array-buffer":["es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],"core-js/es/array-buffer/constructor":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],"core-js/es/array-buffer/detached":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached"],"core-js/es/array-buffer/is-view":["es.array-buffer.is-view"],"core-js/es/array-buffer/slice":["es.array-buffer.slice"],"core-js/es/array-buffer/transfer":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer"],"core-js/es/array-buffer/transfer-to-fixed-length":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer-to-fixed-length"],"core-js/es/array/at":["es.array.at"],"core-js/es/array/concat":["es.array.concat"],"core-js/es/array/copy-within":["es.array.copy-within"],"core-js/es/array/entries":["es.array.iterator","es.object.to-string"],"core-js/es/array/every":["es.array.every"],"core-js/es/array/fill":["es.array.fill"],"core-js/es/array/filter":["es.array.filter"],"core-js/es/array/find":["es.array.find"],"core-js/es/array/find-index":["es.array.find-index"],"core-js/es/array/find-last":["es.array.find-last"],"core-js/es/array/find-last-index":["es.array.find-last-index"],"core-js/es/array/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/es/array/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/es/array/for-each":["es.array.for-each"],"core-js/es/array/from":["es.array.from","es.string.iterator"],"core-js/es/array/from-async":["es.array.iterator","es.object.to-string","es.promise","es.array.from-async","es.string.iterator"],"core-js/es/array/includes":["es.array.includes"],"core-js/es/array/index-of":["es.array.index-of"],"core-js/es/array/is-array":["es.array.is-array"],"core-js/es/array/iterator":["es.array.iterator","es.object.to-string"],"core-js/es/array/join":["es.array.join"],"core-js/es/array/keys":["es.array.iterator","es.object.to-string"],"core-js/es/array/last-index-of":["es.array.last-index-of"],"core-js/es/array/map":["es.array.map"],"core-js/es/array/of":["es.array.of"],"core-js/es/array/push":["es.array.push"],"core-js/es/array/reduce":["es.array.reduce"],"core-js/es/array/reduce-right":["es.array.reduce-right"],"core-js/es/array/reverse":["es.array.reverse"],"core-js/es/array/slice":["es.array.slice"],"core-js/es/array/some":["es.array.some"],"core-js/es/array/sort":["es.array.sort"],"core-js/es/array/splice":["es.array.splice"],"core-js/es/array/to-reversed":["es.array.to-reversed"],"core-js/es/array/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/es/array/to-spliced":["es.array.to-spliced"],"core-js/es/array/unshift":["es.array.unshift"],"core-js/es/array/values":["es.array.iterator","es.object.to-string"],"core-js/es/array/virtual":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.includes","es.array.index-of","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.object.to-string"],"core-js/es/array/virtual/at":["es.array.at"],"core-js/es/array/virtual/concat":["es.array.concat"],"core-js/es/array/virtual/copy-within":["es.array.copy-within"],"core-js/es/array/virtual/entries":["es.array.iterator","es.object.to-string"],"core-js/es/array/virtual/every":["es.array.every"],"core-js/es/array/virtual/fill":["es.array.fill"],"core-js/es/array/virtual/filter":["es.array.filter"],"core-js/es/array/virtual/find":["es.array.find"],"core-js/es/array/virtual/find-index":["es.array.find-index"],"core-js/es/array/virtual/find-last":["es.array.find-last"],"core-js/es/array/virtual/find-last-index":["es.array.find-last-index"],"core-js/es/array/virtual/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/es/array/virtual/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/es/array/virtual/for-each":["es.array.for-each"],"core-js/es/array/virtual/includes":["es.array.includes"],"core-js/es/array/virtual/index-of":["es.array.index-of"],"core-js/es/array/virtual/iterator":["es.array.iterator","es.object.to-string"],"core-js/es/array/virtual/join":["es.array.join"],"core-js/es/array/virtual/keys":["es.array.iterator","es.object.to-string"],"core-js/es/array/virtual/last-index-of":["es.array.last-index-of"],"core-js/es/array/virtual/map":["es.array.map"],"core-js/es/array/virtual/push":["es.array.push"],"core-js/es/array/virtual/reduce":["es.array.reduce"],"core-js/es/array/virtual/reduce-right":["es.array.reduce-right"],"core-js/es/array/virtual/reverse":["es.array.reverse"],"core-js/es/array/virtual/slice":["es.array.slice"],"core-js/es/array/virtual/some":["es.array.some"],"core-js/es/array/virtual/sort":["es.array.sort"],"core-js/es/array/virtual/splice":["es.array.splice"],"core-js/es/array/virtual/to-reversed":["es.array.to-reversed"],"core-js/es/array/virtual/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/es/array/virtual/to-spliced":["es.array.to-spliced"],"core-js/es/array/virtual/unshift":["es.array.unshift"],"core-js/es/array/virtual/values":["es.array.iterator","es.object.to-string"],"core-js/es/array/virtual/with":["es.array.with"],"core-js/es/array/with":["es.array.with"],"core-js/es/async-disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose"],"core-js/es/async-disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose"],"core-js/es/async-iterator":["es.object.to-string","es.promise","es.async-iterator.async-dispose"],"core-js/es/async-iterator/async-dispose":["es.object.to-string","es.promise","es.async-iterator.async-dispose"],"core-js/es/data-view":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.object.to-string"],"core-js/es/data-view/get-float16":["es.data-view.get-float16"],"core-js/es/data-view/set-float16":["es.data-view.set-float16"],"core-js/es/date":["es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string"],"core-js/es/date/get-year":["es.date.get-year"],"core-js/es/date/now":["es.date.now"],"core-js/es/date/set-year":["es.date.set-year"],"core-js/es/date/to-gmt-string":["es.date.to-gmt-string"],"core-js/es/date/to-iso-string":["es.date.to-iso-string","es.date.to-json"],"core-js/es/date/to-json":["es.date.to-json"],"core-js/es/date/to-primitive":["es.date.to-primitive"],"core-js/es/date/to-string":["es.date.to-string"],"core-js/es/disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string"],"core-js/es/disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string"],"core-js/es/error":["es.error.cause","es.error.is-error","es.error.to-string"],"core-js/es/error/constructor":["es.error.cause"],"core-js/es/error/is-error":["es.error.is-error","es.object.create"],"core-js/es/error/to-string":["es.error.to-string"],"core-js/es/escape":["es.escape"],"core-js/es/function":["es.function.bind","es.function.has-instance","es.function.name"],"core-js/es/function/bind":["es.function.bind"],"core-js/es/function/has-instance":["es.function.has-instance"],"core-js/es/function/name":["es.function.name"],"core-js/es/function/virtual":["es.function.bind"],"core-js/es/function/virtual/bind":["es.function.bind"],"core-js/es/get-iterator":["es.array.iterator","es.string.iterator"],"core-js/es/get-iterator-method":["es.array.iterator","es.string.iterator"],"core-js/es/global-this":["es.global-this"],"core-js/es/instance/at":["es.array.at","es.string.at-alternative"],"core-js/es/instance/bind":["es.function.bind"],"core-js/es/instance/code-point-at":["es.string.code-point-at"],"core-js/es/instance/concat":["es.array.concat"],"core-js/es/instance/copy-within":["es.array.copy-within"],"core-js/es/instance/ends-with":["es.string.ends-with"],"core-js/es/instance/entries":["es.array.iterator","es.object.to-string"],"core-js/es/instance/every":["es.array.every"],"core-js/es/instance/fill":["es.array.fill"],"core-js/es/instance/filter":["es.array.filter"],"core-js/es/instance/find":["es.array.find"],"core-js/es/instance/find-index":["es.array.find-index"],"core-js/es/instance/find-last":["es.array.find-last"],"core-js/es/instance/find-last-index":["es.array.find-last-index"],"core-js/es/instance/flags":["es.regexp.flags"],"core-js/es/instance/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/es/instance/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/es/instance/for-each":["es.array.for-each"],"core-js/es/instance/includes":["es.array.includes","es.string.includes"],"core-js/es/instance/index-of":["es.array.index-of"],"core-js/es/instance/is-well-formed":["es.string.is-well-formed"],"core-js/es/instance/keys":["es.array.iterator","es.object.to-string"],"core-js/es/instance/last-index-of":["es.array.last-index-of"],"core-js/es/instance/map":["es.array.map"],"core-js/es/instance/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/es/instance/pad-end":["es.string.pad-end"],"core-js/es/instance/pad-start":["es.string.pad-start"],"core-js/es/instance/push":["es.array.push"],"core-js/es/instance/reduce":["es.array.reduce"],"core-js/es/instance/reduce-right":["es.array.reduce-right"],"core-js/es/instance/repeat":["es.string.repeat"],"core-js/es/instance/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/es/instance/reverse":["es.array.reverse"],"core-js/es/instance/slice":["es.array.slice"],"core-js/es/instance/some":["es.array.some"],"core-js/es/instance/sort":["es.array.sort"],"core-js/es/instance/splice":["es.array.splice"],"core-js/es/instance/starts-with":["es.string.starts-with"],"core-js/es/instance/to-reversed":["es.array.to-reversed"],"core-js/es/instance/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/es/instance/to-spliced":["es.array.to-spliced"],"core-js/es/instance/to-well-formed":["es.string.to-well-formed"],"core-js/es/instance/trim":["es.string.trim"],"core-js/es/instance/trim-end":["es.string.trim-end"],"core-js/es/instance/trim-left":["es.string.trim-start"],"core-js/es/instance/trim-right":["es.string.trim-end"],"core-js/es/instance/trim-start":["es.string.trim-start"],"core-js/es/instance/unshift":["es.array.unshift"],"core-js/es/instance/values":["es.array.iterator","es.object.to-string"],"core-js/es/instance/with":["es.array.with"],"core-js/es/is-iterable":["es.array.iterator","es.string.iterator"],"core-js/es/iterator":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator"],"core-js/es/iterator/concat":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/es/iterator/dispose":["es.iterator.dispose"],"core-js/es/iterator/drop":["es.iterator.constructor","es.iterator.drop","es.object.to-string"],"core-js/es/iterator/every":["es.iterator.constructor","es.iterator.every","es.object.to-string"],"core-js/es/iterator/filter":["es.iterator.constructor","es.iterator.filter","es.object.to-string"],"core-js/es/iterator/find":["es.iterator.constructor","es.iterator.find","es.object.to-string"],"core-js/es/iterator/flat-map":["es.array.iterator","es.iterator.constructor","es.iterator.flat-map","es.object.to-string"],"core-js/es/iterator/for-each":["es.iterator.constructor","es.iterator.for-each","es.object.to-string"],"core-js/es/iterator/from":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator"],"core-js/es/iterator/map":["es.iterator.constructor","es.iterator.map","es.object.to-string"],"core-js/es/iterator/reduce":["es.iterator.constructor","es.iterator.reduce","es.object.to-string"],"core-js/es/iterator/some":["es.iterator.constructor","es.iterator.some","es.object.to-string"],"core-js/es/iterator/take":["es.iterator.constructor","es.iterator.take","es.object.to-string"],"core-js/es/iterator/to-array":["es.iterator.constructor","es.iterator.to-array","es.object.to-string"],"core-js/es/json":["es.date.to-json","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.object.create","es.object.freeze","es.object.keys"],"core-js/es/json/is-raw-json":["es.json.is-raw-json"],"core-js/es/json/parse":["es.json.parse","es.object.keys"],"core-js/es/json/raw-json":["es.json.raw-json","es.object.create","es.object.freeze"],"core-js/es/json/stringify":["es.date.to-json","es.json.stringify"],"core-js/es/json/to-string-tag":["es.json.to-string-tag"],"core-js/es/map":["es.array.iterator","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","es.string.iterator"],"core-js/es/map/get-or-insert":["es.map","es.map.get-or-insert"],"core-js/es/map/get-or-insert-computed":["es.map","es.map.get-or-insert-computed"],"core-js/es/map/group-by":["es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string"],"core-js/es/math":["es.array.iterator","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc"],"core-js/es/math/acosh":["es.math.acosh"],"core-js/es/math/asinh":["es.math.asinh"],"core-js/es/math/atanh":["es.math.atanh"],"core-js/es/math/cbrt":["es.math.cbrt"],"core-js/es/math/clz32":["es.math.clz32"],"core-js/es/math/cosh":["es.math.cosh"],"core-js/es/math/expm1":["es.math.expm1"],"core-js/es/math/f16round":["es.math.f16round"],"core-js/es/math/fround":["es.math.fround"],"core-js/es/math/hypot":["es.math.hypot"],"core-js/es/math/imul":["es.math.imul"],"core-js/es/math/log10":["es.math.log10"],"core-js/es/math/log1p":["es.math.log1p"],"core-js/es/math/log2":["es.math.log2"],"core-js/es/math/sign":["es.math.sign"],"core-js/es/math/sinh":["es.math.sinh"],"core-js/es/math/sum-precise":["es.array.iterator","es.math.sum-precise"],"core-js/es/math/tanh":["es.math.tanh"],"core-js/es/math/to-string-tag":["es.math.to-string-tag"],"core-js/es/math/trunc":["es.math.trunc"],"core-js/es/number":["es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/es/number/constructor":["es.number.constructor"],"core-js/es/number/epsilon":["es.number.epsilon"],"core-js/es/number/is-finite":["es.number.is-finite"],"core-js/es/number/is-integer":["es.number.is-integer"],"core-js/es/number/is-nan":["es.number.is-nan"],"core-js/es/number/is-safe-integer":["es.number.is-safe-integer"],"core-js/es/number/max-safe-integer":["es.number.max-safe-integer"],"core-js/es/number/min-safe-integer":["es.number.min-safe-integer"],"core-js/es/number/parse-float":["es.number.parse-float"],"core-js/es/number/parse-int":["es.number.parse-int"],"core-js/es/number/to-exponential":["es.number.to-exponential"],"core-js/es/number/to-fixed":["es.number.to-fixed"],"core-js/es/number/to-precision":["es.number.to-precision"],"core-js/es/number/virtual":["es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/es/number/virtual/to-exponential":["es.number.to-exponential"],"core-js/es/number/virtual/to-fixed":["es.number.to-fixed"],"core-js/es/number/virtual/to-precision":["es.number.to-precision"],"core-js/es/object":["es.symbol","es.json.to-string-tag","es.math.to-string-tag","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.reflect.to-string-tag"],"core-js/es/object/assign":["es.object.assign"],"core-js/es/object/create":["es.object.create"],"core-js/es/object/define-getter":["es.object.define-getter"],"core-js/es/object/define-properties":["es.object.define-properties"],"core-js/es/object/define-property":["es.object.define-property"],"core-js/es/object/define-setter":["es.object.define-setter"],"core-js/es/object/entries":["es.object.entries"],"core-js/es/object/freeze":["es.object.freeze"],"core-js/es/object/from-entries":["es.array.iterator","es.object.from-entries"],"core-js/es/object/get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/es/object/get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/es/object/get-own-property-names":["es.object.get-own-property-names"],"core-js/es/object/get-own-property-symbols":["es.symbol"],"core-js/es/object/get-prototype-of":["es.object.get-prototype-of"],"core-js/es/object/group-by":["es.object.create","es.object.group-by"],"core-js/es/object/has-own":["es.object.has-own"],"core-js/es/object/is":["es.object.is"],"core-js/es/object/is-extensible":["es.object.is-extensible"],"core-js/es/object/is-frozen":["es.object.is-frozen"],"core-js/es/object/is-sealed":["es.object.is-sealed"],"core-js/es/object/keys":["es.object.keys"],"core-js/es/object/lookup-getter":["es.object.lookup-getter"],"core-js/es/object/lookup-setter":["es.object.lookup-setter"],"core-js/es/object/prevent-extensions":["es.object.prevent-extensions"],"core-js/es/object/proto":["es.object.proto"],"core-js/es/object/seal":["es.object.seal"],"core-js/es/object/set-prototype-of":["es.object.set-prototype-of"],"core-js/es/object/to-string":["es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/es/object/values":["es.object.values"],"core-js/es/parse-float":["es.parse-float"],"core-js/es/parse-int":["es.parse-int"],"core-js/es/promise":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.string.iterator"],"core-js/es/promise/all-settled":["es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.string.iterator"],"core-js/es/promise/any":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.any","es.string.iterator"],"core-js/es/promise/finally":["es.object.to-string","es.promise","es.promise.finally"],"core-js/es/promise/try":["es.object.to-string","es.promise","es.promise.try"],"core-js/es/promise/with-resolvers":["es.promise","es.promise.with-resolvers"],"core-js/es/reflect":["es.object.to-string","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag"],"core-js/es/reflect/apply":["es.reflect.apply"],"core-js/es/reflect/construct":["es.reflect.construct"],"core-js/es/reflect/define-property":["es.reflect.define-property"],"core-js/es/reflect/delete-property":["es.reflect.delete-property"],"core-js/es/reflect/get":["es.reflect.get"],"core-js/es/reflect/get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/es/reflect/get-prototype-of":["es.reflect.get-prototype-of"],"core-js/es/reflect/has":["es.reflect.has"],"core-js/es/reflect/is-extensible":["es.reflect.is-extensible"],"core-js/es/reflect/own-keys":["es.reflect.own-keys"],"core-js/es/reflect/prevent-extensions":["es.reflect.prevent-extensions"],"core-js/es/reflect/set":["es.reflect.set"],"core-js/es/reflect/set-prototype-of":["es.reflect.set-prototype-of"],"core-js/es/reflect/to-string-tag":["es.object.to-string","es.reflect.to-string-tag"],"core-js/es/regexp":["es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.string.match","es.string.replace","es.string.search","es.string.split"],"core-js/es/regexp/constructor":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky"],"core-js/es/regexp/dot-all":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec"],"core-js/es/regexp/escape":["es.regexp.escape"],"core-js/es/regexp/flags":["es.regexp.flags"],"core-js/es/regexp/match":["es.regexp.exec","es.string.match"],"core-js/es/regexp/replace":["es.regexp.exec","es.string.replace"],"core-js/es/regexp/search":["es.regexp.exec","es.string.search"],"core-js/es/regexp/split":["es.regexp.exec","es.string.split"],"core-js/es/regexp/sticky":["es.regexp.constructor","es.regexp.exec","es.regexp.sticky"],"core-js/es/regexp/test":["es.regexp.exec","es.regexp.test"],"core-js/es/regexp/to-string":["es.regexp.to-string"],"core-js/es/set":["es.array.iterator","es.object.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.iterator"],"core-js/es/set/difference":["es.set","es.set.difference.v2"],"core-js/es/set/intersection":["es.set","es.set.intersection.v2"],"core-js/es/set/is-disjoint-from":["es.set","es.set.is-disjoint-from.v2"],"core-js/es/set/is-subset-of":["es.set","es.set.is-subset-of.v2"],"core-js/es/set/is-superset-of":["es.set","es.set.is-superset-of.v2"],"core-js/es/set/symmetric-difference":["es.set","es.set.symmetric-difference.v2"],"core-js/es/set/union":["es.set","es.set.union.v2"],"core-js/es/string":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup"],"core-js/es/string/anchor":["es.string.anchor"],"core-js/es/string/at":["es.string.at-alternative"],"core-js/es/string/big":["es.string.big"],"core-js/es/string/blink":["es.string.blink"],"core-js/es/string/bold":["es.string.bold"],"core-js/es/string/code-point-at":["es.string.code-point-at"],"core-js/es/string/ends-with":["es.string.ends-with"],"core-js/es/string/fixed":["es.string.fixed"],"core-js/es/string/fontcolor":["es.string.fontcolor"],"core-js/es/string/fontsize":["es.string.fontsize"],"core-js/es/string/from-code-point":["es.string.from-code-point"],"core-js/es/string/includes":["es.string.includes"],"core-js/es/string/is-well-formed":["es.string.is-well-formed"],"core-js/es/string/italics":["es.string.italics"],"core-js/es/string/iterator":["es.object.to-string","es.string.iterator"],"core-js/es/string/link":["es.string.link"],"core-js/es/string/match":["es.regexp.exec","es.string.match"],"core-js/es/string/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/es/string/pad-end":["es.string.pad-end"],"core-js/es/string/pad-start":["es.string.pad-start"],"core-js/es/string/raw":["es.string.raw"],"core-js/es/string/repeat":["es.string.repeat"],"core-js/es/string/replace":["es.regexp.exec","es.string.replace"],"core-js/es/string/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/es/string/search":["es.regexp.exec","es.string.search"],"core-js/es/string/small":["es.string.small"],"core-js/es/string/split":["es.regexp.exec","es.string.split"],"core-js/es/string/starts-with":["es.string.starts-with"],"core-js/es/string/strike":["es.string.strike"],"core-js/es/string/sub":["es.string.sub"],"core-js/es/string/substr":["es.string.substr"],"core-js/es/string/sup":["es.string.sup"],"core-js/es/string/to-well-formed":["es.string.to-well-formed"],"core-js/es/string/trim":["es.string.trim"],"core-js/es/string/trim-end":["es.string.trim-end"],"core-js/es/string/trim-left":["es.string.trim-start"],"core-js/es/string/trim-right":["es.string.trim-end"],"core-js/es/string/trim-start":["es.string.trim-start"],"core-js/es/string/virtual":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.includes","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup"],"core-js/es/string/virtual/anchor":["es.string.anchor"],"core-js/es/string/virtual/at":["es.string.at-alternative"],"core-js/es/string/virtual/big":["es.string.big"],"core-js/es/string/virtual/blink":["es.string.blink"],"core-js/es/string/virtual/bold":["es.string.bold"],"core-js/es/string/virtual/code-point-at":["es.string.code-point-at"],"core-js/es/string/virtual/ends-with":["es.string.ends-with"],"core-js/es/string/virtual/fixed":["es.string.fixed"],"core-js/es/string/virtual/fontcolor":["es.string.fontcolor"],"core-js/es/string/virtual/fontsize":["es.string.fontsize"],"core-js/es/string/virtual/includes":["es.string.includes"],"core-js/es/string/virtual/is-well-formed":["es.string.is-well-formed"],"core-js/es/string/virtual/italics":["es.string.italics"],"core-js/es/string/virtual/iterator":["es.object.to-string","es.string.iterator"],"core-js/es/string/virtual/link":["es.string.link"],"core-js/es/string/virtual/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/es/string/virtual/pad-end":["es.string.pad-end"],"core-js/es/string/virtual/pad-start":["es.string.pad-start"],"core-js/es/string/virtual/repeat":["es.string.repeat"],"core-js/es/string/virtual/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/es/string/virtual/small":["es.string.small"],"core-js/es/string/virtual/starts-with":["es.string.starts-with"],"core-js/es/string/virtual/strike":["es.string.strike"],"core-js/es/string/virtual/sub":["es.string.sub"],"core-js/es/string/virtual/substr":["es.string.substr"],"core-js/es/string/virtual/sup":["es.string.sup"],"core-js/es/string/virtual/to-well-formed":["es.string.to-well-formed"],"core-js/es/string/virtual/trim":["es.string.trim"],"core-js/es/string/virtual/trim-end":["es.string.trim-end"],"core-js/es/string/virtual/trim-left":["es.string.trim-start"],"core-js/es/string/virtual/trim-right":["es.string.trim-end"],"core-js/es/string/virtual/trim-start":["es.string.trim-start"],"core-js/es/suppressed-error":[],"core-js/es/symbol":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/es/symbol/async-dispose":["es.symbol.async-dispose"],"core-js/es/symbol/async-iterator":["es.symbol.async-iterator"],"core-js/es/symbol/description":["es.symbol.description"],"core-js/es/symbol/dispose":["es.symbol.dispose"],"core-js/es/symbol/for":["es.symbol"],"core-js/es/symbol/has-instance":["es.symbol.has-instance","es.function.has-instance"],"core-js/es/symbol/is-concat-spreadable":["es.symbol.is-concat-spreadable","es.array.concat"],"core-js/es/symbol/iterator":["es.symbol.iterator","es.array.iterator","es.object.to-string","es.string.iterator"],"core-js/es/symbol/key-for":["es.symbol"],"core-js/es/symbol/match":["es.symbol.match","es.regexp.exec","es.string.match"],"core-js/es/symbol/match-all":["es.symbol.match-all","es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/es/symbol/replace":["es.symbol.replace","es.regexp.exec","es.string.replace"],"core-js/es/symbol/search":["es.symbol.search","es.regexp.exec","es.string.search"],"core-js/es/symbol/species":["es.symbol.species"],"core-js/es/symbol/split":["es.symbol.split","es.regexp.exec","es.string.split"],"core-js/es/symbol/to-primitive":["es.symbol.to-primitive","es.date.to-primitive"],"core-js/es/symbol/to-string-tag":["es.symbol.to-string-tag","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/es/symbol/unscopables":["es.symbol.unscopables"],"core-js/es/typed-array":["es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/at":["es.typed-array.at"],"core-js/es/typed-array/copy-within":["es.typed-array.copy-within"],"core-js/es/typed-array/entries":["es.object.to-string","es.typed-array.iterator"],"core-js/es/typed-array/every":["es.typed-array.every"],"core-js/es/typed-array/fill":["es.typed-array.fill"],"core-js/es/typed-array/filter":["es.typed-array.filter"],"core-js/es/typed-array/find":["es.typed-array.find"],"core-js/es/typed-array/find-index":["es.typed-array.find-index"],"core-js/es/typed-array/find-last":["es.typed-array.find-last"],"core-js/es/typed-array/find-last-index":["es.typed-array.find-last-index"],"core-js/es/typed-array/float32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/float64-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float64-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/for-each":["es.typed-array.for-each"],"core-js/es/typed-array/from":["es.typed-array.from"],"core-js/es/typed-array/from-base64":["es.uint8-array.from-base64"],"core-js/es/typed-array/from-hex":["es.uint8-array.from-hex"],"core-js/es/typed-array/includes":["es.typed-array.includes"],"core-js/es/typed-array/index-of":["es.typed-array.index-of"],"core-js/es/typed-array/int16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/int32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/int8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/iterator":["es.object.to-string","es.typed-array.iterator"],"core-js/es/typed-array/join":["es.typed-array.join"],"core-js/es/typed-array/keys":["es.object.to-string","es.typed-array.iterator"],"core-js/es/typed-array/last-index-of":["es.typed-array.last-index-of"],"core-js/es/typed-array/map":["es.typed-array.map"],"core-js/es/typed-array/methods":["es.object.to-string","es.string.iterator","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/of":["es.typed-array.of"],"core-js/es/typed-array/reduce":["es.typed-array.reduce"],"core-js/es/typed-array/reduce-right":["es.typed-array.reduce-right"],"core-js/es/typed-array/reverse":["es.typed-array.reverse"],"core-js/es/typed-array/set":["es.typed-array.set"],"core-js/es/typed-array/set-from-base64":["es.uint8-array.set-from-base64"],"core-js/es/typed-array/set-from-hex":["es.uint8-array.set-from-hex"],"core-js/es/typed-array/slice":["es.typed-array.slice"],"core-js/es/typed-array/some":["es.typed-array.some"],"core-js/es/typed-array/sort":["es.typed-array.sort"],"core-js/es/typed-array/subarray":["es.typed-array.subarray"],"core-js/es/typed-array/to-base64":["es.uint8-array.to-base64"],"core-js/es/typed-array/to-hex":["es.uint8-array.to-hex"],"core-js/es/typed-array/to-locale-string":["es.typed-array.to-locale-string"],"core-js/es/typed-array/to-reversed":["es.typed-array.to-reversed"],"core-js/es/typed-array/to-sorted":["es.typed-array.sort","es.typed-array.to-sorted"],"core-js/es/typed-array/to-string":["es.typed-array.to-string"],"core-js/es/typed-array/uint16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/uint32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/uint8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/uint8-clamped-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-clamped-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/es/typed-array/values":["es.object.to-string","es.typed-array.iterator"],"core-js/es/typed-array/with":["es.typed-array.with"],"core-js/es/unescape":["es.unescape"],"core-js/es/weak-map":["es.array.iterator","es.object.to-string","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed"],"core-js/es/weak-map/get-or-insert":["es.weak-map","es.weak-map.get-or-insert"],"core-js/es/weak-map/get-or-insert-computed":["es.weak-map","es.weak-map.get-or-insert-computed"],"core-js/es/weak-set":["es.array.iterator","es.object.to-string","es.weak-set"],"core-js/features":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/features/aggregate-error":[],"core-js/features/array":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.map","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with"],"core-js/features/array-buffer":["es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/features/array-buffer/constructor":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/features/array-buffer/detached":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","esnext.array-buffer.detached"],"core-js/features/array-buffer/is-view":["es.array-buffer.is-view"],"core-js/features/array-buffer/slice":["es.array-buffer.slice"],"core-js/features/array-buffer/transfer":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer","esnext.array-buffer.transfer"],"core-js/features/array-buffer/transfer-to-fixed-length":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer-to-fixed-length","esnext.array-buffer.transfer-to-fixed-length"],"core-js/features/array/at":["es.array.at","esnext.array.at"],"core-js/features/array/concat":["es.array.concat"],"core-js/features/array/copy-within":["es.array.copy-within"],"core-js/features/array/entries":["es.array.iterator","es.object.to-string"],"core-js/features/array/every":["es.array.every"],"core-js/features/array/fill":["es.array.fill"],"core-js/features/array/filter":["es.array.filter"],"core-js/features/array/filter-out":["esnext.array.filter-out"],"core-js/features/array/filter-reject":["esnext.array.filter-reject"],"core-js/features/array/find":["es.array.find"],"core-js/features/array/find-index":["es.array.find-index"],"core-js/features/array/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/features/array/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/features/array/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/features/array/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/features/array/for-each":["es.array.for-each"],"core-js/features/array/from":["es.array.from","es.string.iterator"],"core-js/features/array/from-async":["es.array.iterator","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async"],"core-js/features/array/group":["esnext.array.group"],"core-js/features/array/group-by":["esnext.array.group-by"],"core-js/features/array/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/features/array/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/features/array/includes":["es.array.includes"],"core-js/features/array/index-of":["es.array.index-of"],"core-js/features/array/is-array":["es.array.is-array"],"core-js/features/array/is-template-object":["esnext.array.is-template-object"],"core-js/features/array/iterator":["es.array.iterator","es.object.to-string"],"core-js/features/array/join":["es.array.join"],"core-js/features/array/keys":["es.array.iterator","es.object.to-string"],"core-js/features/array/last-index":["esnext.array.last-index"],"core-js/features/array/last-index-of":["es.array.last-index-of"],"core-js/features/array/last-item":["esnext.array.last-item"],"core-js/features/array/map":["es.array.map"],"core-js/features/array/of":["es.array.of"],"core-js/features/array/push":["es.array.push"],"core-js/features/array/reduce":["es.array.reduce"],"core-js/features/array/reduce-right":["es.array.reduce-right"],"core-js/features/array/reverse":["es.array.reverse"],"core-js/features/array/slice":["es.array.slice"],"core-js/features/array/some":["es.array.some"],"core-js/features/array/sort":["es.array.sort"],"core-js/features/array/splice":["es.array.splice"],"core-js/features/array/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/features/array/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/features/array/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/features/array/unique-by":["es.map","esnext.array.unique-by"],"core-js/features/array/unshift":["es.array.unshift"],"core-js/features/array/values":["es.array.iterator","es.object.to-string"],"core-js/features/array/virtual":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.includes","es.array.index-of","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.map","es.object.to-string","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with"],"core-js/features/array/virtual/at":["es.array.at","esnext.array.at"],"core-js/features/array/virtual/concat":["es.array.concat"],"core-js/features/array/virtual/copy-within":["es.array.copy-within"],"core-js/features/array/virtual/entries":["es.array.iterator","es.object.to-string"],"core-js/features/array/virtual/every":["es.array.every"],"core-js/features/array/virtual/fill":["es.array.fill"],"core-js/features/array/virtual/filter":["es.array.filter"],"core-js/features/array/virtual/filter-out":["esnext.array.filter-out"],"core-js/features/array/virtual/filter-reject":["esnext.array.filter-reject"],"core-js/features/array/virtual/find":["es.array.find"],"core-js/features/array/virtual/find-index":["es.array.find-index"],"core-js/features/array/virtual/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/features/array/virtual/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/features/array/virtual/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/features/array/virtual/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/features/array/virtual/for-each":["es.array.for-each"],"core-js/features/array/virtual/group":["esnext.array.group"],"core-js/features/array/virtual/group-by":["esnext.array.group-by"],"core-js/features/array/virtual/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/features/array/virtual/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/features/array/virtual/includes":["es.array.includes"],"core-js/features/array/virtual/index-of":["es.array.index-of"],"core-js/features/array/virtual/iterator":["es.array.iterator","es.object.to-string"],"core-js/features/array/virtual/join":["es.array.join"],"core-js/features/array/virtual/keys":["es.array.iterator","es.object.to-string"],"core-js/features/array/virtual/last-index-of":["es.array.last-index-of"],"core-js/features/array/virtual/map":["es.array.map"],"core-js/features/array/virtual/push":["es.array.push"],"core-js/features/array/virtual/reduce":["es.array.reduce"],"core-js/features/array/virtual/reduce-right":["es.array.reduce-right"],"core-js/features/array/virtual/reverse":["es.array.reverse"],"core-js/features/array/virtual/slice":["es.array.slice"],"core-js/features/array/virtual/some":["es.array.some"],"core-js/features/array/virtual/sort":["es.array.sort"],"core-js/features/array/virtual/splice":["es.array.splice"],"core-js/features/array/virtual/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/features/array/virtual/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/features/array/virtual/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/features/array/virtual/unique-by":["es.map","esnext.array.unique-by"],"core-js/features/array/virtual/unshift":["es.array.unshift"],"core-js/features/array/virtual/values":["es.array.iterator","es.object.to-string"],"core-js/features/array/virtual/with":["es.array.with","esnext.array.with"],"core-js/features/array/with":["es.array.with","esnext.array.with"],"core-js/features/async-disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/features/async-disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/features/async-iterator":["es.array.iterator","es.object.to-string","es.promise","es.async-iterator.async-dispose","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/features/async-iterator/as-indexed-pairs":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs"],"core-js/features/async-iterator/async-dispose":["es.object.to-string","es.promise","es.async-iterator.async-dispose","esnext.async-iterator.async-dispose"],"core-js/features/async-iterator/drop":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.drop"],"core-js/features/async-iterator/every":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.every"],"core-js/features/async-iterator/filter":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.filter"],"core-js/features/async-iterator/find":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.find"],"core-js/features/async-iterator/flat-map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.flat-map"],"core-js/features/async-iterator/for-each":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.for-each"],"core-js/features/async-iterator/from":["es.array.iterator","es.object.to-string","es.promise","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/features/async-iterator/indexed":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.indexed"],"core-js/features/async-iterator/map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.map"],"core-js/features/async-iterator/reduce":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.reduce"],"core-js/features/async-iterator/some":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.some"],"core-js/features/async-iterator/take":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.take"],"core-js/features/async-iterator/to-array":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.to-array"],"core-js/features/atob":["es.error.to-string","es.object.to-string","web.atob","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/features/bigint":["es.object.to-string","esnext.bigint.range"],"core-js/features/bigint/range":["es.object.to-string","esnext.bigint.range"],"core-js/features/btoa":["es.error.to-string","es.object.to-string","web.btoa","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/features/clear-immediate":["web.immediate"],"core-js/features/composite-key":["esnext.composite-key"],"core-js/features/composite-symbol":["es.symbol","esnext.composite-symbol"],"core-js/features/data-view":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.object.to-string","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped"],"core-js/features/data-view/get-float16":["es.data-view.get-float16","esnext.data-view.get-float16"],"core-js/features/data-view/get-uint8-clamped":["esnext.data-view.get-uint8-clamped"],"core-js/features/data-view/set-float16":["es.data-view.set-float16","esnext.data-view.set-float16"],"core-js/features/data-view/set-uint8-clamped":["esnext.data-view.set-uint8-clamped"],"core-js/features/date":["es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string"],"core-js/features/date/get-year":["es.date.get-year"],"core-js/features/date/now":["es.date.now"],"core-js/features/date/set-year":["es.date.set-year"],"core-js/features/date/to-gmt-string":["es.date.to-gmt-string"],"core-js/features/date/to-iso-string":["es.date.to-iso-string","es.date.to-json"],"core-js/features/date/to-json":["es.date.to-json"],"core-js/features/date/to-primitive":["es.date.to-primitive"],"core-js/features/date/to-string":["es.date.to-string"],"core-js/features/disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/features/disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/features/dom-collections":["es.array.iterator","es.object.to-string","web.dom-collections.for-each","web.dom-collections.iterator"],"core-js/features/dom-collections/for-each":["web.dom-collections.for-each"],"core-js/features/dom-collections/iterator":["es.object.to-string","web.dom-collections.iterator"],"core-js/features/dom-exception":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/features/dom-exception/constructor":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack"],"core-js/features/dom-exception/to-string-tag":["web.dom-exception.to-string-tag"],"core-js/features/error":["es.error.cause","es.error.is-error","es.error.to-string","es.object.create","esnext.error.is-error"],"core-js/features/error/constructor":["es.error.cause"],"core-js/features/error/is-error":["es.error.is-error","es.object.create","esnext.error.is-error"],"core-js/features/error/to-string":["es.error.to-string"],"core-js/features/escape":["es.escape"],"core-js/features/function":["es.function.bind","es.function.has-instance","es.function.name","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this"],"core-js/features/function/bind":["es.function.bind"],"core-js/features/function/demethodize":["esnext.function.demethodize"],"core-js/features/function/has-instance":["es.function.has-instance"],"core-js/features/function/is-callable":["esnext.function.is-callable"],"core-js/features/function/is-constructor":["esnext.function.is-constructor"],"core-js/features/function/metadata":["esnext.function.metadata"],"core-js/features/function/name":["es.function.name"],"core-js/features/function/un-this":["esnext.function.un-this"],"core-js/features/function/virtual":["es.function.bind","esnext.function.demethodize","esnext.function.un-this"],"core-js/features/function/virtual/bind":["es.function.bind"],"core-js/features/function/virtual/demethodize":["esnext.function.demethodize"],"core-js/features/function/virtual/un-this":["esnext.function.un-this"],"core-js/features/get-iterator":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/features/get-iterator-method":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/features/global-this":["es.global-this","esnext.global-this"],"core-js/features/instance/at":["es.array.at","es.string.at-alternative","esnext.array.at","esnext.string.at"],"core-js/features/instance/bind":["es.function.bind"],"core-js/features/instance/clamp":["esnext.number.clamp"],"core-js/features/instance/code-point-at":["es.string.code-point-at"],"core-js/features/instance/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/features/instance/concat":["es.array.concat"],"core-js/features/instance/copy-within":["es.array.copy-within"],"core-js/features/instance/demethodize":["esnext.function.demethodize"],"core-js/features/instance/ends-with":["es.string.ends-with"],"core-js/features/instance/entries":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/features/instance/every":["es.array.every"],"core-js/features/instance/fill":["es.array.fill"],"core-js/features/instance/filter":["es.array.filter"],"core-js/features/instance/filter-out":["esnext.array.filter-out"],"core-js/features/instance/filter-reject":["esnext.array.filter-reject"],"core-js/features/instance/find":["es.array.find"],"core-js/features/instance/find-index":["es.array.find-index"],"core-js/features/instance/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/features/instance/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/features/instance/flags":["es.regexp.flags"],"core-js/features/instance/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/features/instance/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/features/instance/for-each":["es.array.for-each","web.dom-collections.for-each"],"core-js/features/instance/group":["esnext.array.group"],"core-js/features/instance/group-by":["esnext.array.group-by"],"core-js/features/instance/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/features/instance/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/features/instance/includes":["es.array.includes","es.string.includes"],"core-js/features/instance/index-of":["es.array.index-of"],"core-js/features/instance/is-well-formed":["es.string.is-well-formed"],"core-js/features/instance/keys":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/features/instance/last-index-of":["es.array.last-index-of"],"core-js/features/instance/map":["es.array.map"],"core-js/features/instance/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/features/instance/pad-end":["es.string.pad-end"],"core-js/features/instance/pad-start":["es.string.pad-start"],"core-js/features/instance/push":["es.array.push"],"core-js/features/instance/reduce":["es.array.reduce"],"core-js/features/instance/reduce-right":["es.array.reduce-right"],"core-js/features/instance/repeat":["es.string.repeat"],"core-js/features/instance/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/features/instance/reverse":["es.array.reverse"],"core-js/features/instance/slice":["es.array.slice"],"core-js/features/instance/some":["es.array.some"],"core-js/features/instance/sort":["es.array.sort"],"core-js/features/instance/splice":["es.array.splice"],"core-js/features/instance/starts-with":["es.string.starts-with"],"core-js/features/instance/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/features/instance/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/features/instance/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/features/instance/to-well-formed":["es.string.to-well-formed"],"core-js/features/instance/trim":["es.string.trim"],"core-js/features/instance/trim-end":["es.string.trim-end"],"core-js/features/instance/trim-left":["es.string.trim-start"],"core-js/features/instance/trim-right":["es.string.trim-end"],"core-js/features/instance/trim-start":["es.string.trim-start"],"core-js/features/instance/un-this":["esnext.function.un-this"],"core-js/features/instance/unique-by":["es.map","esnext.array.unique-by"],"core-js/features/instance/unshift":["es.array.unshift"],"core-js/features/instance/values":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/features/instance/with":["es.array.with","esnext.array.with"],"core-js/features/is-iterable":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/features/iterator":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/features/iterator/as-indexed-pairs":["es.object.to-string","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs"],"core-js/features/iterator/chunks":["es.iterator.constructor","es.object.to-string","esnext.iterator.chunks"],"core-js/features/iterator/concat":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.sliding","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/features/iterator/dispose":["esnext.iterator.dispose"],"core-js/features/iterator/drop":["es.iterator.constructor","es.iterator.drop","es.object.to-string","esnext.iterator.constructor","esnext.iterator.drop"],"core-js/features/iterator/every":["es.iterator.constructor","es.iterator.every","es.object.to-string","esnext.iterator.constructor","esnext.iterator.every"],"core-js/features/iterator/filter":["es.iterator.constructor","es.iterator.filter","es.object.to-string","esnext.iterator.constructor","esnext.iterator.filter"],"core-js/features/iterator/find":["es.iterator.constructor","es.iterator.find","es.object.to-string","esnext.iterator.constructor","esnext.iterator.find"],"core-js/features/iterator/flat-map":["es.array.iterator","es.iterator.constructor","es.iterator.flat-map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.flat-map","web.dom-collections.iterator"],"core-js/features/iterator/for-each":["es.iterator.constructor","es.iterator.for-each","es.object.to-string","esnext.iterator.constructor","esnext.iterator.for-each"],"core-js/features/iterator/from":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.chunks","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/features/iterator/indexed":["es.object.to-string","esnext.iterator.constructor","esnext.iterator.indexed"],"core-js/features/iterator/map":["es.iterator.constructor","es.iterator.map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.map"],"core-js/features/iterator/range":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.constructor","esnext.iterator.chunks","esnext.iterator.range","esnext.iterator.sliding","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/features/iterator/reduce":["es.iterator.constructor","es.iterator.reduce","es.object.to-string","esnext.iterator.constructor","esnext.iterator.reduce"],"core-js/features/iterator/sliding":["es.iterator.constructor","es.object.to-string","esnext.iterator.sliding"],"core-js/features/iterator/some":["es.iterator.constructor","es.iterator.some","es.object.to-string","esnext.iterator.constructor","esnext.iterator.some"],"core-js/features/iterator/take":["es.iterator.constructor","es.iterator.take","es.object.to-string","esnext.iterator.constructor","esnext.iterator.take"],"core-js/features/iterator/to-array":["es.iterator.constructor","es.iterator.to-array","es.object.to-string","esnext.iterator.constructor","esnext.iterator.to-array"],"core-js/features/iterator/to-async":["es.iterator.constructor","es.object.to-string","es.promise","esnext.iterator.constructor","esnext.iterator.to-async"],"core-js/features/iterator/windows":["es.iterator.constructor","es.object.to-string","esnext.iterator.windows"],"core-js/features/iterator/zip":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.chunks","esnext.iterator.sliding","esnext.iterator.windows","esnext.iterator.zip","web.dom-collections.iterator"],"core-js/features/iterator/zip-keyed":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.reflect.own-keys","es.string.iterator","esnext.iterator.chunks","esnext.iterator.sliding","esnext.iterator.windows","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/features/json":["es.date.to-json","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.object.create","es.object.freeze","es.object.keys","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json"],"core-js/features/json/is-raw-json":["es.json.is-raw-json","esnext.json.is-raw-json"],"core-js/features/json/parse":["es.json.parse","es.object.keys","esnext.json.parse"],"core-js/features/json/raw-json":["es.json.raw-json","es.json.stringify","es.object.create","es.object.freeze","esnext.json.raw-json"],"core-js/features/json/stringify":["es.date.to-json","es.json.stringify"],"core-js/features/json/to-string-tag":["es.json.to-string-tag"],"core-js/features/map":["es.array.iterator","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","es.string.iterator","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","web.dom-collections.iterator"],"core-js/features/map/delete-all":["es.map","esnext.map.delete-all"],"core-js/features/map/emplace":["es.map","esnext.map.emplace"],"core-js/features/map/every":["es.map","esnext.map.every"],"core-js/features/map/filter":["es.map","esnext.map.filter"],"core-js/features/map/find":["es.map","esnext.map.find"],"core-js/features/map/find-key":["es.map","esnext.map.find-key"],"core-js/features/map/from":["es.array.iterator","es.map","es.object.to-string","es.string.iterator","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update","web.dom-collections.iterator"],"core-js/features/map/get-or-insert":["es.map","es.map.get-or-insert","esnext.map.get-or-insert"],"core-js/features/map/get-or-insert-computed":["es.map","es.map.get-or-insert-computed","esnext.map.get-or-insert-computed"],"core-js/features/map/group-by":["es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/features/map/includes":["es.map","esnext.map.includes"],"core-js/features/map/key-by":["es.map","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/features/map/key-of":["es.map","esnext.map.key-of"],"core-js/features/map/map-keys":["es.map","esnext.map.map-keys"],"core-js/features/map/map-values":["es.map","esnext.map.map-values"],"core-js/features/map/merge":["es.map","esnext.map.merge"],"core-js/features/map/of":["es.array.iterator","es.map","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/features/map/reduce":["es.map","esnext.map.reduce"],"core-js/features/map/some":["es.map","esnext.map.some"],"core-js/features/map/update":["es.map","esnext.map.update"],"core-js/features/map/update-or-insert":["es.map","esnext.map.update-or-insert"],"core-js/features/map/upsert":["es.map","esnext.map.upsert"],"core-js/features/math":["es.array.iterator","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh"],"core-js/features/math/acosh":["es.math.acosh"],"core-js/features/math/asinh":["es.math.asinh"],"core-js/features/math/atanh":["es.math.atanh"],"core-js/features/math/cbrt":["es.math.cbrt"],"core-js/features/math/clamp":["esnext.math.clamp"],"core-js/features/math/clz32":["es.math.clz32"],"core-js/features/math/cosh":["es.math.cosh"],"core-js/features/math/deg-per-rad":["esnext.math.deg-per-rad"],"core-js/features/math/degrees":["esnext.math.degrees"],"core-js/features/math/expm1":["es.math.expm1"],"core-js/features/math/f16round":["es.math.f16round","esnext.math.f16round"],"core-js/features/math/fround":["es.math.fround"],"core-js/features/math/fscale":["esnext.math.fscale"],"core-js/features/math/hypot":["es.math.hypot"],"core-js/features/math/iaddh":["esnext.math.iaddh"],"core-js/features/math/imul":["es.math.imul"],"core-js/features/math/imulh":["esnext.math.imulh"],"core-js/features/math/isubh":["esnext.math.isubh"],"core-js/features/math/log10":["es.math.log10"],"core-js/features/math/log1p":["es.math.log1p"],"core-js/features/math/log2":["es.math.log2"],"core-js/features/math/rad-per-deg":["esnext.math.rad-per-deg"],"core-js/features/math/radians":["esnext.math.radians"],"core-js/features/math/scale":["esnext.math.scale"],"core-js/features/math/seeded-prng":["esnext.math.seeded-prng"],"core-js/features/math/sign":["es.math.sign"],"core-js/features/math/signbit":["esnext.math.signbit"],"core-js/features/math/sinh":["es.math.sinh"],"core-js/features/math/sum-precise":["es.array.iterator","es.math.sum-precise","esnext.math.sum-precise"],"core-js/features/math/tanh":["es.math.tanh"],"core-js/features/math/to-string-tag":["es.math.to-string-tag"],"core-js/features/math/trunc":["es.math.trunc"],"core-js/features/math/umulh":["esnext.math.umulh"],"core-js/features/number":["es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.to-string","esnext.number.clamp","esnext.number.from-string","esnext.number.range"],"core-js/features/number/clamp":["esnext.number.clamp"],"core-js/features/number/constructor":["es.number.constructor"],"core-js/features/number/epsilon":["es.number.epsilon"],"core-js/features/number/from-string":["esnext.number.from-string"],"core-js/features/number/is-finite":["es.number.is-finite"],"core-js/features/number/is-integer":["es.number.is-integer"],"core-js/features/number/is-nan":["es.number.is-nan"],"core-js/features/number/is-safe-integer":["es.number.is-safe-integer"],"core-js/features/number/max-safe-integer":["es.number.max-safe-integer"],"core-js/features/number/min-safe-integer":["es.number.min-safe-integer"],"core-js/features/number/parse-float":["es.number.parse-float"],"core-js/features/number/parse-int":["es.number.parse-int"],"core-js/features/number/range":["es.object.to-string","esnext.number.range"],"core-js/features/number/to-exponential":["es.number.to-exponential"],"core-js/features/number/to-fixed":["es.number.to-fixed"],"core-js/features/number/to-precision":["es.number.to-precision"],"core-js/features/number/virtual":["es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/features/number/virtual/clamp":["esnext.number.clamp"],"core-js/features/number/virtual/to-exponential":["es.number.to-exponential"],"core-js/features/number/virtual/to-fixed":["es.number.to-fixed"],"core-js/features/number/virtual/to-precision":["es.number.to-precision"],"core-js/features/object":["es.symbol","es.json.to-string-tag","es.math.to-string-tag","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.reflect.to-string-tag","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","web.dom-collections.iterator"],"core-js/features/object/assign":["es.object.assign"],"core-js/features/object/create":["es.object.create"],"core-js/features/object/define-getter":["es.object.define-getter"],"core-js/features/object/define-properties":["es.object.define-properties"],"core-js/features/object/define-property":["es.object.define-property"],"core-js/features/object/define-setter":["es.object.define-setter"],"core-js/features/object/entries":["es.object.entries"],"core-js/features/object/freeze":["es.object.freeze"],"core-js/features/object/from-entries":["es.array.iterator","es.object.from-entries","web.dom-collections.iterator"],"core-js/features/object/get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/features/object/get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/features/object/get-own-property-names":["es.object.get-own-property-names"],"core-js/features/object/get-own-property-symbols":["es.symbol"],"core-js/features/object/get-prototype-of":["es.object.get-prototype-of"],"core-js/features/object/group-by":["es.object.create","es.object.group-by","esnext.object.group-by"],"core-js/features/object/has-own":["es.object.has-own","esnext.object.has-own"],"core-js/features/object/is":["es.object.is"],"core-js/features/object/is-extensible":["es.object.is-extensible"],"core-js/features/object/is-frozen":["es.object.is-frozen"],"core-js/features/object/is-sealed":["es.object.is-sealed"],"core-js/features/object/iterate-entries":["esnext.object.iterate-entries"],"core-js/features/object/iterate-keys":["esnext.object.iterate-keys"],"core-js/features/object/iterate-values":["esnext.object.iterate-values"],"core-js/features/object/keys":["es.object.keys"],"core-js/features/object/lookup-getter":["es.object.lookup-getter"],"core-js/features/object/lookup-setter":["es.object.lookup-setter"],"core-js/features/object/prevent-extensions":["es.object.prevent-extensions"],"core-js/features/object/proto":["es.object.proto"],"core-js/features/object/seal":["es.object.seal"],"core-js/features/object/set-prototype-of":["es.object.set-prototype-of"],"core-js/features/object/to-string":["es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/features/object/values":["es.object.values"],"core-js/features/observable":["es.object.to-string","es.string.iterator","esnext.observable","esnext.symbol.observable","web.dom-collections.iterator"],"core-js/features/parse-float":["es.parse-float"],"core-js/features/parse-int":["es.parse-int"],"core-js/features/promise":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.string.iterator","esnext.aggregate-error","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","web.dom-collections.iterator"],"core-js/features/promise/all-settled":["es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.string.iterator","esnext.promise.all-settled","web.dom-collections.iterator"],"core-js/features/promise/any":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.any","es.string.iterator","esnext.aggregate-error","esnext.promise.any","web.dom-collections.iterator"],"core-js/features/promise/finally":["es.object.to-string","es.promise","es.promise.finally"],"core-js/features/promise/try":["es.object.to-string","es.promise","es.promise.try","esnext.promise.try"],"core-js/features/promise/with-resolvers":["es.promise","es.promise.with-resolvers","esnext.promise.with-resolvers"],"core-js/features/queue-microtask":["web.queue-microtask"],"core-js/features/reflect":["es.object.to-string","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata"],"core-js/features/reflect/apply":["es.reflect.apply"],"core-js/features/reflect/construct":["es.reflect.construct"],"core-js/features/reflect/define-metadata":["esnext.reflect.define-metadata"],"core-js/features/reflect/define-property":["es.reflect.define-property"],"core-js/features/reflect/delete-metadata":["esnext.reflect.delete-metadata"],"core-js/features/reflect/delete-property":["es.reflect.delete-property"],"core-js/features/reflect/get":["es.reflect.get"],"core-js/features/reflect/get-metadata":["esnext.reflect.get-metadata"],"core-js/features/reflect/get-metadata-keys":["esnext.reflect.get-metadata-keys"],"core-js/features/reflect/get-own-metadata":["esnext.reflect.get-own-metadata"],"core-js/features/reflect/get-own-metadata-keys":["esnext.reflect.get-own-metadata-keys"],"core-js/features/reflect/get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/features/reflect/get-prototype-of":["es.reflect.get-prototype-of"],"core-js/features/reflect/has":["es.reflect.has"],"core-js/features/reflect/has-metadata":["esnext.reflect.has-metadata"],"core-js/features/reflect/has-own-metadata":["esnext.reflect.has-own-metadata"],"core-js/features/reflect/is-extensible":["es.reflect.is-extensible"],"core-js/features/reflect/metadata":["esnext.reflect.metadata"],"core-js/features/reflect/own-keys":["es.reflect.own-keys"],"core-js/features/reflect/prevent-extensions":["es.reflect.prevent-extensions"],"core-js/features/reflect/set":["es.reflect.set"],"core-js/features/reflect/set-prototype-of":["es.reflect.set-prototype-of"],"core-js/features/reflect/to-string-tag":["es.reflect.to-string-tag"],"core-js/features/regexp":["es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.string.match","es.string.replace","es.string.search","es.string.split","esnext.regexp.escape"],"core-js/features/regexp/constructor":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky"],"core-js/features/regexp/dot-all":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec"],"core-js/features/regexp/escape":["es.regexp.escape","esnext.regexp.escape"],"core-js/features/regexp/flags":["es.regexp.flags"],"core-js/features/regexp/match":["es.regexp.exec","es.string.match"],"core-js/features/regexp/replace":["es.regexp.exec","es.string.replace"],"core-js/features/regexp/search":["es.regexp.exec","es.string.search"],"core-js/features/regexp/split":["es.regexp.exec","es.string.split"],"core-js/features/regexp/sticky":["es.regexp.constructor","es.regexp.exec","es.regexp.sticky"],"core-js/features/regexp/test":["es.regexp.exec","es.regexp.test"],"core-js/features/regexp/to-string":["es.regexp.to-string"],"core-js/features/self":["web.self"],"core-js/features/set":["es.array.iterator","es.object.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.iterator","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","web.dom-collections.iterator"],"core-js/features/set-immediate":["web.immediate"],"core-js/features/set-interval":["web.timers"],"core-js/features/set-timeout":["web.timers"],"core-js/features/set/add-all":["es.set","esnext.set.add-all"],"core-js/features/set/delete-all":["es.set","esnext.set.delete-all"],"core-js/features/set/difference":["es.array.iterator","es.set","es.set.difference.v2","es.string.iterator","esnext.set.difference.v2","esnext.set.difference","web.dom-collections.iterator"],"core-js/features/set/every":["es.set","esnext.set.every"],"core-js/features/set/filter":["es.set","esnext.set.filter"],"core-js/features/set/find":["es.set","esnext.set.find"],"core-js/features/set/from":["es.array.iterator","es.object.to-string","es.set","es.string.iterator","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.join","esnext.set.map","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.union.v2","web.dom-collections.iterator"],"core-js/features/set/intersection":["es.array.iterator","es.set","es.set.intersection.v2","es.string.iterator","esnext.set.intersection.v2","esnext.set.intersection","web.dom-collections.iterator"],"core-js/features/set/is-disjoint-from":["es.array.iterator","es.set","es.set.is-disjoint-from.v2","es.string.iterator","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","web.dom-collections.iterator"],"core-js/features/set/is-subset-of":["es.array.iterator","es.set","es.set.is-subset-of.v2","es.string.iterator","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","web.dom-collections.iterator"],"core-js/features/set/is-superset-of":["es.array.iterator","es.set","es.set.is-superset-of.v2","es.string.iterator","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","web.dom-collections.iterator"],"core-js/features/set/join":["es.set","esnext.set.join"],"core-js/features/set/map":["es.set","esnext.set.map"],"core-js/features/set/of":["es.array.iterator","es.object.to-string","es.set","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.union.v2"],"core-js/features/set/reduce":["es.set","esnext.set.reduce"],"core-js/features/set/some":["es.set","esnext.set.some"],"core-js/features/set/symmetric-difference":["es.array.iterator","es.set","es.set.symmetric-difference.v2","es.string.iterator","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","web.dom-collections.iterator"],"core-js/features/set/union":["es.array.iterator","es.set","es.set.union.v2","es.string.iterator","esnext.set.union.v2","esnext.set.union","web.dom-collections.iterator"],"core-js/features/string":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.weak-map","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed"],"core-js/features/string/anchor":["es.string.anchor"],"core-js/features/string/at":["es.string.at-alternative","esnext.string.at"],"core-js/features/string/big":["es.string.big"],"core-js/features/string/blink":["es.string.blink"],"core-js/features/string/bold":["es.string.bold"],"core-js/features/string/code-point-at":["es.string.code-point-at"],"core-js/features/string/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/features/string/cooked":["esnext.string.cooked"],"core-js/features/string/dedent":["es.string.from-code-point","es.weak-map","esnext.string.dedent"],"core-js/features/string/ends-with":["es.string.ends-with"],"core-js/features/string/fixed":["es.string.fixed"],"core-js/features/string/fontcolor":["es.string.fontcolor"],"core-js/features/string/fontsize":["es.string.fontsize"],"core-js/features/string/from-code-point":["es.string.from-code-point"],"core-js/features/string/includes":["es.string.includes"],"core-js/features/string/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/features/string/italics":["es.string.italics"],"core-js/features/string/iterator":["es.object.to-string","es.string.iterator"],"core-js/features/string/link":["es.string.link"],"core-js/features/string/match":["es.regexp.exec","es.string.match"],"core-js/features/string/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/features/string/pad-end":["es.string.pad-end"],"core-js/features/string/pad-start":["es.string.pad-start"],"core-js/features/string/raw":["es.string.raw"],"core-js/features/string/repeat":["es.string.repeat"],"core-js/features/string/replace":["es.regexp.exec","es.string.replace"],"core-js/features/string/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/features/string/search":["es.regexp.exec","es.string.search"],"core-js/features/string/small":["es.string.small"],"core-js/features/string/split":["es.regexp.exec","es.string.split"],"core-js/features/string/starts-with":["es.string.starts-with"],"core-js/features/string/strike":["es.string.strike"],"core-js/features/string/sub":["es.string.sub"],"core-js/features/string/substr":["es.string.substr"],"core-js/features/string/sup":["es.string.sup"],"core-js/features/string/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/features/string/trim":["es.string.trim"],"core-js/features/string/trim-end":["es.string.trim-end"],"core-js/features/string/trim-left":["es.string.trim-start"],"core-js/features/string/trim-right":["es.string.trim-end"],"core-js/features/string/trim-start":["es.string.trim-start"],"core-js/features/string/virtual":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.includes","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","esnext.string.at","esnext.string.code-points","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed"],"core-js/features/string/virtual/anchor":["es.string.anchor"],"core-js/features/string/virtual/at":["es.string.at-alternative","esnext.string.at"],"core-js/features/string/virtual/big":["es.string.big"],"core-js/features/string/virtual/blink":["es.string.blink"],"core-js/features/string/virtual/bold":["es.string.bold"],"core-js/features/string/virtual/code-point-at":["es.string.code-point-at"],"core-js/features/string/virtual/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/features/string/virtual/ends-with":["es.string.ends-with"],"core-js/features/string/virtual/fixed":["es.string.fixed"],"core-js/features/string/virtual/fontcolor":["es.string.fontcolor"],"core-js/features/string/virtual/fontsize":["es.string.fontsize"],"core-js/features/string/virtual/includes":["es.string.includes"],"core-js/features/string/virtual/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/features/string/virtual/italics":["es.string.italics"],"core-js/features/string/virtual/iterator":["es.object.to-string","es.string.iterator"],"core-js/features/string/virtual/link":["es.string.link"],"core-js/features/string/virtual/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/features/string/virtual/pad-end":["es.string.pad-end"],"core-js/features/string/virtual/pad-start":["es.string.pad-start"],"core-js/features/string/virtual/repeat":["es.string.repeat"],"core-js/features/string/virtual/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/features/string/virtual/small":["es.string.small"],"core-js/features/string/virtual/starts-with":["es.string.starts-with"],"core-js/features/string/virtual/strike":["es.string.strike"],"core-js/features/string/virtual/sub":["es.string.sub"],"core-js/features/string/virtual/substr":["es.string.substr"],"core-js/features/string/virtual/sup":["es.string.sup"],"core-js/features/string/virtual/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/features/string/virtual/trim":["es.string.trim"],"core-js/features/string/virtual/trim-end":["es.string.trim-end"],"core-js/features/string/virtual/trim-left":["es.string.trim-start"],"core-js/features/string/virtual/trim-right":["es.string.trim-end"],"core-js/features/string/virtual/trim-start":["es.string.trim-start"],"core-js/features/structured-clone":["es.error.to-string","es.array.iterator","es.map","es.object.keys","es.object.to-string","es.set","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.structured-clone"],"core-js/features/suppressed-error":[],"core-js/features/symbol":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag","esnext.function.metadata","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","web.dom-collections.iterator"],"core-js/features/symbol/async-dispose":["es.symbol.async-dispose","esnext.symbol.async-dispose"],"core-js/features/symbol/async-iterator":["es.symbol.async-iterator"],"core-js/features/symbol/custom-matcher":["esnext.symbol.custom-matcher"],"core-js/features/symbol/description":["es.symbol.description"],"core-js/features/symbol/dispose":["es.symbol.dispose","esnext.symbol.dispose"],"core-js/features/symbol/for":["es.symbol"],"core-js/features/symbol/has-instance":["es.symbol.has-instance","es.function.has-instance"],"core-js/features/symbol/is-concat-spreadable":["es.symbol.is-concat-spreadable","es.array.concat"],"core-js/features/symbol/is-registered":["es.symbol","esnext.symbol.is-registered"],"core-js/features/symbol/is-registered-symbol":["es.symbol","esnext.symbol.is-registered-symbol"],"core-js/features/symbol/is-well-known":["es.symbol","esnext.symbol.is-well-known"],"core-js/features/symbol/is-well-known-symbol":["es.symbol","esnext.symbol.is-well-known-symbol"],"core-js/features/symbol/iterator":["es.symbol.iterator","es.array.iterator","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/features/symbol/key-for":["es.symbol"],"core-js/features/symbol/match":["es.symbol.match","es.regexp.exec","es.string.match"],"core-js/features/symbol/match-all":["es.symbol.match-all","es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/features/symbol/matcher":["esnext.symbol.matcher"],"core-js/features/symbol/metadata":["esnext.function.metadata","esnext.symbol.metadata"],"core-js/features/symbol/metadata-key":["esnext.symbol.metadata-key"],"core-js/features/symbol/observable":["esnext.symbol.observable"],"core-js/features/symbol/pattern-match":["esnext.symbol.pattern-match"],"core-js/features/symbol/replace":["es.symbol.replace","es.regexp.exec","es.string.replace"],"core-js/features/symbol/replace-all":["esnext.symbol.replace-all"],"core-js/features/symbol/search":["es.symbol.search","es.regexp.exec","es.string.search"],"core-js/features/symbol/species":["es.symbol.species"],"core-js/features/symbol/split":["es.symbol.split","es.regexp.exec","es.string.split"],"core-js/features/symbol/to-primitive":["es.symbol.to-primitive","es.date.to-primitive"],"core-js/features/symbol/to-string-tag":["es.symbol.to-string-tag","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/features/symbol/unscopables":["es.symbol.unscopables"],"core-js/features/typed-array":["es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/at":["es.typed-array.at","esnext.typed-array.at"],"core-js/features/typed-array/copy-within":["es.typed-array.copy-within"],"core-js/features/typed-array/entries":["es.object.to-string","es.typed-array.iterator"],"core-js/features/typed-array/every":["es.typed-array.every"],"core-js/features/typed-array/fill":["es.typed-array.fill"],"core-js/features/typed-array/filter":["es.typed-array.filter"],"core-js/features/typed-array/filter-out":["esnext.typed-array.filter-out"],"core-js/features/typed-array/filter-reject":["esnext.typed-array.filter-reject"],"core-js/features/typed-array/find":["es.typed-array.find"],"core-js/features/typed-array/find-index":["es.typed-array.find-index"],"core-js/features/typed-array/find-last":["es.typed-array.find-last","esnext.typed-array.find-last"],"core-js/features/typed-array/find-last-index":["es.typed-array.find-last-index","esnext.typed-array.find-last-index"],"core-js/features/typed-array/float32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/float64-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float64-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/for-each":["es.typed-array.for-each"],"core-js/features/typed-array/from":["es.typed-array.from"],"core-js/features/typed-array/from-async":["esnext.typed-array.from-async"],"core-js/features/typed-array/from-base64":["es.uint8-array.from-base64","esnext.uint8-array.from-base64"],"core-js/features/typed-array/from-hex":["es.uint8-array.from-hex","esnext.uint8-array.from-hex"],"core-js/features/typed-array/group-by":["esnext.typed-array.group-by"],"core-js/features/typed-array/includes":["es.typed-array.includes"],"core-js/features/typed-array/index-of":["es.typed-array.index-of"],"core-js/features/typed-array/int16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/int32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/int8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/iterator":["es.object.to-string","es.typed-array.iterator"],"core-js/features/typed-array/join":["es.typed-array.join"],"core-js/features/typed-array/keys":["es.object.to-string","es.typed-array.iterator"],"core-js/features/typed-array/last-index-of":["es.typed-array.last-index-of"],"core-js/features/typed-array/map":["es.typed-array.map"],"core-js/features/typed-array/methods":["es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/of":["es.typed-array.of"],"core-js/features/typed-array/reduce":["es.typed-array.reduce"],"core-js/features/typed-array/reduce-right":["es.typed-array.reduce-right"],"core-js/features/typed-array/reverse":["es.typed-array.reverse"],"core-js/features/typed-array/set":["es.typed-array.set"],"core-js/features/typed-array/set-from-base64":["es.uint8-array.set-from-base64","esnext.uint8-array.set-from-base64"],"core-js/features/typed-array/set-from-hex":["es.uint8-array.set-from-hex","esnext.uint8-array.set-from-hex"],"core-js/features/typed-array/slice":["es.typed-array.slice"],"core-js/features/typed-array/some":["es.typed-array.some"],"core-js/features/typed-array/sort":["es.typed-array.sort"],"core-js/features/typed-array/subarray":["es.typed-array.subarray"],"core-js/features/typed-array/to-base64":["es.uint8-array.to-base64","esnext.uint8-array.to-base64"],"core-js/features/typed-array/to-hex":["es.uint8-array.to-hex","esnext.uint8-array.to-hex"],"core-js/features/typed-array/to-locale-string":["es.typed-array.to-locale-string"],"core-js/features/typed-array/to-reversed":["es.typed-array.to-reversed","esnext.typed-array.to-reversed"],"core-js/features/typed-array/to-sorted":["es.typed-array.sort","es.typed-array.to-sorted","esnext.typed-array.to-sorted"],"core-js/features/typed-array/to-spliced":["esnext.typed-array.to-spliced"],"core-js/features/typed-array/to-string":["es.typed-array.to-string"],"core-js/features/typed-array/uint16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/uint32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/uint8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/uint8-clamped-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint8-clamped-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/features/typed-array/unique-by":["es.map","esnext.typed-array.unique-by"],"core-js/features/typed-array/values":["es.object.to-string","es.typed-array.iterator"],"core-js/features/typed-array/with":["es.typed-array.with","esnext.typed-array.with"],"core-js/features/unescape":["es.unescape"],"core-js/features/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/features/url-search-params":["web.dom-collections.iterator","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/features/url/can-parse":["web.url","web.url.can-parse"],"core-js/features/url/parse":["web.url","web.url.parse"],"core-js/features/url/to-json":["web.url.to-json"],"core-js/features/weak-map":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","web.dom-collections.iterator"],"core-js/features/weak-map/delete-all":["es.weak-map","esnext.weak-map.delete-all"],"core-js/features/weak-map/emplace":["es.weak-map","esnext.weak-map.emplace"],"core-js/features/weak-map/from":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-map","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","web.dom-collections.iterator"],"core-js/features/weak-map/get-or-insert":["es.weak-map","es.weak-map.get-or-insert","esnext.weak-map.get-or-insert"],"core-js/features/weak-map/get-or-insert-computed":["es.weak-map","es.weak-map.get-or-insert-computed","esnext.weak-map.get-or-insert-computed"],"core-js/features/weak-map/of":["es.array.iterator","es.object.to-string","es.weak-map","esnext.weak-map.delete-all","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/features/weak-map/upsert":["es.weak-map","esnext.weak-map.upsert"],"core-js/features/weak-set":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.dom-collections.iterator"],"core-js/features/weak-set/add-all":["es.weak-set","esnext.weak-set.add-all"],"core-js/features/weak-set/delete-all":["es.weak-set","esnext.weak-set.delete-all"],"core-js/features/weak-set/from":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","web.dom-collections.iterator"],"core-js/features/weak-set/of":["es.array.iterator","es.object.to-string","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.of"],"core-js/full":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/full/aggregate-error":[],"core-js/full/array":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.map","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with"],"core-js/full/array-buffer":["es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/full/array-buffer/constructor":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/full/array-buffer/detached":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","esnext.array-buffer.detached"],"core-js/full/array-buffer/is-view":["es.array-buffer.is-view"],"core-js/full/array-buffer/slice":["es.array-buffer.slice"],"core-js/full/array-buffer/transfer":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer","esnext.array-buffer.transfer"],"core-js/full/array-buffer/transfer-to-fixed-length":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer-to-fixed-length","esnext.array-buffer.transfer-to-fixed-length"],"core-js/full/array/at":["es.array.at","esnext.array.at"],"core-js/full/array/concat":["es.array.concat"],"core-js/full/array/copy-within":["es.array.copy-within"],"core-js/full/array/entries":["es.array.iterator","es.object.to-string"],"core-js/full/array/every":["es.array.every"],"core-js/full/array/fill":["es.array.fill"],"core-js/full/array/filter":["es.array.filter"],"core-js/full/array/filter-out":["esnext.array.filter-out"],"core-js/full/array/filter-reject":["esnext.array.filter-reject"],"core-js/full/array/find":["es.array.find"],"core-js/full/array/find-index":["es.array.find-index"],"core-js/full/array/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/full/array/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/full/array/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/full/array/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/full/array/for-each":["es.array.for-each"],"core-js/full/array/from":["es.array.from","es.string.iterator"],"core-js/full/array/from-async":["es.array.iterator","es.object.to-string","es.promise","es.array.from-async","es.string.iterator","esnext.array.from-async"],"core-js/full/array/group":["esnext.array.group"],"core-js/full/array/group-by":["esnext.array.group-by"],"core-js/full/array/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/full/array/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/full/array/includes":["es.array.includes"],"core-js/full/array/index-of":["es.array.index-of"],"core-js/full/array/is-array":["es.array.is-array"],"core-js/full/array/is-template-object":["esnext.array.is-template-object"],"core-js/full/array/iterator":["es.array.iterator","es.object.to-string"],"core-js/full/array/join":["es.array.join"],"core-js/full/array/keys":["es.array.iterator","es.object.to-string"],"core-js/full/array/last-index":["esnext.array.last-index"],"core-js/full/array/last-index-of":["es.array.last-index-of"],"core-js/full/array/last-item":["esnext.array.last-item"],"core-js/full/array/map":["es.array.map"],"core-js/full/array/of":["es.array.of"],"core-js/full/array/push":["es.array.push"],"core-js/full/array/reduce":["es.array.reduce"],"core-js/full/array/reduce-right":["es.array.reduce-right"],"core-js/full/array/reverse":["es.array.reverse"],"core-js/full/array/slice":["es.array.slice"],"core-js/full/array/some":["es.array.some"],"core-js/full/array/sort":["es.array.sort"],"core-js/full/array/splice":["es.array.splice"],"core-js/full/array/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/full/array/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/full/array/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/full/array/unique-by":["es.map","esnext.array.unique-by"],"core-js/full/array/unshift":["es.array.unshift"],"core-js/full/array/values":["es.array.iterator","es.object.to-string"],"core-js/full/array/virtual":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.includes","es.array.index-of","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.map","es.object.to-string","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with"],"core-js/full/array/virtual/at":["es.array.at","esnext.array.at"],"core-js/full/array/virtual/concat":["es.array.concat"],"core-js/full/array/virtual/copy-within":["es.array.copy-within"],"core-js/full/array/virtual/entries":["es.array.iterator","es.object.to-string"],"core-js/full/array/virtual/every":["es.array.every"],"core-js/full/array/virtual/fill":["es.array.fill"],"core-js/full/array/virtual/filter":["es.array.filter"],"core-js/full/array/virtual/filter-out":["esnext.array.filter-out"],"core-js/full/array/virtual/filter-reject":["esnext.array.filter-reject"],"core-js/full/array/virtual/find":["es.array.find"],"core-js/full/array/virtual/find-index":["es.array.find-index"],"core-js/full/array/virtual/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/full/array/virtual/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/full/array/virtual/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/full/array/virtual/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/full/array/virtual/for-each":["es.array.for-each"],"core-js/full/array/virtual/group":["esnext.array.group"],"core-js/full/array/virtual/group-by":["esnext.array.group-by"],"core-js/full/array/virtual/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/full/array/virtual/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/full/array/virtual/includes":["es.array.includes"],"core-js/full/array/virtual/index-of":["es.array.index-of"],"core-js/full/array/virtual/iterator":["es.array.iterator","es.object.to-string"],"core-js/full/array/virtual/join":["es.array.join"],"core-js/full/array/virtual/keys":["es.array.iterator","es.object.to-string"],"core-js/full/array/virtual/last-index-of":["es.array.last-index-of"],"core-js/full/array/virtual/map":["es.array.map"],"core-js/full/array/virtual/push":["es.array.push"],"core-js/full/array/virtual/reduce":["es.array.reduce"],"core-js/full/array/virtual/reduce-right":["es.array.reduce-right"],"core-js/full/array/virtual/reverse":["es.array.reverse"],"core-js/full/array/virtual/slice":["es.array.slice"],"core-js/full/array/virtual/some":["es.array.some"],"core-js/full/array/virtual/sort":["es.array.sort"],"core-js/full/array/virtual/splice":["es.array.splice"],"core-js/full/array/virtual/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/full/array/virtual/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/full/array/virtual/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/full/array/virtual/unique-by":["es.map","esnext.array.unique-by"],"core-js/full/array/virtual/unshift":["es.array.unshift"],"core-js/full/array/virtual/values":["es.array.iterator","es.object.to-string"],"core-js/full/array/virtual/with":["es.array.with","esnext.array.with"],"core-js/full/array/with":["es.array.with","esnext.array.with"],"core-js/full/async-disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/full/async-disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.iterator.dispose"],"core-js/full/async-iterator":["es.array.iterator","es.object.to-string","es.promise","es.async-iterator.async-dispose","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/full/async-iterator/as-indexed-pairs":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs"],"core-js/full/async-iterator/async-dispose":["es.object.to-string","es.promise","es.async-iterator.async-dispose","esnext.async-iterator.async-dispose"],"core-js/full/async-iterator/drop":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.drop"],"core-js/full/async-iterator/every":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.every"],"core-js/full/async-iterator/filter":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.filter"],"core-js/full/async-iterator/find":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.find"],"core-js/full/async-iterator/flat-map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.flat-map"],"core-js/full/async-iterator/for-each":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.for-each"],"core-js/full/async-iterator/from":["es.array.iterator","es.object.to-string","es.promise","es.string.iterator","esnext.async-iterator.constructor","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","web.dom-collections.iterator"],"core-js/full/async-iterator/indexed":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.indexed"],"core-js/full/async-iterator/map":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.map"],"core-js/full/async-iterator/reduce":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.reduce"],"core-js/full/async-iterator/some":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.some"],"core-js/full/async-iterator/take":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.take"],"core-js/full/async-iterator/to-array":["es.object.to-string","es.promise","esnext.async-iterator.constructor","esnext.async-iterator.to-array"],"core-js/full/atob":["es.error.to-string","es.object.to-string","web.atob","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/full/bigint":["es.object.to-string","esnext.bigint.range"],"core-js/full/bigint/range":["es.object.to-string","esnext.bigint.range"],"core-js/full/btoa":["es.error.to-string","es.object.to-string","web.btoa","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/full/clear-immediate":["web.immediate"],"core-js/full/composite-key":["esnext.composite-key"],"core-js/full/composite-symbol":["es.symbol","esnext.composite-symbol"],"core-js/full/data-view":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.object.to-string","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped"],"core-js/full/data-view/get-float16":["es.data-view.get-float16","esnext.data-view.get-float16"],"core-js/full/data-view/get-uint8-clamped":["esnext.data-view.get-uint8-clamped"],"core-js/full/data-view/set-float16":["es.data-view.set-float16","esnext.data-view.set-float16"],"core-js/full/data-view/set-uint8-clamped":["esnext.data-view.set-uint8-clamped"],"core-js/full/date":["es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string"],"core-js/full/date/get-year":["es.date.get-year"],"core-js/full/date/now":["es.date.now"],"core-js/full/date/set-year":["es.date.set-year"],"core-js/full/date/to-gmt-string":["es.date.to-gmt-string"],"core-js/full/date/to-iso-string":["es.date.to-iso-string","es.date.to-json"],"core-js/full/date/to-json":["es.date.to-json"],"core-js/full/date/to-primitive":["es.date.to-primitive"],"core-js/full/date/to-string":["es.date.to-string"],"core-js/full/disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/full/disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string","esnext.suppressed-error.constructor","esnext.disposable-stack.constructor","esnext.iterator.dispose"],"core-js/full/dom-collections":["es.array.iterator","es.object.to-string","web.dom-collections.for-each","web.dom-collections.iterator"],"core-js/full/dom-collections/for-each":["web.dom-collections.for-each"],"core-js/full/dom-collections/iterator":["es.object.to-string","web.dom-collections.iterator"],"core-js/full/dom-exception":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/full/dom-exception/constructor":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack"],"core-js/full/dom-exception/to-string-tag":["web.dom-exception.to-string-tag"],"core-js/full/error":["es.error.cause","es.error.is-error","es.error.to-string","es.object.create","esnext.error.is-error"],"core-js/full/error/constructor":["es.error.cause"],"core-js/full/error/is-error":["es.error.is-error","es.object.create","esnext.error.is-error"],"core-js/full/error/to-string":["es.error.to-string"],"core-js/full/escape":["es.escape"],"core-js/full/function":["es.function.bind","es.function.has-instance","es.function.name","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this"],"core-js/full/function/bind":["es.function.bind"],"core-js/full/function/demethodize":["esnext.function.demethodize"],"core-js/full/function/has-instance":["es.function.has-instance"],"core-js/full/function/is-callable":["esnext.function.is-callable"],"core-js/full/function/is-constructor":["esnext.function.is-constructor"],"core-js/full/function/metadata":["esnext.function.metadata"],"core-js/full/function/name":["es.function.name"],"core-js/full/function/un-this":["esnext.function.un-this"],"core-js/full/function/virtual":["es.function.bind","esnext.function.demethodize","esnext.function.un-this"],"core-js/full/function/virtual/bind":["es.function.bind"],"core-js/full/function/virtual/demethodize":["esnext.function.demethodize"],"core-js/full/function/virtual/un-this":["esnext.function.un-this"],"core-js/full/get-iterator":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/full/get-iterator-method":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/full/global-this":["es.global-this","esnext.global-this"],"core-js/full/instance/at":["es.array.at","es.string.at-alternative","esnext.array.at","esnext.string.at"],"core-js/full/instance/bind":["es.function.bind"],"core-js/full/instance/clamp":["esnext.number.clamp"],"core-js/full/instance/code-point-at":["es.string.code-point-at"],"core-js/full/instance/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/full/instance/concat":["es.array.concat"],"core-js/full/instance/copy-within":["es.array.copy-within"],"core-js/full/instance/demethodize":["esnext.function.demethodize"],"core-js/full/instance/ends-with":["es.string.ends-with"],"core-js/full/instance/entries":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/full/instance/every":["es.array.every"],"core-js/full/instance/fill":["es.array.fill"],"core-js/full/instance/filter":["es.array.filter"],"core-js/full/instance/filter-out":["esnext.array.filter-out"],"core-js/full/instance/filter-reject":["esnext.array.filter-reject"],"core-js/full/instance/find":["es.array.find"],"core-js/full/instance/find-index":["es.array.find-index"],"core-js/full/instance/find-last":["es.array.find-last","esnext.array.find-last"],"core-js/full/instance/find-last-index":["es.array.find-last-index","esnext.array.find-last-index"],"core-js/full/instance/flags":["es.regexp.flags"],"core-js/full/instance/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/full/instance/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/full/instance/for-each":["es.array.for-each","web.dom-collections.for-each"],"core-js/full/instance/group":["esnext.array.group"],"core-js/full/instance/group-by":["esnext.array.group-by"],"core-js/full/instance/group-by-to-map":["es.map","es.object.to-string","esnext.array.group-by-to-map"],"core-js/full/instance/group-to-map":["es.map","es.object.to-string","esnext.array.group-to-map"],"core-js/full/instance/includes":["es.array.includes","es.string.includes"],"core-js/full/instance/index-of":["es.array.index-of"],"core-js/full/instance/is-well-formed":["es.string.is-well-formed"],"core-js/full/instance/keys":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/full/instance/last-index-of":["es.array.last-index-of"],"core-js/full/instance/map":["es.array.map"],"core-js/full/instance/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/full/instance/pad-end":["es.string.pad-end"],"core-js/full/instance/pad-start":["es.string.pad-start"],"core-js/full/instance/push":["es.array.push"],"core-js/full/instance/reduce":["es.array.reduce"],"core-js/full/instance/reduce-right":["es.array.reduce-right"],"core-js/full/instance/repeat":["es.string.repeat"],"core-js/full/instance/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/full/instance/reverse":["es.array.reverse"],"core-js/full/instance/slice":["es.array.slice"],"core-js/full/instance/some":["es.array.some"],"core-js/full/instance/sort":["es.array.sort"],"core-js/full/instance/splice":["es.array.splice"],"core-js/full/instance/starts-with":["es.string.starts-with"],"core-js/full/instance/to-reversed":["es.array.to-reversed","esnext.array.to-reversed"],"core-js/full/instance/to-sorted":["es.array.sort","es.array.to-sorted","esnext.array.to-sorted"],"core-js/full/instance/to-spliced":["es.array.to-spliced","esnext.array.to-spliced"],"core-js/full/instance/to-well-formed":["es.string.to-well-formed"],"core-js/full/instance/trim":["es.string.trim"],"core-js/full/instance/trim-end":["es.string.trim-end"],"core-js/full/instance/trim-left":["es.string.trim-start"],"core-js/full/instance/trim-right":["es.string.trim-end"],"core-js/full/instance/trim-start":["es.string.trim-start"],"core-js/full/instance/un-this":["esnext.function.un-this"],"core-js/full/instance/unique-by":["es.map","esnext.array.unique-by"],"core-js/full/instance/unshift":["es.array.unshift"],"core-js/full/instance/values":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/full/instance/with":["es.array.with","esnext.array.with"],"core-js/full/is-iterable":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/full/iterator":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/full/iterator/as-indexed-pairs":["es.object.to-string","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs"],"core-js/full/iterator/chunks":["es.iterator.constructor","es.object.to-string","esnext.iterator.chunks"],"core-js/full/iterator/concat":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.sliding","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/full/iterator/dispose":["esnext.iterator.dispose"],"core-js/full/iterator/drop":["es.iterator.constructor","es.iterator.drop","es.object.to-string","esnext.iterator.constructor","esnext.iterator.drop"],"core-js/full/iterator/every":["es.iterator.constructor","es.iterator.every","es.object.to-string","esnext.iterator.constructor","esnext.iterator.every"],"core-js/full/iterator/filter":["es.iterator.constructor","es.iterator.filter","es.object.to-string","esnext.iterator.constructor","esnext.iterator.filter"],"core-js/full/iterator/find":["es.iterator.constructor","es.iterator.find","es.object.to-string","esnext.iterator.constructor","esnext.iterator.find"],"core-js/full/iterator/flat-map":["es.array.iterator","es.iterator.constructor","es.iterator.flat-map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.flat-map","web.dom-collections.iterator"],"core-js/full/iterator/for-each":["es.iterator.constructor","es.iterator.for-each","es.object.to-string","esnext.iterator.constructor","esnext.iterator.for-each"],"core-js/full/iterator/from":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.promise","es.string.iterator","esnext.iterator.constructor","esnext.iterator.chunks","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/full/iterator/indexed":["es.object.to-string","esnext.iterator.constructor","esnext.iterator.indexed"],"core-js/full/iterator/map":["es.iterator.constructor","es.iterator.map","es.object.to-string","esnext.iterator.constructor","esnext.iterator.map"],"core-js/full/iterator/range":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.constructor","esnext.iterator.chunks","esnext.iterator.range","esnext.iterator.sliding","esnext.iterator.windows","web.dom-collections.iterator"],"core-js/full/iterator/reduce":["es.iterator.constructor","es.iterator.reduce","es.object.to-string","esnext.iterator.constructor","esnext.iterator.reduce"],"core-js/full/iterator/sliding":["es.iterator.constructor","es.object.to-string","esnext.iterator.sliding"],"core-js/full/iterator/some":["es.iterator.constructor","es.iterator.some","es.object.to-string","esnext.iterator.constructor","esnext.iterator.some"],"core-js/full/iterator/take":["es.iterator.constructor","es.iterator.take","es.object.to-string","esnext.iterator.constructor","esnext.iterator.take"],"core-js/full/iterator/to-array":["es.iterator.constructor","es.iterator.to-array","es.object.to-string","esnext.iterator.constructor","esnext.iterator.to-array"],"core-js/full/iterator/to-async":["es.iterator.constructor","es.object.to-string","es.promise","esnext.iterator.constructor","esnext.iterator.to-async"],"core-js/full/iterator/windows":["es.iterator.constructor","es.object.to-string","esnext.iterator.windows"],"core-js/full/iterator/zip":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.chunks","esnext.iterator.sliding","esnext.iterator.windows","esnext.iterator.zip","web.dom-collections.iterator"],"core-js/full/iterator/zip-keyed":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.create","es.object.to-string","es.reflect.own-keys","es.string.iterator","esnext.iterator.chunks","esnext.iterator.sliding","esnext.iterator.windows","esnext.iterator.zip-keyed","web.dom-collections.iterator"],"core-js/full/json":["es.date.to-json","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.object.create","es.object.freeze","es.object.keys","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json"],"core-js/full/json/is-raw-json":["es.json.is-raw-json","esnext.json.is-raw-json"],"core-js/full/json/parse":["es.json.parse","es.object.keys","esnext.json.parse"],"core-js/full/json/raw-json":["es.json.raw-json","es.json.stringify","es.object.create","es.object.freeze","esnext.json.raw-json"],"core-js/full/json/stringify":["es.date.to-json","es.json.stringify"],"core-js/full/json/to-string-tag":["es.json.to-string-tag"],"core-js/full/map":["es.array.iterator","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","es.string.iterator","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","web.dom-collections.iterator"],"core-js/full/map/delete-all":["es.map","esnext.map.delete-all"],"core-js/full/map/emplace":["es.map","esnext.map.emplace"],"core-js/full/map/every":["es.map","esnext.map.every"],"core-js/full/map/filter":["es.map","esnext.map.filter"],"core-js/full/map/find":["es.map","esnext.map.find"],"core-js/full/map/find-key":["es.map","esnext.map.find-key"],"core-js/full/map/from":["es.array.iterator","es.map","es.object.to-string","es.string.iterator","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update","web.dom-collections.iterator"],"core-js/full/map/get-or-insert":["es.map","es.map.get-or-insert","esnext.map.get-or-insert"],"core-js/full/map/get-or-insert-computed":["es.map","es.map.get-or-insert-computed","esnext.map.get-or-insert-computed"],"core-js/full/map/group-by":["es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/full/map/includes":["es.map","esnext.map.includes"],"core-js/full/map/key-by":["es.map","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/full/map/key-of":["es.map","esnext.map.key-of"],"core-js/full/map/map-keys":["es.map","esnext.map.map-keys"],"core-js/full/map/map-values":["es.map","esnext.map.map-values"],"core-js/full/map/merge":["es.map","esnext.map.merge"],"core-js/full/map/of":["es.array.iterator","es.map","es.object.to-string","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update"],"core-js/full/map/reduce":["es.map","esnext.map.reduce"],"core-js/full/map/some":["es.map","esnext.map.some"],"core-js/full/map/update":["es.map","esnext.map.update"],"core-js/full/map/update-or-insert":["es.map","esnext.map.update-or-insert"],"core-js/full/map/upsert":["es.map","esnext.map.upsert"],"core-js/full/math":["es.array.iterator","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh"],"core-js/full/math/acosh":["es.math.acosh"],"core-js/full/math/asinh":["es.math.asinh"],"core-js/full/math/atanh":["es.math.atanh"],"core-js/full/math/cbrt":["es.math.cbrt"],"core-js/full/math/clamp":["esnext.math.clamp"],"core-js/full/math/clz32":["es.math.clz32"],"core-js/full/math/cosh":["es.math.cosh"],"core-js/full/math/deg-per-rad":["esnext.math.deg-per-rad"],"core-js/full/math/degrees":["esnext.math.degrees"],"core-js/full/math/expm1":["es.math.expm1"],"core-js/full/math/f16round":["es.math.f16round","esnext.math.f16round"],"core-js/full/math/fround":["es.math.fround"],"core-js/full/math/fscale":["esnext.math.fscale"],"core-js/full/math/hypot":["es.math.hypot"],"core-js/full/math/iaddh":["esnext.math.iaddh"],"core-js/full/math/imul":["es.math.imul"],"core-js/full/math/imulh":["esnext.math.imulh"],"core-js/full/math/isubh":["esnext.math.isubh"],"core-js/full/math/log10":["es.math.log10"],"core-js/full/math/log1p":["es.math.log1p"],"core-js/full/math/log2":["es.math.log2"],"core-js/full/math/rad-per-deg":["esnext.math.rad-per-deg"],"core-js/full/math/radians":["esnext.math.radians"],"core-js/full/math/scale":["esnext.math.scale"],"core-js/full/math/seeded-prng":["esnext.math.seeded-prng"],"core-js/full/math/sign":["es.math.sign"],"core-js/full/math/signbit":["esnext.math.signbit"],"core-js/full/math/sinh":["es.math.sinh"],"core-js/full/math/sum-precise":["es.array.iterator","es.math.sum-precise","esnext.math.sum-precise"],"core-js/full/math/tanh":["es.math.tanh"],"core-js/full/math/to-string-tag":["es.math.to-string-tag"],"core-js/full/math/trunc":["es.math.trunc"],"core-js/full/math/umulh":["esnext.math.umulh"],"core-js/full/number":["es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.to-string","esnext.number.clamp","esnext.number.from-string","esnext.number.range"],"core-js/full/number/clamp":["esnext.number.clamp"],"core-js/full/number/constructor":["es.number.constructor"],"core-js/full/number/epsilon":["es.number.epsilon"],"core-js/full/number/from-string":["esnext.number.from-string"],"core-js/full/number/is-finite":["es.number.is-finite"],"core-js/full/number/is-integer":["es.number.is-integer"],"core-js/full/number/is-nan":["es.number.is-nan"],"core-js/full/number/is-safe-integer":["es.number.is-safe-integer"],"core-js/full/number/max-safe-integer":["es.number.max-safe-integer"],"core-js/full/number/min-safe-integer":["es.number.min-safe-integer"],"core-js/full/number/parse-float":["es.number.parse-float"],"core-js/full/number/parse-int":["es.number.parse-int"],"core-js/full/number/range":["es.object.to-string","esnext.number.range"],"core-js/full/number/to-exponential":["es.number.to-exponential"],"core-js/full/number/to-fixed":["es.number.to-fixed"],"core-js/full/number/to-precision":["es.number.to-precision"],"core-js/full/number/virtual":["es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/full/number/virtual/clamp":["esnext.number.clamp"],"core-js/full/number/virtual/to-exponential":["es.number.to-exponential"],"core-js/full/number/virtual/to-fixed":["es.number.to-fixed"],"core-js/full/number/virtual/to-precision":["es.number.to-precision"],"core-js/full/object":["es.symbol","es.json.to-string-tag","es.math.to-string-tag","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.reflect.to-string-tag","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","web.dom-collections.iterator"],"core-js/full/object/assign":["es.object.assign"],"core-js/full/object/create":["es.object.create"],"core-js/full/object/define-getter":["es.object.define-getter"],"core-js/full/object/define-properties":["es.object.define-properties"],"core-js/full/object/define-property":["es.object.define-property"],"core-js/full/object/define-setter":["es.object.define-setter"],"core-js/full/object/entries":["es.object.entries"],"core-js/full/object/freeze":["es.object.freeze"],"core-js/full/object/from-entries":["es.array.iterator","es.object.from-entries","web.dom-collections.iterator"],"core-js/full/object/get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/full/object/get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/full/object/get-own-property-names":["es.object.get-own-property-names"],"core-js/full/object/get-own-property-symbols":["es.symbol"],"core-js/full/object/get-prototype-of":["es.object.get-prototype-of"],"core-js/full/object/group-by":["es.object.create","es.object.group-by","esnext.object.group-by"],"core-js/full/object/has-own":["es.object.has-own","esnext.object.has-own"],"core-js/full/object/is":["es.object.is"],"core-js/full/object/is-extensible":["es.object.is-extensible"],"core-js/full/object/is-frozen":["es.object.is-frozen"],"core-js/full/object/is-sealed":["es.object.is-sealed"],"core-js/full/object/iterate-entries":["esnext.object.iterate-entries"],"core-js/full/object/iterate-keys":["esnext.object.iterate-keys"],"core-js/full/object/iterate-values":["esnext.object.iterate-values"],"core-js/full/object/keys":["es.object.keys"],"core-js/full/object/lookup-getter":["es.object.lookup-getter"],"core-js/full/object/lookup-setter":["es.object.lookup-setter"],"core-js/full/object/prevent-extensions":["es.object.prevent-extensions"],"core-js/full/object/proto":["es.object.proto"],"core-js/full/object/seal":["es.object.seal"],"core-js/full/object/set-prototype-of":["es.object.set-prototype-of"],"core-js/full/object/to-string":["es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/full/object/values":["es.object.values"],"core-js/full/observable":["es.object.to-string","es.string.iterator","esnext.observable","esnext.symbol.observable","web.dom-collections.iterator"],"core-js/full/parse-float":["es.parse-float"],"core-js/full/parse-int":["es.parse-int"],"core-js/full/promise":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.string.iterator","esnext.aggregate-error","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","web.dom-collections.iterator"],"core-js/full/promise/all-settled":["es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.string.iterator","esnext.promise.all-settled","web.dom-collections.iterator"],"core-js/full/promise/any":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.any","es.string.iterator","esnext.aggregate-error","esnext.promise.any","web.dom-collections.iterator"],"core-js/full/promise/finally":["es.object.to-string","es.promise","es.promise.finally"],"core-js/full/promise/try":["es.object.to-string","es.promise","es.promise.try","esnext.promise.try"],"core-js/full/promise/with-resolvers":["es.promise","es.promise.with-resolvers","esnext.promise.with-resolvers"],"core-js/full/queue-microtask":["web.queue-microtask"],"core-js/full/reflect":["es.object.to-string","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata"],"core-js/full/reflect/apply":["es.reflect.apply"],"core-js/full/reflect/construct":["es.reflect.construct"],"core-js/full/reflect/define-metadata":["esnext.reflect.define-metadata"],"core-js/full/reflect/define-property":["es.reflect.define-property"],"core-js/full/reflect/delete-metadata":["esnext.reflect.delete-metadata"],"core-js/full/reflect/delete-property":["es.reflect.delete-property"],"core-js/full/reflect/get":["es.reflect.get"],"core-js/full/reflect/get-metadata":["esnext.reflect.get-metadata"],"core-js/full/reflect/get-metadata-keys":["esnext.reflect.get-metadata-keys"],"core-js/full/reflect/get-own-metadata":["esnext.reflect.get-own-metadata"],"core-js/full/reflect/get-own-metadata-keys":["esnext.reflect.get-own-metadata-keys"],"core-js/full/reflect/get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/full/reflect/get-prototype-of":["es.reflect.get-prototype-of"],"core-js/full/reflect/has":["es.reflect.has"],"core-js/full/reflect/has-metadata":["esnext.reflect.has-metadata"],"core-js/full/reflect/has-own-metadata":["esnext.reflect.has-own-metadata"],"core-js/full/reflect/is-extensible":["es.reflect.is-extensible"],"core-js/full/reflect/metadata":["esnext.reflect.metadata"],"core-js/full/reflect/own-keys":["es.reflect.own-keys"],"core-js/full/reflect/prevent-extensions":["es.reflect.prevent-extensions"],"core-js/full/reflect/set":["es.reflect.set"],"core-js/full/reflect/set-prototype-of":["es.reflect.set-prototype-of"],"core-js/full/reflect/to-string-tag":["es.reflect.to-string-tag"],"core-js/full/regexp":["es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.string.match","es.string.replace","es.string.search","es.string.split","esnext.regexp.escape"],"core-js/full/regexp/constructor":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky"],"core-js/full/regexp/dot-all":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec"],"core-js/full/regexp/escape":["es.regexp.escape","esnext.regexp.escape"],"core-js/full/regexp/flags":["es.regexp.flags"],"core-js/full/regexp/match":["es.regexp.exec","es.string.match"],"core-js/full/regexp/replace":["es.regexp.exec","es.string.replace"],"core-js/full/regexp/search":["es.regexp.exec","es.string.search"],"core-js/full/regexp/split":["es.regexp.exec","es.string.split"],"core-js/full/regexp/sticky":["es.regexp.constructor","es.regexp.exec","es.regexp.sticky"],"core-js/full/regexp/test":["es.regexp.exec","es.regexp.test"],"core-js/full/regexp/to-string":["es.regexp.to-string"],"core-js/full/self":["web.self"],"core-js/full/set":["es.array.iterator","es.object.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.iterator","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","web.dom-collections.iterator"],"core-js/full/set-immediate":["web.immediate"],"core-js/full/set-interval":["web.timers"],"core-js/full/set-timeout":["web.timers"],"core-js/full/set/add-all":["es.set","esnext.set.add-all"],"core-js/full/set/delete-all":["es.set","esnext.set.delete-all"],"core-js/full/set/difference":["es.array.iterator","es.set","es.set.difference.v2","es.string.iterator","esnext.set.difference.v2","esnext.set.difference","web.dom-collections.iterator"],"core-js/full/set/every":["es.set","esnext.set.every"],"core-js/full/set/filter":["es.set","esnext.set.filter"],"core-js/full/set/find":["es.set","esnext.set.find"],"core-js/full/set/from":["es.array.iterator","es.object.to-string","es.set","es.string.iterator","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.join","esnext.set.map","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.union.v2","web.dom-collections.iterator"],"core-js/full/set/intersection":["es.array.iterator","es.set","es.set.intersection.v2","es.string.iterator","esnext.set.intersection.v2","esnext.set.intersection","web.dom-collections.iterator"],"core-js/full/set/is-disjoint-from":["es.array.iterator","es.set","es.set.is-disjoint-from.v2","es.string.iterator","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","web.dom-collections.iterator"],"core-js/full/set/is-subset-of":["es.array.iterator","es.set","es.set.is-subset-of.v2","es.string.iterator","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","web.dom-collections.iterator"],"core-js/full/set/is-superset-of":["es.array.iterator","es.set","es.set.is-superset-of.v2","es.string.iterator","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","web.dom-collections.iterator"],"core-js/full/set/join":["es.set","esnext.set.join"],"core-js/full/set/map":["es.set","esnext.set.map"],"core-js/full/set/of":["es.array.iterator","es.object.to-string","es.set","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.union.v2"],"core-js/full/set/reduce":["es.set","esnext.set.reduce"],"core-js/full/set/some":["es.set","esnext.set.some"],"core-js/full/set/symmetric-difference":["es.array.iterator","es.set","es.set.symmetric-difference.v2","es.string.iterator","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","web.dom-collections.iterator"],"core-js/full/set/union":["es.array.iterator","es.set","es.set.union.v2","es.string.iterator","esnext.set.union.v2","esnext.set.union","web.dom-collections.iterator"],"core-js/full/string":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.weak-map","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed"],"core-js/full/string/anchor":["es.string.anchor"],"core-js/full/string/at":["es.string.at-alternative","esnext.string.at"],"core-js/full/string/big":["es.string.big"],"core-js/full/string/blink":["es.string.blink"],"core-js/full/string/bold":["es.string.bold"],"core-js/full/string/code-point-at":["es.string.code-point-at"],"core-js/full/string/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/full/string/cooked":["esnext.string.cooked"],"core-js/full/string/dedent":["es.string.from-code-point","es.weak-map","esnext.string.dedent"],"core-js/full/string/ends-with":["es.string.ends-with"],"core-js/full/string/fixed":["es.string.fixed"],"core-js/full/string/fontcolor":["es.string.fontcolor"],"core-js/full/string/fontsize":["es.string.fontsize"],"core-js/full/string/from-code-point":["es.string.from-code-point"],"core-js/full/string/includes":["es.string.includes"],"core-js/full/string/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/full/string/italics":["es.string.italics"],"core-js/full/string/iterator":["es.object.to-string","es.string.iterator"],"core-js/full/string/link":["es.string.link"],"core-js/full/string/match":["es.regexp.exec","es.string.match"],"core-js/full/string/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/full/string/pad-end":["es.string.pad-end"],"core-js/full/string/pad-start":["es.string.pad-start"],"core-js/full/string/raw":["es.string.raw"],"core-js/full/string/repeat":["es.string.repeat"],"core-js/full/string/replace":["es.regexp.exec","es.string.replace"],"core-js/full/string/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/full/string/search":["es.regexp.exec","es.string.search"],"core-js/full/string/small":["es.string.small"],"core-js/full/string/split":["es.regexp.exec","es.string.split"],"core-js/full/string/starts-with":["es.string.starts-with"],"core-js/full/string/strike":["es.string.strike"],"core-js/full/string/sub":["es.string.sub"],"core-js/full/string/substr":["es.string.substr"],"core-js/full/string/sup":["es.string.sup"],"core-js/full/string/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/full/string/trim":["es.string.trim"],"core-js/full/string/trim-end":["es.string.trim-end"],"core-js/full/string/trim-left":["es.string.trim-start"],"core-js/full/string/trim-right":["es.string.trim-end"],"core-js/full/string/trim-start":["es.string.trim-start"],"core-js/full/string/virtual":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.includes","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","esnext.string.at","esnext.string.code-points","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed"],"core-js/full/string/virtual/anchor":["es.string.anchor"],"core-js/full/string/virtual/at":["es.string.at-alternative","esnext.string.at"],"core-js/full/string/virtual/big":["es.string.big"],"core-js/full/string/virtual/blink":["es.string.blink"],"core-js/full/string/virtual/bold":["es.string.bold"],"core-js/full/string/virtual/code-point-at":["es.string.code-point-at"],"core-js/full/string/virtual/code-points":["es.object.to-string","esnext.string.code-points"],"core-js/full/string/virtual/ends-with":["es.string.ends-with"],"core-js/full/string/virtual/fixed":["es.string.fixed"],"core-js/full/string/virtual/fontcolor":["es.string.fontcolor"],"core-js/full/string/virtual/fontsize":["es.string.fontsize"],"core-js/full/string/virtual/includes":["es.string.includes"],"core-js/full/string/virtual/is-well-formed":["es.string.is-well-formed","esnext.string.is-well-formed"],"core-js/full/string/virtual/italics":["es.string.italics"],"core-js/full/string/virtual/iterator":["es.object.to-string","es.string.iterator"],"core-js/full/string/virtual/link":["es.string.link"],"core-js/full/string/virtual/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all","esnext.string.match-all"],"core-js/full/string/virtual/pad-end":["es.string.pad-end"],"core-js/full/string/virtual/pad-start":["es.string.pad-start"],"core-js/full/string/virtual/repeat":["es.string.repeat"],"core-js/full/string/virtual/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all","esnext.string.replace-all"],"core-js/full/string/virtual/small":["es.string.small"],"core-js/full/string/virtual/starts-with":["es.string.starts-with"],"core-js/full/string/virtual/strike":["es.string.strike"],"core-js/full/string/virtual/sub":["es.string.sub"],"core-js/full/string/virtual/substr":["es.string.substr"],"core-js/full/string/virtual/sup":["es.string.sup"],"core-js/full/string/virtual/to-well-formed":["es.string.to-well-formed","esnext.string.to-well-formed"],"core-js/full/string/virtual/trim":["es.string.trim"],"core-js/full/string/virtual/trim-end":["es.string.trim-end"],"core-js/full/string/virtual/trim-left":["es.string.trim-start"],"core-js/full/string/virtual/trim-right":["es.string.trim-end"],"core-js/full/string/virtual/trim-start":["es.string.trim-start"],"core-js/full/structured-clone":["es.error.to-string","es.array.iterator","es.map","es.object.keys","es.object.to-string","es.set","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.structured-clone"],"core-js/full/suppressed-error":[],"core-js/full/symbol":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag","esnext.function.metadata","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","web.dom-collections.iterator"],"core-js/full/symbol/async-dispose":["es.symbol.async-dispose","esnext.symbol.async-dispose"],"core-js/full/symbol/async-iterator":["es.symbol.async-iterator"],"core-js/full/symbol/custom-matcher":["esnext.symbol.custom-matcher"],"core-js/full/symbol/description":["es.symbol.description"],"core-js/full/symbol/dispose":["es.symbol.dispose","esnext.symbol.dispose"],"core-js/full/symbol/for":["es.symbol"],"core-js/full/symbol/has-instance":["es.symbol.has-instance","es.function.has-instance"],"core-js/full/symbol/is-concat-spreadable":["es.symbol.is-concat-spreadable","es.array.concat"],"core-js/full/symbol/is-registered":["es.symbol","esnext.symbol.is-registered"],"core-js/full/symbol/is-registered-symbol":["es.symbol","esnext.symbol.is-registered-symbol"],"core-js/full/symbol/is-well-known":["es.symbol","esnext.symbol.is-well-known"],"core-js/full/symbol/is-well-known-symbol":["es.symbol","esnext.symbol.is-well-known-symbol"],"core-js/full/symbol/iterator":["es.symbol.iterator","es.array.iterator","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/full/symbol/key-for":["es.symbol"],"core-js/full/symbol/match":["es.symbol.match","es.regexp.exec","es.string.match"],"core-js/full/symbol/match-all":["es.symbol.match-all","es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/full/symbol/matcher":["esnext.symbol.matcher"],"core-js/full/symbol/metadata":["esnext.function.metadata","esnext.symbol.metadata"],"core-js/full/symbol/metadata-key":["esnext.symbol.metadata-key"],"core-js/full/symbol/observable":["esnext.symbol.observable"],"core-js/full/symbol/pattern-match":["esnext.symbol.pattern-match"],"core-js/full/symbol/replace":["es.symbol.replace","es.regexp.exec","es.string.replace"],"core-js/full/symbol/replace-all":["esnext.symbol.replace-all"],"core-js/full/symbol/search":["es.symbol.search","es.regexp.exec","es.string.search"],"core-js/full/symbol/species":["es.symbol.species"],"core-js/full/symbol/split":["es.symbol.split","es.regexp.exec","es.string.split"],"core-js/full/symbol/to-primitive":["es.symbol.to-primitive","es.date.to-primitive"],"core-js/full/symbol/to-string-tag":["es.symbol.to-string-tag","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/full/symbol/unscopables":["es.symbol.unscopables"],"core-js/full/typed-array":["es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/at":["es.typed-array.at","esnext.typed-array.at"],"core-js/full/typed-array/copy-within":["es.typed-array.copy-within"],"core-js/full/typed-array/entries":["es.object.to-string","es.typed-array.iterator"],"core-js/full/typed-array/every":["es.typed-array.every"],"core-js/full/typed-array/fill":["es.typed-array.fill"],"core-js/full/typed-array/filter":["es.typed-array.filter"],"core-js/full/typed-array/filter-out":["esnext.typed-array.filter-out"],"core-js/full/typed-array/filter-reject":["esnext.typed-array.filter-reject"],"core-js/full/typed-array/find":["es.typed-array.find"],"core-js/full/typed-array/find-index":["es.typed-array.find-index"],"core-js/full/typed-array/find-last":["es.typed-array.find-last","esnext.typed-array.find-last"],"core-js/full/typed-array/find-last-index":["es.typed-array.find-last-index","esnext.typed-array.find-last-index"],"core-js/full/typed-array/float32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/float64-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.float64-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/for-each":["es.typed-array.for-each"],"core-js/full/typed-array/from":["es.typed-array.from"],"core-js/full/typed-array/from-async":["esnext.typed-array.from-async"],"core-js/full/typed-array/from-base64":["es.uint8-array.from-base64","esnext.uint8-array.from-base64"],"core-js/full/typed-array/from-hex":["es.uint8-array.from-hex","esnext.uint8-array.from-hex"],"core-js/full/typed-array/group-by":["esnext.typed-array.group-by"],"core-js/full/typed-array/includes":["es.typed-array.includes"],"core-js/full/typed-array/index-of":["es.typed-array.index-of"],"core-js/full/typed-array/int16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/int32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/int8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.int8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/iterator":["es.object.to-string","es.typed-array.iterator"],"core-js/full/typed-array/join":["es.typed-array.join"],"core-js/full/typed-array/keys":["es.object.to-string","es.typed-array.iterator"],"core-js/full/typed-array/last-index-of":["es.typed-array.last-index-of"],"core-js/full/typed-array/map":["es.typed-array.map"],"core-js/full/typed-array/methods":["es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/of":["es.typed-array.of"],"core-js/full/typed-array/reduce":["es.typed-array.reduce"],"core-js/full/typed-array/reduce-right":["es.typed-array.reduce-right"],"core-js/full/typed-array/reverse":["es.typed-array.reverse"],"core-js/full/typed-array/set":["es.typed-array.set"],"core-js/full/typed-array/set-from-base64":["es.uint8-array.set-from-base64","esnext.uint8-array.set-from-base64"],"core-js/full/typed-array/set-from-hex":["es.uint8-array.set-from-hex","esnext.uint8-array.set-from-hex"],"core-js/full/typed-array/slice":["es.typed-array.slice"],"core-js/full/typed-array/some":["es.typed-array.some"],"core-js/full/typed-array/sort":["es.typed-array.sort"],"core-js/full/typed-array/subarray":["es.typed-array.subarray"],"core-js/full/typed-array/to-base64":["es.uint8-array.to-base64","esnext.uint8-array.to-base64"],"core-js/full/typed-array/to-hex":["es.uint8-array.to-hex","esnext.uint8-array.to-hex"],"core-js/full/typed-array/to-locale-string":["es.typed-array.to-locale-string"],"core-js/full/typed-array/to-reversed":["es.typed-array.to-reversed","esnext.typed-array.to-reversed"],"core-js/full/typed-array/to-sorted":["es.typed-array.sort","es.typed-array.to-sorted","esnext.typed-array.to-sorted"],"core-js/full/typed-array/to-spliced":["esnext.typed-array.to-spliced"],"core-js/full/typed-array/to-string":["es.typed-array.to-string"],"core-js/full/typed-array/uint16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/uint32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/uint8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/uint8-clamped-array":["es.array-buffer.constructor","es.array-buffer.slice","es.map","es.object.to-string","es.promise","es.string.iterator","es.typed-array.uint8-clamped-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/full/typed-array/unique-by":["es.map","esnext.typed-array.unique-by"],"core-js/full/typed-array/values":["es.object.to-string","es.typed-array.iterator"],"core-js/full/typed-array/with":["es.typed-array.with","esnext.typed-array.with"],"core-js/full/unescape":["es.unescape"],"core-js/full/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/full/url-search-params":["web.dom-collections.iterator","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/full/url/can-parse":["web.url","web.url.can-parse"],"core-js/full/url/parse":["web.url","web.url.parse"],"core-js/full/url/to-json":["web.url.to-json"],"core-js/full/weak-map":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","web.dom-collections.iterator"],"core-js/full/weak-map/delete-all":["es.weak-map","esnext.weak-map.delete-all"],"core-js/full/weak-map/emplace":["es.weak-map","esnext.weak-map.emplace"],"core-js/full/weak-map/from":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-map","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","web.dom-collections.iterator"],"core-js/full/weak-map/get-or-insert":["es.weak-map","es.weak-map.get-or-insert","esnext.weak-map.get-or-insert"],"core-js/full/weak-map/get-or-insert-computed":["es.weak-map","es.weak-map.get-or-insert-computed","esnext.weak-map.get-or-insert-computed"],"core-js/full/weak-map/of":["es.array.iterator","es.object.to-string","es.weak-map","esnext.weak-map.delete-all","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/full/weak-map/upsert":["es.weak-map","esnext.weak-map.upsert"],"core-js/full/weak-set":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.dom-collections.iterator"],"core-js/full/weak-set/add-all":["es.weak-set","esnext.weak-set.add-all"],"core-js/full/weak-set/delete-all":["es.weak-set","esnext.weak-set.delete-all"],"core-js/full/weak-set/from":["es.array.iterator","es.object.to-string","es.string.iterator","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","web.dom-collections.iterator"],"core-js/full/weak-set/of":["es.array.iterator","es.object.to-string","es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.of"],"core-js/modules/es.aggregate-error":["es.aggregate-error"],"core-js/modules/es.aggregate-error.cause":["es.aggregate-error.cause"],"core-js/modules/es.aggregate-error.constructor":["es.aggregate-error.constructor"],"core-js/modules/es.array-buffer.constructor":["es.array-buffer.constructor"],"core-js/modules/es.array-buffer.detached":["es.array-buffer.detached"],"core-js/modules/es.array-buffer.is-view":["es.array-buffer.is-view"],"core-js/modules/es.array-buffer.slice":["es.array-buffer.slice"],"core-js/modules/es.array-buffer.transfer":["es.array-buffer.transfer"],"core-js/modules/es.array-buffer.transfer-to-fixed-length":["es.array-buffer.transfer-to-fixed-length"],"core-js/modules/es.array.at":["es.array.at"],"core-js/modules/es.array.concat":["es.array.concat"],"core-js/modules/es.array.copy-within":["es.array.copy-within"],"core-js/modules/es.array.every":["es.array.every"],"core-js/modules/es.array.fill":["es.array.fill"],"core-js/modules/es.array.filter":["es.array.filter"],"core-js/modules/es.array.find":["es.array.find"],"core-js/modules/es.array.find-index":["es.array.find-index"],"core-js/modules/es.array.find-last":["es.array.find-last"],"core-js/modules/es.array.find-last-index":["es.array.find-last-index"],"core-js/modules/es.array.flat":["es.array.flat"],"core-js/modules/es.array.flat-map":["es.array.flat-map"],"core-js/modules/es.array.for-each":["es.array.for-each"],"core-js/modules/es.array.from":["es.array.from"],"core-js/modules/es.array.from-async":["es.array.from-async"],"core-js/modules/es.array.includes":["es.array.includes"],"core-js/modules/es.array.index-of":["es.array.index-of"],"core-js/modules/es.array.is-array":["es.array.is-array"],"core-js/modules/es.array.iterator":["es.array.iterator"],"core-js/modules/es.array.join":["es.array.join"],"core-js/modules/es.array.last-index-of":["es.array.last-index-of"],"core-js/modules/es.array.map":["es.array.map"],"core-js/modules/es.array.of":["es.array.of"],"core-js/modules/es.array.push":["es.array.push"],"core-js/modules/es.array.reduce":["es.array.reduce"],"core-js/modules/es.array.reduce-right":["es.array.reduce-right"],"core-js/modules/es.array.reverse":["es.array.reverse"],"core-js/modules/es.array.slice":["es.array.slice"],"core-js/modules/es.array.some":["es.array.some"],"core-js/modules/es.array.sort":["es.array.sort"],"core-js/modules/es.array.species":["es.array.species"],"core-js/modules/es.array.splice":["es.array.splice"],"core-js/modules/es.array.to-reversed":["es.array.to-reversed"],"core-js/modules/es.array.to-sorted":["es.array.to-sorted"],"core-js/modules/es.array.to-spliced":["es.array.to-spliced"],"core-js/modules/es.array.unscopables.flat":["es.array.unscopables.flat"],"core-js/modules/es.array.unscopables.flat-map":["es.array.unscopables.flat-map"],"core-js/modules/es.array.unshift":["es.array.unshift"],"core-js/modules/es.array.with":["es.array.with"],"core-js/modules/es.async-disposable-stack.constructor":["es.async-disposable-stack.constructor"],"core-js/modules/es.async-iterator.async-dispose":["es.async-iterator.async-dispose"],"core-js/modules/es.data-view":["es.data-view"],"core-js/modules/es.data-view.constructor":["es.data-view.constructor"],"core-js/modules/es.data-view.get-float16":["es.data-view.get-float16"],"core-js/modules/es.data-view.set-float16":["es.data-view.set-float16"],"core-js/modules/es.date.get-year":["es.date.get-year"],"core-js/modules/es.date.now":["es.date.now"],"core-js/modules/es.date.set-year":["es.date.set-year"],"core-js/modules/es.date.to-gmt-string":["es.date.to-gmt-string"],"core-js/modules/es.date.to-iso-string":["es.date.to-iso-string"],"core-js/modules/es.date.to-json":["es.date.to-json"],"core-js/modules/es.date.to-primitive":["es.date.to-primitive"],"core-js/modules/es.date.to-string":["es.date.to-string"],"core-js/modules/es.disposable-stack.constructor":["es.disposable-stack.constructor"],"core-js/modules/es.error.cause":["es.error.cause"],"core-js/modules/es.error.is-error":["es.error.is-error"],"core-js/modules/es.error.to-string":["es.error.to-string"],"core-js/modules/es.escape":["es.escape"],"core-js/modules/es.function.bind":["es.function.bind"],"core-js/modules/es.function.has-instance":["es.function.has-instance"],"core-js/modules/es.function.name":["es.function.name"],"core-js/modules/es.global-this":["es.global-this"],"core-js/modules/es.iterator.concat":["es.iterator.concat"],"core-js/modules/es.iterator.constructor":["es.iterator.constructor"],"core-js/modules/es.iterator.dispose":["es.iterator.dispose"],"core-js/modules/es.iterator.drop":["es.iterator.drop"],"core-js/modules/es.iterator.every":["es.iterator.every"],"core-js/modules/es.iterator.filter":["es.iterator.filter"],"core-js/modules/es.iterator.find":["es.iterator.find"],"core-js/modules/es.iterator.flat-map":["es.iterator.flat-map"],"core-js/modules/es.iterator.for-each":["es.iterator.for-each"],"core-js/modules/es.iterator.from":["es.iterator.from"],"core-js/modules/es.iterator.map":["es.iterator.map"],"core-js/modules/es.iterator.reduce":["es.iterator.reduce"],"core-js/modules/es.iterator.some":["es.iterator.some"],"core-js/modules/es.iterator.take":["es.iterator.take"],"core-js/modules/es.iterator.to-array":["es.iterator.to-array"],"core-js/modules/es.json.is-raw-json":["es.json.is-raw-json"],"core-js/modules/es.json.parse":["es.json.parse"],"core-js/modules/es.json.raw-json":["es.json.raw-json"],"core-js/modules/es.json.stringify":["es.json.stringify"],"core-js/modules/es.json.to-string-tag":["es.json.to-string-tag"],"core-js/modules/es.map":["es.map"],"core-js/modules/es.map.constructor":["es.map.constructor"],"core-js/modules/es.map.get-or-insert":["es.map.get-or-insert"],"core-js/modules/es.map.get-or-insert-computed":["es.map.get-or-insert-computed"],"core-js/modules/es.map.group-by":["es.map.group-by"],"core-js/modules/es.math.acosh":["es.math.acosh"],"core-js/modules/es.math.asinh":["es.math.asinh"],"core-js/modules/es.math.atanh":["es.math.atanh"],"core-js/modules/es.math.cbrt":["es.math.cbrt"],"core-js/modules/es.math.clz32":["es.math.clz32"],"core-js/modules/es.math.cosh":["es.math.cosh"],"core-js/modules/es.math.expm1":["es.math.expm1"],"core-js/modules/es.math.f16round":["es.math.f16round"],"core-js/modules/es.math.fround":["es.math.fround"],"core-js/modules/es.math.hypot":["es.math.hypot"],"core-js/modules/es.math.imul":["es.math.imul"],"core-js/modules/es.math.log10":["es.math.log10"],"core-js/modules/es.math.log1p":["es.math.log1p"],"core-js/modules/es.math.log2":["es.math.log2"],"core-js/modules/es.math.sign":["es.math.sign"],"core-js/modules/es.math.sinh":["es.math.sinh"],"core-js/modules/es.math.sum-precise":["es.math.sum-precise"],"core-js/modules/es.math.tanh":["es.math.tanh"],"core-js/modules/es.math.to-string-tag":["es.math.to-string-tag"],"core-js/modules/es.math.trunc":["es.math.trunc"],"core-js/modules/es.number.constructor":["es.number.constructor"],"core-js/modules/es.number.epsilon":["es.number.epsilon"],"core-js/modules/es.number.is-finite":["es.number.is-finite"],"core-js/modules/es.number.is-integer":["es.number.is-integer"],"core-js/modules/es.number.is-nan":["es.number.is-nan"],"core-js/modules/es.number.is-safe-integer":["es.number.is-safe-integer"],"core-js/modules/es.number.max-safe-integer":["es.number.max-safe-integer"],"core-js/modules/es.number.min-safe-integer":["es.number.min-safe-integer"],"core-js/modules/es.number.parse-float":["es.number.parse-float"],"core-js/modules/es.number.parse-int":["es.number.parse-int"],"core-js/modules/es.number.to-exponential":["es.number.to-exponential"],"core-js/modules/es.number.to-fixed":["es.number.to-fixed"],"core-js/modules/es.number.to-precision":["es.number.to-precision"],"core-js/modules/es.object.assign":["es.object.assign"],"core-js/modules/es.object.create":["es.object.create"],"core-js/modules/es.object.define-getter":["es.object.define-getter"],"core-js/modules/es.object.define-properties":["es.object.define-properties"],"core-js/modules/es.object.define-property":["es.object.define-property"],"core-js/modules/es.object.define-setter":["es.object.define-setter"],"core-js/modules/es.object.entries":["es.object.entries"],"core-js/modules/es.object.freeze":["es.object.freeze"],"core-js/modules/es.object.from-entries":["es.object.from-entries"],"core-js/modules/es.object.get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/modules/es.object.get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/modules/es.object.get-own-property-names":["es.object.get-own-property-names"],"core-js/modules/es.object.get-own-property-symbols":["es.object.get-own-property-symbols"],"core-js/modules/es.object.get-prototype-of":["es.object.get-prototype-of"],"core-js/modules/es.object.group-by":["es.object.group-by"],"core-js/modules/es.object.has-own":["es.object.has-own"],"core-js/modules/es.object.is":["es.object.is"],"core-js/modules/es.object.is-extensible":["es.object.is-extensible"],"core-js/modules/es.object.is-frozen":["es.object.is-frozen"],"core-js/modules/es.object.is-sealed":["es.object.is-sealed"],"core-js/modules/es.object.keys":["es.object.keys"],"core-js/modules/es.object.lookup-getter":["es.object.lookup-getter"],"core-js/modules/es.object.lookup-setter":["es.object.lookup-setter"],"core-js/modules/es.object.prevent-extensions":["es.object.prevent-extensions"],"core-js/modules/es.object.proto":["es.object.proto"],"core-js/modules/es.object.seal":["es.object.seal"],"core-js/modules/es.object.set-prototype-of":["es.object.set-prototype-of"],"core-js/modules/es.object.to-string":["es.object.to-string"],"core-js/modules/es.object.values":["es.object.values"],"core-js/modules/es.parse-float":["es.parse-float"],"core-js/modules/es.parse-int":["es.parse-int"],"core-js/modules/es.promise":["es.promise"],"core-js/modules/es.promise.all":["es.promise.all"],"core-js/modules/es.promise.all-settled":["es.promise.all-settled"],"core-js/modules/es.promise.any":["es.promise.any"],"core-js/modules/es.promise.catch":["es.promise.catch"],"core-js/modules/es.promise.constructor":["es.promise.constructor"],"core-js/modules/es.promise.finally":["es.promise.finally"],"core-js/modules/es.promise.race":["es.promise.race"],"core-js/modules/es.promise.reject":["es.promise.reject"],"core-js/modules/es.promise.resolve":["es.promise.resolve"],"core-js/modules/es.promise.try":["es.promise.try"],"core-js/modules/es.promise.with-resolvers":["es.promise.with-resolvers"],"core-js/modules/es.reflect.apply":["es.reflect.apply"],"core-js/modules/es.reflect.construct":["es.reflect.construct"],"core-js/modules/es.reflect.define-property":["es.reflect.define-property"],"core-js/modules/es.reflect.delete-property":["es.reflect.delete-property"],"core-js/modules/es.reflect.get":["es.reflect.get"],"core-js/modules/es.reflect.get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/modules/es.reflect.get-prototype-of":["es.reflect.get-prototype-of"],"core-js/modules/es.reflect.has":["es.reflect.has"],"core-js/modules/es.reflect.is-extensible":["es.reflect.is-extensible"],"core-js/modules/es.reflect.own-keys":["es.reflect.own-keys"],"core-js/modules/es.reflect.prevent-extensions":["es.reflect.prevent-extensions"],"core-js/modules/es.reflect.set":["es.reflect.set"],"core-js/modules/es.reflect.set-prototype-of":["es.reflect.set-prototype-of"],"core-js/modules/es.reflect.to-string-tag":["es.reflect.to-string-tag"],"core-js/modules/es.regexp.constructor":["es.regexp.constructor"],"core-js/modules/es.regexp.dot-all":["es.regexp.dot-all"],"core-js/modules/es.regexp.escape":["es.regexp.escape"],"core-js/modules/es.regexp.exec":["es.regexp.exec"],"core-js/modules/es.regexp.flags":["es.regexp.flags"],"core-js/modules/es.regexp.sticky":["es.regexp.sticky"],"core-js/modules/es.regexp.test":["es.regexp.test"],"core-js/modules/es.regexp.to-string":["es.regexp.to-string"],"core-js/modules/es.set":["es.set"],"core-js/modules/es.set.constructor":["es.set.constructor"],"core-js/modules/es.set.difference.v2":["es.set.difference.v2"],"core-js/modules/es.set.intersection.v2":["es.set.intersection.v2"],"core-js/modules/es.set.is-disjoint-from.v2":["es.set.is-disjoint-from.v2"],"core-js/modules/es.set.is-subset-of.v2":["es.set.is-subset-of.v2"],"core-js/modules/es.set.is-superset-of.v2":["es.set.is-superset-of.v2"],"core-js/modules/es.set.symmetric-difference.v2":["es.set.symmetric-difference.v2"],"core-js/modules/es.set.union.v2":["es.set.union.v2"],"core-js/modules/es.string.anchor":["es.string.anchor"],"core-js/modules/es.string.at-alternative":["es.string.at-alternative"],"core-js/modules/es.string.big":["es.string.big"],"core-js/modules/es.string.blink":["es.string.blink"],"core-js/modules/es.string.bold":["es.string.bold"],"core-js/modules/es.string.code-point-at":["es.string.code-point-at"],"core-js/modules/es.string.ends-with":["es.string.ends-with"],"core-js/modules/es.string.fixed":["es.string.fixed"],"core-js/modules/es.string.fontcolor":["es.string.fontcolor"],"core-js/modules/es.string.fontsize":["es.string.fontsize"],"core-js/modules/es.string.from-code-point":["es.string.from-code-point"],"core-js/modules/es.string.includes":["es.string.includes"],"core-js/modules/es.string.is-well-formed":["es.string.is-well-formed"],"core-js/modules/es.string.italics":["es.string.italics"],"core-js/modules/es.string.iterator":["es.string.iterator"],"core-js/modules/es.string.link":["es.string.link"],"core-js/modules/es.string.match":["es.string.match"],"core-js/modules/es.string.match-all":["es.string.match-all"],"core-js/modules/es.string.pad-end":["es.string.pad-end"],"core-js/modules/es.string.pad-start":["es.string.pad-start"],"core-js/modules/es.string.raw":["es.string.raw"],"core-js/modules/es.string.repeat":["es.string.repeat"],"core-js/modules/es.string.replace":["es.string.replace"],"core-js/modules/es.string.replace-all":["es.string.replace-all"],"core-js/modules/es.string.search":["es.string.search"],"core-js/modules/es.string.small":["es.string.small"],"core-js/modules/es.string.split":["es.string.split"],"core-js/modules/es.string.starts-with":["es.string.starts-with"],"core-js/modules/es.string.strike":["es.string.strike"],"core-js/modules/es.string.sub":["es.string.sub"],"core-js/modules/es.string.substr":["es.string.substr"],"core-js/modules/es.string.sup":["es.string.sup"],"core-js/modules/es.string.to-well-formed":["es.string.to-well-formed"],"core-js/modules/es.string.trim":["es.string.trim"],"core-js/modules/es.string.trim-end":["es.string.trim-end"],"core-js/modules/es.string.trim-left":["es.string.trim-left"],"core-js/modules/es.string.trim-right":["es.string.trim-right"],"core-js/modules/es.string.trim-start":["es.string.trim-start"],"core-js/modules/es.suppressed-error.constructor":["es.suppressed-error.constructor"],"core-js/modules/es.symbol":["es.symbol"],"core-js/modules/es.symbol.async-dispose":["es.symbol.async-dispose"],"core-js/modules/es.symbol.async-iterator":["es.symbol.async-iterator"],"core-js/modules/es.symbol.constructor":["es.symbol.constructor"],"core-js/modules/es.symbol.description":["es.symbol.description"],"core-js/modules/es.symbol.dispose":["es.symbol.dispose"],"core-js/modules/es.symbol.for":["es.symbol.for"],"core-js/modules/es.symbol.has-instance":["es.symbol.has-instance"],"core-js/modules/es.symbol.is-concat-spreadable":["es.symbol.is-concat-spreadable"],"core-js/modules/es.symbol.iterator":["es.symbol.iterator"],"core-js/modules/es.symbol.key-for":["es.symbol.key-for"],"core-js/modules/es.symbol.match":["es.symbol.match"],"core-js/modules/es.symbol.match-all":["es.symbol.match-all"],"core-js/modules/es.symbol.replace":["es.symbol.replace"],"core-js/modules/es.symbol.search":["es.symbol.search"],"core-js/modules/es.symbol.species":["es.symbol.species"],"core-js/modules/es.symbol.split":["es.symbol.split"],"core-js/modules/es.symbol.to-primitive":["es.symbol.to-primitive"],"core-js/modules/es.symbol.to-string-tag":["es.symbol.to-string-tag"],"core-js/modules/es.symbol.unscopables":["es.symbol.unscopables"],"core-js/modules/es.typed-array.at":["es.typed-array.at"],"core-js/modules/es.typed-array.copy-within":["es.typed-array.copy-within"],"core-js/modules/es.typed-array.every":["es.typed-array.every"],"core-js/modules/es.typed-array.fill":["es.typed-array.fill"],"core-js/modules/es.typed-array.filter":["es.typed-array.filter"],"core-js/modules/es.typed-array.find":["es.typed-array.find"],"core-js/modules/es.typed-array.find-index":["es.typed-array.find-index"],"core-js/modules/es.typed-array.find-last":["es.typed-array.find-last"],"core-js/modules/es.typed-array.find-last-index":["es.typed-array.find-last-index"],"core-js/modules/es.typed-array.float32-array":["es.typed-array.float32-array"],"core-js/modules/es.typed-array.float64-array":["es.typed-array.float64-array"],"core-js/modules/es.typed-array.for-each":["es.typed-array.for-each"],"core-js/modules/es.typed-array.from":["es.typed-array.from"],"core-js/modules/es.typed-array.includes":["es.typed-array.includes"],"core-js/modules/es.typed-array.index-of":["es.typed-array.index-of"],"core-js/modules/es.typed-array.int16-array":["es.typed-array.int16-array"],"core-js/modules/es.typed-array.int32-array":["es.typed-array.int32-array"],"core-js/modules/es.typed-array.int8-array":["es.typed-array.int8-array"],"core-js/modules/es.typed-array.iterator":["es.typed-array.iterator"],"core-js/modules/es.typed-array.join":["es.typed-array.join"],"core-js/modules/es.typed-array.last-index-of":["es.typed-array.last-index-of"],"core-js/modules/es.typed-array.map":["es.typed-array.map"],"core-js/modules/es.typed-array.of":["es.typed-array.of"],"core-js/modules/es.typed-array.reduce":["es.typed-array.reduce"],"core-js/modules/es.typed-array.reduce-right":["es.typed-array.reduce-right"],"core-js/modules/es.typed-array.reverse":["es.typed-array.reverse"],"core-js/modules/es.typed-array.set":["es.typed-array.set"],"core-js/modules/es.typed-array.slice":["es.typed-array.slice"],"core-js/modules/es.typed-array.some":["es.typed-array.some"],"core-js/modules/es.typed-array.sort":["es.typed-array.sort"],"core-js/modules/es.typed-array.subarray":["es.typed-array.subarray"],"core-js/modules/es.typed-array.to-locale-string":["es.typed-array.to-locale-string"],"core-js/modules/es.typed-array.to-reversed":["es.typed-array.to-reversed"],"core-js/modules/es.typed-array.to-sorted":["es.typed-array.to-sorted"],"core-js/modules/es.typed-array.to-string":["es.typed-array.to-string"],"core-js/modules/es.typed-array.uint16-array":["es.typed-array.uint16-array"],"core-js/modules/es.typed-array.uint32-array":["es.typed-array.uint32-array"],"core-js/modules/es.typed-array.uint8-array":["es.typed-array.uint8-array"],"core-js/modules/es.typed-array.uint8-clamped-array":["es.typed-array.uint8-clamped-array"],"core-js/modules/es.typed-array.with":["es.typed-array.with"],"core-js/modules/es.uint8-array.from-base64":["es.uint8-array.from-base64"],"core-js/modules/es.uint8-array.from-hex":["es.uint8-array.from-hex"],"core-js/modules/es.uint8-array.set-from-base64":["es.uint8-array.set-from-base64"],"core-js/modules/es.uint8-array.set-from-hex":["es.uint8-array.set-from-hex"],"core-js/modules/es.uint8-array.to-base64":["es.uint8-array.to-base64"],"core-js/modules/es.uint8-array.to-hex":["es.uint8-array.to-hex"],"core-js/modules/es.unescape":["es.unescape"],"core-js/modules/es.weak-map":["es.weak-map"],"core-js/modules/es.weak-map.constructor":["es.weak-map.constructor"],"core-js/modules/es.weak-map.get-or-insert":["es.weak-map.get-or-insert"],"core-js/modules/es.weak-map.get-or-insert-computed":["es.weak-map.get-or-insert-computed"],"core-js/modules/es.weak-set":["es.weak-set"],"core-js/modules/es.weak-set.constructor":["es.weak-set.constructor"],"core-js/modules/esnext.aggregate-error":["esnext.aggregate-error"],"core-js/modules/esnext.array-buffer.detached":["esnext.array-buffer.detached"],"core-js/modules/esnext.array-buffer.transfer":["esnext.array-buffer.transfer"],"core-js/modules/esnext.array-buffer.transfer-to-fixed-length":["esnext.array-buffer.transfer-to-fixed-length"],"core-js/modules/esnext.array.at":["esnext.array.at"],"core-js/modules/esnext.array.filter-out":["esnext.array.filter-out"],"core-js/modules/esnext.array.filter-reject":["esnext.array.filter-reject"],"core-js/modules/esnext.array.find-last":["esnext.array.find-last"],"core-js/modules/esnext.array.find-last-index":["esnext.array.find-last-index"],"core-js/modules/esnext.array.from-async":["esnext.array.from-async"],"core-js/modules/esnext.array.group":["esnext.array.group"],"core-js/modules/esnext.array.group-by":["esnext.array.group-by"],"core-js/modules/esnext.array.group-by-to-map":["esnext.array.group-by-to-map"],"core-js/modules/esnext.array.group-to-map":["esnext.array.group-to-map"],"core-js/modules/esnext.array.is-template-object":["esnext.array.is-template-object"],"core-js/modules/esnext.array.last-index":["esnext.array.last-index"],"core-js/modules/esnext.array.last-item":["esnext.array.last-item"],"core-js/modules/esnext.array.to-reversed":["esnext.array.to-reversed"],"core-js/modules/esnext.array.to-sorted":["esnext.array.to-sorted"],"core-js/modules/esnext.array.to-spliced":["esnext.array.to-spliced"],"core-js/modules/esnext.array.unique-by":["esnext.array.unique-by"],"core-js/modules/esnext.array.with":["esnext.array.with"],"core-js/modules/esnext.async-disposable-stack.constructor":["esnext.async-disposable-stack.constructor"],"core-js/modules/esnext.async-iterator.as-indexed-pairs":["esnext.async-iterator.as-indexed-pairs"],"core-js/modules/esnext.async-iterator.async-dispose":["esnext.async-iterator.async-dispose"],"core-js/modules/esnext.async-iterator.constructor":["esnext.async-iterator.constructor"],"core-js/modules/esnext.async-iterator.drop":["esnext.async-iterator.drop"],"core-js/modules/esnext.async-iterator.every":["esnext.async-iterator.every"],"core-js/modules/esnext.async-iterator.filter":["esnext.async-iterator.filter"],"core-js/modules/esnext.async-iterator.find":["esnext.async-iterator.find"],"core-js/modules/esnext.async-iterator.flat-map":["esnext.async-iterator.flat-map"],"core-js/modules/esnext.async-iterator.for-each":["esnext.async-iterator.for-each"],"core-js/modules/esnext.async-iterator.from":["esnext.async-iterator.from"],"core-js/modules/esnext.async-iterator.indexed":["esnext.async-iterator.indexed"],"core-js/modules/esnext.async-iterator.map":["esnext.async-iterator.map"],"core-js/modules/esnext.async-iterator.reduce":["esnext.async-iterator.reduce"],"core-js/modules/esnext.async-iterator.some":["esnext.async-iterator.some"],"core-js/modules/esnext.async-iterator.take":["esnext.async-iterator.take"],"core-js/modules/esnext.async-iterator.to-array":["esnext.async-iterator.to-array"],"core-js/modules/esnext.bigint.range":["esnext.bigint.range"],"core-js/modules/esnext.composite-key":["esnext.composite-key"],"core-js/modules/esnext.composite-symbol":["esnext.composite-symbol"],"core-js/modules/esnext.data-view.get-float16":["esnext.data-view.get-float16"],"core-js/modules/esnext.data-view.get-uint8-clamped":["esnext.data-view.get-uint8-clamped"],"core-js/modules/esnext.data-view.set-float16":["esnext.data-view.set-float16"],"core-js/modules/esnext.data-view.set-uint8-clamped":["esnext.data-view.set-uint8-clamped"],"core-js/modules/esnext.disposable-stack.constructor":["esnext.disposable-stack.constructor"],"core-js/modules/esnext.error.is-error":["esnext.error.is-error"],"core-js/modules/esnext.function.demethodize":["esnext.function.demethodize"],"core-js/modules/esnext.function.is-callable":["esnext.function.is-callable"],"core-js/modules/esnext.function.is-constructor":["esnext.function.is-constructor"],"core-js/modules/esnext.function.metadata":["esnext.function.metadata"],"core-js/modules/esnext.function.un-this":["esnext.function.un-this"],"core-js/modules/esnext.global-this":["esnext.global-this"],"core-js/modules/esnext.iterator.as-indexed-pairs":["esnext.iterator.as-indexed-pairs"],"core-js/modules/esnext.iterator.chunks":["esnext.iterator.chunks"],"core-js/modules/esnext.iterator.concat":["esnext.iterator.concat"],"core-js/modules/esnext.iterator.constructor":["esnext.iterator.constructor"],"core-js/modules/esnext.iterator.dispose":["esnext.iterator.dispose"],"core-js/modules/esnext.iterator.drop":["esnext.iterator.drop"],"core-js/modules/esnext.iterator.every":["esnext.iterator.every"],"core-js/modules/esnext.iterator.filter":["esnext.iterator.filter"],"core-js/modules/esnext.iterator.find":["esnext.iterator.find"],"core-js/modules/esnext.iterator.flat-map":["esnext.iterator.flat-map"],"core-js/modules/esnext.iterator.for-each":["esnext.iterator.for-each"],"core-js/modules/esnext.iterator.from":["esnext.iterator.from"],"core-js/modules/esnext.iterator.indexed":["esnext.iterator.indexed"],"core-js/modules/esnext.iterator.map":["esnext.iterator.map"],"core-js/modules/esnext.iterator.range":["esnext.iterator.range"],"core-js/modules/esnext.iterator.reduce":["esnext.iterator.reduce"],"core-js/modules/esnext.iterator.sliding":["esnext.iterator.sliding"],"core-js/modules/esnext.iterator.some":["esnext.iterator.some"],"core-js/modules/esnext.iterator.take":["esnext.iterator.take"],"core-js/modules/esnext.iterator.to-array":["esnext.iterator.to-array"],"core-js/modules/esnext.iterator.to-async":["esnext.iterator.to-async"],"core-js/modules/esnext.iterator.windows":["esnext.iterator.windows"],"core-js/modules/esnext.iterator.zip":["esnext.iterator.zip"],"core-js/modules/esnext.iterator.zip-keyed":["esnext.iterator.zip-keyed"],"core-js/modules/esnext.json.is-raw-json":["esnext.json.is-raw-json"],"core-js/modules/esnext.json.parse":["esnext.json.parse"],"core-js/modules/esnext.json.raw-json":["esnext.json.raw-json"],"core-js/modules/esnext.map.delete-all":["esnext.map.delete-all"],"core-js/modules/esnext.map.emplace":["esnext.map.emplace"],"core-js/modules/esnext.map.every":["esnext.map.every"],"core-js/modules/esnext.map.filter":["esnext.map.filter"],"core-js/modules/esnext.map.find":["esnext.map.find"],"core-js/modules/esnext.map.find-key":["esnext.map.find-key"],"core-js/modules/esnext.map.from":["esnext.map.from"],"core-js/modules/esnext.map.get-or-insert":["esnext.map.get-or-insert"],"core-js/modules/esnext.map.get-or-insert-computed":["esnext.map.get-or-insert-computed"],"core-js/modules/esnext.map.group-by":["esnext.map.group-by"],"core-js/modules/esnext.map.includes":["esnext.map.includes"],"core-js/modules/esnext.map.key-by":["esnext.map.key-by"],"core-js/modules/esnext.map.key-of":["esnext.map.key-of"],"core-js/modules/esnext.map.map-keys":["esnext.map.map-keys"],"core-js/modules/esnext.map.map-values":["esnext.map.map-values"],"core-js/modules/esnext.map.merge":["esnext.map.merge"],"core-js/modules/esnext.map.of":["esnext.map.of"],"core-js/modules/esnext.map.reduce":["esnext.map.reduce"],"core-js/modules/esnext.map.some":["esnext.map.some"],"core-js/modules/esnext.map.update":["esnext.map.update"],"core-js/modules/esnext.map.update-or-insert":["esnext.map.update-or-insert"],"core-js/modules/esnext.map.upsert":["esnext.map.upsert"],"core-js/modules/esnext.math.clamp":["esnext.math.clamp"],"core-js/modules/esnext.math.deg-per-rad":["esnext.math.deg-per-rad"],"core-js/modules/esnext.math.degrees":["esnext.math.degrees"],"core-js/modules/esnext.math.f16round":["esnext.math.f16round"],"core-js/modules/esnext.math.fscale":["esnext.math.fscale"],"core-js/modules/esnext.math.iaddh":["esnext.math.iaddh"],"core-js/modules/esnext.math.imulh":["esnext.math.imulh"],"core-js/modules/esnext.math.isubh":["esnext.math.isubh"],"core-js/modules/esnext.math.rad-per-deg":["esnext.math.rad-per-deg"],"core-js/modules/esnext.math.radians":["esnext.math.radians"],"core-js/modules/esnext.math.scale":["esnext.math.scale"],"core-js/modules/esnext.math.seeded-prng":["esnext.math.seeded-prng"],"core-js/modules/esnext.math.signbit":["esnext.math.signbit"],"core-js/modules/esnext.math.sum-precise":["esnext.math.sum-precise"],"core-js/modules/esnext.math.umulh":["esnext.math.umulh"],"core-js/modules/esnext.number.clamp":["esnext.number.clamp"],"core-js/modules/esnext.number.from-string":["esnext.number.from-string"],"core-js/modules/esnext.number.range":["esnext.number.range"],"core-js/modules/esnext.object.group-by":["esnext.object.group-by"],"core-js/modules/esnext.object.has-own":["esnext.object.has-own"],"core-js/modules/esnext.object.iterate-entries":["esnext.object.iterate-entries"],"core-js/modules/esnext.object.iterate-keys":["esnext.object.iterate-keys"],"core-js/modules/esnext.object.iterate-values":["esnext.object.iterate-values"],"core-js/modules/esnext.observable":["esnext.observable"],"core-js/modules/esnext.observable.constructor":["esnext.observable.constructor"],"core-js/modules/esnext.observable.from":["esnext.observable.from"],"core-js/modules/esnext.observable.of":["esnext.observable.of"],"core-js/modules/esnext.promise.all-settled":["esnext.promise.all-settled"],"core-js/modules/esnext.promise.any":["esnext.promise.any"],"core-js/modules/esnext.promise.try":["esnext.promise.try"],"core-js/modules/esnext.promise.with-resolvers":["esnext.promise.with-resolvers"],"core-js/modules/esnext.reflect.define-metadata":["esnext.reflect.define-metadata"],"core-js/modules/esnext.reflect.delete-metadata":["esnext.reflect.delete-metadata"],"core-js/modules/esnext.reflect.get-metadata":["esnext.reflect.get-metadata"],"core-js/modules/esnext.reflect.get-metadata-keys":["esnext.reflect.get-metadata-keys"],"core-js/modules/esnext.reflect.get-own-metadata":["esnext.reflect.get-own-metadata"],"core-js/modules/esnext.reflect.get-own-metadata-keys":["esnext.reflect.get-own-metadata-keys"],"core-js/modules/esnext.reflect.has-metadata":["esnext.reflect.has-metadata"],"core-js/modules/esnext.reflect.has-own-metadata":["esnext.reflect.has-own-metadata"],"core-js/modules/esnext.reflect.metadata":["esnext.reflect.metadata"],"core-js/modules/esnext.regexp.escape":["esnext.regexp.escape"],"core-js/modules/esnext.set.add-all":["esnext.set.add-all"],"core-js/modules/esnext.set.delete-all":["esnext.set.delete-all"],"core-js/modules/esnext.set.difference":["esnext.set.difference"],"core-js/modules/esnext.set.difference.v2":["esnext.set.difference.v2"],"core-js/modules/esnext.set.every":["esnext.set.every"],"core-js/modules/esnext.set.filter":["esnext.set.filter"],"core-js/modules/esnext.set.find":["esnext.set.find"],"core-js/modules/esnext.set.from":["esnext.set.from"],"core-js/modules/esnext.set.intersection":["esnext.set.intersection"],"core-js/modules/esnext.set.intersection.v2":["esnext.set.intersection.v2"],"core-js/modules/esnext.set.is-disjoint-from":["esnext.set.is-disjoint-from"],"core-js/modules/esnext.set.is-disjoint-from.v2":["esnext.set.is-disjoint-from.v2"],"core-js/modules/esnext.set.is-subset-of":["esnext.set.is-subset-of"],"core-js/modules/esnext.set.is-subset-of.v2":["esnext.set.is-subset-of.v2"],"core-js/modules/esnext.set.is-superset-of":["esnext.set.is-superset-of"],"core-js/modules/esnext.set.is-superset-of.v2":["esnext.set.is-superset-of.v2"],"core-js/modules/esnext.set.join":["esnext.set.join"],"core-js/modules/esnext.set.map":["esnext.set.map"],"core-js/modules/esnext.set.of":["esnext.set.of"],"core-js/modules/esnext.set.reduce":["esnext.set.reduce"],"core-js/modules/esnext.set.some":["esnext.set.some"],"core-js/modules/esnext.set.symmetric-difference":["esnext.set.symmetric-difference"],"core-js/modules/esnext.set.symmetric-difference.v2":["esnext.set.symmetric-difference.v2"],"core-js/modules/esnext.set.union":["esnext.set.union"],"core-js/modules/esnext.set.union.v2":["esnext.set.union.v2"],"core-js/modules/esnext.string.at":["esnext.string.at"],"core-js/modules/esnext.string.at-alternative":["esnext.string.at-alternative"],"core-js/modules/esnext.string.code-points":["esnext.string.code-points"],"core-js/modules/esnext.string.cooked":["esnext.string.cooked"],"core-js/modules/esnext.string.dedent":["esnext.string.dedent"],"core-js/modules/esnext.string.is-well-formed":["esnext.string.is-well-formed"],"core-js/modules/esnext.string.match-all":["esnext.string.match-all"],"core-js/modules/esnext.string.replace-all":["esnext.string.replace-all"],"core-js/modules/esnext.string.to-well-formed":["esnext.string.to-well-formed"],"core-js/modules/esnext.suppressed-error.constructor":["esnext.suppressed-error.constructor"],"core-js/modules/esnext.symbol.async-dispose":["esnext.symbol.async-dispose"],"core-js/modules/esnext.symbol.custom-matcher":["esnext.symbol.custom-matcher"],"core-js/modules/esnext.symbol.dispose":["esnext.symbol.dispose"],"core-js/modules/esnext.symbol.is-registered":["esnext.symbol.is-registered"],"core-js/modules/esnext.symbol.is-registered-symbol":["esnext.symbol.is-registered-symbol"],"core-js/modules/esnext.symbol.is-well-known":["esnext.symbol.is-well-known"],"core-js/modules/esnext.symbol.is-well-known-symbol":["esnext.symbol.is-well-known-symbol"],"core-js/modules/esnext.symbol.matcher":["esnext.symbol.matcher"],"core-js/modules/esnext.symbol.metadata":["esnext.symbol.metadata"],"core-js/modules/esnext.symbol.metadata-key":["esnext.symbol.metadata-key"],"core-js/modules/esnext.symbol.observable":["esnext.symbol.observable"],"core-js/modules/esnext.symbol.pattern-match":["esnext.symbol.pattern-match"],"core-js/modules/esnext.symbol.replace-all":["esnext.symbol.replace-all"],"core-js/modules/esnext.typed-array.at":["esnext.typed-array.at"],"core-js/modules/esnext.typed-array.filter-out":["esnext.typed-array.filter-out"],"core-js/modules/esnext.typed-array.filter-reject":["esnext.typed-array.filter-reject"],"core-js/modules/esnext.typed-array.find-last":["esnext.typed-array.find-last"],"core-js/modules/esnext.typed-array.find-last-index":["esnext.typed-array.find-last-index"],"core-js/modules/esnext.typed-array.from-async":["esnext.typed-array.from-async"],"core-js/modules/esnext.typed-array.group-by":["esnext.typed-array.group-by"],"core-js/modules/esnext.typed-array.to-reversed":["esnext.typed-array.to-reversed"],"core-js/modules/esnext.typed-array.to-sorted":["esnext.typed-array.to-sorted"],"core-js/modules/esnext.typed-array.to-spliced":["esnext.typed-array.to-spliced"],"core-js/modules/esnext.typed-array.unique-by":["esnext.typed-array.unique-by"],"core-js/modules/esnext.typed-array.with":["esnext.typed-array.with"],"core-js/modules/esnext.uint8-array.from-base64":["esnext.uint8-array.from-base64"],"core-js/modules/esnext.uint8-array.from-hex":["esnext.uint8-array.from-hex"],"core-js/modules/esnext.uint8-array.set-from-base64":["esnext.uint8-array.set-from-base64"],"core-js/modules/esnext.uint8-array.set-from-hex":["esnext.uint8-array.set-from-hex"],"core-js/modules/esnext.uint8-array.to-base64":["esnext.uint8-array.to-base64"],"core-js/modules/esnext.uint8-array.to-hex":["esnext.uint8-array.to-hex"],"core-js/modules/esnext.weak-map.delete-all":["esnext.weak-map.delete-all"],"core-js/modules/esnext.weak-map.emplace":["esnext.weak-map.emplace"],"core-js/modules/esnext.weak-map.from":["esnext.weak-map.from"],"core-js/modules/esnext.weak-map.get-or-insert":["esnext.weak-map.get-or-insert"],"core-js/modules/esnext.weak-map.get-or-insert-computed":["esnext.weak-map.get-or-insert-computed"],"core-js/modules/esnext.weak-map.of":["esnext.weak-map.of"],"core-js/modules/esnext.weak-map.upsert":["esnext.weak-map.upsert"],"core-js/modules/esnext.weak-set.add-all":["esnext.weak-set.add-all"],"core-js/modules/esnext.weak-set.delete-all":["esnext.weak-set.delete-all"],"core-js/modules/esnext.weak-set.from":["esnext.weak-set.from"],"core-js/modules/esnext.weak-set.of":["esnext.weak-set.of"],"core-js/modules/web.atob":["web.atob"],"core-js/modules/web.btoa":["web.btoa"],"core-js/modules/web.clear-immediate":["web.clear-immediate"],"core-js/modules/web.dom-collections.for-each":["web.dom-collections.for-each"],"core-js/modules/web.dom-collections.iterator":["web.dom-collections.iterator"],"core-js/modules/web.dom-exception.constructor":["web.dom-exception.constructor"],"core-js/modules/web.dom-exception.stack":["web.dom-exception.stack"],"core-js/modules/web.dom-exception.to-string-tag":["web.dom-exception.to-string-tag"],"core-js/modules/web.immediate":["web.immediate"],"core-js/modules/web.queue-microtask":["web.queue-microtask"],"core-js/modules/web.self":["web.self"],"core-js/modules/web.set-immediate":["web.set-immediate"],"core-js/modules/web.set-interval":["web.set-interval"],"core-js/modules/web.set-timeout":["web.set-timeout"],"core-js/modules/web.structured-clone":["web.structured-clone"],"core-js/modules/web.timers":["web.timers"],"core-js/modules/web.url":["web.url"],"core-js/modules/web.url-search-params":["web.url-search-params"],"core-js/modules/web.url-search-params.constructor":["web.url-search-params.constructor"],"core-js/modules/web.url-search-params.delete":["web.url-search-params.delete"],"core-js/modules/web.url-search-params.has":["web.url-search-params.has"],"core-js/modules/web.url-search-params.size":["web.url-search-params.size"],"core-js/modules/web.url.can-parse":["web.url.can-parse"],"core-js/modules/web.url.constructor":["web.url.constructor"],"core-js/modules/web.url.parse":["web.url.parse"],"core-js/modules/web.url.to-json":["web.url.to-json"],"core-js/proposals":["es.map","es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/proposals/accessible-object-hasownproperty":["esnext.object.has-own"],"core-js/proposals/array-buffer-base64":["esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex"],"core-js/proposals/array-buffer-transfer":["esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length"],"core-js/proposals/array-filtering":["esnext.array.filter-out","esnext.array.filter-reject","esnext.typed-array.filter-out","esnext.typed-array.filter-reject"],"core-js/proposals/array-filtering-stage-1":["esnext.array.filter-reject","esnext.typed-array.filter-reject"],"core-js/proposals/array-find-from-last":["esnext.array.find-last","esnext.array.find-last-index","esnext.typed-array.find-last","esnext.typed-array.find-last-index"],"core-js/proposals/array-flat-map":["es.array.flat","es.array.flat-map","es.array.unscopables.flat","es.array.unscopables.flat-map"],"core-js/proposals/array-from-async":["esnext.array.from-async","esnext.typed-array.from-async"],"core-js/proposals/array-from-async-stage-2":["esnext.array.from-async"],"core-js/proposals/array-grouping":["esnext.array.group-by","esnext.array.group-by-to-map","esnext.typed-array.group-by"],"core-js/proposals/array-grouping-stage-3":["esnext.array.group-by","esnext.array.group-by-to-map"],"core-js/proposals/array-grouping-stage-3-2":["esnext.array.group","esnext.array.group-to-map"],"core-js/proposals/array-grouping-v2":["esnext.map.group-by","esnext.object.group-by"],"core-js/proposals/array-includes":["es.array.includes","es.typed-array.includes"],"core-js/proposals/array-is-template-object":["esnext.array.is-template-object"],"core-js/proposals/array-last":["esnext.array.last-index","esnext.array.last-item"],"core-js/proposals/array-unique":["es.map","esnext.array.unique-by","esnext.typed-array.unique-by"],"core-js/proposals/async-explicit-resource-management":["esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.symbol.async-dispose"],"core-js/proposals/async-iteration":["es.symbol.async-iterator"],"core-js/proposals/async-iterator-helpers":["esnext.async-iterator.constructor","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.iterator.to-async"],"core-js/proposals/change-array-by-copy":["esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with"],"core-js/proposals/change-array-by-copy-stage-4":["esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.with"],"core-js/proposals/collection-methods":["esnext.map.delete-all","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.set.add-all","esnext.set.delete-all","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.join","esnext.set.map","esnext.set.reduce","esnext.set.some","esnext.weak-map.delete-all","esnext.weak-set.add-all","esnext.weak-set.delete-all"],"core-js/proposals/collection-of-from":["esnext.map.from","esnext.map.of","esnext.set.from","esnext.set.of","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-set.from","esnext.weak-set.of"],"core-js/proposals/data-view-get-set-uint8-clamped":["esnext.data-view.get-uint8-clamped","esnext.data-view.set-uint8-clamped"],"core-js/proposals/decorator-metadata":["esnext.symbol.metadata-key"],"core-js/proposals/decorator-metadata-v2":["esnext.function.metadata","esnext.symbol.metadata"],"core-js/proposals/decorators":["esnext.symbol.metadata"],"core-js/proposals/efficient-64-bit-arithmetic":["esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.umulh"],"core-js/proposals/error-cause":["es.error.cause","es.aggregate-error.cause"],"core-js/proposals/explicit-resource-management":["esnext.suppressed-error.constructor","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.disposable-stack.constructor","esnext.iterator.dispose","esnext.symbol.async-dispose","esnext.symbol.dispose"],"core-js/proposals/extractors":["esnext.symbol.custom-matcher"],"core-js/proposals/float16":["esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.math.f16round"],"core-js/proposals/function-demethodize":["esnext.function.demethodize"],"core-js/proposals/function-is-callable-is-constructor":["esnext.function.is-callable","esnext.function.is-constructor"],"core-js/proposals/function-un-this":["esnext.function.un-this"],"core-js/proposals/global-this":["esnext.global-this"],"core-js/proposals/is-error":["esnext.error.is-error"],"core-js/proposals/iterator-chunking":["esnext.iterator.chunks","esnext.iterator.sliding","esnext.iterator.windows"],"core-js/proposals/iterator-chunking-v2":["esnext.iterator.chunks","esnext.iterator.windows"],"core-js/proposals/iterator-helpers":["esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async"],"core-js/proposals/iterator-helpers-stage-3":["esnext.async-iterator.constructor","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.iterator.constructor","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async"],"core-js/proposals/iterator-helpers-stage-3-2":["esnext.iterator.constructor","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array"],"core-js/proposals/iterator-range":["esnext.iterator.constructor","esnext.iterator.range"],"core-js/proposals/iterator-sequencing":["esnext.iterator.concat"],"core-js/proposals/joint-iteration":["esnext.iterator.zip","esnext.iterator.zip-keyed"],"core-js/proposals/json-parse-with-source":["esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json"],"core-js/proposals/keys-composition":["esnext.composite-key","esnext.composite-symbol"],"core-js/proposals/map-update-or-insert":["esnext.map.emplace","esnext.map.update-or-insert","esnext.map.upsert","esnext.weak-map.emplace","esnext.weak-map.upsert"],"core-js/proposals/map-upsert":["esnext.map.emplace","esnext.map.update-or-insert","esnext.map.upsert","esnext.weak-map.emplace","esnext.weak-map.upsert"],"core-js/proposals/map-upsert-stage-2":["esnext.map.emplace","esnext.weak-map.emplace"],"core-js/proposals/map-upsert-v4":["esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/proposals/math-clamp":["esnext.math.clamp"],"core-js/proposals/math-clamp-v2":["esnext.number.clamp"],"core-js/proposals/math-extensions":["esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale"],"core-js/proposals/math-signbit":["esnext.math.signbit"],"core-js/proposals/math-sum":["esnext.math.sum-precise"],"core-js/proposals/number-from-string":["esnext.number.from-string"],"core-js/proposals/number-range":["esnext.bigint.range","esnext.number.range"],"core-js/proposals/object-from-entries":["es.object.from-entries"],"core-js/proposals/object-getownpropertydescriptors":["es.object.get-own-property-descriptors"],"core-js/proposals/object-iteration":["esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values"],"core-js/proposals/object-values-entries":["es.object.entries","es.object.values"],"core-js/proposals/observable":["esnext.observable","esnext.symbol.observable"],"core-js/proposals/pattern-matching":["esnext.symbol.matcher","esnext.symbol.pattern-match"],"core-js/proposals/pattern-matching-v2":["esnext.symbol.custom-matcher"],"core-js/proposals/promise-all-settled":["esnext.promise.all-settled"],"core-js/proposals/promise-any":["esnext.aggregate-error","esnext.promise.any"],"core-js/proposals/promise-finally":["es.promise.finally"],"core-js/proposals/promise-try":["esnext.promise.try"],"core-js/proposals/promise-with-resolvers":["esnext.promise.with-resolvers"],"core-js/proposals/reflect-metadata":["esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata"],"core-js/proposals/regexp-dotall-flag":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.flags"],"core-js/proposals/regexp-escaping":["esnext.regexp.escape"],"core-js/proposals/regexp-named-groups":["es.regexp.constructor","es.regexp.exec","es.string.replace"],"core-js/proposals/relative-indexing-method":["es.string.at-alternative","esnext.array.at","esnext.typed-array.at"],"core-js/proposals/seeded-random":["esnext.math.seeded-prng"],"core-js/proposals/set-methods":["esnext.set.difference.v2","esnext.set.difference","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union"],"core-js/proposals/set-methods-v2":["esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2"],"core-js/proposals/string-at":["esnext.string.at"],"core-js/proposals/string-code-points":["esnext.string.code-points"],"core-js/proposals/string-cooked":["esnext.string.cooked"],"core-js/proposals/string-dedent":["esnext.string.dedent"],"core-js/proposals/string-left-right-trim":["es.string.trim-end","es.string.trim-start"],"core-js/proposals/string-match-all":["esnext.string.match-all"],"core-js/proposals/string-padding":["es.string.pad-end","es.string.pad-start"],"core-js/proposals/string-replace-all":["esnext.string.replace-all","esnext.symbol.replace-all"],"core-js/proposals/string-replace-all-stage-4":["esnext.string.replace-all"],"core-js/proposals/symbol-description":["es.symbol.description"],"core-js/proposals/symbol-predicates":["esnext.symbol.is-registered","esnext.symbol.is-well-known"],"core-js/proposals/symbol-predicates-v2":["esnext.symbol.is-registered-symbol","esnext.symbol.is-well-known-symbol"],"core-js/proposals/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/proposals/using-statement":["esnext.symbol.async-dispose","esnext.symbol.dispose"],"core-js/proposals/well-formed-stringify":["es.json.stringify"],"core-js/proposals/well-formed-unicode-strings":["esnext.string.is-well-formed","esnext.string.to-well-formed"],"core-js/stable":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.error.cause","es.error.is-error","es.error.to-string","es.aggregate-error","es.aggregate-error.cause","es.suppressed-error.constructor","es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string","es.disposable-stack.constructor","es.escape","es.function.bind","es.function.has-instance","es.function.name","es.global-this","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc","es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.parse-float","es.parse-int","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.array.from-async","es.async-disposable-stack.constructor","es.async-iterator.async-dispose","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag","es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex","es.unescape","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","es.weak-set","web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/stable/aggregate-error":[],"core-js/stable/array":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.from","es.array.includes","es.array.index-of","es.array.is-array","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.of","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.object.to-string","es.promise","es.array.from-async","es.string.iterator"],"core-js/stable/array-buffer":["es.array-buffer.constructor","es.array-buffer.is-view","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],"core-js/stable/array-buffer/constructor":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],"core-js/stable/array-buffer/detached":["es.array-buffer.constructor","es.array-buffer.slice","es.array-buffer.detached"],"core-js/stable/array-buffer/is-view":["es.array-buffer.is-view"],"core-js/stable/array-buffer/slice":["es.array-buffer.slice"],"core-js/stable/array-buffer/transfer":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer"],"core-js/stable/array-buffer/transfer-to-fixed-length":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.transfer-to-fixed-length"],"core-js/stable/array/at":["es.array.at"],"core-js/stable/array/concat":["es.array.concat"],"core-js/stable/array/copy-within":["es.array.copy-within"],"core-js/stable/array/entries":["es.array.iterator","es.object.to-string"],"core-js/stable/array/every":["es.array.every"],"core-js/stable/array/fill":["es.array.fill"],"core-js/stable/array/filter":["es.array.filter"],"core-js/stable/array/find":["es.array.find"],"core-js/stable/array/find-index":["es.array.find-index"],"core-js/stable/array/find-last":["es.array.find-last"],"core-js/stable/array/find-last-index":["es.array.find-last-index"],"core-js/stable/array/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/stable/array/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/stable/array/for-each":["es.array.for-each"],"core-js/stable/array/from":["es.array.from","es.string.iterator"],"core-js/stable/array/from-async":["es.array.iterator","es.object.to-string","es.promise","es.array.from-async","es.string.iterator"],"core-js/stable/array/includes":["es.array.includes"],"core-js/stable/array/index-of":["es.array.index-of"],"core-js/stable/array/is-array":["es.array.is-array"],"core-js/stable/array/iterator":["es.array.iterator","es.object.to-string"],"core-js/stable/array/join":["es.array.join"],"core-js/stable/array/keys":["es.array.iterator","es.object.to-string"],"core-js/stable/array/last-index-of":["es.array.last-index-of"],"core-js/stable/array/map":["es.array.map"],"core-js/stable/array/of":["es.array.of"],"core-js/stable/array/push":["es.array.push"],"core-js/stable/array/reduce":["es.array.reduce"],"core-js/stable/array/reduce-right":["es.array.reduce-right"],"core-js/stable/array/reverse":["es.array.reverse"],"core-js/stable/array/slice":["es.array.slice"],"core-js/stable/array/some":["es.array.some"],"core-js/stable/array/sort":["es.array.sort"],"core-js/stable/array/splice":["es.array.splice"],"core-js/stable/array/to-reversed":["es.array.to-reversed"],"core-js/stable/array/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/stable/array/to-spliced":["es.array.to-spliced"],"core-js/stable/array/unshift":["es.array.unshift"],"core-js/stable/array/values":["es.array.iterator","es.object.to-string"],"core-js/stable/array/virtual":["es.array.at","es.array.concat","es.array.copy-within","es.array.every","es.array.fill","es.array.filter","es.array.find","es.array.find-index","es.array.find-last","es.array.find-last-index","es.array.flat","es.array.flat-map","es.array.for-each","es.array.includes","es.array.index-of","es.array.iterator","es.array.join","es.array.last-index-of","es.array.map","es.array.push","es.array.reduce","es.array.reduce-right","es.array.reverse","es.array.slice","es.array.some","es.array.sort","es.array.species","es.array.splice","es.array.to-reversed","es.array.to-sorted","es.array.to-spliced","es.array.unscopables.flat","es.array.unscopables.flat-map","es.array.unshift","es.array.with","es.object.to-string"],"core-js/stable/array/virtual/at":["es.array.at"],"core-js/stable/array/virtual/concat":["es.array.concat"],"core-js/stable/array/virtual/copy-within":["es.array.copy-within"],"core-js/stable/array/virtual/entries":["es.array.iterator","es.object.to-string"],"core-js/stable/array/virtual/every":["es.array.every"],"core-js/stable/array/virtual/fill":["es.array.fill"],"core-js/stable/array/virtual/filter":["es.array.filter"],"core-js/stable/array/virtual/find":["es.array.find"],"core-js/stable/array/virtual/find-index":["es.array.find-index"],"core-js/stable/array/virtual/find-last":["es.array.find-last"],"core-js/stable/array/virtual/find-last-index":["es.array.find-last-index"],"core-js/stable/array/virtual/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/stable/array/virtual/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/stable/array/virtual/for-each":["es.array.for-each"],"core-js/stable/array/virtual/includes":["es.array.includes"],"core-js/stable/array/virtual/index-of":["es.array.index-of"],"core-js/stable/array/virtual/iterator":["es.array.iterator","es.object.to-string"],"core-js/stable/array/virtual/join":["es.array.join"],"core-js/stable/array/virtual/keys":["es.array.iterator","es.object.to-string"],"core-js/stable/array/virtual/last-index-of":["es.array.last-index-of"],"core-js/stable/array/virtual/map":["es.array.map"],"core-js/stable/array/virtual/push":["es.array.push"],"core-js/stable/array/virtual/reduce":["es.array.reduce"],"core-js/stable/array/virtual/reduce-right":["es.array.reduce-right"],"core-js/stable/array/virtual/reverse":["es.array.reverse"],"core-js/stable/array/virtual/slice":["es.array.slice"],"core-js/stable/array/virtual/some":["es.array.some"],"core-js/stable/array/virtual/sort":["es.array.sort"],"core-js/stable/array/virtual/splice":["es.array.splice"],"core-js/stable/array/virtual/to-reversed":["es.array.to-reversed"],"core-js/stable/array/virtual/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/stable/array/virtual/to-spliced":["es.array.to-spliced"],"core-js/stable/array/virtual/unshift":["es.array.unshift"],"core-js/stable/array/virtual/values":["es.array.iterator","es.object.to-string"],"core-js/stable/array/virtual/with":["es.array.with"],"core-js/stable/array/with":["es.array.with"],"core-js/stable/async-disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose"],"core-js/stable/async-disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.iterator.dispose","es.object.to-string","es.promise","es.async-disposable-stack.constructor","es.async-iterator.async-dispose"],"core-js/stable/async-iterator":["es.object.to-string","es.promise","es.async-iterator.async-dispose"],"core-js/stable/async-iterator/async-dispose":["es.object.to-string","es.promise","es.async-iterator.async-dispose"],"core-js/stable/atob":["es.error.to-string","es.object.to-string","web.atob","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/stable/btoa":["es.error.to-string","es.object.to-string","web.btoa","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/stable/clear-immediate":["web.immediate"],"core-js/stable/data-view":["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.data-view.get-float16","es.data-view.set-float16","es.object.to-string"],"core-js/stable/data-view/get-float16":["es.data-view.get-float16"],"core-js/stable/data-view/set-float16":["es.data-view.set-float16"],"core-js/stable/date":["es.date.get-year","es.date.now","es.date.set-year","es.date.to-gmt-string","es.date.to-iso-string","es.date.to-json","es.date.to-primitive","es.date.to-string"],"core-js/stable/date/get-year":["es.date.get-year"],"core-js/stable/date/now":["es.date.now"],"core-js/stable/date/set-year":["es.date.set-year"],"core-js/stable/date/to-gmt-string":["es.date.to-gmt-string"],"core-js/stable/date/to-iso-string":["es.date.to-iso-string","es.date.to-json"],"core-js/stable/date/to-json":["es.date.to-json"],"core-js/stable/date/to-primitive":["es.date.to-primitive"],"core-js/stable/date/to-string":["es.date.to-string"],"core-js/stable/disposable-stack":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string"],"core-js/stable/disposable-stack/constructor":["es.error.cause","es.error.to-string","es.suppressed-error.constructor","es.disposable-stack.constructor","es.iterator.dispose","es.object.to-string"],"core-js/stable/dom-collections":["es.array.iterator","es.object.to-string","web.dom-collections.for-each","web.dom-collections.iterator"],"core-js/stable/dom-collections/for-each":["web.dom-collections.for-each"],"core-js/stable/dom-collections/iterator":["es.object.to-string","web.dom-collections.iterator"],"core-js/stable/dom-exception":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/stable/dom-exception/constructor":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack"],"core-js/stable/dom-exception/to-string-tag":["web.dom-exception.to-string-tag"],"core-js/stable/error":["es.error.cause","es.error.is-error","es.error.to-string"],"core-js/stable/error/constructor":["es.error.cause"],"core-js/stable/error/is-error":["es.error.is-error","es.object.create"],"core-js/stable/error/to-string":["es.error.to-string"],"core-js/stable/escape":["es.escape"],"core-js/stable/function":["es.function.bind","es.function.has-instance","es.function.name"],"core-js/stable/function/bind":["es.function.bind"],"core-js/stable/function/has-instance":["es.function.has-instance"],"core-js/stable/function/name":["es.function.name"],"core-js/stable/function/virtual":["es.function.bind"],"core-js/stable/function/virtual/bind":["es.function.bind"],"core-js/stable/get-iterator":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/get-iterator-method":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/global-this":["es.global-this"],"core-js/stable/instance/at":["es.array.at","es.string.at-alternative"],"core-js/stable/instance/bind":["es.function.bind"],"core-js/stable/instance/code-point-at":["es.string.code-point-at"],"core-js/stable/instance/concat":["es.array.concat"],"core-js/stable/instance/copy-within":["es.array.copy-within"],"core-js/stable/instance/ends-with":["es.string.ends-with"],"core-js/stable/instance/entries":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/stable/instance/every":["es.array.every"],"core-js/stable/instance/fill":["es.array.fill"],"core-js/stable/instance/filter":["es.array.filter"],"core-js/stable/instance/find":["es.array.find"],"core-js/stable/instance/find-index":["es.array.find-index"],"core-js/stable/instance/find-last":["es.array.find-last"],"core-js/stable/instance/find-last-index":["es.array.find-last-index"],"core-js/stable/instance/flags":["es.regexp.flags"],"core-js/stable/instance/flat":["es.array.flat","es.array.unscopables.flat"],"core-js/stable/instance/flat-map":["es.array.flat-map","es.array.unscopables.flat-map"],"core-js/stable/instance/for-each":["es.array.for-each","web.dom-collections.for-each"],"core-js/stable/instance/includes":["es.array.includes","es.string.includes"],"core-js/stable/instance/index-of":["es.array.index-of"],"core-js/stable/instance/is-well-formed":["es.string.is-well-formed"],"core-js/stable/instance/keys":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/stable/instance/last-index-of":["es.array.last-index-of"],"core-js/stable/instance/map":["es.array.map"],"core-js/stable/instance/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/stable/instance/pad-end":["es.string.pad-end"],"core-js/stable/instance/pad-start":["es.string.pad-start"],"core-js/stable/instance/push":["es.array.push"],"core-js/stable/instance/reduce":["es.array.reduce"],"core-js/stable/instance/reduce-right":["es.array.reduce-right"],"core-js/stable/instance/repeat":["es.string.repeat"],"core-js/stable/instance/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/stable/instance/reverse":["es.array.reverse"],"core-js/stable/instance/slice":["es.array.slice"],"core-js/stable/instance/some":["es.array.some"],"core-js/stable/instance/sort":["es.array.sort"],"core-js/stable/instance/splice":["es.array.splice"],"core-js/stable/instance/starts-with":["es.string.starts-with"],"core-js/stable/instance/to-reversed":["es.array.to-reversed"],"core-js/stable/instance/to-sorted":["es.array.sort","es.array.to-sorted"],"core-js/stable/instance/to-spliced":["es.array.to-spliced"],"core-js/stable/instance/to-well-formed":["es.string.to-well-formed"],"core-js/stable/instance/trim":["es.string.trim"],"core-js/stable/instance/trim-end":["es.string.trim-end"],"core-js/stable/instance/trim-left":["es.string.trim-start"],"core-js/stable/instance/trim-right":["es.string.trim-end"],"core-js/stable/instance/trim-start":["es.string.trim-start"],"core-js/stable/instance/unshift":["es.array.unshift"],"core-js/stable/instance/values":["es.array.iterator","es.object.to-string","web.dom-collections.iterator"],"core-js/stable/instance/with":["es.array.with"],"core-js/stable/is-iterable":["es.array.iterator","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/iterator":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.dispose","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/iterator/concat":["es.array.iterator","es.iterator.constructor","es.iterator.concat","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","esnext.iterator.concat","web.dom-collections.iterator"],"core-js/stable/iterator/dispose":["es.iterator.dispose"],"core-js/stable/iterator/drop":["es.iterator.constructor","es.iterator.drop","es.object.to-string"],"core-js/stable/iterator/every":["es.iterator.constructor","es.iterator.every","es.object.to-string"],"core-js/stable/iterator/filter":["es.iterator.constructor","es.iterator.filter","es.object.to-string"],"core-js/stable/iterator/find":["es.iterator.constructor","es.iterator.find","es.object.to-string"],"core-js/stable/iterator/flat-map":["es.array.iterator","es.iterator.constructor","es.iterator.flat-map","es.object.to-string","web.dom-collections.iterator"],"core-js/stable/iterator/for-each":["es.iterator.constructor","es.iterator.for-each","es.object.to-string"],"core-js/stable/iterator/from":["es.array.iterator","es.iterator.constructor","es.iterator.drop","es.iterator.every","es.iterator.filter","es.iterator.find","es.iterator.flat-map","es.iterator.for-each","es.iterator.from","es.iterator.map","es.iterator.reduce","es.iterator.some","es.iterator.take","es.iterator.to-array","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/iterator/map":["es.iterator.constructor","es.iterator.map","es.object.to-string"],"core-js/stable/iterator/reduce":["es.iterator.constructor","es.iterator.reduce","es.object.to-string"],"core-js/stable/iterator/some":["es.iterator.constructor","es.iterator.some","es.object.to-string"],"core-js/stable/iterator/take":["es.iterator.constructor","es.iterator.take","es.object.to-string"],"core-js/stable/iterator/to-array":["es.iterator.constructor","es.iterator.to-array","es.object.to-string"],"core-js/stable/json":["es.date.to-json","es.json.is-raw-json","es.json.parse","es.json.raw-json","es.json.stringify","es.json.to-string-tag","es.object.create","es.object.freeze","es.object.keys"],"core-js/stable/json/is-raw-json":["es.json.is-raw-json"],"core-js/stable/json/parse":["es.json.parse","es.object.keys"],"core-js/stable/json/raw-json":["es.json.raw-json","es.object.create","es.object.freeze"],"core-js/stable/json/stringify":["es.date.to-json","es.json.stringify"],"core-js/stable/json/to-string-tag":["es.json.to-string-tag"],"core-js/stable/map":["es.array.iterator","es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/map/get-or-insert":["es.map","es.map.get-or-insert"],"core-js/stable/map/get-or-insert-computed":["es.map","es.map.get-or-insert-computed"],"core-js/stable/map/group-by":["es.map","es.map.group-by","es.map.get-or-insert","es.map.get-or-insert-computed","es.object.to-string"],"core-js/stable/math":["es.array.iterator","es.math.acosh","es.math.asinh","es.math.atanh","es.math.cbrt","es.math.clz32","es.math.cosh","es.math.expm1","es.math.fround","es.math.f16round","es.math.hypot","es.math.imul","es.math.log10","es.math.log1p","es.math.log2","es.math.sign","es.math.sinh","es.math.sum-precise","es.math.tanh","es.math.to-string-tag","es.math.trunc"],"core-js/stable/math/acosh":["es.math.acosh"],"core-js/stable/math/asinh":["es.math.asinh"],"core-js/stable/math/atanh":["es.math.atanh"],"core-js/stable/math/cbrt":["es.math.cbrt"],"core-js/stable/math/clz32":["es.math.clz32"],"core-js/stable/math/cosh":["es.math.cosh"],"core-js/stable/math/expm1":["es.math.expm1"],"core-js/stable/math/f16round":["es.math.f16round"],"core-js/stable/math/fround":["es.math.fround"],"core-js/stable/math/hypot":["es.math.hypot"],"core-js/stable/math/imul":["es.math.imul"],"core-js/stable/math/log10":["es.math.log10"],"core-js/stable/math/log1p":["es.math.log1p"],"core-js/stable/math/log2":["es.math.log2"],"core-js/stable/math/sign":["es.math.sign"],"core-js/stable/math/sinh":["es.math.sinh"],"core-js/stable/math/sum-precise":["es.array.iterator","es.math.sum-precise"],"core-js/stable/math/tanh":["es.math.tanh"],"core-js/stable/math/to-string-tag":["es.math.to-string-tag"],"core-js/stable/math/trunc":["es.math.trunc"],"core-js/stable/number":["es.number.constructor","es.number.epsilon","es.number.is-finite","es.number.is-integer","es.number.is-nan","es.number.is-safe-integer","es.number.max-safe-integer","es.number.min-safe-integer","es.number.parse-float","es.number.parse-int","es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/stable/number/constructor":["es.number.constructor"],"core-js/stable/number/epsilon":["es.number.epsilon"],"core-js/stable/number/is-finite":["es.number.is-finite"],"core-js/stable/number/is-integer":["es.number.is-integer"],"core-js/stable/number/is-nan":["es.number.is-nan"],"core-js/stable/number/is-safe-integer":["es.number.is-safe-integer"],"core-js/stable/number/max-safe-integer":["es.number.max-safe-integer"],"core-js/stable/number/min-safe-integer":["es.number.min-safe-integer"],"core-js/stable/number/parse-float":["es.number.parse-float"],"core-js/stable/number/parse-int":["es.number.parse-int"],"core-js/stable/number/to-exponential":["es.number.to-exponential"],"core-js/stable/number/to-fixed":["es.number.to-fixed"],"core-js/stable/number/to-precision":["es.number.to-precision"],"core-js/stable/number/virtual":["es.number.to-exponential","es.number.to-fixed","es.number.to-precision"],"core-js/stable/number/virtual/to-exponential":["es.number.to-exponential"],"core-js/stable/number/virtual/to-fixed":["es.number.to-fixed"],"core-js/stable/number/virtual/to-precision":["es.number.to-precision"],"core-js/stable/object":["es.symbol","es.json.to-string-tag","es.math.to-string-tag","es.object.assign","es.object.create","es.object.define-getter","es.object.define-properties","es.object.define-property","es.object.define-setter","es.object.entries","es.object.freeze","es.object.from-entries","es.object.get-own-property-descriptor","es.object.get-own-property-descriptors","es.object.get-own-property-names","es.object.get-prototype-of","es.object.group-by","es.object.has-own","es.object.is","es.object.is-extensible","es.object.is-frozen","es.object.is-sealed","es.object.keys","es.object.lookup-getter","es.object.lookup-setter","es.object.prevent-extensions","es.object.proto","es.object.seal","es.object.set-prototype-of","es.object.to-string","es.object.values","es.reflect.to-string-tag","web.dom-collections.iterator"],"core-js/stable/object/assign":["es.object.assign"],"core-js/stable/object/create":["es.object.create"],"core-js/stable/object/define-getter":["es.object.define-getter"],"core-js/stable/object/define-properties":["es.object.define-properties"],"core-js/stable/object/define-property":["es.object.define-property"],"core-js/stable/object/define-setter":["es.object.define-setter"],"core-js/stable/object/entries":["es.object.entries"],"core-js/stable/object/freeze":["es.object.freeze"],"core-js/stable/object/from-entries":["es.array.iterator","es.object.from-entries","web.dom-collections.iterator"],"core-js/stable/object/get-own-property-descriptor":["es.object.get-own-property-descriptor"],"core-js/stable/object/get-own-property-descriptors":["es.object.get-own-property-descriptors"],"core-js/stable/object/get-own-property-names":["es.object.get-own-property-names"],"core-js/stable/object/get-own-property-symbols":["es.symbol"],"core-js/stable/object/get-prototype-of":["es.object.get-prototype-of"],"core-js/stable/object/group-by":["es.object.create","es.object.group-by"],"core-js/stable/object/has-own":["es.object.has-own"],"core-js/stable/object/is":["es.object.is"],"core-js/stable/object/is-extensible":["es.object.is-extensible"],"core-js/stable/object/is-frozen":["es.object.is-frozen"],"core-js/stable/object/is-sealed":["es.object.is-sealed"],"core-js/stable/object/keys":["es.object.keys"],"core-js/stable/object/lookup-getter":["es.object.lookup-getter"],"core-js/stable/object/lookup-setter":["es.object.lookup-setter"],"core-js/stable/object/prevent-extensions":["es.object.prevent-extensions"],"core-js/stable/object/proto":["es.object.proto"],"core-js/stable/object/seal":["es.object.seal"],"core-js/stable/object/set-prototype-of":["es.object.set-prototype-of"],"core-js/stable/object/to-string":["es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/stable/object/values":["es.object.values"],"core-js/stable/parse-float":["es.parse-float"],"core-js/stable/parse-int":["es.parse-int"],"core-js/stable/promise":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.promise.any","es.promise.finally","es.promise.try","es.promise.with-resolvers","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/promise/all-settled":["es.array.iterator","es.object.to-string","es.promise","es.promise.all-settled","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/promise/any":["es.aggregate-error","es.array.iterator","es.object.to-string","es.promise","es.promise.any","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/promise/finally":["es.object.to-string","es.promise","es.promise.finally"],"core-js/stable/promise/try":["es.object.to-string","es.promise","es.promise.try"],"core-js/stable/promise/with-resolvers":["es.promise","es.promise.with-resolvers"],"core-js/stable/queue-microtask":["web.queue-microtask"],"core-js/stable/reflect":["es.object.to-string","es.reflect.apply","es.reflect.construct","es.reflect.define-property","es.reflect.delete-property","es.reflect.get","es.reflect.get-own-property-descriptor","es.reflect.get-prototype-of","es.reflect.has","es.reflect.is-extensible","es.reflect.own-keys","es.reflect.prevent-extensions","es.reflect.set","es.reflect.set-prototype-of","es.reflect.to-string-tag"],"core-js/stable/reflect/apply":["es.reflect.apply"],"core-js/stable/reflect/construct":["es.reflect.construct"],"core-js/stable/reflect/define-property":["es.reflect.define-property"],"core-js/stable/reflect/delete-property":["es.reflect.delete-property"],"core-js/stable/reflect/get":["es.reflect.get"],"core-js/stable/reflect/get-own-property-descriptor":["es.reflect.get-own-property-descriptor"],"core-js/stable/reflect/get-prototype-of":["es.reflect.get-prototype-of"],"core-js/stable/reflect/has":["es.reflect.has"],"core-js/stable/reflect/is-extensible":["es.reflect.is-extensible"],"core-js/stable/reflect/own-keys":["es.reflect.own-keys"],"core-js/stable/reflect/prevent-extensions":["es.reflect.prevent-extensions"],"core-js/stable/reflect/set":["es.reflect.set"],"core-js/stable/reflect/set-prototype-of":["es.reflect.set-prototype-of"],"core-js/stable/reflect/to-string-tag":["es.reflect.to-string-tag"],"core-js/stable/regexp":["es.regexp.constructor","es.regexp.escape","es.regexp.dot-all","es.regexp.exec","es.regexp.flags","es.regexp.sticky","es.regexp.test","es.regexp.to-string","es.string.match","es.string.replace","es.string.search","es.string.split"],"core-js/stable/regexp/constructor":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky"],"core-js/stable/regexp/dot-all":["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec"],"core-js/stable/regexp/escape":["es.regexp.escape"],"core-js/stable/regexp/flags":["es.regexp.flags"],"core-js/stable/regexp/match":["es.regexp.exec","es.string.match"],"core-js/stable/regexp/replace":["es.regexp.exec","es.string.replace"],"core-js/stable/regexp/search":["es.regexp.exec","es.string.search"],"core-js/stable/regexp/split":["es.regexp.exec","es.string.split"],"core-js/stable/regexp/sticky":["es.regexp.constructor","es.regexp.exec","es.regexp.sticky"],"core-js/stable/regexp/test":["es.regexp.exec","es.regexp.test"],"core-js/stable/regexp/to-string":["es.regexp.to-string"],"core-js/stable/self":["web.self"],"core-js/stable/set":["es.array.iterator","es.object.to-string","es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/set-immediate":["web.immediate"],"core-js/stable/set-interval":["web.timers"],"core-js/stable/set-timeout":["web.timers"],"core-js/stable/set/difference":["es.set","es.set.difference.v2"],"core-js/stable/set/intersection":["es.set","es.set.intersection.v2"],"core-js/stable/set/is-disjoint-from":["es.set","es.set.is-disjoint-from.v2"],"core-js/stable/set/is-subset-of":["es.set","es.set.is-subset-of.v2"],"core-js/stable/set/is-superset-of":["es.set","es.set.is-superset-of.v2"],"core-js/stable/set/symmetric-difference":["es.set","es.set.symmetric-difference.v2"],"core-js/stable/set/union":["es.set","es.set.union.v2"],"core-js/stable/string":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.from-code-point","es.string.includes","es.string.is-well-formed","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.raw","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.to-well-formed","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup"],"core-js/stable/string/anchor":["es.string.anchor"],"core-js/stable/string/at":["es.string.at-alternative"],"core-js/stable/string/big":["es.string.big"],"core-js/stable/string/blink":["es.string.blink"],"core-js/stable/string/bold":["es.string.bold"],"core-js/stable/string/code-point-at":["es.string.code-point-at"],"core-js/stable/string/ends-with":["es.string.ends-with"],"core-js/stable/string/fixed":["es.string.fixed"],"core-js/stable/string/fontcolor":["es.string.fontcolor"],"core-js/stable/string/fontsize":["es.string.fontsize"],"core-js/stable/string/from-code-point":["es.string.from-code-point"],"core-js/stable/string/includes":["es.string.includes"],"core-js/stable/string/is-well-formed":["es.string.is-well-formed"],"core-js/stable/string/italics":["es.string.italics"],"core-js/stable/string/iterator":["es.object.to-string","es.string.iterator"],"core-js/stable/string/link":["es.string.link"],"core-js/stable/string/match":["es.regexp.exec","es.string.match"],"core-js/stable/string/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/stable/string/pad-end":["es.string.pad-end"],"core-js/stable/string/pad-start":["es.string.pad-start"],"core-js/stable/string/raw":["es.string.raw"],"core-js/stable/string/repeat":["es.string.repeat"],"core-js/stable/string/replace":["es.regexp.exec","es.string.replace"],"core-js/stable/string/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/stable/string/search":["es.regexp.exec","es.string.search"],"core-js/stable/string/small":["es.string.small"],"core-js/stable/string/split":["es.regexp.exec","es.string.split"],"core-js/stable/string/starts-with":["es.string.starts-with"],"core-js/stable/string/strike":["es.string.strike"],"core-js/stable/string/sub":["es.string.sub"],"core-js/stable/string/substr":["es.string.substr"],"core-js/stable/string/sup":["es.string.sup"],"core-js/stable/string/to-well-formed":["es.string.to-well-formed"],"core-js/stable/string/trim":["es.string.trim"],"core-js/stable/string/trim-end":["es.string.trim-end"],"core-js/stable/string/trim-left":["es.string.trim-start"],"core-js/stable/string/trim-right":["es.string.trim-end"],"core-js/stable/string/trim-start":["es.string.trim-start"],"core-js/stable/string/virtual":["es.object.to-string","es.regexp.exec","es.string.at-alternative","es.string.code-point-at","es.string.ends-with","es.string.includes","es.string.iterator","es.string.match","es.string.match-all","es.string.pad-end","es.string.pad-start","es.string.repeat","es.string.replace","es.string.replace-all","es.string.search","es.string.split","es.string.starts-with","es.string.substr","es.string.trim","es.string.trim-end","es.string.trim-start","es.string.anchor","es.string.big","es.string.blink","es.string.bold","es.string.fixed","es.string.fontcolor","es.string.fontsize","es.string.italics","es.string.link","es.string.small","es.string.strike","es.string.sub","es.string.sup"],"core-js/stable/string/virtual/anchor":["es.string.anchor"],"core-js/stable/string/virtual/at":["es.string.at-alternative"],"core-js/stable/string/virtual/big":["es.string.big"],"core-js/stable/string/virtual/blink":["es.string.blink"],"core-js/stable/string/virtual/bold":["es.string.bold"],"core-js/stable/string/virtual/code-point-at":["es.string.code-point-at"],"core-js/stable/string/virtual/ends-with":["es.string.ends-with"],"core-js/stable/string/virtual/fixed":["es.string.fixed"],"core-js/stable/string/virtual/fontcolor":["es.string.fontcolor"],"core-js/stable/string/virtual/fontsize":["es.string.fontsize"],"core-js/stable/string/virtual/includes":["es.string.includes"],"core-js/stable/string/virtual/is-well-formed":["es.string.is-well-formed"],"core-js/stable/string/virtual/italics":["es.string.italics"],"core-js/stable/string/virtual/iterator":["es.object.to-string","es.string.iterator"],"core-js/stable/string/virtual/link":["es.string.link"],"core-js/stable/string/virtual/match-all":["es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/stable/string/virtual/pad-end":["es.string.pad-end"],"core-js/stable/string/virtual/pad-start":["es.string.pad-start"],"core-js/stable/string/virtual/repeat":["es.string.repeat"],"core-js/stable/string/virtual/replace-all":["es.regexp.exec","es.string.replace","es.string.replace-all"],"core-js/stable/string/virtual/small":["es.string.small"],"core-js/stable/string/virtual/starts-with":["es.string.starts-with"],"core-js/stable/string/virtual/strike":["es.string.strike"],"core-js/stable/string/virtual/sub":["es.string.sub"],"core-js/stable/string/virtual/substr":["es.string.substr"],"core-js/stable/string/virtual/sup":["es.string.sup"],"core-js/stable/string/virtual/to-well-formed":["es.string.to-well-formed"],"core-js/stable/string/virtual/trim":["es.string.trim"],"core-js/stable/string/virtual/trim-end":["es.string.trim-end"],"core-js/stable/string/virtual/trim-left":["es.string.trim-start"],"core-js/stable/string/virtual/trim-right":["es.string.trim-end"],"core-js/stable/string/virtual/trim-start":["es.string.trim-start"],"core-js/stable/structured-clone":["es.error.to-string","es.array.iterator","es.map","es.object.keys","es.object.to-string","es.set","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.structured-clone"],"core-js/stable/suppressed-error":[],"core-js/stable/symbol":["es.symbol","es.symbol.description","es.symbol.async-dispose","es.symbol.async-iterator","es.symbol.dispose","es.symbol.has-instance","es.symbol.is-concat-spreadable","es.symbol.iterator","es.symbol.match","es.symbol.match-all","es.symbol.replace","es.symbol.search","es.symbol.species","es.symbol.split","es.symbol.to-primitive","es.symbol.to-string-tag","es.symbol.unscopables","es.array.concat","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag","web.dom-collections.iterator"],"core-js/stable/symbol/async-dispose":["es.symbol.async-dispose"],"core-js/stable/symbol/async-iterator":["es.symbol.async-iterator"],"core-js/stable/symbol/description":["es.symbol.description"],"core-js/stable/symbol/dispose":["es.symbol.dispose"],"core-js/stable/symbol/for":["es.symbol"],"core-js/stable/symbol/has-instance":["es.symbol.has-instance","es.function.has-instance"],"core-js/stable/symbol/is-concat-spreadable":["es.symbol.is-concat-spreadable","es.array.concat"],"core-js/stable/symbol/iterator":["es.symbol.iterator","es.array.iterator","es.object.to-string","es.string.iterator","web.dom-collections.iterator"],"core-js/stable/symbol/key-for":["es.symbol"],"core-js/stable/symbol/match":["es.symbol.match","es.regexp.exec","es.string.match"],"core-js/stable/symbol/match-all":["es.symbol.match-all","es.object.to-string","es.regexp.exec","es.string.match-all"],"core-js/stable/symbol/replace":["es.symbol.replace","es.regexp.exec","es.string.replace"],"core-js/stable/symbol/search":["es.symbol.search","es.regexp.exec","es.string.search"],"core-js/stable/symbol/species":["es.symbol.species"],"core-js/stable/symbol/split":["es.symbol.split","es.regexp.exec","es.string.split"],"core-js/stable/symbol/to-primitive":["es.symbol.to-primitive","es.date.to-primitive"],"core-js/stable/symbol/to-string-tag":["es.symbol.to-string-tag","es.json.to-string-tag","es.math.to-string-tag","es.object.to-string","es.reflect.to-string-tag"],"core-js/stable/symbol/unscopables":["es.symbol.unscopables"],"core-js/stable/typed-array":["es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.float64-array","es.typed-array.int8-array","es.typed-array.int16-array","es.typed-array.int32-array","es.typed-array.uint8-array","es.typed-array.uint8-clamped-array","es.typed-array.uint16-array","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/at":["es.typed-array.at"],"core-js/stable/typed-array/copy-within":["es.typed-array.copy-within"],"core-js/stable/typed-array/entries":["es.object.to-string","es.typed-array.iterator"],"core-js/stable/typed-array/every":["es.typed-array.every"],"core-js/stable/typed-array/fill":["es.typed-array.fill"],"core-js/stable/typed-array/filter":["es.typed-array.filter"],"core-js/stable/typed-array/find":["es.typed-array.find"],"core-js/stable/typed-array/find-index":["es.typed-array.find-index"],"core-js/stable/typed-array/find-last":["es.typed-array.find-last"],"core-js/stable/typed-array/find-last-index":["es.typed-array.find-last-index"],"core-js/stable/typed-array/float32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/float64-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.float64-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/for-each":["es.typed-array.for-each"],"core-js/stable/typed-array/from":["es.typed-array.from"],"core-js/stable/typed-array/from-base64":["es.uint8-array.from-base64"],"core-js/stable/typed-array/from-hex":["es.uint8-array.from-hex"],"core-js/stable/typed-array/includes":["es.typed-array.includes"],"core-js/stable/typed-array/index-of":["es.typed-array.index-of"],"core-js/stable/typed-array/int16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/int32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/int8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.int8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/iterator":["es.object.to-string","es.typed-array.iterator"],"core-js/stable/typed-array/join":["es.typed-array.join"],"core-js/stable/typed-array/keys":["es.object.to-string","es.typed-array.iterator"],"core-js/stable/typed-array/last-index-of":["es.typed-array.last-index-of"],"core-js/stable/typed-array/map":["es.typed-array.map"],"core-js/stable/typed-array/methods":["es.object.to-string","es.string.iterator","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/of":["es.typed-array.of"],"core-js/stable/typed-array/reduce":["es.typed-array.reduce"],"core-js/stable/typed-array/reduce-right":["es.typed-array.reduce-right"],"core-js/stable/typed-array/reverse":["es.typed-array.reverse"],"core-js/stable/typed-array/set":["es.typed-array.set"],"core-js/stable/typed-array/set-from-base64":["es.uint8-array.set-from-base64"],"core-js/stable/typed-array/set-from-hex":["es.uint8-array.set-from-hex"],"core-js/stable/typed-array/slice":["es.typed-array.slice"],"core-js/stable/typed-array/some":["es.typed-array.some"],"core-js/stable/typed-array/sort":["es.typed-array.sort"],"core-js/stable/typed-array/subarray":["es.typed-array.subarray"],"core-js/stable/typed-array/to-base64":["es.uint8-array.to-base64"],"core-js/stable/typed-array/to-hex":["es.uint8-array.to-hex"],"core-js/stable/typed-array/to-locale-string":["es.typed-array.to-locale-string"],"core-js/stable/typed-array/to-reversed":["es.typed-array.to-reversed"],"core-js/stable/typed-array/to-sorted":["es.typed-array.sort","es.typed-array.to-sorted"],"core-js/stable/typed-array/to-string":["es.typed-array.to-string"],"core-js/stable/typed-array/uint16-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint16-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/uint32-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint32-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/uint8-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/uint8-clamped-array":["es.array-buffer.constructor","es.array-buffer.slice","es.object.to-string","es.string.iterator","es.typed-array.uint8-clamped-array","es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.from","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.of","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.uint8-array.from-base64","es.uint8-array.from-hex","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"],"core-js/stable/typed-array/values":["es.object.to-string","es.typed-array.iterator"],"core-js/stable/typed-array/with":["es.typed-array.with"],"core-js/stable/unescape":["es.unescape"],"core-js/stable/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/stable/url-search-params":["web.dom-collections.iterator","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/stable/url/can-parse":["web.url","web.url.can-parse"],"core-js/stable/url/parse":["web.url","web.url.parse"],"core-js/stable/url/to-json":["web.url.to-json"],"core-js/stable/weak-map":["es.array.iterator","es.object.to-string","es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","web.dom-collections.iterator"],"core-js/stable/weak-map/get-or-insert":["es.weak-map","es.weak-map.get-or-insert"],"core-js/stable/weak-map/get-or-insert-computed":["es.weak-map","es.weak-map.get-or-insert-computed"],"core-js/stable/weak-set":["es.array.iterator","es.object.to-string","es.weak-set","web.dom-collections.iterator"],"core-js/stage":["es.map","es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/stage/0":["es.map","es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/stage/1":["es.map","es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.metadata","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of"],"core-js/stage/2":["es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.metadata","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.emplace","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.math.f16round","esnext.math.sum-precise","esnext.number.clamp","esnext.object.has-own","esnext.object.group-by","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.difference.v2","esnext.set.difference","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.typed-array.at","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/stage/2.7":["es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.metadata","esnext.global-this","esnext.iterator.constructor","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.math.f16round","esnext.math.sum-precise","esnext.object.has-own","esnext.object.group-by","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.dispose","esnext.symbol.metadata","esnext.typed-array.at","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/stage/3":["es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.metadata","esnext.global-this","esnext.iterator.constructor","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.math.f16round","esnext.math.sum-precise","esnext.object.has-own","esnext.object.group-by","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.dispose","esnext.symbol.metadata","esnext.typed-array.at","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/stage/4":["es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.find-last","esnext.array.find-last-index","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.async-dispose","esnext.data-view.get-float16","esnext.data-view.set-float16","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.global-this","esnext.iterator.constructor","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.map","esnext.iterator.reduce","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.math.f16round","esnext.math.sum-precise","esnext.object.has-own","esnext.object.group-by","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.regexp.escape","esnext.set.difference.v2","esnext.set.intersection.v2","esnext.set.is-disjoint-from.v2","esnext.set.is-subset-of.v2","esnext.set.is-superset-of.v2","esnext.set.symmetric-difference.v2","esnext.set.union.v2","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.dispose","esnext.typed-array.at","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed"],"core-js/stage/pre":["es.map","es.string.at-alternative","esnext.aggregate-error","esnext.suppressed-error.constructor","esnext.array.from-async","esnext.array.at","esnext.array.filter-out","esnext.array.filter-reject","esnext.array.find-last","esnext.array.find-last-index","esnext.array.group","esnext.array.group-by","esnext.array.group-by-to-map","esnext.array.group-to-map","esnext.array.is-template-object","esnext.array.last-index","esnext.array.last-item","esnext.array.to-reversed","esnext.array.to-sorted","esnext.array.to-spliced","esnext.array.unique-by","esnext.array.with","esnext.array-buffer.detached","esnext.array-buffer.transfer","esnext.array-buffer.transfer-to-fixed-length","esnext.async-disposable-stack.constructor","esnext.async-iterator.constructor","esnext.async-iterator.as-indexed-pairs","esnext.async-iterator.async-dispose","esnext.async-iterator.drop","esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.from","esnext.async-iterator.indexed","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some","esnext.async-iterator.take","esnext.async-iterator.to-array","esnext.bigint.range","esnext.composite-key","esnext.composite-symbol","esnext.data-view.get-float16","esnext.data-view.get-uint8-clamped","esnext.data-view.set-float16","esnext.data-view.set-uint8-clamped","esnext.disposable-stack.constructor","esnext.error.is-error","esnext.function.demethodize","esnext.function.is-callable","esnext.function.is-constructor","esnext.function.metadata","esnext.function.un-this","esnext.global-this","esnext.iterator.constructor","esnext.iterator.as-indexed-pairs","esnext.iterator.chunks","esnext.iterator.concat","esnext.iterator.dispose","esnext.iterator.drop","esnext.iterator.every","esnext.iterator.filter","esnext.iterator.find","esnext.iterator.flat-map","esnext.iterator.for-each","esnext.iterator.from","esnext.iterator.indexed","esnext.iterator.map","esnext.iterator.range","esnext.iterator.reduce","esnext.iterator.sliding","esnext.iterator.some","esnext.iterator.take","esnext.iterator.to-array","esnext.iterator.to-async","esnext.iterator.windows","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.json.is-raw-json","esnext.json.parse","esnext.json.raw-json","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.from","esnext.map.get-or-insert","esnext.map.get-or-insert-computed","esnext.map.group-by","esnext.map.includes","esnext.map.key-by","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.of","esnext.map.reduce","esnext.map.some","esnext.map.update","esnext.map.update-or-insert","esnext.map.upsert","esnext.math.clamp","esnext.math.deg-per-rad","esnext.math.degrees","esnext.math.fscale","esnext.math.f16round","esnext.math.iaddh","esnext.math.imulh","esnext.math.isubh","esnext.math.rad-per-deg","esnext.math.radians","esnext.math.scale","esnext.math.seeded-prng","esnext.math.signbit","esnext.math.sum-precise","esnext.math.umulh","esnext.number.clamp","esnext.number.from-string","esnext.number.range","esnext.object.has-own","esnext.object.iterate-entries","esnext.object.iterate-keys","esnext.object.iterate-values","esnext.object.group-by","esnext.observable","esnext.promise.all-settled","esnext.promise.any","esnext.promise.try","esnext.promise.with-resolvers","esnext.reflect.define-metadata","esnext.reflect.delete-metadata","esnext.reflect.get-metadata","esnext.reflect.get-metadata-keys","esnext.reflect.get-own-metadata","esnext.reflect.get-own-metadata-keys","esnext.reflect.has-metadata","esnext.reflect.has-own-metadata","esnext.reflect.metadata","esnext.regexp.escape","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference.v2","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.from","esnext.set.intersection.v2","esnext.set.intersection","esnext.set.is-disjoint-from.v2","esnext.set.is-disjoint-from","esnext.set.is-subset-of.v2","esnext.set.is-subset-of","esnext.set.is-superset-of.v2","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.of","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference.v2","esnext.set.symmetric-difference","esnext.set.union.v2","esnext.set.union","esnext.string.at","esnext.string.cooked","esnext.string.code-points","esnext.string.dedent","esnext.string.is-well-formed","esnext.string.match-all","esnext.string.replace-all","esnext.string.to-well-formed","esnext.symbol.async-dispose","esnext.symbol.custom-matcher","esnext.symbol.dispose","esnext.symbol.is-registered-symbol","esnext.symbol.is-registered","esnext.symbol.is-well-known-symbol","esnext.symbol.is-well-known","esnext.symbol.matcher","esnext.symbol.metadata","esnext.symbol.metadata-key","esnext.symbol.observable","esnext.symbol.pattern-match","esnext.symbol.replace-all","esnext.typed-array.from-async","esnext.typed-array.at","esnext.typed-array.filter-out","esnext.typed-array.filter-reject","esnext.typed-array.find-last","esnext.typed-array.find-last-index","esnext.typed-array.group-by","esnext.typed-array.to-reversed","esnext.typed-array.to-sorted","esnext.typed-array.to-spliced","esnext.typed-array.unique-by","esnext.typed-array.with","esnext.uint8-array.from-base64","esnext.uint8-array.from-hex","esnext.uint8-array.set-from-base64","esnext.uint8-array.set-from-hex","esnext.uint8-array.to-base64","esnext.uint8-array.to-hex","esnext.weak-map.delete-all","esnext.weak-map.from","esnext.weak-map.of","esnext.weak-map.emplace","esnext.weak-map.get-or-insert","esnext.weak-map.get-or-insert-computed","esnext.weak-map.upsert","esnext.weak-set.add-all","esnext.weak-set.delete-all","esnext.weak-set.from","esnext.weak-set.of","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/web":["web.atob","web.btoa","web.dom-collections.for-each","web.dom-collections.iterator","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","web.immediate","web.queue-microtask","web.self","web.structured-clone","web.timers","web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/web/dom-collections":["web.dom-collections.for-each","web.dom-collections.iterator"],"core-js/web/dom-exception":["es.error.to-string","web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag"],"core-js/web/immediate":["web.immediate"],"core-js/web/queue-microtask":["web.queue-microtask"],"core-js/web/structured-clone":["es.array.iterator","es.map","es.object.to-string","es.set","web.structured-clone"],"core-js/web/timers":["web.timers"],"core-js/web/url":["web.url","web.url.can-parse","web.url.parse","web.url.to-json","web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"],"core-js/web/url-search-params":["web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"]};function dve(){if(ave)return ove;ave=1,ove.__esModule=!0,ove.BABEL_RUNTIME=void 0,ove.callMethod=function(e,t,r,n){var o=s(e.node,e.scope),i=y(o,2),d=i[0],c=i[1],l=a.callExpression(t,[d]);n&&(l=n(l));var u=a.identifier("call");e.replaceWith(r?a.optionalMemberExpression(l,u,!1,!0):a.memberExpression(l,u)),e.parentPath.unshiftContainer("arguments",c)},ove.coreJSModule=function(e){return"core-js/modules/"+e+".js"},ove.coreJSPureHelper=function(e,t,r){return t?n+"/core-js/"+e+r:"core-js-pure/features/"+e+".js"},ove.extractOptionalCheck=function(e,t){var r=t;for(;!r.optional&&a.isOptionalMemberExpression(r.object);)r=r.object;r.optional=!1;var n=e.generateDeclaredUidIdentifier("context"),s=a.assignmentExpression("=",n,r.object);return r.object=a.cloneNode(n),function(e){return a.conditionalExpression(a.binaryExpression("==",s,a.nullLiteral()),a.unaryExpression("void",a.numericLiteral(0)),e)}},ove.isCoreJSSource=function(e){"string"==typeof e&&(e=e.replace(/\\/g,"/").replace(/(\/(index)?)?(\.js)?$/i,"").toLowerCase());return Object.prototype.hasOwnProperty.call(r.default,e)&&r.default[e]},ove.maybeMemoizeContext=s;var e,t=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe),r=(e=rve?tve:(rve=1,tve=ive))&&e.__esModule?e:{default:e};var a=(t.default||t).types,n=ove.BABEL_RUNTIME="@babel/runtime-corejs3";function s(e,t){var r,n,s=e.object;return a.isIdentifier(s)?(n=s,r=a.cloneNode(s)):(n=t.generateDeclaredUidIdentifier("context"),r=a.assignmentExpression("=",a.cloneNode(n),s)),[r,n]}return ove}function cve(){if(sve)return _be;sve=1,_be.__esModule=!0,_be.default=void 0;var e=u(Dbe()),t=u((Obe||(Obe=1,Nbe.__esModule=!0,Nbe.default=void 0,Nbe.default=new Set(["esnext.array.group","esnext.array.group-to-map","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.symbol.metadata"])),Nbe)),r=u(Ube?Lbe:(Ube=1,Lbe=Xbe)),a=function(){var e;if(Jbe)return Ybe;Jbe=1,Ybe.__esModule=!0,Ybe.StaticProperties=Ybe.PromiseDependenciesWithIterators=Ybe.PromiseDependencies=Ybe.InstanceProperties=Ybe.DecoratorMetadataDependencies=Ybe.CommonIterators=Ybe.BuiltIns=void 0;var t,r=(t=Dbe())&&t.__esModule?t:{default:t};function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},a.apply(null,arguments)}var n={};Object.keys(r.default).forEach(function(e,t){n[e]=t});var s=function(e,t,r,a){return void 0===r&&(r=t[0]),{name:r,pure:e,global:t.sort(function(e,t){return n[e]-n[t]}),exclude:a}},o=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return s(null,[].concat(t,g))},i=["es.array.iterator","web.dom-collections.iterator"],d=Ybe.CommonIterators=["es.string.iterator"].concat(i),c=["es.object.to-string"].concat(i),l=["es.object.to-string"].concat(b(d)),u=["es.error.cause","es.error.to-string"],p=["es.suppressed-error.constructor"].concat(u),f=["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],g=["es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.object.to-string","es.array.iterator","esnext.typed-array.filter-reject","esnext.typed-array.group-by","esnext.typed-array.to-spliced","esnext.typed-array.unique-by"].concat(f),m=Ybe.PromiseDependencies=["es.promise","es.object.to-string"],y=Ybe.PromiseDependenciesWithIterators=[].concat(m,b(d)),h=["es.map","es.map.get-or-insert","es.map.get-or-insert-computed","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"].concat(b(l)),v=["es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.intersection","esnext.set.is-disjoint-from","esnext.set.is-subset-of","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference","esnext.set.union"].concat(b(l)),x=["es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","esnext.weak-map.delete-all","esnext.weak-map.emplace"].concat(b(l)),R=["es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all"].concat(b(l)),j=["web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","es.error.to-string"],w=["web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"].concat(b(l)),E=["esnext.async-iterator.constructor"].concat(m),S=["esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some"],T=["es.iterator.constructor","es.object.to-string"],P=Ybe.DecoratorMetadataDependencies=["esnext.symbol.metadata","esnext.function.metadata"],A=function(e){return{from:s(null,["es.typed-array.from",e].concat(g)),fromAsync:s(null,["esnext.typed-array.from-async",e].concat(b(y),g)),of:s(null,["es.typed-array.of",e].concat(g))}},k=["es.data-view"].concat(f);Ybe.BuiltIns={AsyncDisposableStack:s("async-disposable-stack/index",["es.async-disposable-stack.constructor","es.object.to-string","es.async-iterator.async-dispose","es.iterator.dispose"].concat(m,b(p))),AsyncIterator:s("async-iterator/index",E),AggregateError:s("aggregate-error",["es.aggregate-error"].concat(u,b(l),["es.aggregate-error.cause"])),ArrayBuffer:s(null,f),DataView:s(null,k),Date:s(null,["es.date.to-string"]),DOMException:s("dom-exception/index",j),DisposableStack:s("disposable-stack/index",["es.disposable-stack.constructor","es.object.to-string","es.iterator.dispose"].concat(b(p))),Error:s(null,u),EvalError:s(null,u),Float32Array:o("es.typed-array.float32-array"),Float64Array:o("es.typed-array.float64-array"),Int8Array:o("es.typed-array.int8-array"),Int16Array:o("es.typed-array.int16-array"),Int32Array:o("es.typed-array.int32-array"),Iterator:s("iterator/index",T),Uint8Array:o("es.typed-array.uint8-array","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"),Uint8ClampedArray:o("es.typed-array.uint8-clamped-array"),Uint16Array:o("es.typed-array.uint16-array"),Uint32Array:o("es.typed-array.uint32-array"),Map:s("map/index",h),Number:s(null,["es.number.constructor"]),Observable:s("observable/index",["esnext.observable","esnext.symbol.observable","es.object.to-string"].concat(b(l))),Promise:s("promise/index",m),RangeError:s(null,u),ReferenceError:s(null,u),Reflect:s(null,["es.reflect.to-string-tag","es.object.to-string"]),RegExp:s(null,["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky","es.regexp.to-string"]),Set:s("set/index",v),SuppressedError:s("suppressed-error",p),Symbol:s("symbol/index",["es.symbol","es.symbol.description","es.object.to-string"]),SyntaxError:s(null,u),TypeError:s(null,u),URIError:s(null,u),URL:s("url/index",["web.url","web.url.to-json"].concat(b(w))),URLSearchParams:s("url-search-params/index",w),WeakMap:s("weak-map/index",x),WeakSet:s("weak-set/index",R),atob:s("atob",["web.atob"].concat(j)),btoa:s("btoa",["web.btoa"].concat(j)),clearImmediate:s("clear-immediate",["web.immediate"]),compositeKey:s("composite-key",["esnext.composite-key"]),compositeSymbol:s("composite-symbol",["esnext.composite-symbol"]),escape:s("escape",["es.escape"]),fetch:s(null,m),globalThis:s("global-this",["es.global-this"]),parseFloat:s("parse-float",["es.parse-float"]),parseInt:s("parse-int",["es.parse-int"]),queueMicrotask:s("queue-microtask",["web.queue-microtask"]),self:s("self",["web.self"]),setImmediate:s("set-immediate",["web.immediate"]),setInterval:s("set-interval",["web.timers"]),setTimeout:s("set-timeout",["web.timers"]),structuredClone:s("structured-clone",["web.structured-clone"].concat(j,["es.array.iterator","es.object.keys","es.object.to-string","es.map","es.set"])),unescape:s("unescape",["es.unescape"])};var C=Ybe.StaticProperties={AsyncIterator:{from:s("async-iterator/from",["esnext.async-iterator.from"].concat(b(E),S,b(d)))},Array:{from:s("array/from",["es.array.from","es.string.iterator"]),fromAsync:s("array/from-async",["es.array.from-async"].concat(b(y))),isArray:s("array/is-array",["es.array.is-array"]),isTemplateObject:s("array/is-template-object",["esnext.array.is-template-object"]),of:s("array/of",["es.array.of"])},ArrayBuffer:{isView:s(null,["es.array-buffer.is-view"])},BigInt:{range:s("bigint/range",["esnext.bigint.range","es.object.to-string"])},Date:{now:s("date/now",["es.date.now"])},Error:{isError:s("error/is-error",["es.error.is-error","es.object.create"])},Function:{isCallable:s("function/is-callable",["esnext.function.is-callable"]),isConstructor:s("function/is-constructor",["esnext.function.is-constructor"])},Iterator:{concat:s("iterator/concat",["es.iterator.concat"].concat(T,b(d))),from:s("iterator/from",["es.iterator.from"].concat(T,b(d))),range:s("iterator/range",["esnext.iterator.range"].concat(T)),zip:s("iterator/zip",["esnext.iterator.zip"].concat(T,b(d))),zipKeyed:s("iterator/zip-keyed",["esnext.iterator.zip-keyed","es.object.create","es.reflect.own-keys"].concat(T,b(d)))},JSON:{isRawJSON:s("json/is-raw-json",["es.json.is-raw-json"]),parse:s("json/parse",["es.json.parse","es.object.keys"]),rawJSON:s("json/raw-json",["es.json.raw-json","es.object.create","es.object.freeze"]),stringify:s("json/stringify",["es.json.stringify","es.date.to-json"])},Math:{DEG_PER_RAD:s("math/deg-per-rad",["esnext.math.deg-per-rad"]),RAD_PER_DEG:s("math/rad-per-deg",["esnext.math.rad-per-deg"]),acosh:s("math/acosh",["es.math.acosh"]),asinh:s("math/asinh",["es.math.asinh"]),atanh:s("math/atanh",["es.math.atanh"]),cbrt:s("math/cbrt",["es.math.cbrt"]),clamp:s("math/clamp",["esnext.math.clamp"]),clz32:s("math/clz32",["es.math.clz32"]),cosh:s("math/cosh",["es.math.cosh"]),degrees:s("math/degrees",["esnext.math.degrees"]),expm1:s("math/expm1",["es.math.expm1"]),fround:s("math/fround",["es.math.fround"]),f16round:s("math/f16round",["es.math.f16round"]),fscale:s("math/fscale",["esnext.math.fscale"]),hypot:s("math/hypot",["es.math.hypot"]),iaddh:s("math/iaddh",["esnext.math.iaddh"]),imul:s("math/imul",["es.math.imul"]),imulh:s("math/imulh",["esnext.math.imulh"]),isubh:s("math/isubh",["esnext.math.isubh"]),log10:s("math/log10",["es.math.log10"]),log1p:s("math/log1p",["es.math.log1p"]),log2:s("math/log2",["es.math.log2"]),radians:s("math/radians",["esnext.math.radians"]),scale:s("math/scale",["esnext.math.scale"]),seededPRNG:s("math/seeded-prng",["esnext.math.seeded-prng"]),sign:s("math/sign",["es.math.sign"]),signbit:s("math/signbit",["esnext.math.signbit"]),sinh:s("math/sinh",["es.math.sinh"]),sumPrecise:s("math/sum-precise",["es.math.sum-precise","es.array.iterator"]),tanh:s("math/tanh",["es.math.tanh"]),trunc:s("math/trunc",["es.math.trunc"]),umulh:s("math/umulh",["esnext.math.umulh"])},Map:{from:s("map/from",["esnext.map.from"].concat(b(h))),groupBy:s("map/group-by",["es.map.group-by"].concat(b(h))),keyBy:s("map/key-by",["esnext.map.key-by"].concat(b(h))),of:s("map/of",["esnext.map.of"].concat(b(h)))},Number:{EPSILON:s("number/epsilon",["es.number.epsilon"]),MAX_SAFE_INTEGER:s("number/max-safe-integer",["es.number.max-safe-integer"]),MIN_SAFE_INTEGER:s("number/min-safe-integer",["es.number.min-safe-integer"]),fromString:s("number/from-string",["esnext.number.from-string"]),isFinite:s("number/is-finite",["es.number.is-finite"]),isInteger:s("number/is-integer",["es.number.is-integer"]),isNaN:s("number/is-nan",["es.number.is-nan"]),isSafeInteger:s("number/is-safe-integer",["es.number.is-safe-integer"]),parseFloat:s("number/parse-float",["es.number.parse-float"]),parseInt:s("number/parse-int",["es.number.parse-int"]),range:s("number/range",["esnext.number.range","es.object.to-string"])},Object:{assign:s("object/assign",["es.object.assign"]),create:s("object/create",["es.object.create"]),defineProperties:s("object/define-properties",["es.object.define-properties"]),defineProperty:s("object/define-property",["es.object.define-property"]),entries:s("object/entries",["es.object.entries"]),freeze:s("object/freeze",["es.object.freeze"]),fromEntries:s("object/from-entries",["es.object.from-entries","es.array.iterator"]),getOwnPropertyDescriptor:s("object/get-own-property-descriptor",["es.object.get-own-property-descriptor"]),getOwnPropertyDescriptors:s("object/get-own-property-descriptors",["es.object.get-own-property-descriptors"]),getOwnPropertyNames:s("object/get-own-property-names",["es.object.get-own-property-names"]),getOwnPropertySymbols:s("object/get-own-property-symbols",["es.symbol"]),getPrototypeOf:s("object/get-prototype-of",["es.object.get-prototype-of"]),groupBy:s("object/group-by",["es.object.group-by","es.object.create"]),hasOwn:s("object/has-own",["es.object.has-own"]),is:s("object/is",["es.object.is"]),isExtensible:s("object/is-extensible",["es.object.is-extensible"]),isFrozen:s("object/is-frozen",["es.object.is-frozen"]),isSealed:s("object/is-sealed",["es.object.is-sealed"]),keys:s("object/keys",["es.object.keys"]),preventExtensions:s("object/prevent-extensions",["es.object.prevent-extensions"]),seal:s("object/seal",["es.object.seal"]),setPrototypeOf:s("object/set-prototype-of",["es.object.set-prototype-of"]),values:s("object/values",["es.object.values"])},Promise:{all:s(null,y),allSettled:s("promise/all-settled",["es.promise.all-settled"].concat(b(y))),any:s("promise/any",["es.promise.any","es.aggregate-error"].concat(b(y))),race:s(null,y),try:s("promise/try",["es.promise.try"].concat(m)),withResolvers:s("promise/with-resolvers",["es.promise.with-resolvers"].concat(m))},Reflect:{apply:s("reflect/apply",["es.reflect.apply"]),construct:s("reflect/construct",["es.reflect.construct"]),defineMetadata:s("reflect/define-metadata",["esnext.reflect.define-metadata"]),defineProperty:s("reflect/define-property",["es.reflect.define-property"]),deleteMetadata:s("reflect/delete-metadata",["esnext.reflect.delete-metadata"]),deleteProperty:s("reflect/delete-property",["es.reflect.delete-property"]),get:s("reflect/get",["es.reflect.get"]),getMetadata:s("reflect/get-metadata",["esnext.reflect.get-metadata"]),getMetadataKeys:s("reflect/get-metadata-keys",["esnext.reflect.get-metadata-keys"]),getOwnMetadata:s("reflect/get-own-metadata",["esnext.reflect.get-own-metadata"]),getOwnMetadataKeys:s("reflect/get-own-metadata-keys",["esnext.reflect.get-own-metadata-keys"]),getOwnPropertyDescriptor:s("reflect/get-own-property-descriptor",["es.reflect.get-own-property-descriptor"]),getPrototypeOf:s("reflect/get-prototype-of",["es.reflect.get-prototype-of"]),has:s("reflect/has",["es.reflect.has"]),hasMetadata:s("reflect/has-metadata",["esnext.reflect.has-metadata"]),hasOwnMetadata:s("reflect/has-own-metadata",["esnext.reflect.has-own-metadata"]),isExtensible:s("reflect/is-extensible",["es.reflect.is-extensible"]),metadata:s("reflect/metadata",["esnext.reflect.metadata"]),ownKeys:s("reflect/own-keys",["es.reflect.own-keys"]),preventExtensions:s("reflect/prevent-extensions",["es.reflect.prevent-extensions"]),set:s("reflect/set",["es.reflect.set"]),setPrototypeOf:s("reflect/set-prototype-of",["es.reflect.set-prototype-of"])},RegExp:{escape:s("regexp/escape",["es.regexp.escape"])},Set:{from:s("set/from",["esnext.set.from"].concat(b(v))),of:s("set/of",["esnext.set.of"].concat(b(v)))},String:{cooked:s("string/cooked",["esnext.string.cooked"]),dedent:s("string/dedent",["esnext.string.dedent","es.string.from-code-point","es.weak-map"]),fromCodePoint:s("string/from-code-point",["es.string.from-code-point"]),raw:s("string/raw",["es.string.raw"])},Symbol:{asyncDispose:s("symbol/async-dispose",["es.symbol.async-dispose","es.async-iterator.async-dispose"]),asyncIterator:s("symbol/async-iterator",["es.symbol.async-iterator"]),customMatcher:s("symbol/custom-matcher",["esnext.symbol.custom-matcher"]),dispose:s("symbol/dispose",["es.symbol.dispose","es.iterator.dispose"]),for:s("symbol/for",[],"es.symbol"),hasInstance:s("symbol/has-instance",["es.symbol.has-instance","es.function.has-instance"]),isConcatSpreadable:s("symbol/is-concat-spreadable",["es.symbol.is-concat-spreadable","es.array.concat"]),isRegistered:s("symbol/is-registered",["esnext.symbol.is-registered","es.symbol"]),isRegisteredSymbol:s("symbol/is-registered-symbol",["esnext.symbol.is-registered-symbol","es.symbol"]),isWellKnown:s("symbol/is-well-known",["esnext.symbol.is-well-known","es.symbol"]),isWellKnownSymbol:s("symbol/is-well-known-symbol",["esnext.symbol.is-well-known-symbol","es.symbol"]),iterator:s("symbol/iterator",["es.symbol.iterator"].concat(b(l))),keyFor:s("symbol/key-for",[],"es.symbol"),match:s("symbol/match",["es.symbol.match","es.string.match"]),matcher:s("symbol/matcher",["esnext.symbol.matcher"]),matchAll:s("symbol/match-all",["es.symbol.match-all","es.string.match-all"]),metadata:s("symbol/metadata",P),metadataKey:s("symbol/metadata-key",["esnext.symbol.metadata-key"]),observable:s("symbol/observable",["esnext.symbol.observable"]),patternMatch:s("symbol/pattern-match",["esnext.symbol.pattern-match"]),replace:s("symbol/replace",["es.symbol.replace","es.string.replace"]),search:s("symbol/search",["es.symbol.search","es.string.search"]),species:s("symbol/species",["es.symbol.species","es.array.species"]),split:s("symbol/split",["es.symbol.split","es.string.split"]),toPrimitive:s("symbol/to-primitive",["es.symbol.to-primitive","es.date.to-primitive"]),toStringTag:s("symbol/to-string-tag",["es.symbol.to-string-tag","es.object.to-string","es.math.to-string-tag","es.json.to-string-tag"]),unscopables:s("symbol/unscopables",["es.symbol.unscopables"])},URL:{canParse:s("url/can-parse",["web.url.can-parse","web.url"]),parse:s("url/parse",["web.url.parse","web.url"])},WeakMap:{from:s("weak-map/from",["esnext.weak-map.from"].concat(b(x))),of:s("weak-map/of",["esnext.weak-map.of"].concat(b(x)))},WeakSet:{from:s("weak-set/from",["esnext.weak-set.from"].concat(b(R))),of:s("weak-set/of",["esnext.weak-set.of"].concat(b(R)))},Int8Array:A("es.typed-array.int8-array"),Uint8Array:a({fromBase64:s(null,["es.uint8-array.from-base64"].concat(g)),fromHex:s(null,["es.uint8-array.from-hex"].concat(g))},A("es.typed-array.uint8-array")),Uint8ClampedArray:A("es.typed-array.uint8-clamped-array"),Int16Array:A("es.typed-array.int16-array"),Uint16Array:A("es.typed-array.uint16-array"),Int32Array:A("es.typed-array.int32-array"),Uint32Array:A("es.typed-array.uint32-array"),Float32Array:A("es.typed-array.float32-array"),Float64Array:A("es.typed-array.float64-array"),WebAssembly:{CompileError:s(null,u),LinkError:s(null,u),RuntimeError:s(null,u)}};return["AggregateError","EvalError","RangeError","ReferenceError","SuppressedError","SyntaxError","TypeError","URIError"].forEach(function(e){C[e]=C.Error}),Ybe.InstanceProperties=((e={asIndexedPairs:s(null,["esnext.async-iterator.as-indexed-pairs"].concat(b(E),["esnext.iterator.as-indexed-pairs"],T)),at:s("instance/at",["esnext.string.at","es.string.at-alternative","es.array.at"]),anchor:s(null,["es.string.anchor"]),big:s(null,["es.string.big"]),bind:s("instance/bind",["es.function.bind"]),blink:s(null,["es.string.blink"]),bold:s(null,["es.string.bold"]),chunks:s(null,["esnext.iterator.chunks"].concat(T)),clamp:s("instance/clamp",["esnext.number.clamp"]),codePointAt:s("instance/code-point-at",["es.string.code-point-at"]),codePoints:s("instance/code-points",["esnext.string.code-points"]),concat:s("instance/concat",["es.array.concat"],void 0,["String"]),copyWithin:s("instance/copy-within",["es.array.copy-within"]),demethodize:s("instance/demethodize",["esnext.function.demethodize"]),description:s(null,["es.symbol","es.symbol.description"]),dotAll:s(null,["es.regexp.dot-all"]),drop:s(null,["es.iterator.drop"].concat(T,["esnext.async-iterator.drop"],b(E))),endsWith:s("instance/ends-with",["es.string.ends-with"]),entries:s("instance/entries",c),every:s("instance/every",["es.array.every","es.iterator.every"].concat(T)),exec:s(null,["es.regexp.exec"]),fill:s("instance/fill",["es.array.fill"]),filter:s("instance/filter",["es.array.filter","es.iterator.filter"].concat(T)),filterReject:s("instance/filter-reject",["esnext.array.filter-reject"]),finally:s(null,["es.promise.finally"].concat(m)),find:s("instance/find",["es.array.find","es.iterator.find"].concat(T)),findIndex:s("instance/find-index",["es.array.find-index"]),findLast:s("instance/find-last",["es.array.find-last"]),findLastIndex:s("instance/find-last-index",["es.array.find-last-index"]),fixed:s(null,["es.string.fixed"]),flags:s("instance/flags",["es.regexp.flags"]),flatMap:s("instance/flat-map",["es.array.flat-map","es.array.unscopables.flat-map","es.iterator.flat-map"].concat(T)),flat:s("instance/flat",["es.array.flat","es.array.unscopables.flat"]),getFloat16:s(null,["es.data-view.get-float16"].concat(b(k))),getUint8Clamped:s(null,["esnext.data-view.get-uint8-clamped"].concat(b(k))),getYear:s(null,["es.date.get-year"]),group:s("instance/group",["esnext.array.group"]),groupBy:s("instance/group-by",["esnext.array.group-by"]),groupByToMap:s("instance/group-by-to-map",["esnext.array.group-by-to-map","es.map","es.object.to-string"]),groupToMap:s("instance/group-to-map",["esnext.array.group-to-map","es.map","es.object.to-string"]),fontcolor:s(null,["es.string.fontcolor"]),fontsize:s(null,["es.string.fontsize"]),forEach:s("instance/for-each",["es.array.for-each","es.iterator.for-each"].concat(T,["web.dom-collections.for-each"])),includes:s("instance/includes",["es.array.includes","es.string.includes"]),indexed:s(null,["esnext.async-iterator.indexed"].concat(b(E),["esnext.iterator.indexed"],T)),indexOf:s("instance/index-of",["es.array.index-of"]),isWellFormed:s("instance/is-well-formed",["es.string.is-well-formed"]),italics:s(null,["es.string.italics"]),join:s(null,["es.array.join"]),keys:s("instance/keys",c),lastIndex:s(null,["esnext.array.last-index"]),lastIndexOf:s("instance/last-index-of",["es.array.last-index-of"]),lastItem:s(null,["esnext.array.last-item"]),link:s(null,["es.string.link"]),map:s("instance/map",["es.array.map","es.iterator.map"].concat(T)),match:s(null,["es.string.match","es.regexp.exec"]),matchAll:s("instance/match-all",["es.string.match-all","es.regexp.exec"]),name:s(null,["es.function.name"]),padEnd:s("instance/pad-end",["es.string.pad-end"]),padStart:s("instance/pad-start",["es.string.pad-start"]),push:s("instance/push",["es.array.push"]),reduce:s("instance/reduce",["es.array.reduce","es.iterator.reduce"].concat(T)),reduceRight:s("instance/reduce-right",["es.array.reduce-right"]),repeat:s("instance/repeat",["es.string.repeat"]),replace:s(null,["es.string.replace","es.regexp.exec"]),replaceAll:s("instance/replace-all",["es.string.replace-all","es.string.replace","es.regexp.exec"]),reverse:s("instance/reverse",["es.array.reverse"]),search:s(null,["es.string.search","es.regexp.exec"]),setFloat16:s(null,["es.data-view.set-float16"].concat(b(k))),setUint8Clamped:s(null,["esnext.data-view.set-uint8-clamped"].concat(b(k))),setYear:s(null,["es.date.set-year"]),slice:s("instance/slice",["es.array.slice"]),sliding:s(null,["esnext.iterator.sliding"].concat(T)),small:s(null,["es.string.small"]),some:s("instance/some",["es.array.some","es.iterator.some"].concat(T)),sort:s("instance/sort",["es.array.sort"]),splice:s("instance/splice",["es.array.splice"]),split:s(null,["es.string.split","es.regexp.exec"]),startsWith:s("instance/starts-with",["es.string.starts-with"]),sticky:s(null,["es.regexp.sticky"]),strike:s(null,["es.string.strike"]),sub:s(null,["es.string.sub"]),substr:s(null,["es.string.substr"]),sup:s(null,["es.string.sup"]),take:s(null,["es.iterator.take"].concat(T,["esnext.async-iterator.take"],b(E))),test:s(null,["es.regexp.test","es.regexp.exec"]),toArray:s(null,["es.iterator.to-array"].concat(T,["esnext.async-iterator.to-array"],b(E))),toAsync:s(null,["esnext.iterator.to-async"].concat(T,b(E),S)),toExponential:s(null,["es.number.to-exponential"]),toFixed:s(null,["es.number.to-fixed"]),toGMTString:s(null,["es.date.to-gmt-string"]),toISOString:s(null,["es.date.to-iso-string"]),toJSON:s(null,["es.date.to-json"]),toPrecision:s(null,["es.number.to-precision"]),toReversed:s("instance/to-reversed",["es.array.to-reversed"]),toSorted:s("instance/to-sorted",["es.array.to-sorted","es.array.sort"]),toSpliced:s("instance/to-spliced",["es.array.to-spliced"]),toString:s(null,["es.object.to-string","es.error.to-string","es.date.to-string","es.regexp.to-string"]),toWellFormed:s("instance/to-well-formed",["es.string.to-well-formed"]),trim:s("instance/trim",["es.string.trim"]),trimEnd:s("instance/trim-end",["es.string.trim-end"]),trimLeft:s("instance/trim-left",["es.string.trim-start"]),trimRight:s("instance/trim-right",["es.string.trim-end"]),trimStart:s("instance/trim-start",["es.string.trim-start"]),uniqueBy:s("instance/unique-by",["esnext.array.unique-by","es.map"]),unshift:s("instance/unshift",["es.array.unshift"]),unThis:s("instance/un-this",["esnext.function.un-this"]),values:s("instance/values",c),windows:s(null,["esnext.iterator.windows"].concat(T)),with:s("instance/with",["es.array.with"]),__defineGetter__:s(null,["es.object.define-getter"]),__defineSetter__:s(null,["es.object.define-setter"]),__lookupGetter__:s(null,["es.object.lookup-getter"]),__lookupSetter__:s(null,["es.object.lookup-setter"])}).__proto__=s(null,["es.object.proto"]),e),Ybe}(),n=l(function(){if($be)return Qbe;$be=1,Qbe.__esModule=!0,Qbe.stable=Qbe.proposals=void 0;var e=Qbe.stable=new Set(["array","array/from","array/is-array","array/of","clear-immediate","date/now","instance/bind","instance/code-point-at","instance/concat","instance/copy-within","instance/ends-with","instance/entries","instance/every","instance/fill","instance/filter","instance/find","instance/find-index","instance/flags","instance/flat","instance/flat-map","instance/for-each","instance/includes","instance/index-of","instance/keys","instance/last-index-of","instance/map","instance/pad-end","instance/pad-start","instance/reduce","instance/reduce-right","instance/repeat","instance/reverse","instance/slice","instance/some","instance/sort","instance/splice","instance/starts-with","instance/trim","instance/trim-end","instance/trim-left","instance/trim-right","instance/trim-start","instance/values","json/stringify","map","math/acosh","math/asinh","math/atanh","math/cbrt","math/clz32","math/cosh","math/expm1","math/fround","math/hypot","math/imul","math/log10","math/log1p","math/log2","math/sign","math/sinh","math/tanh","math/trunc","number/epsilon","number/is-finite","number/is-integer","number/is-nan","number/is-safe-integer","number/max-safe-integer","number/min-safe-integer","number/parse-float","number/parse-int","object/assign","object/create","object/define-properties","object/define-property","object/entries","object/freeze","object/from-entries","object/get-own-property-descriptor","object/get-own-property-descriptors","object/get-own-property-names","object/get-own-property-symbols","object/get-prototype-of","object/is","object/is-extensible","object/is-frozen","object/is-sealed","object/keys","object/prevent-extensions","object/seal","object/set-prototype-of","object/values","parse-float","parse-int","promise","queue-microtask","reflect/apply","reflect/construct","reflect/define-property","reflect/delete-property","reflect/get","reflect/get-own-property-descriptor","reflect/get-prototype-of","reflect/has","reflect/is-extensible","reflect/own-keys","reflect/prevent-extensions","reflect/set","reflect/set-prototype-of","set","set-immediate","set-interval","set-timeout","string/from-code-point","string/raw","symbol","symbol/async-iterator","symbol/for","symbol/has-instance","symbol/is-concat-spreadable","symbol/iterator","symbol/key-for","symbol/match","symbol/replace","symbol/search","symbol/species","symbol/split","symbol/to-primitive","symbol/to-string-tag","symbol/unscopables","url","url-search-params","weak-map","weak-set"]);return Qbe.proposals=new Set([].concat(b(e),["aggregate-error","composite-key","composite-symbol","global-this","instance/at","instance/code-points","instance/match-all","instance/replace-all","math/clamp","math/degrees","math/deg-per-rad","math/fscale","math/iaddh","math/imulh","math/isubh","math/rad-per-deg","math/radians","math/scale","math/seeded-prng","math/signbit","math/umulh","number/from-string","observable","reflect/define-metadata","reflect/delete-metadata","reflect/get-metadata","reflect/get-metadata-keys","reflect/get-own-metadata","reflect/get-own-metadata-keys","reflect/has-metadata","reflect/has-own-metadata","reflect/metadata","symbol/dispose","symbol/observable","symbol/pattern-match"])),Qbe}()),s=u(function(){if(Zbe)return eve;Zbe=1,eve.__esModule=!0,eve.default=function(e,r){var a=r.node,n=r.parent;if("es.string.split"===e.name){if(!t.isCallExpression(n,{callee:a}))return!1;if(n.arguments.length<1)return!0;var s=n.arguments[0];return t.isStringLiteral(s)||t.isTemplateLiteral(s)}};var e=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe),t=(e.default||e).types;return eve}()),o=l(rbe),d=dve(),c=u(Pbe());function l(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(l=function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o})(e,t)}function u(e){return e&&e.__esModule?e:{default:e}}function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},p.apply(null,arguments)}var f=o.default||o,g=f.types,m=f.template,v=["array","string","iterator","async-iterator","dom-collections"].map(function(e){return new RegExp("[a-z]*\\."+e+"\\..*")}),x=function(t,r){if(r(t))return!0;if(!t.startsWith("es."))return!1;var a="esnext."+t.slice(3);return!!e.default[a]&&r(a)};return _be.default=(0,c.default)(function(o,c){var l=o.getUtils,u=o.method,f=o.shouldInjectPolyfill,b=o.createMetaResolver,R=o.debug,j=o.babel,w=c.version,E=void 0===w?3:w,S=c.proposals,T=c.shippedProposals,P=c["#__secret_key__@babel/preset-env__compatibility"],A=(void 0===P?{}:P).noRuntimeName,k=void 0!==A&&A,C=c["#__secret_key__@babel/runtime__compatibility"],_=void 0===C?{}:C,I=_.useBabelRuntime,D=void 0!==I&&I,O=_.ext,N=void 0===O?".js":O,B=j.caller(function(e){return"babel-loader"===(null==e?void 0:e.name)}),M=b({global:a.BuiltIns,static:a.StaticProperties,instance:a.InstanceProperties}),F=new Set((0,r.default)(E));function L(e,t){return!!f(e)&&(R(e),t.injectGlobalImport((0,d.coreJSModule)(e),e),!0)}function U(e,t,r){void 0===r&&(r=!0);for(var a,n=i(e);!(a=n()).done;){var s=a.value;r?x(s,function(e){return L(e,t)}):L(s,t)}}function q(e,t,r,a){if(e.pure&&!(a&&e.exclude&&e.exclude.includes(a))&&x(e.name,f)){var s=e.name,o=!1;if((S||T&&s.startsWith("esnext.")||s.startsWith("es.")&&!F.has(s))&&(o=!0),D&&!(o?n.proposals:n.stable).has(e.pure))return;var i=function(e){return D?e?d.BABEL_RUNTIME+"/core-js":d.BABEL_RUNTIME+"/core-js-stable":e?"core-js-pure/features":"core-js-pure/stable"}(o);return r.injectDefaultImport(i+"/"+e.pure+N,t)}}return{name:"corejs3",runtimeName:k?null:d.BABEL_RUNTIME,polyfills:e.default,filterPolyfills:function(r){return!!F.has(r)&&(!(!S&&"entry-global"!==u)||(!(!T||!t.default.has(r))||function(t){return!t.startsWith("esnext.")||"es."+t.slice(7)in e.default}(r)))},entryGlobal:function(e,t,r){if("import"===e.kind){var a=(0,d.isCoreJSSource)(e.source);if(a)if(1===a.length&&e.source===(0,d.coreJSModule)(a[0])&&f(a[0]))R(null);else{var n=new Set(a),s=a.filter(function(e){if(!e.startsWith("esnext."))return!0;var t=e.replace("esnext.","es.");return!n.has(t)||!f(t)});U(s,t,!1),r.remove()}}},usageGlobal:function(e,t,r){var a=M(e);if(a&&!(0,s.default)(a.desc,r)){var n=a.desc.global;if("global"!==a.kind&&"object"in e&&e.object&&"prototype"===e.placement){var o=e.object.toLowerCase();n=n.filter(function(e){return!v.some(function(t){return t.test(e)})||e.includes(o)})}return U(n,t),!0}},usagePure:function(e,t,r){if("in"!==e.kind){if(!r.parentPath.isUnaryExpression({operator:"delete"})){if("property"===e.kind){if(!r.isMemberExpression()&&!r.isOptionalMemberExpression())return;if(!r.isReferenced())return;if(r.parentPath.isUpdateExpression())return;if(g.isSuper(r.node.object))return;if("Symbol.iterator"===e.key){if(!f("es.symbol.iterator"))return;var a=r.parent,n=r.node;return void(g.isCallExpression(a,{callee:n})?0===a.arguments.length?(r.parentPath.replaceWith(g.callExpression(t.injectDefaultImport((0,d.coreJSPureHelper)("get-iterator",D,N),"getIterator"),[n.object])),r.skip()):(0,d.callMethod)(r,t.injectDefaultImport((0,d.coreJSPureHelper)("get-iterator-method",D,N),"getIteratorMethod")):r.replaceWith(g.callExpression(t.injectDefaultImport((0,d.coreJSPureHelper)("get-iterator-method",D,N),"getIteratorMethod"),[r.node.object])))}}var o=M(e);if(o&&!(0,s.default)(o.desc,r))if(D&&o.desc.pure&&"/index"===o.desc.pure.slice(-6)&&(o=p({},o,{desc:p({},o.desc,{pure:o.desc.pure.slice(0,-6)})})),"global"===o.kind){var i=q(o.desc,o.name,t);i&&r.replaceWith(i)}else if("static"===o.kind){var c=q(o.desc,o.name,t,e.object);if(c){r.replaceWith(c);var l=r.parentPath;if(l.isOptionalMemberExpression()||l.isOptionalCallExpression())do{var u=l;u.type=u.node.type="OptionalMemberExpression"===l.type?"MemberExpression":"CallExpression",delete u.node.optional,l=l.parentPath}while((l.isOptionalMemberExpression()||l.isOptionalCallExpression())&&!l.node.optional)}}else if("instance"===o.kind){var b=q(o.desc,o.name+"InstanceProperty",t,e.object);if(!b)return;var v=r.node,x=r.parent;if(g.isOptionalCallExpression(x)&&x.callee===v){var R=x.optional;if(x.optional=!R,R)if(g.isOptionalMemberExpression(v)){var j=(0,d.extractOptionalCheck)(r.scope,v);(0,d.callMethod)(r,b,!0,j)}else(0,d.callMethod)(r,b,!0);else{var w=(0,d.extractOptionalCheck)(r.scope,v),E=y((0,d.maybeMemoizeContext)(v,r.scope),2),S=E[0],T=E[1];r.replaceWith(w(m.expression.ast(nve||(nve=h(["\n Function.call.bind(","(","), ",")\n "])),b,S,T)))}}else if(g.isCallExpression(x)&&x.callee===v)(0,d.callMethod)(r,b,!1);else if(g.isOptionalMemberExpression(v)){var P=(0,d.extractOptionalCheck)(r.scope,v);r.replaceWith(P(g.callExpression(b,[v.object]))),g.isOptionalMemberExpression(x)&&(x.optional=!0)}else r.replaceWith(g.callExpression(b,[v.object]))}}}else"Symbol.iterator"===e.key&&r.replaceWith(g.callExpression(t.injectDefaultImport((0,d.coreJSPureHelper)("is-iterable",D,N),"isIterable"),[r.node.right]))},visitor:"usage-global"===u&&{CallExpression:function(e){if(e.get("callee").isImport()){var t=l(e);U(B?a.PromiseDependenciesWithIterators:a.PromiseDependencies,t)}},Function:function(e){e.node.async&&U(a.PromiseDependencies,l(e))},"ForOfStatement|ArrayPattern":function(e){U(a.CommonIterators,l(e))},SpreadElement:function(e){e.parentPath.isObjectExpression()||U(a.CommonIterators,l(e))},YieldExpression:function(e){e.node.delegate&&U(a.CommonIterators,l(e))},Class:function(e){var t;((null==(t=e.node.decorators)?void 0:t.length)||e.node.body.body.some(function(e){var t;return null==(t=e.decorators)?void 0:t.length}))&&U(a.DecoratorMetadataDependencies,l(e))}}}}),_be}var lve,uve,pve,fve,gve,mve={};function yve(){if(lve)return mve;lve=1,mve.__esModule=!0,mve.default=void 0;var e,t=(e=Pbe())&&e.__esModule?e:{default:e};mve.default=(0,t.default)(function(e,t){var a,n,s=e.debug,o=e.targets,i=e.babel;if(a=o,n=i.targets(),JSON.stringify(a)!==JSON.stringify(n))throw new Error("This plugin does not use the targets option. Only preset-env's targets or top-level targets need to be configured for this plugin to work. See https://github.com/babel/babel-polyfills/issues/36 for more details.");var d=t["#__secret_key__@babel/runtime__compatibility"],c=void 0===d?{}:d,l=c.moduleName,u=void 0===l?null:l,p=c.useBabelRuntime,f=void 0!==p&&p;return{name:"regenerator",polyfills:["regenerator-runtime"],usageGlobal:function(e,t){r(e)&&(s("regenerator-runtime"),t.injectGlobalImport("regenerator-runtime/runtime.js"))},usagePure:function(e,t,a){if(r(e)){var n,s="regenerator-runtime";if(f)s=(null!=(n=null!=u?u:a.hub.file.get("runtimeHelpersModuleName"))?n:"@babel/runtime")+"/regenerator";a.replaceWith(t.injectDefaultImport(s,"regenerator-runtime"))}}}});var r=function(e){return"global"===e.kind&&"regeneratorRuntime"===e.name};return mve}function hve(){if(gve)return fve;gve=1;var e=(Sbe?Ebe:(Sbe=1,Ebe=function(e){return null!=e&&e&&"false"!==e&&"0"!==e}(z.env.BABEL_8_BREAKING)?null:Abe())).default,t=cve().default,r=(pve?uve:(pve=1,uve=function(e){return null!=e&&e&&"false"!==e&&"0"!==e}(z.env.BABEL_8_BREAKING)?null:yve())).default;return fve=function(a,n,s){var o,i,d=a.corejs,c=a.regenerator,l=void 0===c||c,u=a.moduleName,p=!1;"object"==typeof d&&null!==d?(i=d.version,p=Boolean(d.proposals)):i=d;var f=!!i&&Number(i);if(![!1,2,3].includes(f))throw new Error("The `core-js` version must be false, 2 or 3, but got "+JSON.stringify(i)+".");if(p&&(!f||f<3))throw new Error("The 'proposals' option is only supported when using 'corejs: 3'");if("boolean"!=typeof l)throw new Error("The 'regenerator' option must be undefined, or a boolean.");var g,m=((o={method:"usage-pure",absoluteImports:s,proposals:p})["#__secret_key__@babel/runtime__compatibility"]={useBabelRuntime:!0,runtimeVersion:n,ext:"",moduleName:u},o);return function(e,t,a){return t?function(t,n,s){return Object.assign({},r(t,e,s),{inherits:null!=a?a:void 0})}:null!=a?a:void 0}(m,l,2===f?(g=m,function(t,r,a){return e(t,g,a)}):3===f?function(e){return function(r,a,n){return t(r,e,n)}}(m):null)},fve}!function(e){Object.defineProperty(e,"createPolyfillPlugins",{get:function(){return hve()}})}(Fhe);var bve,vve,xve=function(e){return null!=e&&(e&&"false"!==e&&"0"!==e)}(z.env.BABEL_8_BREAKING)?null:FO(),Rve=function(e,t,r){e.assertVersion("*");var a,n=t.version,s=void 0===n?"7.0.0-beta.0":n,o=t.absoluteRuntime,i=void 0!==o&&o,d=t.moduleName,c=void 0===d?null:d;if("boolean"!=typeof i&&"string"!=typeof i)throw new Error("The 'absoluteRuntime' option must be undefined, a boolean, or a string.");if("string"!=typeof s)throw new Error("The 'version' option must be a version string.");if(null!==c&&"string"!=typeof c)throw new Error("The 'moduleName' option must be null or a string.");if(s){var l=xve.valid(s)?"^"+s:s;a=!xve.intersects("<7.13.0",l)&&!xve.intersects(">=8.0.0",l)}else a=!0;if(hasOwnProperty.call(t,"useBuiltIns"))throw t.useBuiltIns?new Error("The 'useBuiltIns' option has been removed. The @babel/runtime module now uses builtins by default."):new Error("The 'useBuiltIns' option has been removed. Use the 'corejs'option to polyfill with `core-js` via @babel/runtime.");if(hasOwnProperty.call(t,"polyfill"))throw!1===t.polyfill?new Error("The 'polyfill' option has been removed. The @babel/runtime module now skips polyfilling by default."):new Error("The 'polyfill' option has been removed. Use the 'corejs'option to polyfill with `core-js` via @babel/runtime.");var u=t.useESModules,p=void 0!==u&&u;if("boolean"!=typeof p&&"auto"!==p)throw new Error("The 'useESModules' option must be undefined, or a boolean, or 'auto'.");var f="auto"===p?e.caller(function(e){return!(null==e||!e.supportsStaticESM)}):p,g=t.helpers,m=void 0===g||g;if("boolean"!=typeof m)throw new Error("The 'helpers' option must be undefined, or a boolean.");var y=new Set(["interopRequireWildcard","interopRequireDefault"]);return{name:"transform-runtime",inherits:Fhe.createPolyfillPlugins(t,s,i),pre:function(e){if(m){var t;e.set("helperGenerator",function(n){var o;if(null!=t||(t=function(e,t,r){if(!1===r)return e;Bhe()}(null!=(o=null!=c?c:e.get("runtimeHelpersModuleName"))?o:"@babel/runtime",0,i)),null==e.availableHelper||!e.availableHelper(n,s))return"regeneratorRuntime"===n?so([],Ps("regeneratorRuntime")):"regenerator"===n||"regeneratorKeys"===n||"regeneratorAsync"===n||"regeneratorAsyncGen"===n?Ps("__interal_marker_fallback_regenerator__"):void 0;var d=y.has(n)&&!LN(e.path)?4:void 0,l=t+"/helpers/"+(f&&"module"===e.path.node.sourceType?"esm/"+n:n);return i&&(l=Bhe()),function(t,n,s){var o=LN(e.path),i=t+":"+n+":"+(o||""),d=r.get(i);d?d=sm(d):(d=YN(e.path,t,{importedInterop:a?"compiled":"uncompiled",nameHint:n,blockHoist:s}),r.set(i,d));return d}(l,n,d)});var r=new Map}}}},jve=function(e){return e.assertVersion("*"),{name:"transform-shorthand-properties",visitor:{ObjectMethod:function(e){var t=e.node;if("method"===t.kind){var r=Ts(null,t.params,t.body,t.generator,t.async);r.returnType=t.returnType;var a=hy(t);le(a,{value:"__proto__"})?e.replaceWith(qs(a,r,!0)):e.replaceWith(qs(t.key,r,t.computed))}},ObjectProperty:function(e){var t=e.node;if(t.shorthand){var r=hy(t);le(r,{value:"__proto__"})?e.replaceWith(qs(r,t.value,!0)):t.shorthand=!1}}}}},wve=function(e,t){var r,a;e.assertVersion("*");var n=null!=(r=e.assumption("iterableIsArray"))?r:t.loose,s=null!=(a=t.allowArrayLike)?a:e.assumption("arrayLikeIsIterable");function o(e,t){if(n&&!ie(e.argument,{name:"arguments"}))return e.argument;var r=e.argument;if(ie(r)){var a=t.getBinding(r.name);if(null!=a&&a.constant&&a.path.isGenericType("Array"))return r}if(Y(r))return r;if(ie(r,{name:"arguments"}))return pj.expression.ast(bve||(bve=h(["\n Array.prototype.slice.call(",")\n "])),r);var o=[r],i="toConsumableArray";return s&&(o.unshift(t.path.hub.addHelper(i)),i="maybeArrayLike"),gs(t.path.hub.addHelper(i),o)}function d(e){return e.elements.includes(null)}function c(e){for(var t=0;t<e.length;t++)if(Xe(e[t]))return!0;return!1}function l(e,t){return e.length?(t.push(os(e)),[]):e}function u(e,t,r){for(var a,n=[],s=[],c=i(e);!(a=c()).done;){var u=a.value;if(Xe(u)){s=l(s,n);var p=o(u,t);Y(p)&&d(p)&&(p=gs(r.addHelper("arrayWithoutHoles"),[p])),n.push(p)}else s.push(u)}return l(s,n),n}return{name:"transform-spread",visitor:{ArrayExpression:function(e){var t=e.node,r=e.scope,a=t.elements;if(c(a)){var n=u(a,r,this.file),s=n[0];1!==n.length||s===a[0].argument?(Y(s)?n.shift():s=os([]),e.replaceWith(gs(Bs(s,Ps("concat")),n))):e.replaceWith(s)}},CallExpression:function(e){var t=e.node,r=e.scope,a=t.arguments;if(c(a)){var n=hK(e.get("callee"));if(n.isSuper())throw e.buildCodeFrameError("It's not possible to compile spread arguments in `super()` without compiling classes.\nPlease add '@babel/plugin-transform-classes' to your Babel configuration.");var s,o=r.buildUndefinedNode();t.arguments=[];var i=(s=1===a.length&&ie(a[0].argument,{name:"arguments"})?[a[0].argument]:u(a,r,this.file)).shift();s.length?t.arguments.push(gs(Bs(i,Ps("concat")),s)):t.arguments.push(i);var d=n.node;if(me(d)){var l=r.maybeGenerateMemoised(d.object);l?(d.object=is("=",l,d.object),o=l):o=sm(d.object)}t.callee=Bs(t.callee,Ps("apply")),Je(o)&&(o={type:"ThisExpression"}),t.arguments.unshift(sm(o))}},NewExpression:function(e){var t=e.node,r=e.scope;if(c(t.arguments)){var a,n=u(t.arguments,r,this.file),s=n.shift();a=n.length?gs(Bs(s,Ps("concat")),n):s,e.replaceWith(gs(e.hub.addHelper("construct"),[t.callee,a]))}}}}},Eve=function(e){return e.assertVersion("*"),{name:"transform-sticky-regex",visitor:{RegExpLiteral:function(e){var t=e.node;t.flags.includes("y")&&e.replaceWith(Ms(Ps("RegExp"),[Cs(t.pattern),Cs(t.flags)]))}}}},Sve=function(e){return e.assertVersion("*"),{name:"transform-strict-mode",visitor:{Program:function(e){for(var t,r=i(e.node.directives);!(t=r()).done;){if("use strict"===t.value.value.value)return}e.unshiftContainer("directives",ls(us("use strict")))}}}},Tve=function(e,t){var r,a;e.assertVersion("*");var n=null!=(r=e.assumption("ignoreToPrimitiveHint"))?r:t.loose,s=null!=(a=e.assumption("mutableTemplateObject"))?a:t.loose,o="taggedTemplateLiteral";return s&&(o+="Loose"),{name:"transform-template-literals",visitor:{TaggedTemplateExpression:function(e){for(var t,r=e.node,a=r.quasi,n=[],s=[],d=!0,c=i(a.quasis);!(t=c()).done;){var l=t.value.value,u=l.raw,p=l.cooked,f=null==p?e.scope.buildUndefinedNode():Cs(p);n.push(f),s.push(Cs(u)),u!==p&&(d=!1)}var g=[os(n)];d||g.push(os(s));var m=e.scope.generateUidIdentifier("templateObject");e.scope.getProgramParent().push({id:sm(m)}),e.replaceWith(gs(r.tag,[pj.expression.ast(vve||(vve=h(["\n "," || (\n "," = ","(",")\n )\n "])),sm(m),m,this.addHelper(o),g)].concat(b(a.expressions))))},TemplateLiteral:function(e){if("TSLiteralType"!==e.parent.type){for(var t,r=[],a=e.get("expressions"),s=0,o=i(e.node.quasis);!(t=o()).done;){var d=t.value;if(d.value.cooked&&r.push(Cs(d.value.cooked)),s<a.length){var c=a[s++].node;le(c,{value:""})||r.push(c)}}le(r[0])||n&&le(r[1])||r.unshift(Cs(""));var l,u=r[0];if(n)for(var p=1;p<r.length;p++)u=ds("+",u,r[p]);else r.length>1&&(l=!0,u=r.reduce(function(e,t){var r=dr(t);return!r&&l&&(r=!0,l=!1),r&&Z(e)?(e.arguments.push(t),e):gs(Bs(e,Ps("concat")),[t])}));e.replaceWith(u)}}}}},Pve=function(e){return e.assertVersion("*"),{name:"transform-typeof-symbol",visitor:{Scope:function(e){var t=e.scope;t.getBinding("Symbol")&&t.rename("Symbol")},UnaryExpression:function(e){var t=e.node,r=e.parent;if("typeof"===t.operator){if(e.parentPath.isBinaryExpression()&&ua.includes(r.operator)){var a=e.getOpposite();if(a.isStringLiteral()&&"symbol"!==a.node.value&&"object"!==a.node.value)return}var n=e.findParent(function(e){var t;if(e.isFunctionDeclaration())return"@babel/helpers - typeof"===(null==(t=e.get("body.directives.0"))?void 0:t.node.value.value)});if(!n){var s=this.addHelper("typeof");if(n=e.findParent(function(e){return e.isVariableDeclarator()&&e.node.id===s||e.isFunctionDeclaration()&&e.node.id&&e.node.id.name===s.name}),!n){var o=gs(s,[t.argument]),i=e.get("argument");if(i.isIdentifier()&&!e.scope.hasBinding(i.node.name,!0)){var d=$s("typeof",sm(t.argument));e.replaceWith(ys(ds("===",d,Cs("undefined")),Cs("undefined"),o))}else e.replaceWith(o)}}}}}}},Ave=new WeakMap,kve=pj.expression("\n (function (ID) {\n ASSIGNMENTS;\n return ID;\n })(INIT)\n ");function Cve(e,t){var r=e.node,a=e.parentPath;if(r.declare)e.remove();else{var n=r.id.name,s=function(e,t,r){for(var a=Mve(e,t),n=a.enumValues,s=a.data,o=a.isPure,i=e.get("members"),d=[],c=0;c<i.length;c++){var l=y(n[c],2),u=l[0],p=l[1];d.push(t.inheritsComments(Dve(Ove(p),{ENUM:t.cloneNode(r),NAME:u,VALUE:p}),i[c].node))}return{fill:{ID:t.cloneNode(r),ASSIGNMENTS:d},data:s,isPure:o}}(e,t,r.id),o=s.fill,i=s.data,d=s.isPure;switch(a.type){case"BlockStatement":case"ExportNamedDeclaration":case"Program":var c=t.isProgram(e.parent),l=function e(t){if(t.isExportDeclaration())return e(t.parentPath);return!!t.getData(n)||(t.setData(n,!0),!1)}(a),u=t.objectExpression([]);(l||c)&&(u=t.logicalExpression("||",t.cloneNode(o.ID),u));var p=kve(Object.assign({},o,{INIT:u}));if(d&&DH(p),l)(a.isExportDeclaration()?a:e).replaceWith(t.expressionStatement(t.assignmentExpression("=",t.cloneNode(r.id),p)));else e.scope.registerDeclaration(e.replaceWith(t.variableDeclaration(c?"var":"let",[t.variableDeclarator(r.id,p)]))[0]);Ave.set(e.scope.getBindingIdentifier(n),i);break;default:throw new Error("Unexpected enum parent '"+e.parent.type)}}}var _ve=pj.statement('\n ENUM["NAME"] = VALUE;\n'),Ive=pj.statement('\n ENUM[ENUM["NAME"] = VALUE] = "NAME";\n'),Dve=function(e,t){return(e?_ve:Ive)(t)};function Ove(e){switch((e=bK(e)).type){case"BinaryExpression":var t=e.left,r=e.right;return"+"===e.operator&&(Ove(t)||Ove(r));case"TemplateLiteral":case"StringLiteral":return!0}return!1}function Nve(e,t){var r=t.seen,a=t.path,n=t.t,s=e.node.name;if(r.has(s)){for(var o=e.scope;o!==a.scope;o=o.parent)if(o.hasOwnBinding(s))return;e.replaceWith(n.memberExpression(n.cloneNode(a.node.id),n.cloneNode(e.node))),e.skip()}}var Bve={ReferencedIdentifier:Nve};function Mve(e,t){var r,a,n=e.scope.getBindingIdentifier(e.node.id.name),s=null!=(r=Ave.get(n))?r:new Map,o=-1,i=!0,d=e.get("members").map(function(r){var n,d=r.node,c=t.isIdentifier(d.id)?d.id.name:d.id.value,l=r.get("initializer");if(d.initializer)void 0!==(o=Fve(l,s))?(s.set(c,o),gN("number"==typeof o||"string"==typeof o),n=o===1/0||Number.isNaN(o)?t.identifier(String(o)):o===-1/0?t.unaryExpression("-",t.identifier("Infinity")):t.valueToNode(o)):(i&&(i=l.isPure()),l.isReferencedIdentifier()?Nve(l,{t:t,seen:s,path:e}):l.traverse(Bve,{t:t,seen:s,path:e}),n=l.node,s.set(c,void 0));else if("number"==typeof o)o+=1,n=t.numericLiteral(o),s.set(c,o);else{if("string"==typeof o)throw e.buildCodeFrameError("Enum member must have initializer.");var u=t.memberExpression(t.cloneNode(e.node.id),t.stringLiteral(a),!0);n=t.binaryExpression("+",t.numericLiteral(1),u),s.set(c,void 0)}return a=c,[c,n]});return{isPure:i,data:s,enumValues:d}}function Fve(e,t,r){return void 0===r&&(r=new Set),a(e);function a(e){var s=e.node;switch(s.type){case"MemberExpression":case"Identifier":return n(e,t,r);case"StringLiteral":case"NumericLiteral":return s.value;case"UnaryExpression":return function(e){var t=a(e.get("argument"));if(void 0===t)return;switch(e.node.operator){case"+":return t;case"-":return-t;case"~":return~t;default:return}}(e);case"BinaryExpression":return function(e){var t=a(e.get("left"));if(void 0===t)return;var r=a(e.get("right"));if(void 0===r)return;switch(e.node.operator){case"|":return t|r;case"&":return t&r;case">>":return t>>r;case">>>":return t>>>r;case"<<":return t<<r;case"^":return t^r;case"*":return t*r;case"/":return t/r;case"+":return t+r;case"-":return t-r;case"%":return t%r;case"**":return Math.pow(t,r);default:return}}(e);case"ParenthesizedExpression":return a(e.get("expression"));case"TemplateLiteral":if(1===s.quasis.length)return s.quasis[0].value.cooked;for(var o=e.get("expressions"),i=s.quasis,d="",c=0;c<i.length;c++)if(d+=i[c].value.cooked,c+1<i.length){var l=n(o[c],t,r);if(void 0===l)return;d+=l}return d;default:return}}function n(e,t,r){if(e.isMemberExpression()){var a=e.node,n=a.object,s=a.property;if(!ie(n)||(a.computed?!le(s):!ie(s)))return;var o=e.scope.getBindingIdentifier(n.name),i=Ave.get(o);if(!i)return;return i.get(s.computed?s.value:s.name)}if(e.isIdentifier()){var d=e.node.name;if(["Infinity","NaN"].includes(d))return Number(d);var c=null==t?void 0:t.get(d);if(void 0!==c)return c;if(null!=t&&t.has(d))return;if(r.has(e.node))return;return r.add(e.node),c=Fve(e.resolve(),t,r)}}}var Lve=new WeakSet;var Uve,qve,Gve,Wve,Vve=new WeakMap;function Hve(e,t){var r=e.scope;return!r.hasBinding(t)&&(!!Vve.get(r).has(t)||(console.warn('The exported identifier "'+t+'" is not declared in Babel\'s scope tracker\nas a JavaScript value binding, and "@babel/plugin-transform-typescript"\nnever encountered it as a TypeScript type declaration.\nIt will be treated as a JavaScript value.\n\nThis problem is likely caused by another plugin injecting\n"'+t+'" without registering it in the scope tracker. If you are the author\n of that plugin, please use "scope.registerDeclaration(declarationPath)".'),!1))}function zve(e,t){Vve.get(e).add(t)}function Kve(e){return ie(e)?e:Kve(e.left)}function Xve(e,t){if(e.node.declare||"StringLiteral"===e.node.id.type)e.remove();else{if(!t)throw e.get("id").buildCodeFrameError("Namespace not marked type-only declare. Non-declarative namespaces are only supported experimentally in Babel. To enable and review caveats see: https://babeljs.io/docs/en/babel-plugin-transform-typescript");var r=Kve(e.node.id).name,a=Zve(e,e.node);if(null===a)zve(e.findParent(function(e){return e.isProgram()}).scope,r),e.remove();else e.scope.hasOwnBinding(r)?e.replaceWith(a):e.scope.registerDeclaration(e.replaceWithMultiple([Jve(r),a])[0])}}function Jve(e){return Zs("let",[eo(Ps(e))])}function Yve(e,t){return Bs(Ps(e),Ps(t))}function $ve(e,t,r){if("const"!==e.kind)throw r.file.buildCodeFrameError(e,"Namespaces exporting non-const are not supported by Babel. Change to const or see: https://babeljs.io/docs/en/babel-plugin-transform-typescript");var a=e.declarations;if(a.every(function(e){return ie(e.id)})){for(var n,s=i(a);!(n=s()).done;){var o=n.value;o.init=is("=",Yve(t,o.id.name),o.init)}return[e]}var d=Iy(e),c=[];for(var l in d)c.push(is("=",Yve(t,l),sm(d[l])));return[e,Rs(Vs(c))]}function Qve(e,t){return e.hub.buildError(t,"Ambient modules cannot be nested in other modules or namespaces.",Error)}function Zve(e,t,r){var a,n=new Set,s=t.id,o=e.scope.generateUid(s.name),i=t.body;t.id,a=Xt(i)?i.body:[po(i)];for(var d=!0,c=0;c<a.length;c++){var l=a[c];switch(l.type){case"TSModuleDeclaration":if(!ie(l.id))throw Qve(e,l);var u=Zve(e,l);if(null!==u){d=!1;var p=l.id.name;n.has(p)?a[c]=u:(n.add(p),a.splice(c++,1,Jve(p),u))}continue;case"TSEnumDeclaration":case"FunctionDeclaration":case"ClassDeclaration":d=!1,n.add(l.id.name);continue;case"VariableDeclaration":for(var f in d=!1,Iy(l))n.add(f);continue;default:d&&(d=xr(l));continue;case"ExportNamedDeclaration":}if(!("declare"in l.declaration)||!l.declaration.declare)switch(l.declaration.type){case"TSEnumDeclaration":Lve.add(l.declaration);case"FunctionDeclaration":case"ClassDeclaration":d=!1;var g=l.declaration.id.name;n.add(g),a.splice(c++,1,l.declaration,Rs(is("=",Yve(o,g),Ps(g))));break;case"VariableDeclaration":var m;d=!1;var y=$ve(l.declaration,o,e.hub);(m=a).splice.apply(m,[c,y.length].concat(b(y))),c+=y.length-1;break;case"TSModuleDeclaration":if(!ie(l.declaration.id))throw Qve(e,l.declaration);var v=Zve(e,l.declaration,Ps(o));if(null!==v){d=!1;var x=l.declaration.id.name;n.has(x)?a[c]=v:(n.add(x),a.splice(c++,1,Jve(x),v))}else a.splice(c,1),c--}}if(d)return null;var R=Ls([]);if(r){var j=Bs(r,s);R=pj.expression.ast(Uve||(Uve=h(["\n "," ||\n ("," = ",")\n "])),sm(j),sm(j),R)}return pj.statement.ast(qve||(qve=h(["\n (function (",") {\n ","\n })("," || ("," = ","));\n "])),Ps(o),a,s,sm(s),R)}function exe(e){switch(e.parent.type){case"TSTypeReference":case"TSExpressionWithTypeArguments":case"TSExpressionWithTypeArguments":case"TSTypeQuery":return!0;case"TSQualifiedName":return"TSImportEqualsDeclaration"!==e.parentPath.findParent(function(e){return"TSQualifiedName"!==e.type}).type;case"ExportSpecifier":return"type"===e.parent.exportKind||"type"===e.parentPath.parent.exportKind;default:return!1}}var txe=new WeakMap,rxe=new WeakSet;function axe(e){for(var t=e.getBindingIdentifiers(),r=0,a=Object.keys(t);r<a.length;r++){var n=a[r],s=e.scope.getBinding(n);s&&s.identifier===t[n]&&s.scope.removeBinding(n)}e.opts.noScope=!0,e.remove(),e.opts.noScope=!1}function nxe(e,t,r,a,n){if(void 0===n&&(n=""),"commonjs"!==t.file.get("@babel/plugin-transform-modules-*"))throw e.buildCodeFrameError("`"+r+"` is only supported when compiling modules to CommonJS.\nPlease consider using `"+a+"`"+n+", or add @babel/plugin-transform-modules-commonjs to your Babel config.")}var sxe,oxe=function(e,t){var r,a=e.types,n=e.template;e.assertVersion("*");var s=/\*?\s*@jsx((?:Frag)?)\s+(\S+)/,o=t.allowNamespaces,d=void 0===o||o,c=t.jsxPragma,l=void 0===c?"React.createElement":c,u=t.jsxPragmaFrag,p=void 0===u?"React.Fragment":u,f=t.onlyRemoveTypeImports,g=void 0!==f&&f,m=t.optimizeConstEnums,b=void 0!==m&&m,v=t.allowDeclareFields,x=void 0!==v&&v,R=function(e){var t=e.node;if(!x&&t.declare)throw e.buildCodeFrameError("The 'declare' modifier is only allowed when the 'allowDeclareFields' option of @babel/plugin-transform-typescript or @babel/preset-typescript is enabled.");if(t.declare){if(t.value)throw e.buildCodeFrameError("Fields with the 'declare' modifier cannot be initialized here, but only in the constructor");t.decorators||e.remove()}else if(t.definite){if(t.value)throw e.buildCodeFrameError("Definitely assigned fields cannot be initialized here, but only in the constructor");x||t.decorators||a.isClassPrivateProperty(t)||e.remove()}else t.abstract?e.remove():x||t.value||t.decorators||a.isClassPrivateProperty(t)||e.remove();t.accessibility&&(t.accessibility=null),t.abstract&&(t.abstract=null),t.readonly&&(t.readonly=null),t.optional&&(t.optional=null),t.typeAnnotation&&(t.typeAnnotation=null),t.definite&&(t.definite=null),t.declare&&(t.declare=null),t.override&&(t.override=null)},j=function(e){var t=e.node;t.accessibility&&(t.accessibility=null),t.abstract&&(t.abstract=null),t.optional&&(t.optional=null),t.override&&(t.override=null)},w=function(e,t){e.node.accessibility&&(e.node.accessibility=null);for(var r,s=[],o=e.scope,d=i(e.get("params"));!(r=d()).done;){var c=r.value,l=c.node;if("TSParameterProperty"===l.type){var u=l.parameter;if(rxe.has(u))continue;rxe.add(u);var p=void 0;if(a.isIdentifier(u))p=u;else{if(!a.isAssignmentPattern(u)||!a.isIdentifier(u.left))throw c.buildCodeFrameError("Parameter properties can not be destructuring patterns.");p=u.left}s.push(n.statement.ast(Gve||(Gve=h(["\n this."," = ","\n "])),a.cloneNode(p),a.cloneNode(p))),c.replaceWith(c.get("parameter")),o.registerBinding("param",c)}}ZK(t,e,s)};return{name:"transform-typescript",inherits:mH,visitor:(r={Pattern:S,Identifier:S,RestElement:S,Program:{enter:function(e,t){var r=t.file,a=null,n=null,o=e.scope;if(Vve.has(o)||Vve.set(o,new Set),r.ast.comments)for(var d,c=i(r.ast.comments);!(d=c()).done;){var u=d.value,f=s.exec(u.value);f&&(f[1]?n=f[2]:a=f[2])}var m=a||l;if(m){var h=y(m.split("."),1);m=h[0]}var b=n||p;if(b){var v=y(b.split("."),1);b=v[0]}for(var x,R=function(){var r=x.value;if(r.isImportDeclaration()){if(txe.has(t.file.ast.program)||txe.set(t.file.ast.program,!0),"type"===r.node.importKind){for(var a,n=i(r.node.specifiers);!(a=n()).done;){var s=a.value;zve(o,s.local.name)}return r.remove(),0}for(var d,c=new Set,l=r.node.specifiers.length,u=i(r.node.specifiers);!(d=u()).done;){var p=d.value;if("ImportSpecifier"===p.type&&"type"===p.importKind){zve(o,p.local.name);var f=r.scope.getBinding(p.local.name);f&&c.add(f.path)}}if(g)txe.set(e.node,!1);else{if(0===r.node.specifiers.length)return txe.set(e.node,!1),0;for(var y,h=i(r.node.specifiers);!(y=h()).done;){var v=y.value,R=r.scope.getBinding(v.local.name);R&&!c.has(R.path)&&(T({binding:R,programPath:e,pragmaImportName:m,pragmaFragImportName:b})?c.add(R.path):txe.set(e.node,!1))}}if(l>0&&l===c.size&&!g)r.remove();else for(var j,w=i(c);!(j=w()).done;){j.value.remove()}return 0}if(!g&&r.isTSImportEqualsDeclaration()){var E=r.node.id,S=r.scope.getBinding(E.name);if(S&&!r.node.isExport&&T({binding:S,programPath:e,pragmaImportName:m,pragmaFragImportName:b}))return r.remove(),0}if(r.isExportDeclaration()&&(r=r.get("declaration")),r.isVariableDeclaration({declare:!0}))for(var P=0,A=Object.keys(r.getBindingIdentifiers());P<A.length;P++){var k=A[P];zve(o,k)}else(r.isTSTypeAliasDeclaration()||r.isTSDeclareFunction()&&r.get("id").isIdentifier()||r.isTSInterfaceDeclaration()||r.isClassDeclaration({declare:!0})||r.isTSEnumDeclaration({declare:!0})||r.isTSModuleDeclaration({declare:!0})&&r.get("id").isIdentifier())&&zve(o,r.node.id.name)},j=i(e.get("body"));!(x=j()).done;)R()},exit:function(e){"module"===e.node.sourceType&&txe.get(e.node)&&e.pushContainer("body",a.exportNamedDeclaration())}},ExportNamedDeclaration:function(e,t){if(txe.has(t.file.ast.program)||txe.set(t.file.ast.program,!0),"type"!==e.node.exportKind)if(e.node.source&&e.node.specifiers.length>0&&e.node.specifiers.every(function(e){return"ExportSpecifier"===e.type&&"type"===e.exportKind}))e.remove();else if(!e.node.source&&e.node.specifiers.length>0&&e.node.specifiers.every(function(t){return a.isExportSpecifier(t)&&Hve(e,t.local.name)}))e.remove();else{if(a.isTSModuleDeclaration(e.node.declaration)){var r=e.node.declaration;if(!a.isStringLiteral(r.id)){var n=Kve(r.id);if(e.scope.hasOwnBinding(n.name))e.replaceWith(r);else{var s=y(e.replaceWithMultiple([a.exportNamedDeclaration(a.variableDeclaration("let",[a.variableDeclarator(a.cloneNode(n))])),r]),1)[0];e.scope.registerDeclaration(s)}}}txe.set(t.file.ast.program,!1)}else e.remove()},ExportAllDeclaration:function(e){"type"===e.node.exportKind&&e.remove()},ExportSpecifier:function(e){(!e.parent.source&&Hve(e,e.node.local.name)||"type"===e.node.exportKind)&&e.remove()},ExportDefaultDeclaration:function(e,t){txe.has(t.file.ast.program)||txe.set(t.file.ast.program,!0),a.isIdentifier(e.node.declaration)&&Hve(e,e.node.declaration.name)?e.remove():txe.set(t.file.ast.program,!1)},TSDeclareFunction:function(e){axe(e)},TSDeclareMethod:function(e){axe(e)},VariableDeclaration:function(e){e.node.declare&&axe(e)},VariableDeclarator:function(e){var t=e.node;t.definite&&(t.definite=null)},TSIndexSignature:function(e){e.remove()},ClassDeclaration:function(e){e.node.declare&&axe(e)},Class:function(e){var t=e.node;t.typeParameters&&(t.typeParameters=null),t.superTypeParameters&&(t.superTypeParameters=null),t.implements&&(t.implements=null),t.abstract&&(t.abstract=null),e.get("body.body").forEach(function(t){t.isClassMethod()||t.isClassPrivateMethod()?"constructor"===t.node.kind?w(t,e):j(t):(t.isClassProperty()||t.isClassPrivateProperty()||t.isClassAccessorProperty())&&R(t)})},Function:function(e){var t=e.node;t.typeParameters&&(t.typeParameters=null),t.returnType&&(t.returnType=null);var r=t.params;r.length>0&&a.isIdentifier(r[0],{name:"this"})&&r.shift()},TSModuleDeclaration:function(e){Xve(e,d)},TSInterfaceDeclaration:function(e){e.remove()},TSTypeAliasDeclaration:function(e){e.remove()},TSEnumDeclaration:function(e){b&&e.node.const?function(e,t){var r=e.node.id.name,a=e.parentPath.isExportNamedDeclaration(),n=a;!n&&t.isProgram(e.parent)&&(n=e.parent.body.some(function(e){return t.isExportNamedDeclaration(e)&&"type"!==e.exportKind&&!e.source&&e.specifiers.some(function(e){return t.isExportSpecifier(e)&&"type"!==e.exportKind&&e.local.name===r})}));var s=Mve(e,t).enumValues;if(n||Lve.has(e.node)){var o=t.objectExpression(s.map(function(e){var r=y(e,2),a=r[0],n=r[1];return t.objectProperty(t.isValidIdentifier(a)?t.identifier(a):t.stringLiteral(a),n)}));e.scope.hasOwnBinding(r)?(a?e.parentPath:e).replaceWith(t.expressionStatement(t.callExpression(t.memberExpression(t.identifier("Object"),t.identifier("assign")),[e.node.id,o]))):(e.replaceWith(t.variableDeclaration("var",[t.variableDeclarator(e.node.id,o)])),e.scope.registerDeclaration(e))}else{var i=new Map(s);e.scope.path.traverse({Scope:function(e){e.scope.hasOwnBinding(r)&&e.skip()},MemberExpression:function(e){if(t.isIdentifier(e.node.object,{name:r})){var a;if(e.node.computed){if(!t.isStringLiteral(e.node.property))return;a=e.node.property.value}else{if(!t.isIdentifier(e.node.property))return;a=e.node.property.name}i.has(a)&&e.replaceWith(t.cloneNode(i.get(a)))}}}),e.remove()}}(e,a):Cve(e,a)},TSImportEqualsDeclaration:function(e,t){var r,n,s=e.node,o=s.id,i=s.moduleReference;a.isTSExternalModuleReference(i)?(nxe(e,t,"import "+o.name+" = require(...);","import "+o.name+" from '...';"," alongside Typescript's --allowSyntheticDefaultImports option"),r=a.callExpression(a.identifier("require"),[i.expression]),n="const"):(r=E(i),n="var");var d=a.variableDeclaration(n,[a.variableDeclarator(o,r)]);e.replaceWith(e.node.isExport?a.exportNamedDeclaration(d):d),e.scope.registerDeclaration(e)},TSExportAssignment:function(e,t){nxe(e,t,"export = <value>;","export default <value>;"),e.replaceWith(n.statement.ast(Wve||(Wve=h(["module.exports = ",""])),e.node.expression))},TSTypeAssertion:function(e){e.replaceWith(e.node.expression)}},r["TSAsExpression"+(a.tsSatisfiesExpression?"|TSSatisfiesExpression":"")]=function(e){var t=e.node;do{t=t.expression}while(a.isTSAsExpression(t)||null!=a.isTSSatisfiesExpression&&a.isTSSatisfiesExpression(t));e.replaceWith(t)},r[e.types.tsInstantiationExpression?"TSNonNullExpression|TSInstantiationExpression":"TSNonNullExpression"]=function(e){e.replaceWith(e.node.expression)},r.CallExpression=function(e){e.node.typeParameters=null},r.OptionalCallExpression=function(e){e.node.typeParameters=null},r.NewExpression=function(e){e.node.typeParameters=null},r.JSXOpeningElement=function(e){e.node.typeParameters=null},r.TaggedTemplateExpression=function(e){e.node.typeParameters=null},r)};function E(e){return a.isTSQualifiedName(e)?a.memberExpression(E(e.left),e.right):e}function S(e){var t=e.node;t.typeAnnotation&&(t.typeAnnotation=null),a.isIdentifier(t)&&t.optional&&(t.optional=null)}function T(e){for(var t,r=e.binding,a=e.programPath,n=e.pragmaImportName,s=e.pragmaFragImportName,o=i(r.referencePaths);!(t=o()).done;){if(!exe(t.value))return!1}if(r.identifier.name!==n&&r.identifier.name!==s)return!0;var d=!1;return a.traverse({"JSXElement|JSXFragment":function(e){d=!0,e.stop()}}),!d}},ixe=function(e){e.assertVersion("*");var t=/[\ud800-\udfff]/g,r=/(\\+)u\{([0-9a-fA-F]+)\}/g;function a(e){for(var t=e.toString(16);t.length<4;)t="0"+t;return"\\u"+t}function n(e,t,r){if(t.length%2==0)return e;var n=String.fromCodePoint(parseInt(r,16)),s=t.slice(0,-1)+a(n.charCodeAt(0));return 1===n.length?s:s+a(n.charCodeAt(1))}function s(e){return e.replace(r,n)}return{name:"transform-unicode-escapes",manipulateOptions:function(e){var t,r=e.generatorOpts;r.jsescOption||(r.jsescOption={}),null!=(t=r.jsescOption).minimal||(t.minimal=!1)},visitor:{Identifier:function(e){var r=e.node,a=e.key,n=r.name,s=n.replace(t,function(e){return"_u"+e.charCodeAt(0).toString(16)});if(n!==s){var o=Cy(Cs(n),r);if("key"!==a){var i=e.parentPath,d=e.scope;if(i.isMemberExpression({property:r})||i.isOptionalMemberExpression({property:r}))return i.node.computed=!0,void e.replaceWith(o);if(!d.getBinding(n))throw e.buildCodeFrameError("Can't reference '"+n+"' as a bare identifier");d.rename(n,d.generateUid(s))}else e.replaceWith(o)}},"StringLiteral|DirectiveLiteral":function(e){var t=e.node.extra;null!=t&&t.raw&&(t.raw=s(t.raw))},TemplateElement:function(e){var t=e.node,a=e.parentPath,n=t.value,o=function(e){for(var t;t=r.exec(e);)if(t[1].length%2!=0)return r.lastIndex=0,t[0];return null}(n.raw);if(o){if(a.parentPath.isTaggedTemplateExpression())throw e.buildCodeFrameError("Can't replace Unicode escape '"+o+"' inside tagged template literals. You can enable '@babel/plugin-transform-template-literals' to compile them to classic strings.");n.raw=s(n.raw)}}}}},dxe=function(e){return e.assertVersion("*"),Vpe({name:"transform-unicode-regex",feature:"unicodeFlag"})};function cxe(e){return Ie(e)||(oe(e)||Oe(e))&&!e.id}function lxe(e,t,r){return gs(e.addHelper("setFunctionName"),[t,Cs(r)])}var uxe,pxe,fxe=function(e){e.assertVersion("*");var t=new Map;function r(e){return!!Ae(e)&&("using"===e.kind||"await using"===e.kind||t.has(e))}var a={ForOfStatement:function(e){var t=e.node.left;if(r(t)){var a=t.declarations[0].id,n=e.scope.generateUidIdentifierBasedOnNode(a);t.declarations[0].id=n,t.kind="const",e.ensureBlock(),wJ(e,[Zs("using",[eo(a,sm(n))])])}},"BlockStatement|StaticBlock":function(e,a){for(var n,s=null,o=!1,d=e.scope,c=i(e.node.body);!(n=c()).done;){var l=n.value;if(r(l)){null!=s||(s=d.generateUidIdentifier("usingCtx"));var u="await using"===l.kind||1===t.get(l);o||(o=u),t.delete(l)||(l.kind="const");for(var p,f=i(l.declarations);!(p=f()).done;){var g=p.value,m=g.init;g.init=gs(Bs(sm(s),Ps(u?"a":"u")),[cxe(m)&&ie(g.id)?lxe(a,m,g.id.name):m])}}}if(s){var y=gs(Bs(sm(s),Ps("d")),[]),b=pj.statement.ast(sxe||(sxe=h(["\n try {\n var "," = ","();\n ","\n } catch (_) {\n ",".e = _;\n } finally {\n ","\n }\n "])),sm(s),a.addHelper("usingCtx"),e.node.body,sm(s),o?ko(y):y);Cy(b,e.node);var v=e.parentPath;v.isFunction()||v.isTryStatement()||v.isCatchClause()?e.replaceWith(ps([b])):e.isStaticBlock()?e.node.body=[b]:e.replaceWith(b)}}},n=OO.visitors.merge([a,{Function:function(e){e.skip()}}]);return{name:"transform-explicit-resource-management",manipulateOptions:function(e,t){return t.plugins.push("explicitResourceManagement")},visitor:OO.visitors.merge([a,{Program:function(e){if(t.clear(),"module"===e.node.sourceType&&e.node.body.some(r)){for(var a,n=[],s=i(e.get("body"));!(a=s()).done;){var o=a.value;if(!o.isFunctionDeclaration()&&!o.isImportDeclaration()){var d=o.node,c=!0;if(o.isExportDefaultDeclaration()){var l=o.node.declaration,u=void 0;if(Ne(l))u=l.id,l.id=sm(u),l=by(l);else if(!$t(l))continue;null!=u||(u=e.scope.generateUidIdentifier("_default")),n.push(Zs("var",[eo(u,l)])),o.replaceWith(po(null,[fo(sm(u),Ps("default"))]))}else{if(o.isExportNamedDeclaration()){if(!(d=o.node.declaration)||nr(d))continue;o.replaceWith(po(null,Object.keys(Dy(d,!1)).map(function(e){return fo(Ps(e),Ps(e))}))),c=!1}else if(o.isExportDeclaration())continue;if(Ne(d)){var p=d.id;d.id=sm(p),n.push(Zs("var",[eo(p,by(d))]))}else Ae(d)?("using"===d.kind?t.set(o.node,0):"await using"===d.kind&&t.set(o.node,1),d.kind="var",n.push(d)):n.push(o.node);c&&o.remove()}}}e.pushContainer("body",ps(n))}},Function:function(e,t){e.node.async&&e.traverse(n,t)}}])}},gxe=function(e){e.assertVersion("*");var t=e.types,r=e.template;function a(e,r){var a=r.specifiers[0];t.assertImportNamespaceSpecifier(a);var n=e.getOwnBinding(a.local.name);return!(null==n||!n.referencePaths.every(function(e){return e.parentPath.isMemberExpression({object:e.node})}))}return{name:"proposal-import-defer",manipulateOptions:function(e,t){return t.plugins.push("deferredImportEvaluation")},pre:function(){var e=this.file;Vme(e,{name:"@babel/plugin-proposal-import-defer",version:"7.27.1",getWrapperPayload:function(r,n,s){for(var o,d=!1,c=i(s);!(o=c()).done;){var l=o.value;if(!t.isImportDeclaration(l))return null;if("defer"!==l.phase)return null;a(e.scope,l)||(d=!0)}return d?"defer/proxy":"defer/function"},buildRequireWrapper:function(t,a,n,s){return"defer/proxy"===n?!!s&&r.statement.ast(uxe||(uxe=h(["\n var "," = ","(\n () => ","\n )\n "])),t,e.addHelper("importDeferProxy"),a):"defer/function"===n?!!s&&r.statement.ast(pxe||(pxe=h(["\n function ","(data) {\n "," = () => data;\n return data = ",";\n }\n "])),t,t,a):void 0},wrapReference:function(e,r){if("defer/function"===r)return t.callExpression(e,[])}})},visitor:{Program:function(e){if("commonjs"!==this.file.get("@babel/plugin-transform-modules-*"))throw new Error("@babel/plugin-proposal-import-defer can only be used when transpiling modules to CommonJS.");for(var t,r=new Set,a=i(e.get("body"));!(t=a()).done;){var n=t.value;if(n.isImportDeclaration()&&null==n.node.phase||n.isExportNamedDeclaration()&&null!==n.node.source||n.isExportAllDeclaration()){var s=n.node.source.value;r.has(s)||r.add(s)}}for(var o,d=[],c=i(e.get("body"));!(o=c()).done;){var l=o.value;if(l.isImportDeclaration({phase:"defer"})){var u=l.node.source.value;if(!r.has(u))continue;l.node.phase=null,d.push(l.node),l.remove()}}d.length&&(e.pushContainer("body",d),e.scope.crawl())}}}},mxe={};Object.defineProperty(mxe,"__esModule",{value:!0}),mxe.default=void 0;var yxe=zV;mxe.default=(0,yxe.declare)(function(e,t){return e.assertVersion(7),{name:"syntax-record-and-tuple",manipulateOptions:function(e,r){e.generatorOpts.recordAndTupleSyntaxType=t.syntaxType,r.plugins.push(["recordAndTuple",{syntaxType:t.syntaxType}])}}});var hxe={},bxe=cR(tB),vxe=cR(lU);Object.defineProperty(hxe,"__esModule",{value:!0}),hxe.default=void 0;var xxe=zV,Rxe=mxe,jxe=rbe,wxe=bxe,Exe=new vxe.OptionValidator("@babel/plugin-proposal-record-and-tuple");hxe.default=(0,xxe.declare)(function(e,t){e.assertVersion(7);var r=Exe.validateStringOption("polyfillModuleName",t.polyfillModuleName,"@bloomberg/record-tuple-polyfill"),a=Exe.validateBooleanOption("importPolyfill",t.importPolyfill,!!t.polyfillModuleName),n=new WeakMap;function s(e,t,r){var a=e.get(t);return a||e.set(t,a=r()),a}function o(e,t){if(!a)return jxe.types.identifier(e);if(!t)throw new Error("Internal error: unable to find the Program node.");var o=e+":"+(0,wxe.isModule)(t),i=s(n,t.node,function(){return new Map}),d=s(i,o,function(){return(0,wxe.addNamed)(t,e,r,{importedInterop:"uncompiled"}).name});return jxe.types.identifier(d)}return{name:"proposal-record-and-tuple",inherits:Rxe.default,visitor:{Program:function(e,t){t.programPath=e},RecordExpression:function(e,t){var r=o("Record",t.programPath),a=jxe.types.objectExpression(e.node.properties),n=jxe.types.callExpression(r,[a]);e.replaceWith(n)},TupleExpression:function(e,t){var r=o("Tuple",t.programPath),a=jxe.types.callExpression(r,e.node.elements);e.replaceWith(a)}}}});var Sxe={"syntax-async-generators":GV(),"syntax-class-properties":GV(),"syntax-class-static-block":GV(),"syntax-import-meta":GV(),"syntax-object-rest-spread":GV(),"syntax-optional-catch-binding":GV(),"syntax-top-level-await":GV(),"external-helpers":VV,"syntax-decimal":HV,"syntax-decorators":XV,"syntax-destructuring-private":JV,"syntax-do-expressions":YV,"syntax-explicit-resource-management":$V,"syntax-export-default-from":QV,"syntax-flow":ZV,"syntax-function-bind":eH,"syntax-function-sent":tH,"syntax-import-assertions":rH,"syntax-import-attributes":aH,"syntax-import-reflection":nH,"syntax-jsx":oH,"syntax-module-blocks":iH,"syntax-optional-chaining-assign":cH,"syntax-pipeline-operator":fH,"syntax-typescript":mH,"transform-async-generator-functions":GH,"transform-class-properties":iJ,"transform-class-static-block":dJ,"proposal-decorators":RJ,"proposal-destructuring-private":jY,"proposal-do-expressions":TY,"transform-duplicate-named-capturing-groups-regex":zpe,"transform-dynamic-import":Xpe,"proposal-export-default-from":Jpe,"transform-export-namespace-from":Ype,"proposal-function-bind":$pe,"proposal-function-sent":Qpe,"transform-json-strings":Zpe,"transform-logical-assignment-operators":efe,"transform-nullish-coalescing-operator":tfe,"transform-numeric-separator":afe,"transform-object-rest-spread":lfe,"transform-optional-catch-binding":ufe,"transform-optional-chaining":Rfe,"proposal-optional-chaining-assign":jfe,"proposal-pipeline-operator":qfe,"transform-private-methods":Gfe,"transform-private-property-in-object":Wfe,"transform-regexp-modifiers":Vfe,"proposal-throw-expressions":Hfe,"transform-unicode-property-regex":zfe,"transform-unicode-sets-regex":Kfe,"transform-async-to-generator":Xfe,"transform-arrow-functions":Jfe,"transform-block-scoped-functions":Yfe,"transform-block-scoping":gge,"transform-classes":Pge,"transform-computed-properties":kge,"transform-destructuring":CJ,"transform-dotall-regex":Cge,"transform-duplicate-keys":Dge,"transform-exponentiation-operator":Oge,"transform-flow-comments":Nge,"transform-flow-strip-types":Bge,"transform-for-of":Hge,"transform-function-name":zge,"transform-instanceof":Kge,"transform-jscript":Xge,"transform-json-modules":Cme,"transform-literals":_me,"transform-member-expression-literals":Ime,"transform-modules-amd":Fme,"transform-modules-commonjs":zme,"transform-modules-systemjs":$me,"transform-modules-umd":eye,"transform-named-capturing-groups-regex":tye,"transform-new-target":rye,"transform-object-assign":aye,"transform-object-super":nye,"transform-object-set-prototype-of-to-assign":sye,"transform-parameters":RY,"transform-property-literals":oye,"transform-property-mutators":cye,"transform-proto-to-assign":lye,"transform-react-constant-elements":uye,"transform-react-display-name":pye,"transform-react-inline-elements":Fye,"transform-react-jsx":$ye,"transform-react-jsx-compat":Qye,"transform-react-jsx-development":Zye,"transform-react-jsx-self":the,"transform-react-jsx-source":nhe,"transform-regenerator":Ohe,"transform-reserved-words":Nhe,"transform-runtime":Rve,"transform-shorthand-properties":jve,"transform-spread":wve,"transform-sticky-regex":Eve,"transform-strict-mode":Sve,"transform-template-literals":Tve,"transform-typeof-symbol":Pve,"transform-typescript":oxe,"transform-unicode-escapes":ixe,"transform-unicode-regex":dxe,"transform-explicit-resource-management":fxe,"proposal-import-defer":gxe};Sxe["syntax-record-and-tuple"]=mxe,Sxe["proposal-record-and-tuple"]=hxe;var Txe=function(e,t){var r=!1,a="commonjs",n=!1;void 0!==t&&(void 0!==t.loose&&(r=t.loose),void 0!==t.modules&&(a=t.modules),void 0!==t.spec&&(n=t.spec));var s={loose:r};return{plugins:[[Tve,{loose:r,spec:n}],_me,zge,[Jfe,{spec:n}],Yfe,[Pge,s],nye,jve,Dge,[kge,s],[Hge,s],Eve,ixe,dxe,[wve,s],[RY,s],[CJ,s],gge,Pve,Kge,("commonjs"===a||"cjs"===a)&&[zme,s],"systemjs"===a&&[$me,s],"amd"===a&&[Fme,s],"umd"===a&&[eye,s],[Ohe,{async:!1,asyncGenerators:!1}]].filter(Boolean)}},Pxe=function(e,t){void 0===t&&(t={});var r=t,a=r.loose,n=void 0!==a&&a,s=r.decoratorsLegacy,o=void 0!==s&&s,i=r.decoratorsVersion,d=void 0===i?"2018-09":i,c=r.decoratorsBeforeExport;return{plugins:[[RJ,{version:o?"legacy":d,decoratorsBeforeExport:c}],fxe].concat(b([Ype,efe,[Rfe,{loose:n}],[tfe,{loose:n}],[iJ,{loose:n}],Zpe,Cme,afe,[Gfe,{loose:n}],Wfe,dJ,Kfe,zpe,Vfe,[aH,{deprecatedAssertSyntax:!0}]]))}},Axe=function(e,t){var r;void 0===t&&(t={});var a=t,n=a.pipelineProposal,s=void 0===n?"minimal":n,o=a.pipelineTopicToken;return{presets:[[Pxe,t]],plugins:[jY,[qfe,{proposal:s,topicToken:void 0===o?"%":o}],Qpe,Hfe,iH].concat(b([[hxe,{syntaxType:null!=(r=t.recordAndTupleSyntax)?r:"hash"}],nH]))}},kxe=function(e,t){void 0===t&&(t={});var r=t,a=r.loose,n=void 0!==a&&a,s=r.useBuiltIns,o=void 0!==s&&s,i=r.decoratorsLegacy,d=r.decoratorsVersion,c=r.decoratorsBeforeExport,l=r.pipelineProposal,u=r.pipelineTopicToken,p=r.optionalChainingAssignVersion,f=void 0===p?"2023-07":p;return{presets:[[Axe,{loose:n,useBuiltIns:o,decoratorsLegacy:i,decoratorsVersion:d,decoratorsBeforeExport:c,pipelineProposal:l,pipelineTopicToken:u,recordAndTupleSyntax:t.recordAndTupleSyntax}]],plugins:[].concat(b([HV]),[Jpe,TY,[jfe,{version:f}]])}};var Cxe=(void z.env.BABEL_8_BREAKING,FO()),_xe={exports:{}};!function(e,t){t.__esModule=!0,t.default=void 0;var r={allowInsertArrow:!1,specCompliant:!1};t.default=function(e){var t=e.types;return{name:"transform-async-arrows-in-class",visitor:{ArrowFunctionExpression:function(e){e.node.async&&e.findParent(t.isClassMethod)&&e.arrowFunctionToExpression(r)}}}},e.exports=t.default}(_xe,_xe.exports);var Ixe=_xe.exports,Dxe={exports:{}};!function(e,t){t.__esModule=!0,t.default=void 0;t.default=function(e){var t=e.types,r=function(e){return"params"===e.parentKey&&e.parentPath&&t.isArrowFunctionExpression(e.parentPath)};return{name:"transform-edge-default-parameters",visitor:{AssignmentPattern:function(e){e.find(r)&&e.parent.shorthand&&(e.parent.shorthand=!1,(e.parent.extra||{}).shorthand=!1,e.scope.rename(e.parent.key.name))}}}},e.exports=t.default}(Dxe,Dxe.exports);var Oxe=Dxe.exports,Nxe={exports:{}};!function(e,t){t.__esModule=!0,t.default=void 0;t.default=function(e){var t=e.types;return{name:"transform-edge-function-name",visitor:{FunctionExpression:{exit:function(e){if(!e.node.id&&t.isIdentifier(e.parent.id)){var r=t.cloneNode(e.parent.id),a=e.scope.getBinding(r.name);(null==a?void 0:a.constantViolations.length)&&e.scope.rename(r.name),e.node.id=r}}}}}},e.exports=t.default}(Nxe,Nxe.exports);var Bxe=Nxe.exports,Mxe=function(e){var t=e.types;(0,e.assertVersion)("*");var r={ClassExpression:function(e,t){t.found=!0,e.stop()},Function:function(e){e.skip()}},a=hw({YieldExpression:function(e,t){t.yield=!0,t.await&&e.stop()},AwaitExpression:function(e,t){t.await=!0,t.yield&&e.stop()}});function n(e){if(t.isClassExpression(e.node))return!0;if(t.isFunction(e.node))return!1;var a={found:!1};return e.traverse(r,a),a.found}function s(e){var r,n={yield:t.isYieldExpression(e.node),await:t.isAwaitExpression(e.node)};if(e.traverse(a,n),n.yield){var s=t.functionExpression(null,[],t.blockStatement([t.returnStatement(e.node)]),!0,n.await);r=t.yieldExpression(t.callExpression(t.memberExpression(s,t.identifier("call")),[t.thisExpression(),t.identifier("arguments")]),!0)}else{var o=t.arrowFunctionExpression([],e.node,n.await);r=t.callExpression(o,[]),n.await&&(r=t.awaitExpression(r))}e.replaceWith(r)}return{name:"bugfix-firefox-class-in-computed-class-key",visitor:{Class:function(e){var r=e.node.body.body.some(function(e){return t.isPrivate(e)});if(r)for(var a,o=i(e.get("body.body"));!(a=o()).done;){var d=a.value;"computed"in d.node&&d.node.computed&&n(d.get("key"))&&s(d.get("key"))}}}}},Fxe={exports:{}};!function(e,t){t.__esModule=!0,t.default=void 0;t.default=function(e){var t=e.types;return{name:"transform-tagged-template-caching",visitor:{TaggedTemplateExpression:function(e,r){var a=r.get("processed");if(a||(a=new WeakSet,r.set("processed",a)),a.has(e.node))return e.skip();var n=e.node.quasi.expressions,s=r.get("identity");s||(s=e.scope.getProgramParent().generateDeclaredUidIdentifier("_"),r.set("identity",s),e.scope.getBinding(s.name).path.get("init").replaceWith(t.arrowFunctionExpression([t.identifier("t")],t.identifier("t"))));var o=t.taggedTemplateExpression(t.cloneNode(s),t.templateLiteral(e.node.quasi.quasis,n.map(function(){return t.numericLiteral(0)})));a.add(o);var i=e.scope.getProgramParent().generateDeclaredUidIdentifier("t");e.scope.getBinding(i.name).path.parent.kind="let";var d=t.logicalExpression("||",i,t.assignmentExpression("=",t.cloneNode(i),o)),c=t.callExpression(e.node.tag,[d].concat(b(n)));e.replaceWith(c)}}}},e.exports=t.default}(Fxe,Fxe.exports);var Lxe=Fxe.exports,Uxe={exports:{}};!function(e,t){t.__esModule=!0,t.default=function(e){var t=e.types;return{name:"transform-safari-block-shadowing",visitor:{VariableDeclarator:function(e){var r=e.parent.kind;if("let"===r||"const"===r){var a=e.scope.block;if(!t.isFunction(a)&&!t.isProgram(a))for(var n=t.getOuterBindingIdentifiers(e.node.id),s=0,o=Object.keys(n);s<o.length;s++){var i=o[s],d=e.scope;if(d.hasOwnBinding(i))for(;d=d.parent;){if(d.hasOwnBinding(i)){e.scope.rename(i);break}if(t.isFunction(d.block)||t.isProgram(d.block))break}}}}}}},e.exports=t.default}(Uxe,Uxe.exports);var qxe=Uxe.exports,Gxe={exports:{}};!function(e,t){function r(e){if(e.isVariableDeclaration()){var t=e.getFunctionParent(),r=e.node.declarations[0].id.name;t&&t.scope.hasOwnBinding(r)&&"param"===t.scope.getOwnBinding(r).kind&&e.scope.rename(r)}}t.__esModule=!0,t.default=void 0;t.default=function(){return{name:"transform-safari-for-shadowing",visitor:{ForXStatement:function(e){r(e.get("left"))},ForStatement:function(e){r(e.get("init"))}}}},e.exports=t.default}(Gxe,Gxe.exports);var Wxe=Gxe.exports;var Vxe=function(e){return e.assertVersion("*"),{name:"plugin-bugfix-safari-id-destructuring-collision-in-function-expression",visitor:{FunctionExpression:function(e){var t=function(e){var t=e.node.id;if(!t)return!1;var r=t.name,a=e.scope.getOwnBinding(r);return void 0!==a&&"param"===a.kind&&a.identifier!==a.path.node&&r}(e);if(t){var r=e.scope,a=r.generateUid(t);r.rename(t,a)}}}}};function Hxe(e){return!(dr(e)&&!$e(e))&&(Z(e)||nt(e)||ye(e)?Hxe(e.callee)||e.arguments.some(Hxe):$e(e)?e.expressions.some(Hxe):Ye(e)?Hxe(e.tag)||Hxe(e.quasi):Y(e)?e.elements.some(Hxe):be(e)?e.properties.some(function(e){return xe(e)?Hxe(e.value)||e.computed&&Hxe(e.key):(ve(e),!1)}):me(e)||at(e)?Hxe(e.object)||e.computed&&Hxe(e.property):!(oe(e)||Ie(e)||Oe(e))&&(!Se(e)&&(!we(e)||e.expressions.some(Hxe))))}function zxe(e){var t=e.node.value;t&&Hxe(t)&&(e.node.value=gs(so([],t),[]))}var Kxe=function(e){return e.assertVersion("*"),{name:"plugin-bugfix-safari-class-field-initializer-scope",visitor:{ClassProperty:function(e){zxe(e)},ClassPrivateProperty:function(e){zxe(e)}}}};function Xxe(e){var t=e.findIndex(function(e){return Xe(e)});return t>=0&&t!==e.length-1}var Jxe=function(e){var t,r;e.assertVersion("*");var a=null!=(t=e.assumption("noDocumentAll"))&&t,n=null!=(r=e.assumption("pureGetters"))&&r;return{name:"bugfix-v8-spread-parameters-in-optional-chaining",visitor:{"OptionalCallExpression|OptionalMemberExpression":function(e){(function(e){for(var t=e,r=[];;)if(t.isOptionalMemberExpression())r.push(t.node),t=hK(t.get("object"));else{if(!t.isOptionalCallExpression())break;r.push(t.node),t=hK(t.get("callee"))}for(var a=0;a<r.length;a++){var n=r[a];if(nt(n)&&Xxe(n.arguments)){if(n.optional)return!0;if(at(r[a+1],{optional:!0}))return!0}}return!1})(e)&&xfe(e,{noDocumentAll:a,pureGetters:n})}}}};function Yxe(e){return ie(e)?"name"===e.name||"length"===e.name:!!le(e)&&("name"===e.value||"length"===e.value)}function $xe(e){return(st(e)||ot(e))&&e.static&&!!e.value}var Qxe={ReferencedIdentifier:function(e,t){e.node.name===t.name&&(t.ref(),e.stop())},Scope:function(e,t){var r=t.name;e.scope.hasOwnBinding(r)&&e.skip()}};function Zxe(e,t){return Se(e)||t&&ie(e,{name:t})}var eRe={"ThisExpression|ReferencedIdentifier":function(e,t){Zxe(e.node,t.name)&&(t.ref(),e.stop())},FunctionParent:function(e,t){e.isArrowFunctionExpression()||(t.name&&!e.scope.hasOwnBinding(t.name)&&e.traverse(Qxe,t),e.skip(),e.isMethod()&&e.requeueComputedKeyAndDecorators())}};function tRe(e,t,r){return Lo(e.map(function(e){var a=e.computed||!ie(e.key)?e.key:Cs(e.key.name);return Rs(gs(r.addHelper("defineProperty"),[{type:"ThisExpression"},a,e.value||t.buildUndefinedNode()]))}))}var rRe,aRe=function(e){e.assertVersion("*");var t=e.assumption("setPublicClassFields");return{name:"bugfix-v8-static-class-fields-redefine-readonly",visitor:{Class:function(e){for(var r=function(e){var t=[];if(0===e.length)return t;for(var r=e[0],a=r+1,n=1;n<e.length;n++){if(e[n]<=e[n-1])throw new Error("Internal Babel error: nums must be in ascending order");e[n]===a?a++:(t.push([r,a]),a=(r=e[n])+1)}return t.push([r,a]),t}(t?function(e){for(var t=[],r=e.node.body.body,a=0;a<r.length;a++){var n=r[a];st(n,{static:!0,computed:!1})&&Yxe(n.key)&&t.push(a)}return t}(e):function(e){var t,r=[],a=!1,n=null==(t=e.node.id)?void 0:t.name,s={name:n,ref:function(){return a=!0}};if(n)for(var o,d=i(e.get("body.body"));!(o=d()).done;){var c=o.value;if(c.node.computed&&(c.get("key").traverse(Qxe,s),a))break}for(var l=!1,u=e.node.body.body,p=0;p<u.length;p++){var f=u[p];l||(dt(f)?(a=!0,l=!0):$xe(f)&&(a||(Zxe(f.value,n)?a=!0:e.get("body.body."+p+".value").traverse(eRe,s)),a&&(l=!e.scope.isPure(f.value)))),st(f,{static:!0})&&(l||f.computed||Yxe(f.key))&&r.push(p)}return r}(e)),a=r.length-1;a>=0;a--){var n=y(r[a],2),s=n[0],o=n[1];e.get("body.body")[s].replaceWith(tRe(e.node.body.body.slice(s,o),e.scope,this.file));for(var d=o-1;d>s;d--)e.get("body.body")[d].remove()}}}}},nRe={"bugfix/transform-async-arrows-in-class":function(){return Ixe},"bugfix/transform-edge-default-parameters":function(){return Oxe},"bugfix/transform-edge-function-name":function(){return Bxe},"bugfix/transform-firefox-class-in-computed-class-key":function(){return Mxe},"bugfix/transform-safari-block-shadowing":function(){return qxe},"bugfix/transform-safari-class-field-initializer-scope":function(){return Kxe},"bugfix/transform-safari-for-shadowing":function(){return Wxe},"bugfix/transform-safari-id-destructuring-collision-in-function-expression":function(){return Vxe},"bugfix/transform-tagged-template-caching":function(){return Lxe},"bugfix/transform-v8-spread-parameters-in-optional-chaining":function(){return Jxe},"bugfix/transform-v8-static-class-fields-redefine-readonly":function(){return aRe},"transform-arrow-functions":function(){return Jfe},"transform-async-generator-functions":function(){return GH},"transform-async-to-generator":function(){return Xfe},"transform-block-scoped-functions":function(){return Yfe},"transform-block-scoping":function(){return gge},"transform-class-properties":function(){return iJ},"transform-class-static-block":function(){return dJ},"transform-classes":function(){return Pge},"transform-computed-properties":function(){return kge},"transform-destructuring":function(){return CJ},"transform-dotall-regex":function(){return Cge},"transform-duplicate-keys":function(){return Dge},"transform-duplicate-named-capturing-groups-regex":function(){return zpe},"transform-dynamic-import":function(){return Xpe},"transform-explicit-resource-management":function(){return fxe},"transform-exponentiation-operator":function(){return Oge},"transform-export-namespace-from":function(){return Ype},"transform-for-of":function(){return Hge},"transform-function-name":function(){return zge},"transform-json-strings":function(){return Zpe},"transform-literals":function(){return _me},"transform-logical-assignment-operators":function(){return efe},"transform-member-expression-literals":function(){return Ime},"transform-modules-amd":function(){return Fme},"transform-modules-commonjs":function(){return zme},"transform-modules-systemjs":function(){return $me},"transform-modules-umd":function(){return eye},"transform-named-capturing-groups-regex":function(){return tye},"transform-new-target":function(){return rye},"transform-nullish-coalescing-operator":function(){return tfe},"transform-numeric-separator":function(){return afe},"transform-object-rest-spread":function(){return lfe},"transform-object-super":function(){return nye},"transform-optional-catch-binding":function(){return ufe},"transform-optional-chaining":function(){return Rfe},"transform-parameters":function(){return RY},"transform-private-methods":function(){return Gfe},"transform-private-property-in-object":function(){return Wfe},"transform-property-literals":function(){return oye},"transform-regenerator":function(){return Ohe},"transform-regexp-modifiers":function(){return Vfe},"transform-reserved-words":function(){return Nhe},"transform-shorthand-properties":function(){return jve},"transform-spread":function(){return wve},"transform-sticky-regex":function(){return Eve},"transform-template-literals":function(){return Tve},"transform-typeof-symbol":function(){return Pve},"transform-unicode-escapes":function(){return ixe},"transform-unicode-property-regex":function(){return zfe},"transform-unicode-regex":function(){return dxe},"transform-unicode-sets-regex":function(){return Kfe}},sRe={};Object.assign(sRe,{"bugfix/transform-safari-id-destructuring-collision-in-function-expression":"7.16.0","bugfix/transform-v8-static-class-fields-redefine-readonly":"7.12.0","syntax-import-attributes":"7.22.0","transform-class-static-block":"7.12.0","transform-duplicate-named-capturing-groups-regex":"7.19.0","transform-explicit-resource-management":"7.23.9","transform-private-property-in-object":"7.10.0","transform-regexp-modifiers":"7.19.0"});var oRe=function(e){return function(){return function(){return{manipulateOptions:function(t,r){return r.plugins.push(e)}}}}},iRe={"syntax-async-generators":oRe("asyncGenerators"),"syntax-class-properties":oRe("classProperties"),"syntax-class-static-block":oRe("classStaticBlock"),"syntax-dynamic-import":oRe("dynamicImport"),"syntax-explicit-resource-management":oRe("explicitResourceManagement"),"syntax-export-namespace-from":oRe("exportNamespaceFrom"),"syntax-import-meta":oRe("importMeta"),"syntax-json-strings":oRe("jsonStrings"),"syntax-logical-assignment-operators":oRe("logicalAssignment"),"syntax-nullish-coalescing-operator":oRe("nullishCoalescingOperator"),"syntax-numeric-separator":oRe("numericSeparator"),"syntax-object-rest-spread":oRe("objectRestSpread"),"syntax-optional-catch-binding":oRe("optionalCatchBinding"),"syntax-optional-chaining":oRe("optionalChaining"),"syntax-private-property-in-object":oRe("privateIn"),"syntax-top-level-await":oRe("topLevelAwait"),"syntax-import-assertions":function(){return rH},"syntax-import-attributes":function(){return aH},"syntax-unicode-sets-regex":function(){return function(){return{}}}};Object.assign(nRe,iRe),rRe=new Set(Object.keys(iRe));var dRe={amd:"transform-modules-amd",commonjs:"transform-modules-commonjs",cjs:"transform-modules-commonjs",systemjs:"transform-modules-systemjs",umd:"transform-modules-umd"},cRe=Object.keys,lRe=fRe(kU),uRe=fRe({"bugfix/transform-async-arrows-in-class":{chrome:"55",opera:"42",edge:"15",firefox:"52",safari:"11",node:"7.6",deno:"1",ios:"11",samsung:"6",opera_mobile:"42",electron:"1.6"},"bugfix/transform-edge-default-parameters":{chrome:"49",opera:"36",edge:"18",firefox:"52",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"36",electron:"0.37"},"bugfix/transform-edge-function-name":{chrome:"51",opera:"38",edge:"79",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"bugfix/transform-safari-block-shadowing":{chrome:"49",opera:"36",edge:"12",firefox:"44",safari:"11",node:"6",deno:"1",ie:"11",ios:"11",samsung:"5",opera_mobile:"36",electron:"0.37"},"bugfix/transform-safari-for-shadowing":{chrome:"49",opera:"36",edge:"12",firefox:"4",safari:"11",node:"6",deno:"1",ie:"11",ios:"11",samsung:"5",rhino:"1.7.13",opera_mobile:"36",electron:"0.37"},"bugfix/transform-safari-id-destructuring-collision-in-function-expression":{chrome:"49",opera:"36",edge:"14",firefox:"2",safari:"16.3",node:"6",deno:"1",ios:"16.3",samsung:"5",opera_mobile:"36",electron:"0.37"},"bugfix/transform-tagged-template-caching":{chrome:"41",opera:"28",edge:"12",firefox:"34",safari:"13",node:"4",deno:"1",ios:"13",samsung:"3.4",rhino:"1.7.14",opera_mobile:"28",electron:"0.21"},"bugfix/transform-v8-spread-parameters-in-optional-chaining":{chrome:"91",opera:"77",edge:"91",firefox:"74",safari:"13.1",node:"16.9",deno:"1.9",ios:"13.4",samsung:"16",opera_mobile:"64",electron:"13.0"},"transform-optional-chaining":{chrome:"80",opera:"67",edge:"80",firefox:"74",safari:"13.1",node:"14",deno:"1",ios:"13.4",samsung:"13",rhino:"1.8",opera_mobile:"57",electron:"8.0"},"proposal-optional-chaining":{chrome:"80",opera:"67",edge:"80",firefox:"74",safari:"13.1",node:"14",deno:"1",ios:"13.4",samsung:"13",rhino:"1.8",opera_mobile:"57",electron:"8.0"},"transform-parameters":{chrome:"49",opera:"36",edge:"15",firefox:"52",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"36",electron:"0.37"},"transform-async-to-generator":{chrome:"55",opera:"42",edge:"15",firefox:"52",safari:"10.1",node:"7.6",deno:"1",ios:"10.3",samsung:"6",opera_mobile:"42",electron:"1.6"},"transform-template-literals":{chrome:"41",opera:"28",edge:"13",firefox:"34",safari:"9",node:"4",deno:"1",ios:"9",samsung:"3.4",opera_mobile:"28",electron:"0.21"},"transform-function-name":{chrome:"51",opera:"38",edge:"14",firefox:"53",safari:"10",node:"6.5",deno:"1",ios:"10",samsung:"5",opera_mobile:"41",electron:"1.2"},"transform-block-scoping":{chrome:"50",opera:"37",edge:"14",firefox:"53",safari:"10",node:"6",deno:"1",ios:"10",samsung:"5",opera_mobile:"37",electron:"1.1"}}),pRe=fRe({"transform-async-to-generator":["bugfix/transform-async-arrows-in-class"],"transform-parameters":["bugfix/transform-edge-default-parameters","bugfix/transform-safari-id-destructuring-collision-in-function-expression"],"transform-function-name":["bugfix/transform-edge-function-name"],"transform-block-scoping":["bugfix/transform-safari-block-shadowing","bugfix/transform-safari-for-shadowing"],"transform-template-literals":["bugfix/transform-tagged-template-caching"],"transform-optional-chaining":["bugfix/transform-v8-spread-parameters-in-optional-chaining"],"proposal-optional-chaining":["bugfix/transform-v8-spread-parameters-in-optional-chaining"],"transform-class-properties":["bugfix/transform-v8-static-class-fields-redefine-readonly","bugfix/transform-firefox-class-in-computed-class-key","bugfix/transform-safari-class-field-initializer-scope"],"proposal-class-properties":["bugfix/transform-v8-static-class-fields-redefine-readonly","bugfix/transform-firefox-class-in-computed-class-key","bugfix/transform-safari-class-field-initializer-scope"]});function fRe(e){for(var t,r={},a=i(cRe(e));!(t=a()).done;){var n=t.value;hasOwnProperty.call(nRe,n)&&(r[n]=e[n])}return r}pRe["syntax-import-attributes"]=["syntax-import-assertions"];var gRe={configPath:"configPath",corejs:"corejs",debug:"debug",exclude:"exclude",forceAllTransforms:"forceAllTransforms",ignoreBrowserslistConfig:"ignoreBrowserslistConfig",include:"include",modules:"modules",shippedProposals:"shippedProposals",targets:"targets",useBuiltIns:"useBuiltIns",browserslistEnv:"browserslistEnv"};Object.assign(gRe,{bugfixes:"bugfixes",loose:"loose",spec:"spec"});var mRe,yRe={false:!1,auto:"auto",amd:"amd",commonjs:"commonjs",cjs:"cjs",systemjs:"systemjs",umd:"umd"},hRe={false:!1,entry:"entry",usage:"usage"},bRe={},vRe={},xRe={};var RRe,jRe={};var wRe,ERe,SRe={},TRe={exports:{}};function PRe(){return wRe||(wRe=1,function(e,t){var r;t=e.exports=h,r="object"==typeof z&&z.env&&z.env.NODE_DEBUG&&/\bsemver\b/i.test(z.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER"),console.log.apply(console,e)}:function(){},t.SEMVER_SPEC_VERSION="2.0.0";var a=256,n=Number.MAX_SAFE_INTEGER||9007199254740991,s=a-6,o=t.re=[],i=t.safeRe=[],d=t.src=[],c=t.tokens={},l=0;function u(e){c[e]=l++}var p="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",a],[p,s]];function g(e){for(var t=0;t<f.length;t++){var r=f[t][0],a=f[t][1];e=e.split(r+"*").join(r+"{0,"+a+"}").split(r+"+").join(r+"{1,"+a+"}")}return e}u("NUMERICIDENTIFIER"),d[c.NUMERICIDENTIFIER]="0|[1-9]\\d*",u("NUMERICIDENTIFIERLOOSE"),d[c.NUMERICIDENTIFIERLOOSE]="\\d+",u("NONNUMERICIDENTIFIER"),d[c.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+p+"*",u("MAINVERSION"),d[c.MAINVERSION]="("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")\\.("+d[c.NUMERICIDENTIFIER]+")",u("MAINVERSIONLOOSE"),d[c.MAINVERSIONLOOSE]="("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")\\.("+d[c.NUMERICIDENTIFIERLOOSE]+")",u("PRERELEASEIDENTIFIER"),d[c.PRERELEASEIDENTIFIER]="(?:"+d[c.NUMERICIDENTIFIER]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASEIDENTIFIERLOOSE"),d[c.PRERELEASEIDENTIFIERLOOSE]="(?:"+d[c.NUMERICIDENTIFIERLOOSE]+"|"+d[c.NONNUMERICIDENTIFIER]+")",u("PRERELEASE"),d[c.PRERELEASE]="(?:-("+d[c.PRERELEASEIDENTIFIER]+"(?:\\."+d[c.PRERELEASEIDENTIFIER]+")*))",u("PRERELEASELOOSE"),d[c.PRERELEASELOOSE]="(?:-?("+d[c.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+d[c.PRERELEASEIDENTIFIERLOOSE]+")*))",u("BUILDIDENTIFIER"),d[c.BUILDIDENTIFIER]=p+"+",u("BUILD"),d[c.BUILD]="(?:\\+("+d[c.BUILDIDENTIFIER]+"(?:\\."+d[c.BUILDIDENTIFIER]+")*))",u("FULL"),u("FULLPLAIN"),d[c.FULLPLAIN]="v?"+d[c.MAINVERSION]+d[c.PRERELEASE]+"?"+d[c.BUILD]+"?",d[c.FULL]="^"+d[c.FULLPLAIN]+"$",u("LOOSEPLAIN"),d[c.LOOSEPLAIN]="[v=\\s]*"+d[c.MAINVERSIONLOOSE]+d[c.PRERELEASELOOSE]+"?"+d[c.BUILD]+"?",u("LOOSE"),d[c.LOOSE]="^"+d[c.LOOSEPLAIN]+"$",u("GTLT"),d[c.GTLT]="((?:<|>)?=?)",u("XRANGEIDENTIFIERLOOSE"),d[c.XRANGEIDENTIFIERLOOSE]=d[c.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*",u("XRANGEIDENTIFIER"),d[c.XRANGEIDENTIFIER]=d[c.NUMERICIDENTIFIER]+"|x|X|\\*",u("XRANGEPLAIN"),d[c.XRANGEPLAIN]="[v=\\s]*("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:\\.("+d[c.XRANGEIDENTIFIER]+")(?:"+d[c.PRERELEASE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGEPLAINLOOSE"),d[c.XRANGEPLAINLOOSE]="[v=\\s]*("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:\\.("+d[c.XRANGEIDENTIFIERLOOSE]+")(?:"+d[c.PRERELEASELOOSE]+")?"+d[c.BUILD]+"?)?)?",u("XRANGE"),d[c.XRANGE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAIN]+"$",u("XRANGELOOSE"),d[c.XRANGELOOSE]="^"+d[c.GTLT]+"\\s*"+d[c.XRANGEPLAINLOOSE]+"$",u("COERCE"),d[c.COERCE]="(^|[^\\d])(\\d{1,16})(?:\\.(\\d{1,16}))?(?:\\.(\\d{1,16}))?(?:$|[^\\d])",u("COERCERTL"),o[c.COERCERTL]=new RegExp(d[c.COERCE],"g"),i[c.COERCERTL]=new RegExp(g(d[c.COERCE]),"g"),u("LONETILDE"),d[c.LONETILDE]="(?:~>?)",u("TILDETRIM"),d[c.TILDETRIM]="(\\s*)"+d[c.LONETILDE]+"\\s+",o[c.TILDETRIM]=new RegExp(d[c.TILDETRIM],"g"),i[c.TILDETRIM]=new RegExp(g(d[c.TILDETRIM]),"g");u("TILDE"),d[c.TILDE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAIN]+"$",u("TILDELOOSE"),d[c.TILDELOOSE]="^"+d[c.LONETILDE]+d[c.XRANGEPLAINLOOSE]+"$",u("LONECARET"),d[c.LONECARET]="(?:\\^)",u("CARETTRIM"),d[c.CARETTRIM]="(\\s*)"+d[c.LONECARET]+"\\s+",o[c.CARETTRIM]=new RegExp(d[c.CARETTRIM],"g"),i[c.CARETTRIM]=new RegExp(g(d[c.CARETTRIM]),"g");u("CARET"),d[c.CARET]="^"+d[c.LONECARET]+d[c.XRANGEPLAIN]+"$",u("CARETLOOSE"),d[c.CARETLOOSE]="^"+d[c.LONECARET]+d[c.XRANGEPLAINLOOSE]+"$",u("COMPARATORLOOSE"),d[c.COMPARATORLOOSE]="^"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+")$|^$",u("COMPARATOR"),d[c.COMPARATOR]="^"+d[c.GTLT]+"\\s*("+d[c.FULLPLAIN]+")$|^$",u("COMPARATORTRIM"),d[c.COMPARATORTRIM]="(\\s*)"+d[c.GTLT]+"\\s*("+d[c.LOOSEPLAIN]+"|"+d[c.XRANGEPLAIN]+")",o[c.COMPARATORTRIM]=new RegExp(d[c.COMPARATORTRIM],"g"),i[c.COMPARATORTRIM]=new RegExp(g(d[c.COMPARATORTRIM]),"g");u("HYPHENRANGE"),d[c.HYPHENRANGE]="^\\s*("+d[c.XRANGEPLAIN]+")\\s+-\\s+("+d[c.XRANGEPLAIN]+")\\s*$",u("HYPHENRANGELOOSE"),d[c.HYPHENRANGELOOSE]="^\\s*("+d[c.XRANGEPLAINLOOSE]+")\\s+-\\s+("+d[c.XRANGEPLAINLOOSE]+")\\s*$",u("STAR"),d[c.STAR]="(<|>)?=?\\s*\\*";for(var m=0;m<l;m++)r(m,d[m]),o[m]||(o[m]=new RegExp(d[m]),i[m]=new RegExp(g(d[m])));function y(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h)return e;if("string"!=typeof e)return null;if(e.length>a)return null;if(!(t.loose?i[c.LOOSE]:i[c.FULL]).test(e))return null;try{return new h(e,t)}catch(e){return null}}function h(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof h){if(e.loose===t.loose)return e;e=e.version}else if("string"!=typeof e)throw new TypeError("Invalid Version: "+e);if(e.length>a)throw new TypeError("version is longer than "+a+" characters");if(!(this instanceof h))return new h(e,t);r("SemVer",e,t),this.options=t,this.loose=!!t.loose;var s=e.trim().match(t.loose?i[c.LOOSE]:i[c.FULL]);if(!s)throw new TypeError("Invalid Version: "+e);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>n||this.major<0)throw new TypeError("Invalid major version");if(this.minor>n||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>n||this.patch<0)throw new TypeError("Invalid patch version");s[4]?this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<n)return t}return e}):this.prerelease=[],this.build=s[5]?s[5].split("."):[],this.format()}t.parse=y,t.valid=function(e,t){var r=y(e,t);return r?r.version:null},t.clean=function(e,t){var r=y(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null},t.SemVer=h,h.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version},h.prototype.toString=function(){return this.version},h.prototype.compare=function(e){return r("SemVer.compare",this.version,this.options,e),e instanceof h||(e=new h(e,this.options)),this.compareMain(e)||this.comparePre(e)},h.prototype.compareMain=function(e){return e instanceof h||(e=new h(e,this.options)),v(this.major,e.major)||v(this.minor,e.minor)||v(this.patch,e.patch)},h.prototype.comparePre=function(e){if(e instanceof h||(e=new h(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;var t=0;do{var a=this.prerelease[t],n=e.prerelease[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.compareBuild=function(e){e instanceof h||(e=new h(e,this.options));var t=0;do{var a=this.build[t],n=e.build[t];if(r("prerelease compare",t,a,n),void 0===a&&void 0===n)return 0;if(void 0===n)return 1;if(void 0===a)return-1;if(a!==n)return v(a,n)}while(++t)},h.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t),this.inc("pre",t);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",t),this.inc("pre",t);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{for(var r=this.prerelease.length;--r>=0;)"number"==typeof this.prerelease[r]&&(this.prerelease[r]++,r=-2);-1===r&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error("invalid increment argument: "+e)}return this.format(),this.raw=this.version,this},t.inc=function(e,t,r,a){"string"==typeof r&&(a=r,r=void 0);try{return new h(e,r).inc(t,a).version}catch(e){return null}},t.diff=function(e,t){if(w(e,t))return null;var r=y(e),a=y(t),n="";if(r.prerelease.length||a.prerelease.length){n="pre";var s="prerelease"}for(var o in r)if(("major"===o||"minor"===o||"patch"===o)&&r[o]!==a[o])return n+o;return s},t.compareIdentifiers=v;var b=/^[0-9]+$/;function v(e,t){var r=b.test(e),a=b.test(t);return r&&a&&(e=+e,t=+t),e===t?0:r&&!a?-1:a&&!r?1:e<t?-1:1}function x(e,t,r){return new h(e,r).compare(new h(t,r))}function R(e,t,r){return x(e,t,r)>0}function j(e,t,r){return x(e,t,r)<0}function w(e,t,r){return 0===x(e,t,r)}function E(e,t,r){return 0!==x(e,t,r)}function S(e,t,r){return x(e,t,r)>=0}function T(e,t,r){return x(e,t,r)<=0}function P(e,t,r,a){switch(t){case"===":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e===r;case"!==":return"object"==typeof e&&(e=e.version),"object"==typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return w(e,r,a);case"!=":return E(e,r,a);case">":return R(e,r,a);case">=":return S(e,r,a);case"<":return j(e,r,a);case"<=":return T(e,r,a);default:throw new TypeError("Invalid operator: "+t)}}function A(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof A){if(e.loose===!!t.loose)return e;e=e.value}if(!(this instanceof A))return new A(e,t);e=e.trim().split(/\s+/).join(" "),r("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===k?this.value="":this.value=this.operator+this.semver.version,r("comp",this)}t.rcompareIdentifiers=function(e,t){return v(t,e)},t.major=function(e,t){return new h(e,t).major},t.minor=function(e,t){return new h(e,t).minor},t.patch=function(e,t){return new h(e,t).patch},t.compare=x,t.compareLoose=function(e,t){return x(e,t,!0)},t.compareBuild=function(e,t,r){var a=new h(e,r),n=new h(t,r);return a.compare(n)||a.compareBuild(n)},t.rcompare=function(e,t,r){return x(t,e,r)},t.sort=function(e,r){return e.sort(function(e,a){return t.compareBuild(e,a,r)})},t.rsort=function(e,r){return e.sort(function(e,a){return t.compareBuild(a,e,r)})},t.gt=R,t.lt=j,t.eq=w,t.neq=E,t.gte=S,t.lte=T,t.cmp=P,t.Comparator=A;var k={};function C(e,t){if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),e instanceof C)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new C(e.raw,t);if(e instanceof A)return new C(e.value,t);if(!(this instanceof C))return new C(e,t);if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}function _(e,t){for(var r=!0,a=e.slice(),n=a.pop();r&&a.length;)r=a.every(function(e){return n.intersects(e,t)}),n=a.pop();return r}function I(e){return!e||"x"===e.toLowerCase()||"*"===e}function D(e,t,r,a,n,s,o,i,d,c,l,u,p){return((t=I(r)?"":I(a)?">="+r+".0.0":I(n)?">="+r+"."+a+".0":">="+t)+" "+(i=I(d)?"":I(c)?"<"+(+d+1)+".0.0":I(l)?"<"+d+"."+(+c+1)+".0":u?"<="+d+"."+c+"."+l+"-"+u:"<="+i)).trim()}function O(e,t,a){for(var n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!a.includePrerelease){for(n=0;n<e.length;n++)if(r(e[n].semver),e[n].semver!==k&&e[n].semver.prerelease.length>0){var s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}return!1}return!0}function N(e,t,r){try{t=new C(t,r)}catch(e){return!1}return t.test(e)}function B(e,t,r,a){var n,s,o,i,d;switch(e=new h(e,a),t=new C(t,a),r){case">":n=R,s=T,o=j,i=">",d=">=";break;case"<":n=j,s=S,o=R,i="<",d="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(N(e,t,a))return!1;for(var c=0;c<t.set.length;++c){var l=t.set[c],u=null,p=null;if(l.forEach(function(e){e.semver===k&&(e=new A(">=0.0.0")),u=u||e,p=p||e,n(e.semver,u.semver,a)?u=e:o(e.semver,p.semver,a)&&(p=e)}),u.operator===i||u.operator===d)return!1;if((!p.operator||p.operator===i)&&s(e,p.semver))return!1;if(p.operator===d&&o(e,p.semver))return!1}return!0}A.prototype.parse=function(e){var t=this.options.loose?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],r=e.match(t);if(!r)throw new TypeError("Invalid comparator: "+e);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new h(r[2],this.options.loose):this.semver=k},A.prototype.toString=function(){return this.value},A.prototype.test=function(e){if(r("Comparator.test",e,this.options.loose),this.semver===k||e===k)return!0;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}return P(e,this.operator,this.semver,this.options)},A.prototype.intersects=function(e,t){if(!(e instanceof A))throw new TypeError("a Comparator is required");var r;if(t&&"object"==typeof t||(t={loose:!!t,includePrerelease:!1}),""===this.operator)return""===this.value||(r=new C(e.value,t),N(this.value,r,t));if(""===e.operator)return""===e.value||(r=new C(this.value,t),N(e.semver,r,t));var a=!(">="!==this.operator&&">"!==this.operator||">="!==e.operator&&">"!==e.operator),n=!("<="!==this.operator&&"<"!==this.operator||"<="!==e.operator&&"<"!==e.operator),s=this.semver.version===e.semver.version,o=!(">="!==this.operator&&"<="!==this.operator||">="!==e.operator&&"<="!==e.operator),i=P(this.semver,"<",e.semver,t)&&(">="===this.operator||">"===this.operator)&&("<="===e.operator||"<"===e.operator),d=P(this.semver,">",e.semver,t)&&("<="===this.operator||"<"===this.operator)&&(">="===e.operator||">"===e.operator);return a||n||s&&o||i||d},t.Range=C,C.prototype.format=function(){return this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim(),this.range},C.prototype.toString=function(){return this.range},C.prototype.parseRange=function(e){var t=this.options.loose,a=t?i[c.HYPHENRANGELOOSE]:i[c.HYPHENRANGE];e=e.replace(a,D),r("hyphen replace",e),e=e.replace(i[c.COMPARATORTRIM],"$1$2$3"),r("comparator trim",e,i[c.COMPARATORTRIM]),e=(e=(e=e.replace(i[c.TILDETRIM],"$1~")).replace(i[c.CARETTRIM],"$1^")).split(/\s+/).join(" ");var n=t?i[c.COMPARATORLOOSE]:i[c.COMPARATOR],s=e.split(" ").map(function(e){return function(e,t){return r("comp",e,t),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){r("caret",e,t);var a=t.loose?i[c.CARETLOOSE]:i[c.CARET];return e.replace(a,function(t,a,n,s,o){var i;return r("caret",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i="0"===a?">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":">="+a+"."+n+".0 <"+(+a+1)+".0.0":o?(r("replaceCaret pr",o),i="0"===a?"0"===n?">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+"-"+o+" <"+(+a+1)+".0.0"):(r("no pr"),i="0"===a?"0"===n?">="+a+"."+n+"."+s+" <"+a+"."+n+"."+(+s+1):">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0":">="+a+"."+n+"."+s+" <"+(+a+1)+".0.0"),r("caret return",i),i})}(e,t)}).join(" ")}(e,t),r("caret",e),e=function(e,t){return e.trim().split(/\s+/).map(function(e){return function(e,t){var a=t.loose?i[c.TILDELOOSE]:i[c.TILDE];return e.replace(a,function(t,a,n,s,o){var i;return r("tilde",e,t,a,n,s,o),I(a)?i="":I(n)?i=">="+a+".0.0 <"+(+a+1)+".0.0":I(s)?i=">="+a+"."+n+".0 <"+a+"."+(+n+1)+".0":o?(r("replaceTilde pr",o),i=">="+a+"."+n+"."+s+"-"+o+" <"+a+"."+(+n+1)+".0"):i=">="+a+"."+n+"."+s+" <"+a+"."+(+n+1)+".0",r("tilde return",i),i})}(e,t)}).join(" ")}(e,t),r("tildes",e),e=function(e,t){return r("replaceXRanges",e,t),e.split(/\s+/).map(function(e){return function(e,t){e=e.trim();var a=t.loose?i[c.XRANGELOOSE]:i[c.XRANGE];return e.replace(a,function(a,n,s,o,i,d){r("xRange",e,a,n,s,o,i,d);var c=I(s),l=c||I(o),u=l||I(i),p=u;return"="===n&&p&&(n=""),d=t.includePrerelease?"-0":"",c?a=">"===n||"<"===n?"<0.0.0-0":"*":n&&p?(l&&(o=0),i=0,">"===n?(n=">=",l?(s=+s+1,o=0,i=0):(o=+o+1,i=0)):"<="===n&&(n="<",l?s=+s+1:o=+o+1),a=n+s+"."+o+"."+i+d):l?a=">="+s+".0.0"+d+" <"+(+s+1)+".0.0"+d:u&&(a=">="+s+"."+o+".0"+d+" <"+s+"."+(+o+1)+".0"+d),r("xRange return",a),a})}(e,t)}).join(" ")}(e,t),r("xrange",e),e=function(e,t){return r("replaceStars",e,t),e.trim().replace(i[c.STAR],"")}(e,t),r("stars",e),e}(e,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(s=s.filter(function(e){return!!e.match(n)})),s=s.map(function(e){return new A(e,this.options)},this)},C.prototype.intersects=function(e,t){if(!(e instanceof C))throw new TypeError("a Range is required");return this.set.some(function(r){return _(r,t)&&e.set.some(function(e){return _(e,t)&&r.every(function(r){return e.every(function(e){return r.intersects(e,t)})})})})},t.toComparators=function(e,t){return new C(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})},C.prototype.test=function(e){if(!e)return!1;if("string"==typeof e)try{e=new h(e,this.options)}catch(e){return!1}for(var t=0;t<this.set.length;t++)if(O(this.set[t],e,this.options))return!0;return!1},t.satisfies=N,t.maxSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&-1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minSatisfying=function(e,t,r){var a=null,n=null;try{var s=new C(t,r)}catch(e){return null}return e.forEach(function(e){s.test(e)&&(a&&1!==n.compare(e)||(n=new h(a=e,r)))}),a},t.minVersion=function(e,t){e=new C(e,t);var r=new h("0.0.0");if(e.test(r))return r;if(r=new h("0.0.0-0"),e.test(r))return r;r=null;for(var a=0;a<e.set.length;++a){e.set[a].forEach(function(e){var t=new h(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":r&&!R(r,t)||(r=t);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}})}if(r&&e.test(r))return r;return null},t.validRange=function(e,t){try{return new C(e,t).range||"*"}catch(e){return null}},t.ltr=function(e,t,r){return B(e,t,"<",r)},t.gtr=function(e,t,r){return B(e,t,">",r)},t.outside=B,t.prerelease=function(e,t){var r=y(e,t);return r&&r.prerelease.length?r.prerelease:null},t.intersects=function(e,t,r){return e=new C(e,r),t=new C(t,r),e.intersects(t)},t.coerce=function(e,t){if(e instanceof h)return e;"number"==typeof e&&(e=String(e));if("string"!=typeof e)return null;var r=null;if((t=t||{}).rtl){for(var a;(a=i[c.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&a.index+a[0].length===r.index+r[0].length||(r=a),i[c.COERCERTL].lastIndex=a.index+a[1].length+a[2].length;i[c.COERCERTL].lastIndex=-1}else r=e.match(i[c.COERCE]);if(null===r)return null;return y(r[2]+"."+(r[3]||"0")+"."+(r[4]||"0"),t)}}(TRe,TRe.exports)),TRe.exports}var ARe,kRe,CRe,_Re,IRe={},DRe={};function ORe(){if(_Re)return DRe;_Re=1,DRe.__esModule=!0,DRe.createUtilsGetter=function(e){return function(t){var n=t.findParent(function(e){return e.isProgram()});return{injectGlobalImport:function(t,s){e.storeAnonymous(n,t,s,function(e,t){return e?a.statement.ast(ARe||(ARe=h(["require(",")"])),t):r.importDeclaration([],t)})},injectNamedImport:function(t,s,i,d){return void 0===i&&(i=s),e.storeNamed(n,t,s,d,function(e,t,s){var d=n.scope.generateUidIdentifier(i);return{node:e?o(a.statement.ast(kRe||(kRe=h(["\n var "," = require(",").","\n "])),d,t,s)):r.importDeclaration([r.importSpecifier(d,s)],t),name:d.name}})},injectDefaultImport:function(t,s,i){return void 0===s&&(s=t),e.storeNamed(n,t,"default",i,function(e,t){var i=n.scope.generateUidIdentifier(s);return{node:e?o(a.statement.ast(CRe||(CRe=h(["var "," = require(",")"])),i,t)):r.importDeclaration([r.importDefaultSpecifier(i)],t),name:i.name}})}}}},DRe.getImportSource=function(e){var t=e.node;if(0===t.specifiers.length)return t.source.value},DRe.getRequireSource=function(e){var t=e.node;if(!r.isExpressionStatement(t))return;var a=t.expression;if(r.isCallExpression(a)&&r.isIdentifier(a.callee)&&"require"===a.callee.name&&1===a.arguments.length&&r.isStringLiteral(a.arguments[0]))return a.arguments[0].value},DRe.has=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},DRe.intersection=function(e,t){var r=new Set;return e.forEach(function(e){return t.has(e)&&r.add(e)}),r},DRe.resolveKey=function e(t,r){void 0===r&&(r=!1);var a=t.scope;if(t.isStringLiteral())return t.node.value;var n=t.isIdentifier();if(n&&!r&&!t.parent.computed)return t.node.name;if(r&&t.isMemberExpression()&&t.get("object").isIdentifier({name:"Symbol"})&&!a.hasBinding("Symbol",!0)){var s=e(t.get("property"),t.node.computed);if(s)return"Symbol."+s}if(n?a.hasBinding(t.node.name,!0):t.isPure()){var o=t.evaluate().value;if("string"==typeof o)return o}},DRe.resolveSource=function(e){if(e.isMemberExpression()&&e.get("property").isIdentifier({name:"prototype"})){var t=s(e.get("object"));return t?{id:t,placement:"prototype"}:{id:null,placement:null}}var r=s(e);if(r)return{id:r,placement:"static"};var a=n(e);switch(null==a?void 0:a.type){case"RegExpLiteral":return{id:"RegExp",placement:"prototype"};case"FunctionExpression":return{id:"Function",placement:"prototype"};case"StringLiteral":return{id:"String",placement:"prototype"};case"NumberLiteral":return{id:"Number",placement:"prototype"};case"BooleanLiteral":return{id:"Boolean",placement:"prototype"};case"ObjectExpression":return{id:"Object",placement:"prototype"};case"ArrayExpression":return{id:"Array",placement:"prototype"}}return{id:null,placement:null}};var e=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe);var t=e.default||e,r=t.types,a=t.template;function n(e,t){if(void 0===t&&(t=new Set),!t.has(e)){if(t.add(e),e.isVariableDeclarator()){if(e.get("id").isIdentifier())return n(e.get("init"),t)}else if(e.isReferencedIdentifier()){var r=e.scope.getBinding(e.node.name);if(!r)return e;if(!r.constant)return;return n(r.path,t)}return e}}function s(e){if(e.isIdentifier()&&!e.scope.hasBinding(e.node.name,!0))return e.node.name;var t=n(e);return null!=t&&t.isIdentifier()?t.node.name:void 0}function o(e){return e._blockHoist=3,e}return DRe}var NRe,BRe={};var MRe,FRe={};var LRe,URe={};function qRe(){if(LRe)return URe;LRe=1,URe.__esModule=!0,URe.applyMissingDependenciesDefaults=function(e,t){var r=e.missingDependencies,a=void 0===r?{}:r;if(!1===a)return!1;var n=t.caller(function(e){return null==e?void 0:e.name}),s=a.log,o=void 0===s?"deferred":s,i=a.inject,d=void 0===i?"rollup-plugin-babel"===n?"throw":"import":i,c=a.all,l=void 0!==c&&c;return{log:o,inject:d,all:l}},URe.validateIncludeExclude=function(r,a,n,s){var o,d=function(e){var t=function(e){if(e instanceof RegExp)return e;try{return new RegExp("^"+e+"$")}catch(e){return null}}(e);if(!t)return!1;for(var r,n=!1,s=i(a.keys());!(r=s()).done;){var d=r.value;t.test(d)&&(n=!0,o.add(d))}return!n},c=o=new Set,l=Array.from(n).filter(d),u=o=new Set,p=Array.from(s).filter(d),f=(0,e.intersection)(c,u);if(f.size>0||l.length>0||p.length>0)throw new Error('Error while validating the "'+r+'" provider options:\n'+t("include",l)+t("exclude",p)+function(e){return e.size?' - The following polyfills were matched both by "include" and "exclude" patterns:\n'+Array.from(e,function(e){return" "+e+"\n"}).join(""):""}(f));return{include:c,exclude:u}};var e=ORe();function t(e,t){return t.length?' - The following "'+e+"\" patterns didn't match any polyfill:\n"+t.map(function(e){return" "+String(e)+"\n"}).join(""):""}return URe}var GRe,WRe={},VRe={};function HRe(){if(GRe)return VRe;GRe=1,VRe.__esModule=!0,VRe.default=void 0;var e=ORe();function t(e){if(e.removed)return!0;if(!e.parentPath)return!1;var r,a;if(e.listKey){if(null==(r=e.parentPath.node)||null==(r=r[e.listKey])||!r.includes(e.node))return!0}else if((null==(a=e.parentPath.node)?void 0:a[e.key])!==e.node)return!0;return t(e.parentPath)}return VRe.default=function(r){function a(e,t,a,n){return r({kind:"property",object:e,key:t,placement:a},n)}function n(e){var t=e.node.name;e.scope.getBindingIdentifier(t)||r({kind:"global",name:t},e)}function s(t){var r=(0,e.resolveKey)(t.get("property"),t.node.computed);return{key:r,handleAsMemberExpression:!!r&&"prototype"!==r}}return{ReferencedIdentifier:function(e){var t=e.parentPath;t.isMemberExpression({object:e.node})&&s(t).handleAsMemberExpression||n(e)},"MemberExpression|OptionalMemberExpression":function(r){var o=s(r),i=o.key;if(o.handleAsMemberExpression){var d=r.get("object"),c=d.isIdentifier();if(c){var l=d.scope.getBinding(d.node.name);if(l){if(l.path.isImportNamespaceSpecifier())return;c=!1}}var u=(0,e.resolveSource)(d),p=a(u.id,i,u.placement,r);p||(p=!c||r.shouldSkip||d.shouldSkip||t(d)),p||n(d)}},ObjectPattern:function(t){var r,n=t.parentPath,s=t.parent;if(n.isVariableDeclarator())r=n.get("init");else if(n.isAssignmentExpression())r=n.get("right");else if(n.isFunction()){var o=n.parentPath;(o.isCallExpression()||o.isNewExpression())&&o.node.callee===s&&(r=o.get("arguments")[t.key])}var d=null,c=null;if(r){var l=(0,e.resolveSource)(r);d=l.id,c=l.placement}for(var u,p=i(t.get("properties"));!(u=p()).done;){var f=u.value;if(f.isObjectProperty()){var g=(0,e.resolveKey)(f.get("key"));g&&a(d,g,c,f)}}},BinaryExpression:function(t){if("in"===t.node.operator){var a=(0,e.resolveSource)(t.get("right")),n=(0,e.resolveKey)(t.get("left"),!0);n&&r({kind:"in",object:a.id,key:n,placement:a.placement},t)}}}},VRe}var zRe,KRe,XRe={};function JRe(){if(KRe)return WRe;KRe=1,WRe.__esModule=!0,WRe.usage=WRe.entry=void 0;var e=r(HRe());WRe.usage=e.default;var t=r(function(){if(zRe)return XRe;zRe=1,XRe.__esModule=!0,XRe.default=void 0;var e=ORe();return XRe.default=function(t){return{ImportDeclaration:function(r){var a=(0,e.getImportSource)(r);a&&t({kind:"import",source:a},r)},Program:function(r){r.get("body").forEach(function(r){var a=(0,e.getRequireSource)(r);a&&t({kind:"import",source:a},r)})}}},XRe}());function r(e){return e&&e.__esModule?e:{default:e}}return WRe.entry=t.default,WRe}var YRe,$Re={};var QRe,ZRe,eje,tje,rje,aje={};function nje(){if(ZRe)return IRe;ZRe=1,IRe.__esModule=!0,IRe.default=function(o){return(0,e.declare)(function(e,p,f){e.assertVersion("^7.0.0 || ^8.0.0-alpha.0");var m,y=e.traverse,h=(0,s.applyMissingDependenciesDefaults)(p,e),b=function(e,n,o,i,d,p){var f,m,y,h,b,v=function(e,t){var r,a,n=e.method,s=e.targets,o=e.ignoreBrowserslistConfig,i=e.configPath,d=e.debug,c=e.shouldInjectPolyfill,l=e.absoluteImports,p=function(e,t){if(null==e)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,u);if(f=e,0===Object.keys(f).length)throw new Error('This plugin requires options, for example:\n {\n "plugins": [\n ["<plugin name>", { method: "usage-pure" }]\n ]\n }\n\nSee more options at https://github.com/babel/babel-polyfills/blob/main/docs/usage.md');var f;if("usage-global"===n)r="usageGlobal";else if("entry-global"===n)r="entryGlobal";else{if("usage-pure"!==n)throw"string"!=typeof n?new Error(".method must be a string"):new Error('.method must be one of "entry-global", "usage-global" or "usage-pure" (received '+JSON.stringify(n)+")");r="usagePure"}if("function"==typeof c){if(e.include||e.exclude)throw new Error(".include and .exclude are not supported when using the .shouldInjectPolyfill function.")}else if(null!=c)throw new Error(".shouldInjectPolyfill must be a function, or undefined (received "+JSON.stringify(c)+")");if(null!=l&&"boolean"!=typeof l&&"string"!=typeof l)throw new Error(".absoluteImports must be a boolean, a string, or undefined (received "+JSON.stringify(l)+")");if(s||i||o){var m="string"==typeof s||Array.isArray(s)?{browsers:s}:s;a=g(m,{ignoreBrowserslistConfig:o,configPath:i})}else a=t.targets();return{method:n,methodName:r,targets:a,absoluteImports:null!=l&&l,shouldInjectPolyfill:c,debug:!!d,providerOptions:p}}(n,p),x=v.method,R=v.methodName,j=v.targets,w=v.debug,E=v.shouldInjectPolyfill,S=v.providerOptions,T=v.absoluteImports,P=(0,r.createUtilsGetter)(new a.default(function(e){return c.resolve(i,e,T)},function(e){var t,r;return null!=(t=null==(r=h)?void 0:r.get(e))?t:1/0})),A=new Map,k={babel:p,getUtils:P,method:n.method,targets:j,createMetaResolver:l.default,shouldInjectPolyfill:function(r){if(void 0===h)throw new Error("Internal error in the "+e.name+" provider: shouldInjectPolyfill() can't be called during initialization.");if(h.has(r)||console.warn("Internal error in the "+_+' provider: unknown polyfill "'+r+'".'),b&&!b(r))return!1;var a=(0,t.isRequired)(r,j,{compatData:y,includes:f,excludes:m});if(E&&"boolean"!=typeof(a=E(r,a)))throw new Error(".shouldInjectPolyfill must return a boolean.");return a},debug:function(e){var t;d().found=!0,w&&e&&(d().polyfills.has(_)||(d().polyfills.add(e),null!=(t=d()).polyfillsSupport||(t.polyfillsSupport=y)))},assertDependency:function(e,t){if(void 0===t&&(t="*"),!1!==o&&!T){var r="*"===t?e:e+"@^"+t,a=!o.all&&function(e,t,r){var a=e.get(t);void 0===a&&(a=r(),e.set(t,a));return a}(A,e+" :: "+i,function(){return c.has(i,e)});a||d().missingDeps.add(r)}}},C=e(k,S,i),_=C.name||e.name;if("function"!=typeof C[R])throw new Error('The "'+_+'" provider doesn\'t support the "'+x+'" polyfilling method.');Array.isArray(C.polyfills)?(h=new Map(C.polyfills.map(function(e,t){return[e,t]})),b=C.filterPolyfills):C.polyfills?(h=new Map(Object.keys(C.polyfills).map(function(e,t){return[e,t]})),y=C.polyfills,b=C.filterPolyfills):h=new Map;var I,D=(0,s.validateIncludeExclude)(_,h,S.include||[],S.exclude||[]);f=D.include,m=D.exclude,I="usageGlobal"===R?function(e,t){var r,a=P(t);return null!=(r=C[R](e,a,t))&&r}:function(e,t){var r=P(t);return C[R](e,r,t),!1};return{debug:w,method:x,targets:j,provider:C,providerName:_,callProvider:I}}(o,p,h,f,function(){return m},e),v=b.debug,x=b.method,R=b.targets,j=b.provider,w=b.providerName,E=b.callProvider,S="entry-global"===x?d.entry:d.usage,T=j.visitor?y.visitors.merge([S(E),j.visitor]):S(E);v&&v!==n.presetEnvSilentDebugHeader&&(console.log(w+": `DEBUG` option"),console.log("\nUsing targets: "+(0,n.stringifyTargetsMultiline)(R)),console.log("\nUsing polyfills with `"+x+"` method:"));var P=j.runtimeName;return{name:"inject-polyfills",visitor:T,pre:function(e){var t;P&&(e.get("runtimeHelpersModuleName")&&e.get("runtimeHelpersModuleName")!==P?console.warn("Two different polyfill providers ("+e.get("runtimeHelpersModuleProvider")+" and "+w+") are trying to define two conflicting @babel/runtime alternatives: "+e.get("runtimeHelpersModuleName")+" and "+P+". The second one will be ignored."):(e.set("runtimeHelpersModuleName",P),e.set("runtimeHelpersModuleProvider",w))),m={polyfills:new Set,polyfillsSupport:void 0,found:!1,providers:new Set,missingDeps:new Set},null==(t=j.pre)||t.apply(this,arguments)},post:function(){var e;if(null==(e=j.post)||e.apply(this,arguments),!1!==h&&("per-file"===h.log?c.logMissing(m.missingDeps):c.laterLogMissing(m.missingDeps)),v)if(this.filename&&console.log("\n["+this.filename+"]"),0!==m.polyfills.size){"entry-global"===x?console.log("The "+w+" polyfill entry has been replaced with the following polyfills:"):console.log("The "+w+" polyfill added the following polyfills:");for(var r,a=i(m.polyfills);!(r=a()).done;){var n,s=r.value;if(null!=(n=m.polyfillsSupport)&&n[s]){var o=(0,t.getInclusionReasons)(s,R,m.polyfillsSupport),d=JSON.stringify(o).replace(/,/g,", ").replace(/^\{"/,'{ "').replace(/"\}$/,'" }');console.log(" "+s+" "+d)}else console.log(" "+s)}}else console.log("entry-global"===x?m.found?"Based on your targets, the "+w+" polyfill did not add any polyfill.":"The entry point for the "+w+" polyfill has not been found.":"Based on your code and targets, the "+w+" polyfill did not add any polyfill.")}}})};var e=zV,t=f(ebe),r=ORe(),a=p(function(){if(NRe)return BRe;NRe=1,BRe.__esModule=!0,BRe.default=void 0;var e=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe),t=(e.default||e).types,r=function(){function e(e,t){this._imports=new WeakMap,this._anonymousImports=new WeakMap,this._lastImports=new WeakMap,this._resolver=e,this._getPreferredIndex=t}var r=e.prototype;return r.storeAnonymous=function(e,r,a,n){var s=this._normalizeKey(e,r),o=this._ensure(this._anonymousImports,e,Set);if(!o.has(s)){var i=n("script"===e.node.sourceType,t.stringLiteral(this._resolver(r)));o.add(s),this._injectImport(e,i,a)}},r.storeNamed=function(e,r,a,n,s){var o=this._normalizeKey(e,r,a),i=this._ensure(this._imports,e,Map);if(!i.has(o)){var d=s("script"===e.node.sourceType,t.stringLiteral(this._resolver(r)),t.identifier(a)),c=d.node,l=d.name;i.set(o,l),this._injectImport(e,c,n)}return t.identifier(i.get(o))},r._injectImport=function(e,t,r){var a,n,s=this._getPreferredIndex(r),o=null!=(a=this._lastImports.get(e))?a:[],d=function(t){return t.node&&t.parent===e.node&&t.container===e.node.body};if(s===1/0)o.length>0&&(d(n=o[o.length-1].path)||(n=void 0));else for(var c,l=i(o.entries());!(c=l()).done;){var u=y(c.value,2),p=u[0],f=u[1],g=f.path,m=f.index;if(d(g)){if(s<m){var h=y(g.insertBefore(t),1)[0];return void o.splice(p,0,{path:h,index:s})}n=g}}if(n){var b=y(n.insertAfter(t),1)[0];o.push({path:b,index:s})}else{var v=y(e.unshiftContainer("body",[t]),1)[0];this._lastImports.set(e,[{path:v,index:s}])}},r._ensure=function(e,t,r){var a=e.get(t);return a||(a=new r,e.set(t,a)),a},r._normalizeKey=function(e,t,r){void 0===r&&(r="");var a=e.node.sourceType;return(r&&a)+"::"+t+"::"+r},o(e)}();return BRe.default=r,BRe}()),n=function(){if(MRe)return FRe;MRe=1,FRe.__esModule=!0,FRe.presetEnvSilentDebugHeader=void 0,FRe.stringifyTargets=function(e){return JSON.stringify(e).replace(/,/g,", ").replace(/^\{"/,'{ "').replace(/"\}$/,'" }')},FRe.stringifyTargetsMultiline=function(t){return JSON.stringify((0,e.prettifyTargets)(t),null,2)};var e=ebe;return FRe.presetEnvSilentDebugHeader="#__secret_key__@babel/preset-env__don't_log_debug_header_and_resolved_targets",FRe}(),s=qRe(),d=f(JRe()),c=f((YRe||(YRe=1,$Re.__esModule=!0,$Re.has=function(e,t){return!0},$Re.laterLogMissing=function(e){},$Re.logMissing=function(e){},$Re.resolve=function(e,t,r){if(!1===r)return t;throw new Error('"absoluteImports" is not supported in bundles prepared for the browser.')}),$Re)),l=p(function(){if(QRe)return aje;QRe=1,aje.__esModule=!0,aje.default=function(r){var a=r.static,n=r.instance,s=r.global;return function(r){if("global"===r.kind&&s&&(0,e.has)(s,r.name))return{kind:"global",desc:s[r.name],name:r.name};if("property"===r.kind||"in"===r.kind){var o=r.placement,i=r.object,d=r.key;if(i&&"static"===o){if(s&&t.has(i)&&(0,e.has)(s,d))return{kind:"global",desc:s[d],name:d};if(a&&(0,e.has)(a,i)&&(0,e.has)(a[i],d))return{kind:"static",desc:a[i][d],name:i+"$"+d}}if(n&&(0,e.has)(n,d))return{kind:"instance",desc:n[d],name:""+d}}}};var e=ORe(),t=new Set(["global","globalThis","self","window"]);return aje}()),u=["method","targets","ignoreBrowserslistConfig","configPath","debug","shouldInjectPolyfill","absoluteImports"];function p(e){return e&&e.__esModule?e:{default:e}}function f(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return(f=function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o})(e,t)}var g=t.default.default||t.default;return IRe}function sje(){if(eje)return vRe;eje=1,vRe.__esModule=!0,vRe.default=void 0;var e=o(Uhe),t=function(){if(mRe)return xRe;mRe=1,xRe.__esModule=!0,xRe.StaticProperties=xRe.InstanceProperties=xRe.CommonIterators=xRe.BuiltIns=void 0;var e,t=(e=Uhe)&&e.__esModule?e:{default:e},r=function(e,t,r,a){return void 0===r&&(r=[]),{name:e,pure:t,global:r,meta:a}},a=function(e,t,a){return void 0===a&&(a=null),r(t[0],e,t,{minRuntimeVersion:a})},n=function(e){return r(e[0],null,e)},s=function(e,t){return r(t,e,[])},o=["es6.object.to-string","es6.array.iterator","web.dom.iterable"],i=xRe.CommonIterators=["es6.string.iterator"].concat(o),d=["es6.object.to-string","es6.promise"];xRe.BuiltIns={DataView:n(["es6.typed.data-view"]),Float32Array:n(["es6.typed.float32-array"]),Float64Array:n(["es6.typed.float64-array"]),Int8Array:n(["es6.typed.int8-array"]),Int16Array:n(["es6.typed.int16-array"]),Int32Array:n(["es6.typed.int32-array"]),Map:a("map",["es6.map"].concat(b(i))),Number:n(["es6.number.constructor"]),Promise:a("promise",d),RegExp:n(["es6.regexp.constructor"]),Set:a("set",["es6.set"].concat(b(i))),Symbol:a("symbol/index",["es6.symbol"]),Uint8Array:n(["es6.typed.uint8-array"]),Uint8ClampedArray:n(["es6.typed.uint8-clamped-array"]),Uint16Array:n(["es6.typed.uint16-array"]),Uint32Array:n(["es6.typed.uint32-array"]),WeakMap:a("weak-map",["es6.weak-map"].concat(b(i))),WeakSet:a("weak-set",["es6.weak-set"].concat(b(i))),setImmediate:s("set-immediate","web.immediate"),clearImmediate:s("clear-immediate","web.immediate"),parseFloat:s("parse-float","es6.parse-float"),parseInt:s("parse-int","es6.parse-int")};var c=xRe.InstanceProperties={__defineGetter__:n(["es7.object.define-getter"]),__defineSetter__:n(["es7.object.define-setter"]),__lookupGetter__:n(["es7.object.lookup-getter"]),__lookupSetter__:n(["es7.object.lookup-setter"]),anchor:n(["es6.string.anchor"]),big:n(["es6.string.big"]),bind:n(["es6.function.bind"]),blink:n(["es6.string.blink"]),bold:n(["es6.string.bold"]),codePointAt:n(["es6.string.code-point-at"]),copyWithin:n(["es6.array.copy-within"]),endsWith:n(["es6.string.ends-with"]),entries:n(o),every:n(["es6.array.every"]),fill:n(["es6.array.fill"]),filter:n(["es6.array.filter"]),finally:n(["es7.promise.finally"].concat(d)),find:n(["es6.array.find"]),findIndex:n(["es6.array.find-index"]),fixed:n(["es6.string.fixed"]),flags:n(["es6.regexp.flags"]),flatMap:n(["es7.array.flat-map"]),fontcolor:n(["es6.string.fontcolor"]),fontsize:n(["es6.string.fontsize"]),forEach:n(["es6.array.for-each"]),includes:n(["es6.string.includes","es7.array.includes"]),indexOf:n(["es6.array.index-of"]),italics:n(["es6.string.italics"]),keys:n(o),lastIndexOf:n(["es6.array.last-index-of"]),link:n(["es6.string.link"]),map:n(["es6.array.map"]),match:n(["es6.regexp.match"]),name:n(["es6.function.name"]),padStart:n(["es7.string.pad-start"]),padEnd:n(["es7.string.pad-end"]),reduce:n(["es6.array.reduce"]),reduceRight:n(["es6.array.reduce-right"]),repeat:n(["es6.string.repeat"]),replace:n(["es6.regexp.replace"]),search:n(["es6.regexp.search"]),small:n(["es6.string.small"]),some:n(["es6.array.some"]),sort:n(["es6.array.sort"]),split:n(["es6.regexp.split"]),startsWith:n(["es6.string.starts-with"]),strike:n(["es6.string.strike"]),sub:n(["es6.string.sub"]),sup:n(["es6.string.sup"]),toISOString:n(["es6.date.to-iso-string"]),toJSON:n(["es6.date.to-json"]),toString:n(["es6.object.to-string","es6.date.to-string","es6.regexp.to-string"]),trim:n(["es6.string.trim"]),trimEnd:n(["es7.string.trim-right"]),trimLeft:n(["es7.string.trim-left"]),trimRight:n(["es7.string.trim-right"]),trimStart:n(["es7.string.trim-left"]),values:n(o)};return"es6.array.slice"in t.default&&(c.slice=n(["es6.array.slice"])),xRe.StaticProperties={Array:{from:a("array/from",["es6.symbol","es6.array.from"].concat(b(i))),isArray:a("array/is-array",["es6.array.is-array"]),of:a("array/of",["es6.array.of"])},Date:{now:a("date/now",["es6.date.now"])},JSON:{stringify:s("json/stringify","es6.symbol")},Math:{acosh:a("math/acosh",["es6.math.acosh"],"7.0.1"),asinh:a("math/asinh",["es6.math.asinh"],"7.0.1"),atanh:a("math/atanh",["es6.math.atanh"],"7.0.1"),cbrt:a("math/cbrt",["es6.math.cbrt"],"7.0.1"),clz32:a("math/clz32",["es6.math.clz32"],"7.0.1"),cosh:a("math/cosh",["es6.math.cosh"],"7.0.1"),expm1:a("math/expm1",["es6.math.expm1"],"7.0.1"),fround:a("math/fround",["es6.math.fround"],"7.0.1"),hypot:a("math/hypot",["es6.math.hypot"],"7.0.1"),imul:a("math/imul",["es6.math.imul"],"7.0.1"),log1p:a("math/log1p",["es6.math.log1p"],"7.0.1"),log10:a("math/log10",["es6.math.log10"],"7.0.1"),log2:a("math/log2",["es6.math.log2"],"7.0.1"),sign:a("math/sign",["es6.math.sign"],"7.0.1"),sinh:a("math/sinh",["es6.math.sinh"],"7.0.1"),tanh:a("math/tanh",["es6.math.tanh"],"7.0.1"),trunc:a("math/trunc",["es6.math.trunc"],"7.0.1")},Number:{EPSILON:a("number/epsilon",["es6.number.epsilon"]),MIN_SAFE_INTEGER:a("number/min-safe-integer",["es6.number.min-safe-integer"]),MAX_SAFE_INTEGER:a("number/max-safe-integer",["es6.number.max-safe-integer"]),isFinite:a("number/is-finite",["es6.number.is-finite"]),isInteger:a("number/is-integer",["es6.number.is-integer"]),isSafeInteger:a("number/is-safe-integer",["es6.number.is-safe-integer"]),isNaN:a("number/is-nan",["es6.number.is-nan"]),parseFloat:a("number/parse-float",["es6.number.parse-float"]),parseInt:a("number/parse-int",["es6.number.parse-int"])},Object:{assign:a("object/assign",["es6.object.assign"]),create:a("object/create",["es6.object.create"]),defineProperties:a("object/define-properties",["es6.object.define-properties"]),defineProperty:a("object/define-property",["es6.object.define-property"]),entries:a("object/entries",["es7.object.entries"]),freeze:a("object/freeze",["es6.object.freeze"]),getOwnPropertyDescriptor:a("object/get-own-property-descriptor",["es6.object.get-own-property-descriptor"]),getOwnPropertyDescriptors:a("object/get-own-property-descriptors",["es7.object.get-own-property-descriptors"]),getOwnPropertyNames:a("object/get-own-property-names",["es6.object.get-own-property-names"]),getOwnPropertySymbols:a("object/get-own-property-symbols",["es6.symbol"]),getPrototypeOf:a("object/get-prototype-of",["es6.object.get-prototype-of"]),is:a("object/is",["es6.object.is"]),isExtensible:a("object/is-extensible",["es6.object.is-extensible"]),isFrozen:a("object/is-frozen",["es6.object.is-frozen"]),isSealed:a("object/is-sealed",["es6.object.is-sealed"]),keys:a("object/keys",["es6.object.keys"]),preventExtensions:a("object/prevent-extensions",["es6.object.prevent-extensions"]),seal:a("object/seal",["es6.object.seal"]),setPrototypeOf:a("object/set-prototype-of",["es6.object.set-prototype-of"]),values:a("object/values",["es7.object.values"])},Promise:{all:n(i),race:n(i)},Reflect:{apply:a("reflect/apply",["es6.reflect.apply"]),construct:a("reflect/construct",["es6.reflect.construct"]),defineProperty:a("reflect/define-property",["es6.reflect.define-property"]),deleteProperty:a("reflect/delete-property",["es6.reflect.delete-property"]),get:a("reflect/get",["es6.reflect.get"]),getOwnPropertyDescriptor:a("reflect/get-own-property-descriptor",["es6.reflect.get-own-property-descriptor"]),getPrototypeOf:a("reflect/get-prototype-of",["es6.reflect.get-prototype-of"]),has:a("reflect/has",["es6.reflect.has"]),isExtensible:a("reflect/is-extensible",["es6.reflect.is-extensible"]),ownKeys:a("reflect/own-keys",["es6.reflect.own-keys"]),preventExtensions:a("reflect/prevent-extensions",["es6.reflect.prevent-extensions"]),set:a("reflect/set",["es6.reflect.set"]),setPrototypeOf:a("reflect/set-prototype-of",["es6.reflect.set-prototype-of"])},String:{at:s("string/at","es7.string.at"),fromCodePoint:a("string/from-code-point",["es6.string.from-code-point"]),raw:a("string/raw",["es6.string.raw"])},Symbol:{asyncIterator:n(["es6.symbol","es7.symbol.async-iterator"]),for:s("symbol/for","es6.symbol"),hasInstance:s("symbol/has-instance","es6.symbol"),isConcatSpreadable:s("symbol/is-concat-spreadable","es6.symbol"),iterator:r("es6.symbol","symbol/iterator",i),keyFor:s("symbol/key-for","es6.symbol"),match:a("symbol/match",["es6.regexp.match"]),replace:s("symbol/replace","es6.symbol"),search:s("symbol/search","es6.symbol"),species:s("symbol/species","es6.symbol"),split:s("symbol/split","es6.symbol"),toPrimitive:s("symbol/to-primitive","es6.symbol"),toStringTag:s("symbol/to-string-tag","es6.symbol"),unscopables:s("symbol/unscopables","es6.symbol")}},xRe}(),r=o(function(){if(RRe)return jRe;function e(){return e=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)({}).hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},e.apply(null,arguments)}RRe=1,jRe.__esModule=!0,jRe.default=function(a,n,s){var o=Object.keys(a),i=!o.length,d=o.some(function(e){return"node"!==e});return e({},s,"usage-pure"===n?r:null,i||d?t:null)};var t={"web.timers":{},"web.immediate":{},"web.dom.iterable":{}},r={"es6.parse-float":{},"es6.parse-int":{},"es7.string.at":{}};return jRe}()),a=function(){if(ERe)return SRe;ERe=1,SRe.__esModule=!0,SRe.hasMinVersion=function(e,r){return!r||!e||(r=String(r),t.default.valid(r)&&(r="^"+r),!t.default.intersects("<"+e,r)&&!t.default.intersects(">=8.0.0",r))};var e,t=(e=PRe())&&e.__esModule?e:{default:e};return SRe}(),n=o(nje()),s=function(e,t){if("function"==typeof WeakMap)var r=new WeakMap,a=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,o={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return o;if(n=t?a:r){if(n.has(e))return n.get(e);n.set(e,o)}for(var i in e)"default"!==i&&{}.hasOwnProperty.call(e,i)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,i))&&(s.get||s.set)?n(o,i,s):o[i]=e[i]);return o}(e,t)}(rbe);function o(e){return e&&e.__esModule?e:{default:e}}var i=(s.default||s).types,d="@babel/runtime-corejs2",c=Function.call.bind(Object.hasOwnProperty);return vRe.default=(0,n.default)(function(n,s){var o=s["#__secret_key__@babel/preset-env__compatibility"],l=void 0===o?{}:o,u=l.entryInjectRegenerator,p=void 0!==u&&u,f=l.noRuntimeName,g=void 0!==f&&f,m=s["#__secret_key__@babel/runtime__compatibility"],y=void 0===m?{}:m,h=y.useBabelRuntime,b=void 0!==h&&h,v=y.runtimeVersion,x=void 0===v?"":v,R=y.ext,j=void 0===R?".js":R,w=n.createMetaResolver({global:t.BuiltIns,static:t.StaticProperties,instance:t.InstanceProperties}),E=n.debug,S=n.shouldInjectPolyfill,T=n.method,P=(0,r.default)(n.targets,T,e.default),A=b?d+"/core-js":"usage-pure"===T?"core-js/library/fn":"core-js/modules";function k(e,t){"string"!=typeof e?e.forEach(function(e){return k(e,t)}):c(P,e)&&S(e)&&(E(e),t.injectGlobalImport(A+"/"+e+".js"))}return{name:"corejs2",runtimeName:g?null:d,polyfills:P,entryGlobal:function(e,t,r){"import"===e.kind&&"core-js"===e.source&&(E(null),k(Object.keys(P),t),p&&t.injectGlobalImport("regenerator-runtime/runtime.js"),r.remove())},usageGlobal:function(e,t){var r=w(e);if(r){var a=r.desc.global;if("global"!==r.kind&&"object"in e&&e.object&&"prototype"===e.placement){var n=e.object.toLowerCase();a=a.filter(function(e){return e.includes(n)})}k(a,t)}},usagePure:function(e,t,r){if("in"!==e.kind){if(!r.parentPath.isUnaryExpression({operator:"delete"})){if("property"===e.kind){if(!r.isMemberExpression())return;if(!r.isReferenced())return;if("Symbol.iterator"===e.key&&S("es6.symbol")&&r.parentPath.isCallExpression({callee:r.node})&&0===r.parentPath.node.arguments.length)return r.parentPath.replaceWith(i.callExpression(t.injectDefaultImport(A+"/get-iterator"+j,"getIterator"),[r.node.object])),void r.skip()}var n=w(e);if(n){var s=function(e,t,r){var n=e.pure,s=e.meta,o=e.name;if(n&&S(o)&&(!(x&&s&&s.minRuntimeVersion)||(0,a.hasMinVersion)(s&&s.minRuntimeVersion,x)))return b&&"symbol/index"===n&&(n="symbol"),r.injectDefaultImport(A+"/"+n+j,t)}(n.desc,n.name,t);s&&r.replaceWith(s)}}}else"Symbol.iterator"===e.key&&r.replaceWith(i.callExpression(t.injectDefaultImport(A+"/is-iterable"+j,"isIterable"),[r.node.right]))},visitor:"usage-global"===T&&{YieldExpression:function(e){e.node.delegate&&k("web.dom.iterable",n.getUtils(e))},"ForOfStatement|ArrayPattern":function(e){t.CommonIterators.forEach(function(t){return k(t,n.getUtils(e))})}}}}),vRe}var oje,ije,dje,cje={};function lje(){if(oje)return cje;oje=1,cje.__esModule=!0,cje.default=void 0;var e,t=(e=nje())&&e.__esModule?e:{default:e};cje.default=(0,t.default)(function(e,t){var a,n,s=e.debug,o=e.targets,i=e.babel;if(a=o,n=i.targets(),JSON.stringify(a)!==JSON.stringify(n))throw new Error("This plugin does not use the targets option. Only preset-env's targets or top-level targets need to be configured for this plugin to work. See https://github.com/babel/babel-polyfills/issues/36 for more details.");var d=t["#__secret_key__@babel/runtime__compatibility"],c=void 0===d?{}:d,l=c.moduleName,u=void 0===l?null:l,p=c.useBabelRuntime,f=void 0!==p&&p;return{name:"regenerator",polyfills:["regenerator-runtime"],usageGlobal:function(e,t){r(e)&&(s("regenerator-runtime"),t.injectGlobalImport("regenerator-runtime/runtime.js"))},usagePure:function(e,t,a){if(r(e)){var n,s="regenerator-runtime";if(f)s=(null!=(n=null!=u?u:a.hub.file.get("runtimeHelpersModuleName"))?n:"@babel/runtime")+"/regenerator";a.replaceWith(t.injectDefaultImport(s,"regenerator-runtime"))}}}});var r=function(e){return"global"===e.kind&&"regeneratorRuntime"===e.name};return cje}var uje,pje,fje,gje,mje,yje,hje,bje,vje,xje={};function Rje(){return uje||(uje=1,xje.getImportSource=function(e){var t=e.node;if(0===t.specifiers.length)return t.source.value},xje.getRequireSource=function(e){var t=e.node;if("ExpressionStatement"===t.type){var r=t.expression;return"CallExpression"===r.type&&"Identifier"===r.callee.type&&"require"===r.callee.name&&1===r.arguments.length&&"StringLiteral"===r.arguments[0].type?r.arguments[0].value:void 0}},xje.isPolyfillSource=function(e){return"@babel/polyfill"===e||"core-js"===e}),xje}!function(e){Object.defineProperties(e,{pluginCoreJS2:{get:function(){return(rje?tje:(rje=1,tje=function(e){return null!=e&&e&&"false"!==e&&"0"!==e}(z.env.BABEL_8_BREAKING)?null:sje())).default}},pluginRegenerator:{get:function(){return(dje?ije:(dje=1,ije=function(e){return null!=e&&e&&"false"!==e&&"0"!==e}(z.env.BABEL_8_BREAKING)?null:lje())).default}},legacyBabelPolyfillPlugin:{get:function(){return function(){if(hje)return yje;hje=1;var e=Rje(),t=e.getImportSource,r=e.getRequireSource,a=e.isPolyfillSource,n="\n `@babel/polyfill` is deprecated. Please, use required parts of `core-js`\n and `regenerator-runtime/runtime` separately",s="\n When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed.\n Please remove the direct import of `SPECIFIER` or use `useBuiltIns: 'entry'` instead.";return yje=function(e,o){var i=e.template,d=o.regenerator,c=o.deprecated,l=o.usage;return{name:"preset-env/replace-babel-polyfill",visitor:{ImportDeclaration:function(e){var r=t(e);l&&a(r)?(console.warn(s.replace("SPECIFIER",r)),c||e.remove()):"@babel/polyfill"===r&&(c?console.warn(n):d?e.replaceWithMultiple(i.ast(pje||(pje=h(['\n import "core-js";\n import "regenerator-runtime/runtime.js";\n '])))):e.replaceWith(i.ast(fje||(fje=h(['\n import "core-js";\n '])))))},Program:function(e){e.get("body").forEach(function(e){var t=r(e);l&&a(t)?(console.warn(s.replace("SPECIFIER",t)),c||e.remove()):"@babel/polyfill"===t&&(c?console.warn(n):d?e.replaceWithMultiple(i.ast(gje||(gje=h(['\n require("core-js");\n require("regenerator-runtime/runtime.js");\n '])))):e.replaceWith(i.ast(mje||(mje=h(['\n require("core-js");\n '])))))})}}}},yje}()}},removeRegeneratorEntryPlugin:{get:function(){return function(){if(vje)return bje;vje=1;var e=Rje(),t=e.getImportSource,r=e.getRequireSource;function a(e){return"regenerator-runtime/runtime"===e||"regenerator-runtime/runtime.js"===e}return bje=function(){var e={ImportDeclaration:function(e){a(t(e))&&(this.regeneratorImportExcluded=!0,e.remove())},Program:function(e){var t=this;e.get("body").forEach(function(e){a(r(e))&&(t.regeneratorImportExcluded=!0,e.remove())})}};return{name:"preset-env/remove-regenerator",visitor:e,pre:function(){this.regeneratorImportExcluded=!1},post:function(){if(this.opts.debug&&this.regeneratorImportExcluded){var e=this.file.opts.filename;"test"===z.env.BABEL_ENV&&(e=e.replace(/\\/g,"/")),console.log("\n["+e+"] Based on your targets, regenerator-runtime import excluded.")}}}},bje}()}},corejs2Polyfills:{get:function(){return Uhe}}})}(bRe);var jje=new cU("@babel/preset-env"),wje=Object.keys(lRe),Eje=["transform-dynamic-import"].concat(b(Object.keys(dRe).map(function(e){return dRe[e]})));var Sje=function(e,t,r){if(void 0===e&&(e=[]),0===e.length)return[];var a,n,s=function(e,t){var r=new Set(wje);return"exclude"===e&&Eje.map(r.add,r),t&&(2===t?(Object.keys(bRe.corejs2Polyfills).map(r.add,r),r.add("web.timers").add("web.immediate").add("web.dom.iterable")):Object.keys(Ibe).map(r.add,r)),Array.from(r)}(t,r),o=[],i=(a=e,n=function(e){var t;if("string"==typeof e)try{t=new RegExp("^"+function(e){return e.replace(/^(?:@babel\/|babel-)(?:plugin-)?/,"")}(e)+"$")}catch(t){return o.push(e),[]}else t=e;var r=s.filter(function(e){return t.test(e)||t.test(e.replace(/^transform-/,"proposal-"))});return 0===r.length&&o.push(e),r},Array.prototype.concat.apply([],a.map(n)));return jje.invariant(0===o.length,"The plugins/built-ins '"+o.join(", ")+"' passed to the '"+t+"' option are not\n valid. Please check data/[plugin-features|built-in-features].js in babel-preset-env"),i};function Tje(e){jje.validateTopLevelOptions(e,gRe);var t,r,a,n=(void 0===(t=e.useBuiltIns)&&(t=!1),jje.invariant(hRe[t.toString()]||t===hRe.false,"The 'useBuiltIns' option must be either\n 'false' (default) to indicate no polyfill,\n '\"entry\"' to indicate replacing the entry polyfill, or\n '\"usage\"' to import only used polyfills per file"),t),s=function(e,t){var r,a=!1;t&&void 0===e?(r=2,console.warn("\nWARNING (@babel/preset-env): We noticed you're using the `useBuiltIns` option without declaring a core-js version. Currently, we assume version 2.x when no version is passed. Since this default version will likely change in future versions of Babel, we recommend explicitly setting the core-js version you are using via the `corejs` option.\n\nYou should also be sure that the version you pass to the `corejs` option matches the version specified in your `package.json`'s `dependencies` section. If it doesn't, you need to run one of the following commands:\n\n npm install --save core-js@2 npm install --save core-js@3\n yarn add core-js@2 yarn add core-js@3\n\nMore info about useBuiltIns: https://babeljs.io/docs/en/babel-preset-env#usebuiltins\nMore info about core-js: https://babeljs.io/docs/en/babel-preset-env#corejs")):"object"==typeof e&&null!==e?(r=e.version,a=Boolean(e.proposals)):r=e;var n=!!r&&Cxe.coerce(String(r));if(n)if(t){if(n.major<2||n.major>3)throw new RangeError("Invalid Option: The version passed to `corejs` is invalid. Currently, only core-js@2 and core-js@3 are supported.")}else console.warn("\nWARNING (@babel/preset-env): The `corejs` option only has an effect when the `useBuiltIns` option is not `false`\n");return{version:n,proposals:a}}(e.corejs,n),o=Sje(e.include,gRe.include,!!s.version&&s.version.major),i=Sje(e.exclude,gRe.exclude,!!s.version&&s.version.major);return function(e,t){void 0===e&&(e=[]),void 0===t&&(t=[]);var r=e.filter(function(e){return t.includes(e)});jje.invariant(0===r.length,"The plugins/built-ins '"+r.join(", ")+'\' were found in both the "include" and\n "exclude" options.')}(o,i),jje.validateBooleanOption("loose",e.loose),jje.validateBooleanOption("spec",e.spec),jje.validateBooleanOption("bugfixes",e.bugfixes),{configPath:jje.validateStringOption(gRe.configPath,e.configPath,z.cwd()),corejs:s,debug:jje.validateBooleanOption(gRe.debug,e.debug,!1),include:o,exclude:i,forceAllTransforms:jje.validateBooleanOption(gRe.forceAllTransforms,e.forceAllTransforms,!1),ignoreBrowserslistConfig:jje.validateBooleanOption(gRe.ignoreBrowserslistConfig,e.ignoreBrowserslistConfig,!1),modules:(a=e.modules,void 0===a&&(a=yRe.auto),jje.invariant(yRe[a.toString()]||a===yRe.false,"The 'modules' option must be one of \n - 'false' to indicate no module processing\n - a specific module type: 'commonjs', 'amd', 'umd', 'systemjs' - 'auto' (default) which will automatically select 'false' if the current\n process is known to support ES module syntax, or \"commonjs\" otherwise\n"),a),shippedProposals:jje.validateBooleanOption(gRe.shippedProposals,e.shippedProposals,!1),targets:(r=e.targets,"string"==typeof r||Array.isArray(r)?{browsers:r}:Object.assign({},r)),useBuiltIns:n,browserslistEnv:jje.validateStringOption(gRe.browserslistEnv,e.browserslistEnv)}}var Pje,Aje,kje,Cje=new Set([]),_je=["syntax-import-assertions","syntax-import-attributes"],Ije={"transform-async-generator-functions":"syntax-async-generators","transform-class-properties":"syntax-class-properties","transform-class-static-block":"syntax-class-static-block","transform-export-namespace-from":"syntax-export-namespace-from","transform-json-strings":"syntax-json-strings","transform-nullish-coalescing-operator":"syntax-nullish-coalescing-operator","transform-numeric-separator":"syntax-numeric-separator","transform-object-rest-spread":"syntax-object-rest-spread","transform-optional-catch-binding":"syntax-optional-catch-binding","transform-optional-chaining":"syntax-optional-chaining","transform-private-methods":"syntax-class-properties","transform-private-property-in-object":"syntax-private-property-in-object","transform-unicode-property-regex":null},Dje=Object.keys(Ije).map(function(e){return[e,Ije[e]]}),Oje=new Map(Dje),Nje=Ibe,Bje=Xbe,Mje=ive,Fje=["method","targets","ignoreBrowserslistConfig","configPath","debug","shouldInjectPolyfill","absoluteImports"],Lje=r,Uje=Lje.types,qje=Lje.template;function Gje(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Wje(e,t){if(void 0===t&&(t=new Set),!t.has(e)){if(t.add(e),e.isVariableDeclarator()){if(e.get("id").isIdentifier())return Wje(e.get("init"),t)}else if(e.isReferencedIdentifier()){var r=e.scope.getBinding(e.node.name);if(!r)return e;if(!r.constant)return;return Wje(r.path,t)}return e}}function Vje(e){if(e.isIdentifier()&&!e.scope.hasBinding(e.node.name,!0))return e.node.name;var t=Wje(e);return null!=t&&t.isIdentifier()?t.node.name:void 0}function Hje(e,t){void 0===t&&(t=!1);var r=e.scope;if(e.isStringLiteral())return e.node.value;var a=e.isIdentifier();if(a&&!t&&!e.parent.computed)return e.node.name;if(t&&e.isMemberExpression()&&e.get("object").isIdentifier({name:"Symbol"})&&!r.hasBinding("Symbol",!0)){var n=Hje(e.get("property"),e.node.computed);if(n)return"Symbol."+n}if(a?r.hasBinding(e.node.name,!0):e.isPure()){var s=e.evaluate().value;if("string"==typeof s)return s}}function zje(e){if(e.isMemberExpression()&&e.get("property").isIdentifier({name:"prototype"})){var t=Vje(e.get("object"));return t?{id:t,placement:"prototype"}:{id:null,placement:null}}var r=Vje(e);if(r)return{id:r,placement:"static"};var a=Wje(e);switch(null==a?void 0:a.type){case"RegExpLiteral":return{id:"RegExp",placement:"prototype"};case"FunctionExpression":return{id:"Function",placement:"prototype"};case"StringLiteral":return{id:"String",placement:"prototype"};case"NumberLiteral":return{id:"Number",placement:"prototype"};case"BooleanLiteral":return{id:"Boolean",placement:"prototype"};case"ObjectExpression":return{id:"Object",placement:"prototype"};case"ArrayExpression":return{id:"Array",placement:"prototype"}}return{id:null,placement:null}}function Kje(e){return e._blockHoist=3,e}var Xje=r.types,Jje=function(){function e(e,t){this._imports=new WeakMap,this._anonymousImports=new WeakMap,this._lastImports=new WeakMap,this._resolver=e,this._getPreferredIndex=t}var t=e.prototype;return t.storeAnonymous=function(e,t,r,a){var n=this._normalizeKey(e,t),s=this._ensure(this._anonymousImports,e,Set);if(!s.has(n)){var o=a("script"===e.node.sourceType,Xje.stringLiteral(this._resolver(t)));s.add(n),this._injectImport(e,o,r)}},t.storeNamed=function(e,t,r,a,n){var s=this._normalizeKey(e,t,r),o=this._ensure(this._imports,e,Map);if(!o.has(s)){var i=n("script"===e.node.sourceType,Xje.stringLiteral(this._resolver(t)),Xje.identifier(r)),d=i.node,c=i.name;o.set(s,c),this._injectImport(e,d,a)}return Xje.identifier(o.get(s))},t._injectImport=function(e,t,r){var a,n,s=this._getPreferredIndex(r),o=null!=(a=this._lastImports.get(e))?a:[],d=function(t){return t.node&&t.parent===e.node&&t.container===e.node.body};if(s===1/0)o.length>0&&(d(n=o[o.length-1].path)||(n=void 0));else for(var c,l=i(o.entries());!(c=l()).done;){var u=y(c.value,2),p=u[0],f=u[1],g=f.path,m=f.index;if(d(g)){if(s<m){var h=y(g.insertBefore(t),1)[0];return void o.splice(p,0,{path:h,index:s})}n=g}}if(n){var b=y(n.insertAfter(t),1)[0];o.push({path:b,index:s})}else{var v=y(e.unshiftContainer("body",[t]),1)[0];this._lastImports.set(e,[{path:v,index:s}])}},t._ensure=function(e,t,r){var a=e.get(t);return a||(a=new r,e.set(t,a)),a},t._normalizeKey=function(e,t,r){void 0===r&&(r="");var a=e.node.sourceType;return(r&&a)+"::"+t+"::"+r},o(e)}();function Yje(e,t){return t.length?' - The following "'+e+"\" patterns didn't match any polyfill:\n"+t.map(function(e){return" "+String(e)+"\n"}).join(""):""}function $je(e,t,r,a){var n,s=function(e){var r=function(e){if(e instanceof RegExp)return e;try{return new RegExp("^"+e+"$")}catch(e){return null}}(e);if(!r)return!1;for(var a,s=!1,o=i(t.keys());!(a=o()).done;){var d=a.value;r.test(d)&&(s=!0,n.add(d))}return!s},o=n=new Set,d=Array.from(r).filter(s),c=n=new Set,l=Array.from(a).filter(s),u=function(e,t){var r=new Set;return e.forEach(function(e){return t.has(e)&&r.add(e)}),r}(o,c);if(u.size>0||d.length>0||l.length>0)throw new Error('Error while validating the "'+e+'" provider options:\n'+Yje("include",d)+Yje("exclude",l)+function(e){return e.size?' - The following polyfills were matched both by "include" and "exclude" patterns:\n'+Array.from(e,function(e){return" "+e+"\n"}).join(""):""}(u));return{include:o,exclude:c}}function Qje(e){if(e.removed)return!0;if(!e.parentPath)return!1;var t,r;if(e.listKey){if(null==(t=e.parentPath.node)||null==(t=t[e.listKey])||!t.includes(e.node))return!0}else if((null==(r=e.parentPath.node)?void 0:r[e.key])!==e.node)return!0;return Qje(e.parentPath)}var Zje=function(e){function t(t,r,a,n){return e({kind:"property",object:t,key:r,placement:a},n)}function r(t){var r=t.node.name;t.scope.getBindingIdentifier(r)||e({kind:"global",name:r},t)}function a(e){var t=Hje(e.get("property"),e.node.computed);return{key:t,handleAsMemberExpression:!!t&&"prototype"!==t}}return{ReferencedIdentifier:function(e){var t=e.parentPath;t.isMemberExpression({object:e.node})&&a(t).handleAsMemberExpression||r(e)},"MemberExpression|OptionalMemberExpression":function(e){var n=a(e),s=n.key;if(n.handleAsMemberExpression){var o=e.get("object"),i=o.isIdentifier();if(i){var d=o.scope.getBinding(o.node.name);if(d){if(d.path.isImportNamespaceSpecifier())return;i=!1}}var c=zje(o),l=t(c.id,s,c.placement,e);l||(l=!i||e.shouldSkip||o.shouldSkip||Qje(o)),l||r(o)}},ObjectPattern:function(e){var r,a=e.parentPath,n=e.parent;if(a.isVariableDeclarator())r=a.get("init");else if(a.isAssignmentExpression())r=a.get("right");else if(a.isFunction()){var s=a.parentPath;(s.isCallExpression()||s.isNewExpression())&&s.node.callee===n&&(r=s.get("arguments")[e.key])}var o=null,d=null;if(r){var c=zje(r);o=c.id,d=c.placement}for(var l,u=i(e.get("properties"));!(l=u()).done;){var p=l.value;if(p.isObjectProperty()){var f=Hje(p.get("key"));f&&t(o,f,d,p)}}},BinaryExpression:function(t){if("in"===t.node.operator){var r=zje(t.get("right")),a=Hje(t.get("left"),!0);a&&e({kind:"in",object:r.id,key:a,placement:r.placement},t)}}}},ewe=function(e){return{ImportDeclaration:function(t){var r=function(e){var t=e.node;if(0===t.specifiers.length)return t.source.value}(t);r&&e({kind:"import",source:r},t)},Program:function(t){t.get("body").forEach(function(t){var r=function(e){var t=e.node;if(Uje.isExpressionStatement(t)){var r=t.expression;return Uje.isCallExpression(r)&&Uje.isIdentifier(r.callee)&&"require"===r.callee.name&&1===r.arguments.length&&Uje.isStringLiteral(r.arguments[0])?r.arguments[0].value:void 0}}(t);r&&e({kind:"import",source:r},t)})}}};var twe=new Set(["global","globalThis","self","window"]);function rwe(e){var t=e.static,r=e.instance,a=e.global;return function(e){if("global"===e.kind&&a&&Gje(a,e.name))return{kind:"global",desc:a[e.name],name:e.name};if("property"===e.kind||"in"===e.kind){var n=e.placement,s=e.object,o=e.key;if(s&&"static"===n){if(a&&twe.has(s)&&Gje(a,o))return{kind:"global",desc:a[o],name:o};if(t&&Gje(t,s)&&Gje(t[s],o))return{kind:"static",desc:t[s][o],name:s+"$"+o}}if(r&&Gje(r,o))return{kind:"instance",desc:r[o],name:""+o}}}}var awe,nwe,swe=UU.default||UU;function owe(e,t){var r,a,n,s=e.method,o=e.targets,i=e.ignoreBrowserslistConfig,d=e.configPath,c=e.debug,l=e.shouldInjectPolyfill,p=e.absoluteImports,f=function(e,t){if(null==e)return{};var r,a,n=u(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],-1===t.indexOf(r)&&{}.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}(e,Fje);if(r=e,0===Object.keys(r).length)throw new Error('This plugin requires options, for example:\n {\n "plugins": [\n ["<plugin name>", { method: "usage-pure" }]\n ]\n }\n\nSee more options at https://github.com/babel/babel-polyfills/blob/main/docs/usage.md');if("usage-global"===s)a="usageGlobal";else if("entry-global"===s)a="entryGlobal";else{if("usage-pure"!==s)throw"string"!=typeof s?new Error(".method must be a string"):new Error('.method must be one of "entry-global", "usage-global" or "usage-pure" (received '+JSON.stringify(s)+")");a="usagePure"}if("function"==typeof l){if(e.include||e.exclude)throw new Error(".include and .exclude are not supported when using the .shouldInjectPolyfill function.")}else if(null!=l)throw new Error(".shouldInjectPolyfill must be a function, or undefined (received "+JSON.stringify(l)+")");if(null!=p&&"boolean"!=typeof p&&"string"!=typeof p)throw new Error(".absoluteImports must be a boolean, a string, or undefined (received "+JSON.stringify(p)+")");if(o||d||i){var g="string"==typeof o||Array.isArray(o)?{browsers:o}:o;n=swe(g,{ignoreBrowserslistConfig:i,configPath:d})}else n=t.targets();return{method:s,methodName:a,targets:n,absoluteImports:null!=p&&p,shouldInjectPolyfill:l,debug:!!c,providerOptions:f}}function iwe(e,t,r,a,n,s){var o,i,d,c,l,u=owe(t,s),p=u.method,f=u.methodName,g=u.targets,m=u.debug,y=u.shouldInjectPolyfill,b=u.providerOptions,v=u.absoluteImports,x=function(e){return function(t){var r=t.findParent(function(e){return e.isProgram()});return{injectGlobalImport:function(t,a){e.storeAnonymous(r,t,a,function(e,t){return e?qje.statement.ast(Pje||(Pje=h(["require(",")"])),t):Uje.importDeclaration([],t)})},injectNamedImport:function(t,a,n,s){return void 0===n&&(n=a),e.storeNamed(r,t,a,s,function(e,t,a){var s=r.scope.generateUidIdentifier(n);return{node:e?Kje(qje.statement.ast(Aje||(Aje=h(["\n var "," = require(",").","\n "])),s,t,a)):Uje.importDeclaration([Uje.importSpecifier(s,a)],t),name:s.name}})},injectDefaultImport:function(t,a,n){return void 0===a&&(a=t),e.storeNamed(r,t,"default",n,function(e,t){var n=r.scope.generateUidIdentifier(a);return{node:e?Kje(qje.statement.ast(kje||(kje=h(["var "," = require(",")"])),n,t)):Uje.importDeclaration([Uje.importDefaultSpecifier(n)],t),name:n.name}})}}}}(new Jje(function(e){return function(e,t,r){if(!1===r)return t;throw new Error('"absoluteImports" is not supported in bundles prepared for the browser.')}(0,e,v)},function(e){var t,r;return null!=(t=null==(r=c)?void 0:r.get(e))?t:1/0})),R=new Map,j={babel:s,getUtils:x,method:t.method,targets:g,createMetaResolver:rwe,shouldInjectPolyfill:function(t){if(void 0===c)throw new Error("Internal error in the "+e.name+" provider: shouldInjectPolyfill() can't be called during initialization.");if(c.has(t)||console.warn("Internal error in the "+E+' provider: unknown polyfill "'+t+'".'),l&&!l(t))return!1;var r=CU(t,g,{compatData:d,includes:o,excludes:i});if(y&&"boolean"!=typeof(r=y(t,r)))throw new Error(".shouldInjectPolyfill must return a boolean.");return r},debug:function(e){var t;n().found=!0,m&&e&&(n().polyfills.has(E)||(n().polyfills.add(e),null!=(t=n()).polyfillsSupport||(t.polyfillsSupport=d)))},assertDependency:function(e,t){if(void 0===t&&(t="*"),!1!==r&&!v){var s="*"===t?e:e+"@^"+t,o=!r.all&&function(e,t,r){var a=e.get(t);void 0===a&&(a=r(),e.set(t,a));return a}(R,e+" :: "+a,function(){return!0});o||n().missingDeps.add(s)}}},w=e(j,b,a),E=w.name||e.name;if("function"!=typeof w[f])throw new Error('The "'+E+'" provider doesn\'t support the "'+p+'" polyfilling method.');Array.isArray(w.polyfills)?(c=new Map(w.polyfills.map(function(e,t){return[e,t]})),l=w.filterPolyfills):w.polyfills?(c=new Map(Object.keys(w.polyfills).map(function(e,t){return[e,t]})),d=w.polyfills,l=w.filterPolyfills):c=new Map;var S,T=$je(E,c,b.include||[],b.exclude||[]);return o=T.include,i=T.exclude,S="usageGlobal"===f?function(e,t){var r,a=x(t);return null!=(r=w[f](e,a,t))&&r}:function(e,t){var r=x(t);return w[f](e,r,t),!1},{debug:m,method:p,targets:g,provider:w,providerName:E,callProvider:S}}var dwe=new Set(["esnext.array.group","esnext.array.group-to-map","esnext.iterator.zip","esnext.iterator.zip-keyed","esnext.symbol.metadata"]),cwe={};Object.keys(Nje).forEach(function(e,t){cwe[e]=t});var lwe=function(e,t,r,a){return void 0===r&&(r=t[0]),{name:r,pure:e,global:t.sort(function(e,t){return cwe[e]-cwe[t]}),exclude:a}},uwe=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return lwe(null,[].concat(t,vwe))},pwe=["es.array.iterator","web.dom-collections.iterator"],fwe=["es.string.iterator"].concat(pwe),gwe=["es.object.to-string"].concat(pwe),mwe=["es.object.to-string"].concat(b(fwe)),ywe=["es.error.cause","es.error.to-string"],hwe=["es.suppressed-error.constructor"].concat(ywe),bwe=["es.array-buffer.constructor","es.array-buffer.slice","es.data-view","es.array-buffer.detached","es.array-buffer.transfer","es.array-buffer.transfer-to-fixed-length","es.object.to-string"],vwe=["es.typed-array.at","es.typed-array.copy-within","es.typed-array.every","es.typed-array.fill","es.typed-array.filter","es.typed-array.find","es.typed-array.find-index","es.typed-array.find-last","es.typed-array.find-last-index","es.typed-array.for-each","es.typed-array.includes","es.typed-array.index-of","es.typed-array.iterator","es.typed-array.join","es.typed-array.last-index-of","es.typed-array.map","es.typed-array.reduce","es.typed-array.reduce-right","es.typed-array.reverse","es.typed-array.set","es.typed-array.slice","es.typed-array.some","es.typed-array.sort","es.typed-array.subarray","es.typed-array.to-locale-string","es.typed-array.to-reversed","es.typed-array.to-sorted","es.typed-array.to-string","es.typed-array.with","es.object.to-string","es.array.iterator","esnext.typed-array.filter-reject","esnext.typed-array.group-by","esnext.typed-array.to-spliced","esnext.typed-array.unique-by"].concat(bwe),xwe=["es.promise","es.object.to-string"],Rwe=[].concat(xwe,b(fwe)),jwe=["es.map","es.map.get-or-insert","es.map.get-or-insert-computed","esnext.map.delete-all","esnext.map.emplace","esnext.map.every","esnext.map.filter","esnext.map.find","esnext.map.find-key","esnext.map.includes","esnext.map.key-of","esnext.map.map-keys","esnext.map.map-values","esnext.map.merge","esnext.map.reduce","esnext.map.some","esnext.map.update"].concat(b(mwe)),wwe=["es.set","es.set.difference.v2","es.set.intersection.v2","es.set.is-disjoint-from.v2","es.set.is-subset-of.v2","es.set.is-superset-of.v2","es.set.symmetric-difference.v2","es.set.union.v2","esnext.set.add-all","esnext.set.delete-all","esnext.set.difference","esnext.set.every","esnext.set.filter","esnext.set.find","esnext.set.intersection","esnext.set.is-disjoint-from","esnext.set.is-subset-of","esnext.set.is-superset-of","esnext.set.join","esnext.set.map","esnext.set.reduce","esnext.set.some","esnext.set.symmetric-difference","esnext.set.union"].concat(b(mwe)),Ewe=["es.weak-map","es.weak-map.get-or-insert","es.weak-map.get-or-insert-computed","esnext.weak-map.delete-all","esnext.weak-map.emplace"].concat(b(mwe)),Swe=["es.weak-set","esnext.weak-set.add-all","esnext.weak-set.delete-all"].concat(b(mwe)),Twe=["web.dom-exception.constructor","web.dom-exception.stack","web.dom-exception.to-string-tag","es.error.to-string"],Pwe=["web.url-search-params","web.url-search-params.delete","web.url-search-params.has","web.url-search-params.size"].concat(b(mwe)),Awe=["esnext.async-iterator.constructor"].concat(xwe),kwe=["esnext.async-iterator.every","esnext.async-iterator.filter","esnext.async-iterator.find","esnext.async-iterator.flat-map","esnext.async-iterator.for-each","esnext.async-iterator.map","esnext.async-iterator.reduce","esnext.async-iterator.some"],Cwe=["es.iterator.constructor","es.object.to-string"],_we=["esnext.symbol.metadata","esnext.function.metadata"],Iwe=function(e){return{from:lwe(null,["es.typed-array.from",e].concat(vwe)),fromAsync:lwe(null,["esnext.typed-array.from-async",e].concat(b(Rwe),vwe)),of:lwe(null,["es.typed-array.of",e].concat(vwe))}},Dwe=["es.data-view"].concat(bwe),Owe={AsyncDisposableStack:lwe("async-disposable-stack/index",["es.async-disposable-stack.constructor","es.object.to-string","es.async-iterator.async-dispose","es.iterator.dispose"].concat(xwe,b(hwe))),AsyncIterator:lwe("async-iterator/index",Awe),AggregateError:lwe("aggregate-error",["es.aggregate-error"].concat(ywe,b(mwe),["es.aggregate-error.cause"])),ArrayBuffer:lwe(null,bwe),DataView:lwe(null,Dwe),Date:lwe(null,["es.date.to-string"]),DOMException:lwe("dom-exception/index",Twe),DisposableStack:lwe("disposable-stack/index",["es.disposable-stack.constructor","es.object.to-string","es.iterator.dispose"].concat(b(hwe))),Error:lwe(null,ywe),EvalError:lwe(null,ywe),Float32Array:uwe("es.typed-array.float32-array"),Float64Array:uwe("es.typed-array.float64-array"),Int8Array:uwe("es.typed-array.int8-array"),Int16Array:uwe("es.typed-array.int16-array"),Int32Array:uwe("es.typed-array.int32-array"),Iterator:lwe("iterator/index",Cwe),Uint8Array:uwe("es.typed-array.uint8-array","es.uint8-array.set-from-base64","es.uint8-array.set-from-hex","es.uint8-array.to-base64","es.uint8-array.to-hex"),Uint8ClampedArray:uwe("es.typed-array.uint8-clamped-array"),Uint16Array:uwe("es.typed-array.uint16-array"),Uint32Array:uwe("es.typed-array.uint32-array"),Map:lwe("map/index",jwe),Number:lwe(null,["es.number.constructor"]),Observable:lwe("observable/index",["esnext.observable","esnext.symbol.observable","es.object.to-string"].concat(b(mwe))),Promise:lwe("promise/index",xwe),RangeError:lwe(null,ywe),ReferenceError:lwe(null,ywe),Reflect:lwe(null,["es.reflect.to-string-tag","es.object.to-string"]),RegExp:lwe(null,["es.regexp.constructor","es.regexp.dot-all","es.regexp.exec","es.regexp.sticky","es.regexp.to-string"]),Set:lwe("set/index",wwe),SuppressedError:lwe("suppressed-error",hwe),Symbol:lwe("symbol/index",["es.symbol","es.symbol.description","es.object.to-string"]),SyntaxError:lwe(null,ywe),TypeError:lwe(null,ywe),URIError:lwe(null,ywe),URL:lwe("url/index",["web.url","web.url.to-json"].concat(b(Pwe))),URLSearchParams:lwe("url-search-params/index",Pwe),WeakMap:lwe("weak-map/index",Ewe),WeakSet:lwe("weak-set/index",Swe),atob:lwe("atob",["web.atob"].concat(Twe)),btoa:lwe("btoa",["web.btoa"].concat(Twe)),clearImmediate:lwe("clear-immediate",["web.immediate"]),compositeKey:lwe("composite-key",["esnext.composite-key"]),compositeSymbol:lwe("composite-symbol",["esnext.composite-symbol"]),escape:lwe("escape",["es.escape"]),fetch:lwe(null,xwe),globalThis:lwe("global-this",["es.global-this"]),parseFloat:lwe("parse-float",["es.parse-float"]),parseInt:lwe("parse-int",["es.parse-int"]),queueMicrotask:lwe("queue-microtask",["web.queue-microtask"]),self:lwe("self",["web.self"]),setImmediate:lwe("set-immediate",["web.immediate"]),setInterval:lwe("set-interval",["web.timers"]),setTimeout:lwe("set-timeout",["web.timers"]),structuredClone:lwe("structured-clone",["web.structured-clone"].concat(Twe,["es.array.iterator","es.object.keys","es.object.to-string","es.map","es.set"])),unescape:lwe("unescape",["es.unescape"])},Nwe={AsyncIterator:{from:lwe("async-iterator/from",["esnext.async-iterator.from"].concat(b(Awe),kwe,b(fwe)))},Array:{from:lwe("array/from",["es.array.from","es.string.iterator"]),fromAsync:lwe("array/from-async",["es.array.from-async"].concat(b(Rwe))),isArray:lwe("array/is-array",["es.array.is-array"]),isTemplateObject:lwe("array/is-template-object",["esnext.array.is-template-object"]),of:lwe("array/of",["es.array.of"])},ArrayBuffer:{isView:lwe(null,["es.array-buffer.is-view"])},BigInt:{range:lwe("bigint/range",["esnext.bigint.range","es.object.to-string"])},Date:{now:lwe("date/now",["es.date.now"])},Error:{isError:lwe("error/is-error",["es.error.is-error","es.object.create"])},Function:{isCallable:lwe("function/is-callable",["esnext.function.is-callable"]),isConstructor:lwe("function/is-constructor",["esnext.function.is-constructor"])},Iterator:{concat:lwe("iterator/concat",["es.iterator.concat"].concat(Cwe,b(fwe))),from:lwe("iterator/from",["es.iterator.from"].concat(Cwe,b(fwe))),range:lwe("iterator/range",["esnext.iterator.range"].concat(Cwe)),zip:lwe("iterator/zip",["esnext.iterator.zip"].concat(Cwe,b(fwe))),zipKeyed:lwe("iterator/zip-keyed",["esnext.iterator.zip-keyed","es.object.create","es.reflect.own-keys"].concat(Cwe,b(fwe)))},JSON:{isRawJSON:lwe("json/is-raw-json",["es.json.is-raw-json"]),parse:lwe("json/parse",["es.json.parse","es.object.keys"]),rawJSON:lwe("json/raw-json",["es.json.raw-json","es.object.create","es.object.freeze"]),stringify:lwe("json/stringify",["es.json.stringify","es.date.to-json"])},Math:{DEG_PER_RAD:lwe("math/deg-per-rad",["esnext.math.deg-per-rad"]),RAD_PER_DEG:lwe("math/rad-per-deg",["esnext.math.rad-per-deg"]),acosh:lwe("math/acosh",["es.math.acosh"]),asinh:lwe("math/asinh",["es.math.asinh"]),atanh:lwe("math/atanh",["es.math.atanh"]),cbrt:lwe("math/cbrt",["es.math.cbrt"]),clamp:lwe("math/clamp",["esnext.math.clamp"]),clz32:lwe("math/clz32",["es.math.clz32"]),cosh:lwe("math/cosh",["es.math.cosh"]),degrees:lwe("math/degrees",["esnext.math.degrees"]),expm1:lwe("math/expm1",["es.math.expm1"]),fround:lwe("math/fround",["es.math.fround"]),f16round:lwe("math/f16round",["es.math.f16round"]),fscale:lwe("math/fscale",["esnext.math.fscale"]),hypot:lwe("math/hypot",["es.math.hypot"]),iaddh:lwe("math/iaddh",["esnext.math.iaddh"]),imul:lwe("math/imul",["es.math.imul"]),imulh:lwe("math/imulh",["esnext.math.imulh"]),isubh:lwe("math/isubh",["esnext.math.isubh"]),log10:lwe("math/log10",["es.math.log10"]),log1p:lwe("math/log1p",["es.math.log1p"]),log2:lwe("math/log2",["es.math.log2"]),radians:lwe("math/radians",["esnext.math.radians"]),scale:lwe("math/scale",["esnext.math.scale"]),seededPRNG:lwe("math/seeded-prng",["esnext.math.seeded-prng"]),sign:lwe("math/sign",["es.math.sign"]),signbit:lwe("math/signbit",["esnext.math.signbit"]),sinh:lwe("math/sinh",["es.math.sinh"]),sumPrecise:lwe("math/sum-precise",["es.math.sum-precise","es.array.iterator"]),tanh:lwe("math/tanh",["es.math.tanh"]),trunc:lwe("math/trunc",["es.math.trunc"]),umulh:lwe("math/umulh",["esnext.math.umulh"])},Map:{from:lwe("map/from",["esnext.map.from"].concat(b(jwe))),groupBy:lwe("map/group-by",["es.map.group-by"].concat(b(jwe))),keyBy:lwe("map/key-by",["esnext.map.key-by"].concat(b(jwe))),of:lwe("map/of",["esnext.map.of"].concat(b(jwe)))},Number:{EPSILON:lwe("number/epsilon",["es.number.epsilon"]),MAX_SAFE_INTEGER:lwe("number/max-safe-integer",["es.number.max-safe-integer"]),MIN_SAFE_INTEGER:lwe("number/min-safe-integer",["es.number.min-safe-integer"]),fromString:lwe("number/from-string",["esnext.number.from-string"]),isFinite:lwe("number/is-finite",["es.number.is-finite"]),isInteger:lwe("number/is-integer",["es.number.is-integer"]),isNaN:lwe("number/is-nan",["es.number.is-nan"]),isSafeInteger:lwe("number/is-safe-integer",["es.number.is-safe-integer"]),parseFloat:lwe("number/parse-float",["es.number.parse-float"]),parseInt:lwe("number/parse-int",["es.number.parse-int"]),range:lwe("number/range",["esnext.number.range","es.object.to-string"])},Object:{assign:lwe("object/assign",["es.object.assign"]),create:lwe("object/create",["es.object.create"]),defineProperties:lwe("object/define-properties",["es.object.define-properties"]),defineProperty:lwe("object/define-property",["es.object.define-property"]),entries:lwe("object/entries",["es.object.entries"]),freeze:lwe("object/freeze",["es.object.freeze"]),fromEntries:lwe("object/from-entries",["es.object.from-entries","es.array.iterator"]),getOwnPropertyDescriptor:lwe("object/get-own-property-descriptor",["es.object.get-own-property-descriptor"]),getOwnPropertyDescriptors:lwe("object/get-own-property-descriptors",["es.object.get-own-property-descriptors"]),getOwnPropertyNames:lwe("object/get-own-property-names",["es.object.get-own-property-names"]),getOwnPropertySymbols:lwe("object/get-own-property-symbols",["es.symbol"]),getPrototypeOf:lwe("object/get-prototype-of",["es.object.get-prototype-of"]),groupBy:lwe("object/group-by",["es.object.group-by","es.object.create"]),hasOwn:lwe("object/has-own",["es.object.has-own"]),is:lwe("object/is",["es.object.is"]),isExtensible:lwe("object/is-extensible",["es.object.is-extensible"]),isFrozen:lwe("object/is-frozen",["es.object.is-frozen"]),isSealed:lwe("object/is-sealed",["es.object.is-sealed"]),keys:lwe("object/keys",["es.object.keys"]),preventExtensions:lwe("object/prevent-extensions",["es.object.prevent-extensions"]),seal:lwe("object/seal",["es.object.seal"]),setPrototypeOf:lwe("object/set-prototype-of",["es.object.set-prototype-of"]),values:lwe("object/values",["es.object.values"])},Promise:{all:lwe(null,Rwe),allSettled:lwe("promise/all-settled",["es.promise.all-settled"].concat(b(Rwe))),any:lwe("promise/any",["es.promise.any","es.aggregate-error"].concat(b(Rwe))),race:lwe(null,Rwe),try:lwe("promise/try",["es.promise.try"].concat(xwe)),withResolvers:lwe("promise/with-resolvers",["es.promise.with-resolvers"].concat(xwe))},Reflect:{apply:lwe("reflect/apply",["es.reflect.apply"]),construct:lwe("reflect/construct",["es.reflect.construct"]),defineMetadata:lwe("reflect/define-metadata",["esnext.reflect.define-metadata"]),defineProperty:lwe("reflect/define-property",["es.reflect.define-property"]),deleteMetadata:lwe("reflect/delete-metadata",["esnext.reflect.delete-metadata"]),deleteProperty:lwe("reflect/delete-property",["es.reflect.delete-property"]),get:lwe("reflect/get",["es.reflect.get"]),getMetadata:lwe("reflect/get-metadata",["esnext.reflect.get-metadata"]),getMetadataKeys:lwe("reflect/get-metadata-keys",["esnext.reflect.get-metadata-keys"]),getOwnMetadata:lwe("reflect/get-own-metadata",["esnext.reflect.get-own-metadata"]),getOwnMetadataKeys:lwe("reflect/get-own-metadata-keys",["esnext.reflect.get-own-metadata-keys"]),getOwnPropertyDescriptor:lwe("reflect/get-own-property-descriptor",["es.reflect.get-own-property-descriptor"]),getPrototypeOf:lwe("reflect/get-prototype-of",["es.reflect.get-prototype-of"]),has:lwe("reflect/has",["es.reflect.has"]),hasMetadata:lwe("reflect/has-metadata",["esnext.reflect.has-metadata"]),hasOwnMetadata:lwe("reflect/has-own-metadata",["esnext.reflect.has-own-metadata"]),isExtensible:lwe("reflect/is-extensible",["es.reflect.is-extensible"]),metadata:lwe("reflect/metadata",["esnext.reflect.metadata"]),ownKeys:lwe("reflect/own-keys",["es.reflect.own-keys"]),preventExtensions:lwe("reflect/prevent-extensions",["es.reflect.prevent-extensions"]),set:lwe("reflect/set",["es.reflect.set"]),setPrototypeOf:lwe("reflect/set-prototype-of",["es.reflect.set-prototype-of"])},RegExp:{escape:lwe("regexp/escape",["es.regexp.escape"])},Set:{from:lwe("set/from",["esnext.set.from"].concat(b(wwe))),of:lwe("set/of",["esnext.set.of"].concat(b(wwe)))},String:{cooked:lwe("string/cooked",["esnext.string.cooked"]),dedent:lwe("string/dedent",["esnext.string.dedent","es.string.from-code-point","es.weak-map"]),fromCodePoint:lwe("string/from-code-point",["es.string.from-code-point"]),raw:lwe("string/raw",["es.string.raw"])},Symbol:{asyncDispose:lwe("symbol/async-dispose",["es.symbol.async-dispose","es.async-iterator.async-dispose"]),asyncIterator:lwe("symbol/async-iterator",["es.symbol.async-iterator"]),customMatcher:lwe("symbol/custom-matcher",["esnext.symbol.custom-matcher"]),dispose:lwe("symbol/dispose",["es.symbol.dispose","es.iterator.dispose"]),for:lwe("symbol/for",[],"es.symbol"),hasInstance:lwe("symbol/has-instance",["es.symbol.has-instance","es.function.has-instance"]),isConcatSpreadable:lwe("symbol/is-concat-spreadable",["es.symbol.is-concat-spreadable","es.array.concat"]),isRegistered:lwe("symbol/is-registered",["esnext.symbol.is-registered","es.symbol"]),isRegisteredSymbol:lwe("symbol/is-registered-symbol",["esnext.symbol.is-registered-symbol","es.symbol"]),isWellKnown:lwe("symbol/is-well-known",["esnext.symbol.is-well-known","es.symbol"]),isWellKnownSymbol:lwe("symbol/is-well-known-symbol",["esnext.symbol.is-well-known-symbol","es.symbol"]),iterator:lwe("symbol/iterator",["es.symbol.iterator"].concat(b(mwe))),keyFor:lwe("symbol/key-for",[],"es.symbol"),match:lwe("symbol/match",["es.symbol.match","es.string.match"]),matcher:lwe("symbol/matcher",["esnext.symbol.matcher"]),matchAll:lwe("symbol/match-all",["es.symbol.match-all","es.string.match-all"]),metadata:lwe("symbol/metadata",_we),metadataKey:lwe("symbol/metadata-key",["esnext.symbol.metadata-key"]),observable:lwe("symbol/observable",["esnext.symbol.observable"]),patternMatch:lwe("symbol/pattern-match",["esnext.symbol.pattern-match"]),replace:lwe("symbol/replace",["es.symbol.replace","es.string.replace"]),search:lwe("symbol/search",["es.symbol.search","es.string.search"]),species:lwe("symbol/species",["es.symbol.species","es.array.species"]),split:lwe("symbol/split",["es.symbol.split","es.string.split"]),toPrimitive:lwe("symbol/to-primitive",["es.symbol.to-primitive","es.date.to-primitive"]),toStringTag:lwe("symbol/to-string-tag",["es.symbol.to-string-tag","es.object.to-string","es.math.to-string-tag","es.json.to-string-tag"]),unscopables:lwe("symbol/unscopables",["es.symbol.unscopables"])},URL:{canParse:lwe("url/can-parse",["web.url.can-parse","web.url"]),parse:lwe("url/parse",["web.url.parse","web.url"])},WeakMap:{from:lwe("weak-map/from",["esnext.weak-map.from"].concat(b(Ewe))),of:lwe("weak-map/of",["esnext.weak-map.of"].concat(b(Ewe)))},WeakSet:{from:lwe("weak-set/from",["esnext.weak-set.from"].concat(b(Swe))),of:lwe("weak-set/of",["esnext.weak-set.of"].concat(b(Swe)))},Int8Array:Iwe("es.typed-array.int8-array"),Uint8Array:Object.assign({fromBase64:lwe(null,["es.uint8-array.from-base64"].concat(vwe)),fromHex:lwe(null,["es.uint8-array.from-hex"].concat(vwe))},Iwe("es.typed-array.uint8-array")),Uint8ClampedArray:Iwe("es.typed-array.uint8-clamped-array"),Int16Array:Iwe("es.typed-array.int16-array"),Uint16Array:Iwe("es.typed-array.uint16-array"),Int32Array:Iwe("es.typed-array.int32-array"),Uint32Array:Iwe("es.typed-array.uint32-array"),Float32Array:Iwe("es.typed-array.float32-array"),Float64Array:Iwe("es.typed-array.float64-array"),WebAssembly:{CompileError:lwe(null,ywe),LinkError:lwe(null,ywe),RuntimeError:lwe(null,ywe)}};["AggregateError","EvalError","RangeError","ReferenceError","SuppressedError","SyntaxError","TypeError","URIError"].forEach(function(e){Nwe[e]=Nwe.Error});var Bwe=((awe={asIndexedPairs:lwe(null,["esnext.async-iterator.as-indexed-pairs"].concat(b(Awe),["esnext.iterator.as-indexed-pairs"],Cwe)),at:lwe("instance/at",["esnext.string.at","es.string.at-alternative","es.array.at"]),anchor:lwe(null,["es.string.anchor"]),big:lwe(null,["es.string.big"]),bind:lwe("instance/bind",["es.function.bind"]),blink:lwe(null,["es.string.blink"]),bold:lwe(null,["es.string.bold"]),chunks:lwe(null,["esnext.iterator.chunks"].concat(Cwe)),clamp:lwe("instance/clamp",["esnext.number.clamp"]),codePointAt:lwe("instance/code-point-at",["es.string.code-point-at"]),codePoints:lwe("instance/code-points",["esnext.string.code-points"]),concat:lwe("instance/concat",["es.array.concat"],void 0,["String"]),copyWithin:lwe("instance/copy-within",["es.array.copy-within"]),demethodize:lwe("instance/demethodize",["esnext.function.demethodize"]),description:lwe(null,["es.symbol","es.symbol.description"]),dotAll:lwe(null,["es.regexp.dot-all"]),drop:lwe(null,["es.iterator.drop"].concat(Cwe,["esnext.async-iterator.drop"],b(Awe))),endsWith:lwe("instance/ends-with",["es.string.ends-with"]),entries:lwe("instance/entries",gwe),every:lwe("instance/every",["es.array.every","es.iterator.every"].concat(Cwe)),exec:lwe(null,["es.regexp.exec"]),fill:lwe("instance/fill",["es.array.fill"]),filter:lwe("instance/filter",["es.array.filter","es.iterator.filter"].concat(Cwe)),filterReject:lwe("instance/filter-reject",["esnext.array.filter-reject"]),finally:lwe(null,["es.promise.finally"].concat(xwe)),find:lwe("instance/find",["es.array.find","es.iterator.find"].concat(Cwe)),findIndex:lwe("instance/find-index",["es.array.find-index"]),findLast:lwe("instance/find-last",["es.array.find-last"]),findLastIndex:lwe("instance/find-last-index",["es.array.find-last-index"]),fixed:lwe(null,["es.string.fixed"]),flags:lwe("instance/flags",["es.regexp.flags"]),flatMap:lwe("instance/flat-map",["es.array.flat-map","es.array.unscopables.flat-map","es.iterator.flat-map"].concat(Cwe)),flat:lwe("instance/flat",["es.array.flat","es.array.unscopables.flat"]),getFloat16:lwe(null,["es.data-view.get-float16"].concat(b(Dwe))),getUint8Clamped:lwe(null,["esnext.data-view.get-uint8-clamped"].concat(b(Dwe))),getYear:lwe(null,["es.date.get-year"]),group:lwe("instance/group",["esnext.array.group"]),groupBy:lwe("instance/group-by",["esnext.array.group-by"]),groupByToMap:lwe("instance/group-by-to-map",["esnext.array.group-by-to-map","es.map","es.object.to-string"]),groupToMap:lwe("instance/group-to-map",["esnext.array.group-to-map","es.map","es.object.to-string"]),fontcolor:lwe(null,["es.string.fontcolor"]),fontsize:lwe(null,["es.string.fontsize"]),forEach:lwe("instance/for-each",["es.array.for-each","es.iterator.for-each"].concat(Cwe,["web.dom-collections.for-each"])),includes:lwe("instance/includes",["es.array.includes","es.string.includes"]),indexed:lwe(null,["esnext.async-iterator.indexed"].concat(b(Awe),["esnext.iterator.indexed"],Cwe)),indexOf:lwe("instance/index-of",["es.array.index-of"]),isWellFormed:lwe("instance/is-well-formed",["es.string.is-well-formed"]),italics:lwe(null,["es.string.italics"]),join:lwe(null,["es.array.join"]),keys:lwe("instance/keys",gwe),lastIndex:lwe(null,["esnext.array.last-index"]),lastIndexOf:lwe("instance/last-index-of",["es.array.last-index-of"]),lastItem:lwe(null,["esnext.array.last-item"]),link:lwe(null,["es.string.link"]),map:lwe("instance/map",["es.array.map","es.iterator.map"].concat(Cwe)),match:lwe(null,["es.string.match","es.regexp.exec"]),matchAll:lwe("instance/match-all",["es.string.match-all","es.regexp.exec"]),name:lwe(null,["es.function.name"]),padEnd:lwe("instance/pad-end",["es.string.pad-end"]),padStart:lwe("instance/pad-start",["es.string.pad-start"]),push:lwe("instance/push",["es.array.push"]),reduce:lwe("instance/reduce",["es.array.reduce","es.iterator.reduce"].concat(Cwe)),reduceRight:lwe("instance/reduce-right",["es.array.reduce-right"]),repeat:lwe("instance/repeat",["es.string.repeat"]),replace:lwe(null,["es.string.replace","es.regexp.exec"]),replaceAll:lwe("instance/replace-all",["es.string.replace-all","es.string.replace","es.regexp.exec"]),reverse:lwe("instance/reverse",["es.array.reverse"]),search:lwe(null,["es.string.search","es.regexp.exec"]),setFloat16:lwe(null,["es.data-view.set-float16"].concat(b(Dwe))),setUint8Clamped:lwe(null,["esnext.data-view.set-uint8-clamped"].concat(b(Dwe))),setYear:lwe(null,["es.date.set-year"]),slice:lwe("instance/slice",["es.array.slice"]),sliding:lwe(null,["esnext.iterator.sliding"].concat(Cwe)),small:lwe(null,["es.string.small"]),some:lwe("instance/some",["es.array.some","es.iterator.some"].concat(Cwe)),sort:lwe("instance/sort",["es.array.sort"]),splice:lwe("instance/splice",["es.array.splice"]),split:lwe(null,["es.string.split","es.regexp.exec"]),startsWith:lwe("instance/starts-with",["es.string.starts-with"]),sticky:lwe(null,["es.regexp.sticky"]),strike:lwe(null,["es.string.strike"]),sub:lwe(null,["es.string.sub"]),substr:lwe(null,["es.string.substr"]),sup:lwe(null,["es.string.sup"]),take:lwe(null,["es.iterator.take"].concat(Cwe,["esnext.async-iterator.take"],b(Awe))),test:lwe(null,["es.regexp.test","es.regexp.exec"]),toArray:lwe(null,["es.iterator.to-array"].concat(Cwe,["esnext.async-iterator.to-array"],b(Awe))),toAsync:lwe(null,["esnext.iterator.to-async"].concat(Cwe,b(Awe),kwe)),toExponential:lwe(null,["es.number.to-exponential"]),toFixed:lwe(null,["es.number.to-fixed"]),toGMTString:lwe(null,["es.date.to-gmt-string"]),toISOString:lwe(null,["es.date.to-iso-string"]),toJSON:lwe(null,["es.date.to-json"]),toPrecision:lwe(null,["es.number.to-precision"]),toReversed:lwe("instance/to-reversed",["es.array.to-reversed"]),toSorted:lwe("instance/to-sorted",["es.array.to-sorted","es.array.sort"]),toSpliced:lwe("instance/to-spliced",["es.array.to-spliced"]),toString:lwe(null,["es.object.to-string","es.error.to-string","es.date.to-string","es.regexp.to-string"]),toWellFormed:lwe("instance/to-well-formed",["es.string.to-well-formed"]),trim:lwe("instance/trim",["es.string.trim"]),trimEnd:lwe("instance/trim-end",["es.string.trim-end"]),trimLeft:lwe("instance/trim-left",["es.string.trim-start"]),trimRight:lwe("instance/trim-right",["es.string.trim-end"]),trimStart:lwe("instance/trim-start",["es.string.trim-start"]),uniqueBy:lwe("instance/unique-by",["esnext.array.unique-by","es.map"]),unshift:lwe("instance/unshift",["es.array.unshift"]),unThis:lwe("instance/un-this",["esnext.function.un-this"]),values:lwe("instance/values",gwe),windows:lwe(null,["esnext.iterator.windows"].concat(Cwe)),with:lwe("instance/with",["es.array.with"]),__defineGetter__:lwe(null,["es.object.define-getter"]),__defineSetter__:lwe(null,["es.object.define-setter"]),__lookupGetter__:lwe(null,["es.object.lookup-getter"]),__lookupSetter__:lwe(null,["es.object.lookup-setter"])}).__proto__=lwe(null,["es.object.proto"]),awe),Mwe=new Set(["array","array/from","array/is-array","array/of","clear-immediate","date/now","instance/bind","instance/code-point-at","instance/concat","instance/copy-within","instance/ends-with","instance/entries","instance/every","instance/fill","instance/filter","instance/find","instance/find-index","instance/flags","instance/flat","instance/flat-map","instance/for-each","instance/includes","instance/index-of","instance/keys","instance/last-index-of","instance/map","instance/pad-end","instance/pad-start","instance/reduce","instance/reduce-right","instance/repeat","instance/reverse","instance/slice","instance/some","instance/sort","instance/splice","instance/starts-with","instance/trim","instance/trim-end","instance/trim-left","instance/trim-right","instance/trim-start","instance/values","json/stringify","map","math/acosh","math/asinh","math/atanh","math/cbrt","math/clz32","math/cosh","math/expm1","math/fround","math/hypot","math/imul","math/log10","math/log1p","math/log2","math/sign","math/sinh","math/tanh","math/trunc","number/epsilon","number/is-finite","number/is-integer","number/is-nan","number/is-safe-integer","number/max-safe-integer","number/min-safe-integer","number/parse-float","number/parse-int","object/assign","object/create","object/define-properties","object/define-property","object/entries","object/freeze","object/from-entries","object/get-own-property-descriptor","object/get-own-property-descriptors","object/get-own-property-names","object/get-own-property-symbols","object/get-prototype-of","object/is","object/is-extensible","object/is-frozen","object/is-sealed","object/keys","object/prevent-extensions","object/seal","object/set-prototype-of","object/values","parse-float","parse-int","promise","queue-microtask","reflect/apply","reflect/construct","reflect/define-property","reflect/delete-property","reflect/get","reflect/get-own-property-descriptor","reflect/get-prototype-of","reflect/has","reflect/is-extensible","reflect/own-keys","reflect/prevent-extensions","reflect/set","reflect/set-prototype-of","set","set-immediate","set-interval","set-timeout","string/from-code-point","string/raw","symbol","symbol/async-iterator","symbol/for","symbol/has-instance","symbol/is-concat-spreadable","symbol/iterator","symbol/key-for","symbol/match","symbol/replace","symbol/search","symbol/species","symbol/split","symbol/to-primitive","symbol/to-string-tag","symbol/unscopables","url","url-search-params","weak-map","weak-set"]),Fwe=new Set([].concat(b(Mwe),["aggregate-error","composite-key","composite-symbol","global-this","instance/at","instance/code-points","instance/match-all","instance/replace-all","math/clamp","math/degrees","math/deg-per-rad","math/fscale","math/iaddh","math/imulh","math/isubh","math/rad-per-deg","math/radians","math/scale","math/seeded-prng","math/signbit","math/umulh","number/from-string","observable","reflect/define-metadata","reflect/delete-metadata","reflect/get-metadata","reflect/get-metadata-keys","reflect/get-own-metadata","reflect/get-own-metadata-keys","reflect/has-metadata","reflect/has-own-metadata","reflect/metadata","symbol/dispose","symbol/observable","symbol/pattern-match"])),Lwe=r.types;function Uwe(e,t){var r=t.node,a=t.parent;if("es.string.split"===e.name){if(!Lwe.isCallExpression(a,{callee:r}))return!1;if(a.arguments.length<1)return!0;var n=a.arguments[0];return Lwe.isStringLiteral(n)||Lwe.isTemplateLiteral(n)}}var qwe=r.types,Gwe="@babel/runtime-corejs3";function Wwe(e,t,r,a){var n=y(Vwe(e.node,e.scope),2),s=n[0],o=n[1],i=qwe.callExpression(t,[s]);a&&(i=a(i));var d=qwe.identifier("call");e.replaceWith(r?qwe.optionalMemberExpression(i,d,!1,!0):qwe.memberExpression(i,d)),e.parentPath.unshiftContainer("arguments",o)}function Vwe(e,t){var r,a,n=e.object;return qwe.isIdentifier(n)?(a=n,r=qwe.cloneNode(n)):(a=t.generateDeclaredUidIdentifier("context"),r=qwe.assignmentExpression("=",qwe.cloneNode(a),n)),[r,a]}function Hwe(e,t){for(var r=t;!r.optional&&qwe.isOptionalMemberExpression(r.object);)r=r.object;r.optional=!1;var a=e.generateDeclaredUidIdentifier("context"),n=qwe.assignmentExpression("=",a,r.object);return r.object=qwe.cloneNode(a),function(e){return qwe.conditionalExpression(qwe.binaryExpression("==",n,qwe.nullLiteral()),qwe.unaryExpression("void",qwe.numericLiteral(0)),e)}}function zwe(e){return"core-js/modules/"+e+".js"}function Kwe(e,t,r){return t?Gwe+"/core-js/"+e+r:"core-js-pure/features/"+e+".js"}var Xwe,Jwe=r,Ywe=Jwe.types,$we=Jwe.template,Qwe=["array","string","iterator","async-iterator","dom-collections"].map(function(e){return new RegExp("[a-z]*\\."+e+"\\..*")}),Zwe=function(e,t){if(t(e))return!0;if(!e.startsWith("es."))return!1;var r="esnext."+e.slice(3);return!!Nje[r]&&t(r)},eEe=(Xwe=function(e,t){var r=e.getUtils,a=e.method,n=e.shouldInjectPolyfill,s=e.createMetaResolver,o=e.debug,d=e.babel,c=t.version,l=void 0===c?3:c,u=t.proposals,p=t.shippedProposals,f=t["#__secret_key__@babel/preset-env__compatibility"],g=(void 0===f?{}:f).noRuntimeName,m=void 0!==g&&g,b=t["#__secret_key__@babel/runtime__compatibility"],v=void 0===b?{}:b,x=v.useBabelRuntime,R=void 0!==x&&x,j=v.ext,w=void 0===j?".js":j,E=d.caller(function(e){return"babel-loader"===(null==e?void 0:e.name)}),S=s({global:Owe,static:Nwe,instance:Bwe}),T=new Set(Bje(l));function P(e,t){return!!n(e)&&(o(e),t.injectGlobalImport(zwe(e),e),!0)}function A(e,t,r){void 0===r&&(r=!0);for(var a,n=i(e);!(a=n()).done;){var s=a.value;r?Zwe(s,function(e){return P(e,t)}):P(s,t)}}function k(e,t,r,a){if(e.pure&&!(a&&e.exclude&&e.exclude.includes(a))&&Zwe(e.name,n)){var s=e.name,o=!1;if((u||p&&s.startsWith("esnext.")||s.startsWith("es.")&&!T.has(s))&&(o=!0),R&&!(o?Fwe:Mwe).has(e.pure))return;var i=function(e){return R?e?Gwe+"/core-js":Gwe+"/core-js-stable":e?"core-js-pure/features":"core-js-pure/stable"}(o);return r.injectDefaultImport(i+"/"+e.pure+w,t)}}return{name:"corejs3",runtimeName:m?null:Gwe,polyfills:Nje,filterPolyfills:function(e){return!!T.has(e)&&(!(!u&&"entry-global"!==a)||!(!p||!dwe.has(e))||function(e){return!e.startsWith("esnext.")||"es."+e.slice(7)in Nje}(e))},entryGlobal:function(e,t,r){if("import"===e.kind){var a,s=("string"==typeof(a=e.source)&&(a=a.replace(/\\/g,"/").replace(/(\/(index)?)?(\.js)?$/i,"").toLowerCase()),Object.prototype.hasOwnProperty.call(Mje,a)&&Mje[a]);if(s)if(1===s.length&&e.source===zwe(s[0])&&n(s[0]))o(null);else{var i=new Set(s),d=s.filter(function(e){if(!e.startsWith("esnext."))return!0;var t=e.replace("esnext.","es.");return!i.has(t)||!n(t)});A(d,t,!1),r.remove()}}},usageGlobal:function(e,t,r){var a=S(e);if(a&&!Uwe(a.desc,r)){var n=a.desc.global;if("global"!==a.kind&&"object"in e&&e.object&&"prototype"===e.placement){var s=e.object.toLowerCase();n=n.filter(function(e){return!Qwe.some(function(t){return t.test(e)})||e.includes(s)})}return A(n,t),!0}},usagePure:function(e,t,r){if("in"!==e.kind){if(!r.parentPath.isUnaryExpression({operator:"delete"})){if("property"===e.kind){if(!r.isMemberExpression()&&!r.isOptionalMemberExpression())return;if(!r.isReferenced())return;if(r.parentPath.isUpdateExpression())return;if(Ywe.isSuper(r.node.object))return;if("Symbol.iterator"===e.key){if(!n("es.symbol.iterator"))return;var a=r.parent,s=r.node;return void(Ywe.isCallExpression(a,{callee:s})?0===a.arguments.length?(r.parentPath.replaceWith(Ywe.callExpression(t.injectDefaultImport(Kwe("get-iterator",R,w),"getIterator"),[s.object])),r.skip()):Wwe(r,t.injectDefaultImport(Kwe("get-iterator-method",R,w),"getIteratorMethod")):r.replaceWith(Ywe.callExpression(t.injectDefaultImport(Kwe("get-iterator-method",R,w),"getIteratorMethod"),[r.node.object])))}}var o=S(e);if(o&&!Uwe(o.desc,r))if(R&&o.desc.pure&&"/index"===o.desc.pure.slice(-6)&&(o=Object.assign(Object.assign({},o),{},{desc:Object.assign(Object.assign({},o.desc),{},{pure:o.desc.pure.slice(0,-6)})})),"global"===o.kind){var i=k(o.desc,o.name,t);i&&r.replaceWith(i)}else if("static"===o.kind){var d=k(o.desc,o.name,t,e.object);if(d){r.replaceWith(d);var c=r.parentPath;if(c.isOptionalMemberExpression()||c.isOptionalCallExpression())do{var l=c;l.type=l.node.type="OptionalMemberExpression"===c.type?"MemberExpression":"CallExpression",delete l.node.optional,c=c.parentPath}while((c.isOptionalMemberExpression()||c.isOptionalCallExpression())&&!c.node.optional)}}else if("instance"===o.kind){var u=k(o.desc,o.name+"InstanceProperty",t,e.object);if(!u)return;var p=r.node,f=r.parent;if(Ywe.isOptionalCallExpression(f)&&f.callee===p){var g=f.optional;if(f.optional=!g,g)Ywe.isOptionalMemberExpression(p)?Wwe(r,u,!0,Hwe(r.scope,p)):Wwe(r,u,!0);else{var m=Hwe(r.scope,p),b=y(Vwe(p,r.scope),2),v=b[0],x=b[1];r.replaceWith(m($we.expression.ast(nwe||(nwe=h(["\n Function.call.bind(","(","), ",")\n "])),u,v,x)))}}else if(Ywe.isCallExpression(f)&&f.callee===p)Wwe(r,u,!1);else if(Ywe.isOptionalMemberExpression(p)){var j=Hwe(r.scope,p);r.replaceWith(j(Ywe.callExpression(u,[p.object]))),Ywe.isOptionalMemberExpression(f)&&(f.optional=!0)}else r.replaceWith(Ywe.callExpression(u,[p.object]))}}}else"Symbol.iterator"===e.key&&r.replaceWith(Ywe.callExpression(t.injectDefaultImport(Kwe("is-iterable",R,w),"isIterable"),[r.node.right]))},visitor:"usage-global"===a&&{CallExpression:function(e){if(e.get("callee").isImport()){var t=r(e);A(E?Rwe:xwe,t)}},Function:function(e){e.node.async&&A(xwe,r(e))},"ForOfStatement|ArrayPattern":function(e){A(fwe,r(e))},SpreadElement:function(e){e.parentPath.isObjectExpression()||A(fwe,r(e))},YieldExpression:function(e){e.node.delegate&&A(fwe,r(e))},Class:function(e){var t;((null==(t=e.node.decorators)?void 0:t.length)||e.node.body.body.some(function(e){var t;return null==(t=e.decorators)?void 0:t.length}))&&A(_we,r(e))}}}},function(e,t,r){e.assertVersion("^7.0.0 || ^8.0.0-alpha.0");var a,n=e.traverse,s=function(e,t){var r=e.missingDependencies,a=void 0===r?{}:r;if(!1===a)return!1;var n=t.caller(function(e){return null==e?void 0:e.name}),s=a.log,o=void 0===s?"deferred":s,i=a.inject,d=void 0===i?"rollup-plugin-babel"===n?"throw":"import":i,c=a.all;return{log:o,inject:d,all:void 0!==c&&c}}(t,e),o=iwe(Xwe,t,s,r,function(){return a},e),d=o.debug,c=o.method,l=o.targets,u=o.provider,p=o.providerName,f=o.callProvider,g="entry-global"===c?ewe:Zje,m=u.visitor?n.visitors.merge([g(f),u.visitor]):g(f);d&&"#__secret_key__@babel/preset-env__don't_log_debug_header_and_resolved_targets"!==d&&(console.log(p+": `DEBUG` option"),console.log("\nUsing targets: "+function(e){return JSON.stringify(PU(e),null,2)}(l)),console.log("\nUsing polyfills with `"+c+"` method:"));var y=u.runtimeName;return{name:"inject-polyfills",visitor:m,pre:function(e){var t;y&&(e.get("runtimeHelpersModuleName")&&e.get("runtimeHelpersModuleName")!==y?console.warn("Two different polyfill providers ("+e.get("runtimeHelpersModuleProvider")+" and "+p+") are trying to define two conflicting @babel/runtime alternatives: "+e.get("runtimeHelpersModuleName")+" and "+y+". The second one will be ignored."):(e.set("runtimeHelpersModuleName",y),e.set("runtimeHelpersModuleProvider",p))),a={polyfills:new Set,polyfillsSupport:void 0,found:!1,providers:new Set,missingDeps:new Set},null==(t=u.pre)||t.apply(this,arguments)},post:function(){var e;if(null==(e=u.post)||e.apply(this,arguments),!1!==s&&(s.log,a.missingDeps),d)if(this.filename&&console.log("\n["+this.filename+"]"),0!==a.polyfills.size){"entry-global"===c?console.log("The "+p+" polyfill entry has been replaced with the following polyfills:"):console.log("The "+p+" polyfill added the following polyfills:");for(var t,r=i(a.polyfills);!(t=r()).done;){var n,o=t.value;if(null!=(n=a.polyfillsSupport)&&n[o]){var f=AU(o,l,a.polyfillsSupport),g=JSON.stringify(f).replace(/,/g,", ").replace(/^\{"/,'{ "').replace(/"\}$/,'" }');console.log(" "+o+" "+g)}else console.log(" "+o)}}else console.log("entry-global"===c?a.found?"Based on your targets, the "+p+" polyfill did not add any polyfill.":"The entry point for the "+p+" polyfill has not been found.":"Based on your code and targets, the "+p+" polyfill did not add any polyfill.")}}}),tEe=eEe.default||eEe;function rEe(e,t){return Object.keys(e).reduce(function(r,a){return t.has(a)||(r[a]=e[a]),r},{})}var aEe=Object.assign({},lRe,uRe),nEe=rEe(aEe,Cje),sEe=lRe,oEe=rEe(lRe,Cje),iEe=function(e){var t=nRe[e]();if(!t)throw new Error('Could not find plugin "'+e+'". Ensure there is an entry in ./available-plugins.js for it.');return t},dEe=function(e){return e.reduce(function(e,t){return e[/^(?:es|es6|es7|esnext|web)\./.test(t)?"builtIns":"plugins"].add(t),e},{all:e,plugins:new Set,builtIns:new Set})};var cEe=function(e){var t=e.useBuiltIns,r=e.corejs,a=e.polyfillTargets,n=e.include,s=e.exclude,o=e.proposals,i=e.shippedProposals,d=e.regenerator,c=e.debug,l=[];if("usage"===t||"entry"===t){var u=function(e){var t=e.useBuiltIns,r=e.corejs,a=e.polyfillTargets,n=e.include,s=e.exclude,o=e.proposals,i=e.shippedProposals,d=e.debug;return{method:t+"-global",version:r?r.toString():void 0,targets:a,include:n,exclude:s,proposals:o,shippedProposals:i,debug:d,"#__secret_key__@babel/preset-env__compatibility":{noRuntimeName:!0}}}({useBuiltIns:t,corejs:r,polyfillTargets:a,include:n,exclude:s,proposals:o,shippedProposals:i,debug:c});r&&("usage"===t?(2===r.major?l.push([bRe.pluginCoreJS2,u],[bRe.legacyBabelPolyfillPlugin,{usage:!0}]):l.push([tEe,u],[bRe.legacyBabelPolyfillPlugin,{usage:!0,deprecated:!0}]),d&&l.push([bRe.pluginRegenerator,{method:"usage-global",debug:c}])):2===r.major?l.push([bRe.legacyBabelPolyfillPlugin,{regenerator:d}],[bRe.pluginCoreJS2,u]):(l.push([tEe,u],[bRe.legacyBabelPolyfillPlugin,{deprecated:!0}]),d||l.push([bRe.removeRegeneratorEntryPlugin,u])))}return l};function lEe(e){return!(null==e||!e.supportsStaticESM)}function uEe(e){return!(null==e||!e.supportsDynamicImport)}function pEe(e){return!(null==e||!e.supportsExportNamespaceFrom)}e.getPolyfillPlugins=cEe;var fEe=function(e,t){e.assertVersion("*");var r=e.targets(),a=Tje(t),n=a.configPath,s=a.debug,o=a.exclude,i=a.forceAllTransforms,d=a.ignoreBrowserslistConfig,c=a.include,l=a.modules,u=a.shippedProposals,p=a.targets,f=a.useBuiltIns,g=a.corejs,m=g.version,y=g.proposals,h=a.browserslistEnv,b=t.loose,v=t.spec,x=void 0!==v&&v,R=t.bugfixes,j=void 0!==R&&R,w=r;if(Cxe.lt(e.version,"7.13.0")||t.targets||t.configPath||t.browserslistEnv||t.ignoreBrowserslistConfig){var E=!1;null!=p&&p.uglify&&(E=!0,delete p.uglify,console.warn("\nThe uglify target has been deprecated. Set the top level\noption `forceAllTransforms: true` instead.\n")),w=function(e,t,r,a,n){return null!=e&&e.esmodules&&e.browsers&&console.warn("\n@babel/preset-env: esmodules and browsers targets have been specified together.\n`browsers` target, `"+e.browsers.toString()+"` will be ignored.\n"),UU(e,{ignoreBrowserslistConfig:t,configPath:r,browserslistEnv:a,onBrowserslistConfigFound:function(e){n.addExternalDependency(e)}})}(p,d,n,h,e)}var S=i||E?{}:w,T=dEe(c),P=dEe(o),A=j?u?aEe:nEe:u?sEe:oEe,k="auto"===l?!e.caller(lEe)&&"commonjs":l,C="auto"===l?!e.caller(uEe):!!k;P.plugins.has("transform-export-namespace-from")||("auto"===l?e.caller(pEe):!k)||T.plugins.add("transform-export-namespace-from");var _,I,D=_U(A,T.plugins,P.plugins,S,function(e,t,r){var a=[];return e&&a.push(dRe[e]),t&&(e&&"umd"!==e?a.push("transform-dynamic-import"):console.warn("Dynamic import can only be transformed when transforming ES modules to AMD, CommonJS or SystemJS.")),r.startsWith("8")||(t||a.push("syntax-dynamic-import"),a.push("syntax-top-level-await"),a.push("syntax-import-meta")),a}(k,C,e.version),b?["transform-typeof-symbol"]:void 0,Oje);u&&function(e,t){t.forEach(function(t){e.add(t)})}(D,_je),_=D,I=e.version,_.forEach(function(e){(hasOwnProperty.call(sRe,e)&&Cxe.lt(I,sRe[e])||I.startsWith("8")&&rRe.has(e))&&_.delete(e)}),function(e,t){e.forEach(function(r){var a;null==(a=t[r])||a.forEach(function(t){return e.delete(t)})})}(D,pRe);var O=cEe({useBuiltIns:f,corejs:m,polyfillTargets:w,include:T.builtIns,exclude:P.builtIns,proposals:y,shippedProposals:u,regenerator:D.has("transform-regenerator"),debug:s}),N=!1!==f,B=Array.from(D).map(function(e){return"transform-class-properties"===e||"transform-private-methods"===e||"transform-private-property-in-object"===e?[iEe(e),{loose:b?"#__internal__@babel/preset-env__prefer-true-but-false-is-ok-if-it-prevents-an-error":"#__internal__@babel/preset-env__prefer-false-but-true-is-ok-if-it-prevents-an-error"}]:"syntax-import-attributes"===e?[iEe(e),{deprecatedAssertSyntax:!0}]:[iEe(e),{spec:x,loose:b,useBuiltIns:N}]}).concat(O);return s&&(console.log("@babel/preset-env: `DEBUG` option"),console.log("\nUsing targets:"),console.log(JSON.stringify(PU(w),null,2)),console.log("\nUsing modules transform: "+l.toString()),console.log("\nUsing plugins:"),D.forEach(function(e){!function(e,t,r){var a=AU(e,t,r),n=r[e];if(e.startsWith("transform-")){var s="proposal-"+e.slice(10);("proposal-dynamic-import"===s||hasOwnProperty.call(kU,s))&&(e=s)}if(n){for(var o="{",i=!0,d=0,c=Object.keys(a);d<c.length;d++){var l=c[d];i||(o+=","),i=!1,o+=" "+l,n[l]&&(o+=" < "+n[l])}o+=" }",console.log(" "+e+" "+o)}else console.log(" "+e)}(e,w,A)}),f||console.log("\nUsing polyfills: No polyfills were added, since the `useBuiltIns` option was not set.")),{plugins:B}};e.getModulesPluginNames=function(e){var t=e.modules,r=e.transformations,a=e.shouldTransformESM,n=e.shouldTransformDynamicImport,s=e.shouldTransformExportNamespaceFrom,o=[];return!1!==t&&r[t]&&(a&&o.push(r[t]),n&&(a&&"umd"!==t?o.push("transform-dynamic-import"):console.warn("Dynamic import can only be transformed when transforming ES modules to AMD, CommonJS or SystemJS."))),s&&o.push("transform-export-namespace-from"),n||o.push("syntax-dynamic-import"),s||o.push("syntax-export-namespace-from"),o.push("syntax-top-level-await"),o.push("syntax-import-meta"),o},new cU("@babel/preset-flow");var gEe=function(e,t){e.assertVersion("*");var r=function(e){void 0===e&&(e={});var t=e,r=t.all,a=t.ignoreExtensions,n=t.experimental_useHermesParser;return{all:r,allowDeclareFields:e.allowDeclareFields,ignoreExtensions:a,experimental_useHermesParser:n}}(t),a=r.all,n=r.allowDeclareFields,s=r.ignoreExtensions,o=void 0===s||s,i=r.experimental_useHermesParser,d=[[Bge,{all:a,allowDeclareFields:n}]];if(void 0!==i&&i){if(Number.parseInt(z.versions.node,10)<12)throw new Error("The Hermes parser is only supported in Node 12 and later.");throw new Error("The Hermes parser is not supported in the @babel/standalone.")}return o?{plugins:d}:{overrides:[{test:function(e){return null==e||!/\.tsx?$/.test(e)},plugins:d}]}},mEe=[["react",new Set(["cloneElement","createContext","createElement","createFactory","createRef","forwardRef","isValidElement","memo","lazy"])],["react-dom",new Set(["createPortal"])]],yEe=function(e){return e.assertVersion("*"),{name:"transform-react-pure-annotations",visitor:{CallExpression:function(e){(function(e){var t=e.get("callee");if(!t.isMemberExpression()){for(var r=0,a=mEe;r<a.length;r++)for(var n,s=y(a[r],2),o=s[0],d=i(s[1]);!(n=d()).done;){var c=n.value;if(t.referencesImport(o,c))return!0}return!1}var l=t.get("object"),u=t.node;if(!u.computed&&ie(u.property))for(var p=u.property.name,f=0,g=mEe;f<g.length;f++){var m=y(g[f],2),h=m[0],b=m[1];if(l.referencesImport(h,"default")||l.referencesImport(h,"*"))return b.has(p)}return!1})(e)&&DH(e)}}}};new cU("@babel/preset-react");var hEe,bEe=function(e,t){e.assertVersion("*");var r=function(e){void 0===e&&(e={});var t=e,r=t.pragma,a=t.pragmaFrag,n=e,s=n.pure,o=n.throwIfNamespace,i=void 0===o||o,d=n.runtime,c=void 0===d?"classic":d,l=n.importSource,u=n.useBuiltIns,p=n.useSpread;return"classic"===c&&(r=r||"React.createElement",a=a||"React.Fragment"),{development:null==e.development?void 0:!!e.development,importSource:l,pragma:r,pragmaFrag:a,pure:s,runtime:c,throwIfNamespace:i,useBuiltIns:u,useSpread:p}}(t),a=r.development,n=void 0!==a&&a,s=r.importSource,o=r.pragma,i=r.pragmaFrag,d=r.pure,c=r.runtime,l=r.throwIfNamespace;return{plugins:[[n?Zye:$ye,{importSource:s,pragma:o,pragmaFrag:i,runtime:c,throwIfNamespace:l,pure:d,useBuiltIns:!!t.useBuiltIns,useSpread:t.useSpread}],pye,!1!==d&&yEe].filter(Boolean)}},vEe=new cU("@babel/preset-typescript");var xEe,REe=function(e){var t=e.types,r=e.template;function a(e,a,n){e&&(t.isStringLiteral(e)?/^\.\.?\//.test(e.value)&&(e.value=e.value.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+)?)\.([cm]?)ts$/i,function(e,t,r,a,n){return t?".js":!r||a&&n?r+a+"."+n.toLowerCase()+"js":e})):n.availableHelper("tsRewriteRelativeImportExtensions")?a.replaceWith(t.callExpression(n.addHelper("tsRewriteRelativeImportExtensions"),[e])):a.replaceWith(r.expression.ast(hEe||(hEe=h(["(",' + "").replace(/([\\/].*.[mc]?)tsx?$/, "$1js")'],["(",' + "").replace(/([\\\\/].*\\.[mc]?)tsx?$/, "$1js")'])),e)))}return{name:"preset-typescript/plugin-rewrite-ts-imports",visitor:{"ImportDeclaration|ExportAllDeclaration|ExportNamedDeclaration":function(e,r){var n=e.node;"value"===(t.isImportDeclaration(n)?n.importKind:n.exportKind)&&a(n.source,e.get("source"),r)},CallExpression:function(e,r){t.isImport(e.node.callee)&&a(e.node.arguments[0],e.get("arguments.0"),r)},ImportExpression:function(e,t){a(e.node.source,e.get("source"),t)}}}},jEe=function(e,t){e.assertVersion("*");var r=function(e){void 0===e&&(e={});var t=e,r=t.allowNamespaces,a=void 0===r||r,n=t.jsxPragma,s=t.onlyRemoveTypeImports,o="ignoreExtensions",i="disallowAmbiguousJSXLike",d="jsxPragmaFrag",c="optimizeConstEnums",l="rewriteImportExtensions",u="allExtensions",p="isTSX",f=vEe.validateStringOption(d,e.jsxPragmaFrag,"React.Fragment"),g=vEe.validateBooleanOption(u,e.allExtensions,!1),m=vEe.validateBooleanOption(p,e.isTSX,!1);m&&vEe.invariant(g,"isTSX:true requires allExtensions:true");var y=vEe.validateBooleanOption(o,e.ignoreExtensions,!1),h=vEe.validateBooleanOption(i,e.disallowAmbiguousJSXLike,!1);h&&vEe.invariant(g,"disallowAmbiguousJSXLike:true requires allExtensions:true");var b={ignoreExtensions:y,allowNamespaces:a,disallowAmbiguousJSXLike:h,jsxPragma:n,jsxPragmaFrag:f,onlyRemoveTypeImports:s,optimizeConstEnums:vEe.validateBooleanOption(c,e.optimizeConstEnums,!1),rewriteImportExtensions:vEe.validateBooleanOption(l,e.rewriteImportExtensions,!1)};return b.allExtensions=g,b.isTSX=m,b}(t),a=r.allExtensions,n=r.ignoreExtensions,s=r.allowNamespaces,o=r.disallowAmbiguousJSXLike,i=r.isTSX,d=r.jsxPragma,c=r.jsxPragmaFrag,l=r.onlyRemoveTypeImports,u=r.optimizeConstEnums,p=r.rewriteImportExtensions,f=function(e){return{allowDeclareFields:t.allowDeclareFields,allowNamespaces:s,disallowAmbiguousJSXLike:e,jsxPragma:d,jsxPragmaFrag:c,onlyRemoveTypeImports:l,optimizeConstEnums:u}},g=function(e,t){return[[oxe,Object.assign({isTSX:e},f(t))]]};return{plugins:p?[REe]:[],overrides:a||n?[{plugins:g(i,o)}]:[{test:/\.ts$/,plugins:g(!1,!1)},{test:/\.mts$/,sourceType:"module",plugins:g(!1,!0)},{test:/\.cts$/,sourceType:"unambiguous",plugins:[[zme,{allowTopLevelThis:!0}],[oxe,f(!0)]]},{test:/\.tsx$/,plugins:g(!0,!1)}]}},wEe=new Set(["text/jsx","text/babel"]),EEe=0;function SEe(e,t){var r=document.createElement("script");t.type&&r.setAttribute("type",t.type),t.nonce&&(r.nonce=t.nonce),r.text=function(e,t){var r;return null!=t.url?r=t.url:(r="Inline Babel script",++EEe>1&&(r+=" ("+EEe+")")),e(t.content,function(e,t){var r=e.presets;r||(r="module"===e.type?["react",["env",{modules:!1}]]:["react","env"]);var a=e.plugins;a||(a=["transform-class-properties","transform-object-rest-spread","transform-flow-strip-types"]);var n={browsers:e.targets};return"module"===e.type&&(n.esmodules="intersect"),{filename:t,presets:r,plugins:a,sourceMaps:"inline",sourceFileName:t,targets:n}}(t,r)).code}(e,t),xEe.appendChild(r)}function TEe(e,t){var r=e.getAttribute(t);return""===r?[]:r?r.split(",").map(function(e){return e.trim()}):void 0}function PEe(e,t){var r=[],a=t.length;function n(){for(var t=0;t<a;t++){var n=r[t];if(n.loaded&&!n.executed)n.executed=!0,SEe(e,n);else if(!n.loaded&&!n.error&&!n.async)break}}for(var s=function(){var e,a,s,i,d=t[o],c={async:d.hasAttribute("async"),type:d.getAttribute("data-type"),nonce:d.nonce,error:!1,executed:!1,plugins:TEe(d,"data-plugins"),presets:TEe(d,"data-presets"),targets:TEe(d,"data-targets"),loaded:!1,url:null,content:null};r.push(c),d.src?(c.url=d.src,e=d.src,a=function(e){c.loaded=!0,c.content=e,n()},s=function(){c.error=!0,n()},(i=new XMLHttpRequest).open("GET",e,!0),"overrideMimeType"in i&&i.overrideMimeType("text/plain"),i.onreadystatechange=function(){if(4===i.readyState){if(0!==i.status&&200!==i.status)throw s(),new Error("Could not load "+e);a(i.responseText)}},i.send(null)):(c.url=d.getAttribute("data-module")||null,c.loaded=!0,c.content=d.innerHTML)},o=0;o<a;o++)s();n()}var AEe,kEe=Object.freeze({__proto__:null,generator:vk,parser:iR,template:fj,traverse:BO,types:Jy}),CEe={__proto__:null,"transform-class-static-block":"proposal-class-static-block","transform-private-property-in-object":"proposal-private-property-in-object","transform-class-properties":"proposal-class-properties","transform-private-methods":"proposal-private-methods","transform-numeric-separator":"proposal-numeric-separator","transform-logical-assignment-operators":"proposal-logical-assignment-operators","transform-nullish-coalescing-operator":"proposal-nullish-coalescing-operator","transform-optional-chaining":"proposal-optional-chaining","transform-json-strings":"proposal-json-strings","transform-optional-catch-binding":"proposal-optional-catch-binding","transform-async-generator-functions":"proposal-async-generator-functions","transform-object-rest-spread":"proposal-object-rest-spread","transform-unicode-property-regex":"proposal-unicode-property-regex","transform-export-namespace-from":"proposal-export-namespace-from"};for(var _Ee in CEe)Sxe[CEe[_Ee]]=Sxe[_Ee];Sxe["proposal-unicode-sets-regex"]=Sxe["transform-unicode-sets-regex"];var IEe={};qEe(Sxe);var DEe={env:fEe,es2015:Txe,es2016:function(){return{plugins:[IEe["transform-exponentiation-operator"]]}},es2017:function(){return{plugins:[IEe["transform-async-to-generator"]]}},react:bEe,"stage-0":function(e,t){void 0===t&&(t={});var r=t,a=r.loose,n=void 0!==a&&a,s=r.useBuiltIns,o=void 0!==s&&s,i=r.decoratorsLegacy,d=r.decoratorsVersion,c=r.decoratorsBeforeExport,l=r.pipelineProposal,u=r.pipelineTopicToken;return{presets:[[kxe,{loose:n,useBuiltIns:o,decoratorsLegacy:i,decoratorsVersion:d,decoratorsBeforeExport:c,pipelineProposal:l,pipelineTopicToken:u}]],plugins:[$pe]}},"stage-1":kxe,"stage-2":Axe,"stage-3":Pxe,"es2015-loose":{presets:[[Txe,{loose:!0}]]},"es2015-no-commonjs":{presets:[[Txe,{modules:!1}]]},typescript:jEe,flow:gEe},OEe=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function NEe(e,t){return OEe(t)&&"string"==typeof t[0]?hasOwnProperty.call(e,t[0])?[e[t[0]]].concat(t.slice(1)):void 0:"string"==typeof t?e[t]:t}function BEe(e){return"string"==typeof e?e:OEe(e)?BEe(e[0]):JSON.stringify(e)}function MEe(e){var t=(e.presets||[]).map(function(e){var t=NEe(DEe,e);if(!t)throw new Error('Invalid preset specified in Babel options: "'+BEe(e)+'"');return OEe(t)&&"object"==typeof t[0]&&hasOwnProperty.call(t[0],"buildPreset")&&(t[0]=Object.assign({},t[0],{buildPreset:t[0].buildPreset})),t}),r=(e.plugins||[]).map(function(e){var t=NEe(IEe,e);if(!t)throw new Error('Invalid plugin specified in Babel options: "'+BEe(e)+'"');return t});return Object.assign({babelrc:!1},e,{presets:t,plugins:r})}function FEe(e,t){return SV(e,MEe(t))}var LEe=BM;function UEe(e,t){hasOwnProperty.call(IEe,e)&&console.warn('A plugin named "'+e+'" is already registered, it will be overridden'),IEe[e]=t}function qEe(e){Object.keys(e).forEach(function(t){return UEe(t,e[t])})}function GEe(e,t){hasOwnProperty.call(DEe,e)&&("env"===e?console.warn("@babel/preset-env is now included in @babel/standalone, please remove @babel/preset-env-standalone"):console.warn('A preset named "'+e+'" is already registered, it will be overridden')),DEe[e]=t}function WEe(){VEe()}function VEe(e){!function(e,t){xEe=document.getElementsByTagName("head")[0],t||(t=document.getElementsByTagName("script"));for(var r=[],a=0;a<t.length;a++){var n=t.item(a),s=n.type.split(";")[0];wEe.has(s)&&r.push(n)}0!==r.length&&(console.warn("You are using the in-browser Babel transformer. Be sure to precompile your scripts for production - https://babeljs.io/docs/setup/"),PEe(e,r))}(FEe,e)}"undefined"!=typeof window&&null!=(AEe=window)&&AEe.addEventListener&&window.addEventListener("DOMContentLoaded",WEe,!1),e.availablePlugins=IEe,e.availablePresets=DEe,e.buildExternalHelpers=LEe,e.disableScriptTags=function(){window.removeEventListener("DOMContentLoaded",WEe)},e.packages=kEe,e.registerPlugin=UEe,e.registerPlugins=qEe,e.registerPreset=GEe,e.registerPresets=function(e){Object.keys(e).forEach(function(t){return GEe(t,e[t])})},e.transform=FEe,e.transformAsync=function(e,t){return TV(e,MEe(t))},e.transformFromAst=function(e,t,r){return IV(e,t,MEe(r))},e.transformFromAstAsync=function(e,t,r){return DV(e,t,MEe(r))},e.transformScriptTags=VEe,e.version="7.29.0",Object.defineProperty(e,"__esModule",{value:!0})});
//# sourceMappingURL=babel.min.js.map
```
## Matches in master-ai/market_data_assets/canada.md
### L1024-1028
```
design_engineer Design engineer
design_institute Design institute
desktop_publishing_service Desktop publishing service
dessert_buffet Sweets and dessert buffet
dessert_restaurant Dessert restaurant
```
## Matches in master-ai/market_data_assets/dfs_categories_raw.json
### category_name L9642-9645
```
{
"category_name": "desktop_publishing_service",
"business_count": 10091
},
```
## Matches in master-ai/market_data_assets/gbp_categories.json
### gcid L5122-5126
```
{
"gcid": "gcid:desktop_publishing_service",
"displayName": "Desktop publishing service",
"serviceTypes": []
},
```
## Matches in master-ai/market_data_assets/smb_to_software_mapping_final.json
### gcid L10800-10810
```
{
"gcid": "gcid:desktop_publishing_service",
"displayName": "Desktop publishing service",
"softwareNeeds": [
"Graphic Design Software",
"Content Production & Management",
"Project Management Software",
"Billing Software",
"Document Generation Software"
]
},
```
## Matches in master-ai/market_data_assets/us.md
### L1024-1028
```
design_engineer Design engineer
design_institute Design institute
desktop_publishing_service Desktop publishing service
dessert_buffet Sweets and dessert buffet
dessert_restaurant Dessert restaurant
```
## Matches in master-ai/vibn-agent-runner/dist/mcp/agent-server.js
### L1-11
```
#!/usr/bin/env node
"use strict";
// =============================================================================
// vibn-agent-mcp
// -----------------------------------------------------------------------------
// Stdio MCP server exposing the vibn-agent-runner sub-agent orchestration API.
// This lets any MCP-speaking client (Goose, Claude Desktop, Cursor, etc.)
// spawn Coder / PM / Marketing jobs against the vibn-agent-runner HTTP service
// and poll their status.
//
// Config (env):
```
115 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-agent-runner/dist/mcp/workspace-server.js
### L11-15
```
// Each server instance is scoped to a single WORKSPACE_ROOT. To operate against
// multiple workspaces, spawn multiple MCP server instances (one per workspace).
// This mirrors how Goose / Claude Desktop / Cursor MCP configs work in practice.
//
// Config (env):
```
## Matches in master-ai/vibn-agent-runner/dist/prompts/atlas.js
### L51-55
```
- Any features from competitors you explicitly do NOT want?
- Does this need to integrate with anything external?
- Does this need to work on mobile, desktop, or both?
- Any compliance or regulatory requirements?
```
## Matches in master-ai/vibn-agent-runner/src/mcp/agent-server.ts
### L1-11
```
#!/usr/bin/env node
// =============================================================================
// vibn-agent-mcp
// -----------------------------------------------------------------------------
// Stdio MCP server exposing the vibn-agent-runner sub-agent orchestration API.
// This lets any MCP-speaking client (Goose, Claude Desktop, Cursor, etc.)
// spawn Coder / PM / Marketing jobs against the vibn-agent-runner HTTP service
// and poll their status.
//
// Config (env):
// AGENT_RUNNER_URL (default: http://localhost:3333) — URL of the runner
```
94 lines remaining in ancestor node. Read the file to see all.
## Matches in master-ai/vibn-agent-runner/src/mcp/workspace-server.ts
### L10-14
```
// Each server instance is scoped to a single WORKSPACE_ROOT. To operate against
// multiple workspaces, spawn multiple MCP server instances (one per workspace).
// This mirrors how Goose / Claude Desktop / Cursor MCP configs work in practice.
//
// Config (env):
```
## Matches in master-ai/vibn-agent-runner/src/prompts/atlas.ts
### L50-54
```
- Any features from competitors you explicitly do NOT want?
- Does this need to integrate with anything external?
- Does this need to work on mobile, desktop, or both?
- Any compliance or regulatory requirements?
```
## Matches in master-ai/vibn-frontend/LAYOUT-ARCHITECTURE.md
### # 🏗️ Layout Architecture - Plane.so Inspired ## Responsive Behavior ### Desktop (> 1280px) L149-150
```
### Desktop (> 1280px)
- All 4 columns visible
```
## Matches in master-ai/vibn-frontend/MCP_README.md
### # 🔌 Vibn MCP Integration ## 📦 What's Included ### 1. **MCP Server** (stdio) L14-15
```
- Works with Claude Desktop, custom AI applications, and more
- File: `lib/mcp/server.ts`
```
### # 🔌 Vibn MCP Integration ## 🚀 Getting Started ### Option 1: For Claude Desktop L34-35
```
### Option 1: For Claude Desktop
```
### # 🔌 Vibn MCP Integration ## 🚀 Getting Started ### Option 1: For Claude Desktop L36-40
```
1. **Open Claude Desktop configuration:**
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%/Claude/claude_desktop_config.json`
2. **Add Vibn MCP server:**
```
## Assistant
## User
Why are we maxing tokens?
## User
why is this failing?